DQN网络是深度学习和强化学习相结合地开局之作,本篇文章主要介绍DQN网络及其扩展网络,可以了解该网络的形成及其进化的演进脉络。如下图1所示,DQN及其扩展网络的演进关系图。
DQN及其扩展 - 图1

DQN

DQN网络通过experience replay 和 target network解决非线性函数近似Q函数,经常发生不稳定和发散的问题。其中,通过随机化数据后的experience replay 移除序列关系平滑数据分布;使用target network来解决Q值和目标值的关系。
Experience Replay
每个time-step t 把智能体的experience DQN及其扩展 - 图2存储在数据集DQN及其扩展 - 图3中。
Target Network
训练神经网络时,均匀地从数据集中采样出mini-batch的数据,迭代地训练Q-Network和Target-Network。

Double Q-learning

为了解决DQN高估target的问题,该论文提出了Double Q-learning算法。该算法基于如下公式(1)作为Q函数学习的目标值,从而解决高估问题。
DQN及其扩展 - 图4 (1)

Prioritized replay

Prioritized replay的提出是基于DDQN。在这篇论文中,为了能够采样到有很大学习潜力的样本,对样本形成了概率分布,每个样本的概率与DQN及其扩展 - 图5成正比。最终,基于该方法可以加快模型的训练速度。

Dueling networks

在Double Q-learning和Prioritized replay的基础之上,提出了Dueling networks。如下图1所示,Dueling Networks的网格结构。Dueling Networks有两个流,其中一个输出当前状态的Value,另一个输出当前(s,a)的优势值,两个流合并输出(s,a)的Q值。如下公式(2)所示,两个流的合并形式。
DQN及其扩展 - 图6 (2)
1.png
图2 Dueling Networks架构
该网络被提出的核心点:对于许多状态,评估每个动作选择的价值是不必要的。

Noisy Nets

为了提高强化学习算法的探索能力,该论文提出了一个NoisyNet。NoisyNet通过对神经网络中的权重参数增加noisy,进而提高算法的探索能力。其中,权重和噪音为高斯分布形成的值,高斯分布的均值和方差可通过梯度下降方法更新。

参考文献

  1. DQN: Mnih, Volodymyr, et al. “Human-level control through deep reinforcement learning.” Nature 518.7540 (2015): 529-533.
  2. OpenAI Baselines: ACKTR & A2C
  3. Rainbow: Combining Improvements in Deep Reinforcement Learning
  4. Deep Reinforcement Learning with Double Q-Learning
  5. Prioritized Experience Replay
  6. Dueling Network Architectures for Deep Reinforcement Learning
  7. NOISY NETWORKS FOR EXPLORATION