dopamine

RL101

若如初见. 提交于 2021-01-17 10:57:32
DQN[1, 2] 是 Q-Learning 的一个扩展,可以归类为改进价值函数的参数化表示(使用神经网络来建模,而非简单的线性非线性表达),此外也更适用于“大”(或无穷)状态空间--相比与基于表格型方法,此外也简化了输入的表达形式(以 Atari game 为例)--使用连续 N 帧的 raw pixels 而非 handcrafted features(这里其实就是典型的深度学习套路了,宛如 CNN 在 ImagNet 上的屠榜)。 DQN 最早出现在 2013 年 [1],也是我手写梯度传播的年份。 DQN[2] 使用如下方法更新模型参数: 这里分为两类模型参数 Target 和 Online ,下标 i 处理的不是很合理,因为它们是独立不同步更新的,准确的来说 Online 就是标准的深度学习梯度更新,而 Target 只做周期性的拷贝 的“更新”,这也是 Q-Learning 作为 off-policy 类方法的特点。 这里以 google/dopamine 里的 DQN CartPole-v0 为例,解释其核心代码,CartPole-v0 是一个平衡类的游戏,智能体需要根据环境的 Observation 作出对应的 Action,环境给予 Reward 和新的 Observation: 截图自 https://github.com/openai/gym/wiki