DQN
QLearning是用QTable来存储每个状态-动作对的Q值,如果状态和动作空间是离散且维度不高的,那么QTable这种存储形式是比较有效的;若状态和动作空间是高维连续的,那么就裂开了
Value Function Approximation
在上述情况下,既然我们无法用一个表格来精确存储与表示Q值,我们考虑用一个带参数
标签
深度学习是监督学习,需要有标签数据来计算损失函数,通过梯度下降和误差反向传播来更新神经网络的参数,那么在强化学习中如何获得标签呢?
在QLearning中,我们使用
输入 | 目标 |
---|---|
Experience Replay
- 深度学习需要大量带标签的训练数据
- 强化学习从scalar reward进行学习,但是reward经常是sparse,noisy,delayed
- 深度学习假设样本数据是独立同分布的,但是强化学习中采样的数据是强相关的
因此,DQN采用经验回放机制,将探索环境得到的数据存储到Replay Buffer中,以便后续从中随即及采样进行训练,好处如下:
- 数据利用率高
- 减少连续样本的相关性,从而减小方差
伪代码
Nature2015中对DQN进行了改进,提出了一个目标网络
