This commit is contained in:
qiwang067
2021-05-15 13:54:59 +08:00
parent 2de826a55d
commit 9fde158e87

View File

@@ -19,7 +19,7 @@
> 通常假设样本空间中全体样本服从一个未知分布,我们获得的每个样本都是独立地从这个分布上采样获得的,即独立同分布(independent and identically distributed简称 i.i.d.)。
![](img/1.3.png)
![](img/1.3.png ':size=350')
在强化学习里面,这两点其实都不满足。举一个 Atari Breakout 游戏的例子,这是一个打砖块的游戏,控制木板左右移动把球反弹到上面来消除砖块。
@@ -61,7 +61,7 @@
* 你也可以把股票交易看成一个强化学习的问题,就怎么去买卖来使你的收益极大化。
* 玩雅达利游戏或者一些电脑游戏,也是一个强化学习的过程。
![](img/1.9.png)
![](img/1.9.png ':size=350')
上图是强化学习的一个经典例子,就是雅达利的一个叫 Pong 的游戏。这个游戏就是把这个球拍到左边,然后左边这个选手需要把这个球拍到右边。训练好的一个强化学习 agent 和正常的选手有区别,强化学习的 agent 会一直在做这种无意义的一些振动,而正常的选手不会出现这样的行为。
@@ -104,8 +104,6 @@
* Standard RL之前的强化学习比如 TD-Gammon 玩 backgammon 这个游戏,它其实是设计特征,然后通过训练价值函数的一个过程,就是它先设计了很多手工的特征,这个手工特征可以描述现在整个状态。得到这些特征过后,它就可以通过训练一个分类网络或者分别训练一个价值估计函数来做出决策。
* Deep RL现在我们有了深度学习有了神经网络那么大家也把这个过程改进成一个端到端训练(end-to-end training)的过程。你直接输入这个状态,我们不需要去手工地设计这个特征,就可以让它直接输出动作。那么就可以用一个神经网络来拟合我们这里的价值函数或策略网络,省去了特征工程(feature engineering)的过程。
![](img/1.16.png)
为什么强化学习在这几年就用到各种应用中去,比如玩游戏以及机器人的一些应用,并且可以击败人类的最好棋手。
这有如下几点原因:
@@ -257,7 +255,7 @@ $$
我们来看一个走迷宫的例子。
* 要求 agent 从 start 开始,然后到达 goal 的位置。
* 每走一步,你就会得到一个负的奖励。
* 每走一步,你就会得到 -1 的奖励。
* 可以采取的动作是往上下左右走。
* 当前状态用现在 agent 所在的位置来描述。
@@ -333,7 +331,7 @@ A: 针对是否需要对真实环境建模,强化学习可以分为有模型
* 免模型学习更为简单直观且有丰富的开源资料,像 DQN、AlphaGo 系列等都采用免模型学习;
* 在目前的强化学习研究中,大部分情况下环境都是静态的、可描述的,智能体的状态是离散的、可观察的(如 Atari 游戏平台),这种相对简单确定的问题并不需要评估状态转移函数和奖励函数,直接采用免模型学习,使用大量的样本进行训练就能获得较好的效果。
![](img/1.36.png ':size=550')
![](img/1.36.png ':size=400')
把几类模型放到同一个饼图里面。饼图有三个组成部分:价值函数、策略和模型。按一个 agent 具不具有三者中的两者或者一者可以把它分成很多类。
@@ -341,10 +339,10 @@ A: 针对是否需要对真实环境建模,强化学习可以分为有模型
Learning 和 Planning 是序列决策的两个基本问题。
![](img/learning.png)
![](img/learning.png ':size=450')
在强化学习中环境初始时是未知的agent 不知道环境如何工作agent 通过不断地与环境交互,逐渐改进策略。
![](img/planning.png)
![](img/planning.png ':size=450')
在 plannning 中环境是已知的我们被告知了整个环境的运作规则的详细信息。Agent 能够计算出一个完美的模型并且在不需要与环境进行任何交互的时候进行计算。Agent 不需要实时地与环境交互就能知道未来环境,只需要知道当前的状态,就能够开始思考,来寻找最优解。