使用 DQN 的离策略 n 步学习

数据挖掘 机器学习 强化学习
2021-10-02 19:29:52

我正在查看Rainbow 论文,但我不确定我是否理解他们如何使用 DQN 进行多步学习,而无需进行任何更正以解决政策外问题。

所以。我了解如何使用 1-step update off-policy:单个转换的奖励不依赖于当前的策略,因此您可以在未来重用这种体验。

我也理解 n 步更新的意义:这是在 1 步更新中具有高偏差(因为您只能从单个转换中获得有限的信息)和在 n 步更新中具有高方差(如如果策略和环境都可以是随机的,因此您最终将 n 个随机变量加在一起)。

我不明白的是如何使用 n-step return off-policy,这就是 Rainbow DQN 似乎做的事情。使用 n 步回报,您正在考虑轨迹,并且您不能假设如果代理使用当前策略,这些轨迹就会被采用。

如果我理解正确,在策略梯度的情况下,这是使用重要性采样来处理的,这将减少远离当前策略的影响。

但是我看不到多步 DQN 的等价物吗?

1个回答

在 Rainbow 方法中,off-policy 返回值的理论正确性被完全忽略,它只是使用:

G+n=γn最大限度一个'[(小号+n,一个')]+ķ=0n-1γķR+ķ+1

与使用单步返回相比,它仍然有效并改善了结果。

他们依靠一些东西来实现这一点:

  • n与在这些步骤中发生的环境变化量相比,它并不大。因此,即使采取了探索性行动,返回通常也是正确的。许多游戏事件(以及现实世界的物理)都有一些模糊性 - 例如,只要在 Pong 中你用部分球拍击球,这将是一个合理的结果,只有一些(字面)边缘情况会导致奖励的主要区别。

  • 探索低(ε设置0.01或者0.001)

  • 奖励是稀疏的,因此 n 步回报通常只取决于状态进展。只要在小号+n小号在探索性政策和目标性政策下,简单回报大致正确。

  • 策略变化缓慢,可能需要一百万帧才能收敛到最优,这远远大于重放内存。

从 Q 学习的理论基础来看,当所采取的行动与当前学习的策略不同时,最好使用在时间步截断的“最多 n 步”返回。但是,这更复杂,因为您必须在 n 步中的每一步评估学习到的策略才能决定何时截断 - 我怀疑研究人员知道如何(λ)工作,他们可能已经尝试过了,只是发现额外的正确性不值得额外的复杂性和 CPU 成本。在其他环境中,实现这一点可能是值得的。