零基础强化学习教程(持续更新)

news/2024/5/19 0:11:11 标签: 强化学习, 机器学习

强化学习的过程记录

一.强化学习最基础的概念定义

1.1 通俗非正式讲解

在本人初步的学习看来,强化学习更像是一个学会某种新东西的一个框架,一个学习规则,或者说是一种学习模式。

通过这种框架,我们可以让机器学会某些东西,说的通俗一点就是让机器不断的去试错,当碰到对的的时候,我们就给一个奖励,比如胡萝卜,证明机器你做对了,请记住你之前做过的正确步骤,这样不段的循环,就可以使得机器去学会一些东西!

1.2 强化学习的两个特点和一个核心

  • 特点
    1.Trial and ErroR 试错
    2.Delayed Reward 延迟奖励(只有最后胜利了,才知道前面那些步骤是有用的,所以体现出延迟的感觉)

  • 核心
    Exploration & Exploiation 探索和 利用

1.3 强化学习的三层架构

大家可能一上来看不懂这些东西,没关系,先记一个眼熟,往后的讲解你就懂了

  • 第一层:基本元素(Basic Element)
    1.主体(Agent),环境(Environment),目标(Goal)
  • 第二层:主要元素(Main Element)
    2.状态(State),行动(Action),回报(Reward)
  • 第三层:核心元素(Core Element)
    3.策略(Policy),价值(Value)

这三层结构是相辅相成的,并不是各自独立存在的,就如同人的脑袋,躯干,下体一样,只有这三个部位组合在一起,才能完成某些特定的任务。
<a class=强化学习整体认识" />

1.4通俗说明强化学习的小故事

咱们一起讲一个故事吧
小明是一个小学生【Agent】,想学会下围棋【Goal】,在围棋棋盘【Environment】上学,和他对战教他的是小李,小李让小明先手,此时小明看着空空的棋盘【State1】棋盘上有361个空位,所以总共的状态总共有361种,小明下了一个白子放在了棋盘的右下角【Action1】此时就算行动了一步,但是小明并且有赢,所以此时反馈也就是回馈机制【Reward1=0】并没有奖励,只有小明赢得了整盘棋以后,才会奖励一些东西。循环一定次数,小明就能够学会怎么下赢围棋了。至于围棋规则,怎么做能赢的概率大就是【Policy】和【Value】,所以强化学习最难的就是核心元素【Core Element】 的制定。

不知道讲完了这个故事,大家有没有宏观的明白一些强化学习的东西,怎么做,怎么实现那是后面高难度的东西,如果大家能大体知道强化学习什么意思,那就灰常好了,大家一起加油!
后续持续更新



http://www.niftyadmin.cn/n/1203328.html

相关文章

arcgis jsapi接口入门系列(4):用代码在地图画点线面

2019独角兽企业重金招聘Python工程师标准>>> PS&#xff1a;用代码画点这样写是为了跟后面的用鼠标画点线面区分出来 画点 drawPointGraphic: function () {//点有多种样式&#xff1a;一般的点&#xff0c;显示文字&#xff0c;显示图片//一般的点let wkt "P…

皮尔逊相关系数公式手写代码【Python+详细注解】(Pearson correlation coefficient)

爱心目录一.公式化简二.代码部分一.公式化简 一般的我们学到的公式&#xff1a; 一般我们学到的皮尔逊相关系数公式可能长这个样子&#xff0c;但是这个样子不好用代码实现呀&#xff01;所以我们帮它化简成下面的样子 化简后的公式&#xff1a; 二.代码部分 代码说明&…

纯css实现手机通讯录

我们经常在手机上看到通讯录列表&#xff0c;这类布局一般有两个显著的效果 首字母吸顶快速定位下面我们来实现一下 页面结构 这里页面结构很简单&#xff0c;就是两个列表 <div class"con"><!--联系人列表--><div class"contacts" id"…

matlab工具箱的使用教程 (图文教程)- 1分钟手把手快速入门学不会你来打我

爱心目录一.遗传算法工具箱导入Matlab一.遗传算法工具箱导入Matlab 步骤一&#xff1a; 将下载好的工具箱放入matlab根目录下的toolbox文件夹&#xff0c;完后解压即可&#xff01;【根目录就是你存放matlab软件的地方】 步骤二&#xff1a; 进入matlab软件&#xff0c;寻找主…

async -- await 解决数据异步获取

在React组件中&#xff0c;也比较一下 Promise 和 Async/Await 的方法异同。 传统地使用 Promise &#xff1a; import React, { Component } from react import { connect } from react-redux import { createPost } from ../actions/postclass PostEditForm extends Comp…

数据库及SQL语句入门教程

目录一.数据库的基本概念1.1 数据库的英文单词1.2 什么是数据库&#xff1f;1.3 数据库的特点1.4 数据库常用软件二.MySQL数据库软件2.1 如何卸载&#xff1f;2.2 配置三.SQL3.1 什么是SQL3.2 SQL通用的语法3.3 SQL分类四.DDL&#xff1a;操作数据库、表4.1.操作数据库4.1.1 C&…

HTML+CSS注册页面案例【Java源代码】

目录一.页面展示二.源代码一.页面展示 二.源代码 注意&#xff1a;背景图片加载地址改为自己的地址就好&#xff01;&#xff01;&#xff01;其余代码都可以不用改 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"&g…

使用工具Source Monitor测量您Java代码的环复杂度

代码的环复杂度(Cyclomatic complexity&#xff0c;有时也翻译成圈复杂度)是一种代码复杂度的衡量标准&#xff0c;在1976年由Thomas J. McCabe, Sr. 提出。 来看看计算公式。 代码环复杂度 E − N 2 E 程序控制流图中边的个数 N 程序控制流图中点的个数 很容易得出这样的结…