平均深度Q网络¶
概述¶
Averaged-DQN 是在 Averaged-DQN: Variance Reduction and Stabilization for Deep Reinforcement Learning 中提出的。Averaged-DQN 是 DQN 算法的一个简单扩展,基于对先前学习的 Q 值估计进行平均,从而通过减少目标值中的近似误差方差来实现更稳定的训练过程和更好的性能。与同样解决高估问题的 Double DQN 相比,Averaged-DQN 尝试了不同的方法但达到了相同的目标,并提供了更多关于背后原因的分析。
快速事实¶
Averaged-DQN 是一种无模型且基于价值的强化学习算法。
Averaged-DQN 仅支持 离散 动作空间。
Averaged-DQN 是一种 离策略 算法。
通常,Averaged-DQN使用eps-greedy进行探索。
关键方程或关键图表¶
Q函数更新差异可以分为三个部分:
其中目标网络 \(Q(s,a; \theta_{i})\) 是 DQN 在第 \(i\) 次迭代时的价值函数,\(y_{s,a}^i\) 是DQN 目标,而 \(\hat{y}_{s,a}^i\) 是真实目标。尽管存在最优性差异,这两种误差都会导致高估。
目标近似误差(TAE)是在最小化学习到的\(Q(s,a; \theta_i)\)和\(y_{s,a}^i\)之间的DQN损失时的误差。它可能是由于不精确的最小化导致的\(\theta_i\)的次优性、DQN的有限表示能力(模式误差)以及来自有限ER缓冲区之外的未见状态-动作对的泛化误差引起的。最终,它会导致策略偏离到更差的策略。
高估误差(OE)最初来源于TAE或噪声、初始化等随机因素,但在TD更新过程中通过自举机制严重放大了这一初始误差。Double DQN通过打破这种自举机制来解决高估问题,并降低了OE。
Averaged-DQN 专注于原始误差 TAE 并尝试将其控制在最小限度内,这也会对 OE 的发展产生不利影响。通过将 DQN 的结果与其元参数 \(K\) 的前一个版本进行平均,可以将值方差降低到 DQN 的 \(\frac{1}{K}\)。
伪代码¶
与DQN相比,averaged-DQN在最小化DQN损失(第7行)时,需要\(K\)倍的前向传递通过Q网络及其之前的\(K\)个版本,但反向传播更新与DQN相同。算法的输出是最后\(K\)个先前学习的Q网络的平均值。
扩展¶
- Averaged-DQN can be combined with:
PER(优先经验回放)
双(目标)网络
实现¶
待合并
基准测试¶
参考¶
Oron Anschel, Nir Baram, 和 Nahum Shimkin. 2017. Averaged-DQN: 深度强化学习的方差减少和稳定化. 在第34届国际机器学习会议 - 第70卷 (ICML’17) 的会议记录中. JMLR.org, 176–185.
Mnih, Volodymyr, 等人。 “通过深度强化学习实现人类水平的控制。” 自然 518.7540 (2015): 529-533.
Van Hasselt, H., Guez, A., & Silver, D. (2016年3月). 使用双Q学习的深度强化学习. 在AAAI人工智能会议论文集 (第30卷, 第1期).