如何在折扣奖励和平均奖励之间进行选择?

数据挖掘 强化学习 dqn 折扣奖励
2021-10-10 21:09:37

如何在平均奖励和折扣奖励之间进行选择?

  • 什么时候平均奖励比折扣奖励更有效,反之亦然?

  • 是否可以在问题中同时使用它们?因为据我了解,RL 奖励是基于平均奖励或折扣未来奖励,但我认为本文将折扣和平均一起使用。是否正确:我们在测试和评估中使用折扣未来奖励来训练和平均奖励?我的理解有什么问题?

在这张图片中,论文“ Playing Atari with Deep Reinforcement Learning ”的图2:

在此处输入图像描述

作者报告了“平均奖励”。然而,在同一篇论文中,作者也提到了“折扣奖励”。所以,我很困惑。折扣奖励和平均奖励有什么区别?

2个回答

该图中的平均奖励用于衡量绩效。换句话说,代理玩游戏的分数。您不跟踪每集的奖励,因为这并不表示学习过程的总体改进。相反,您跟踪训练时期的平均奖励。如果它稳步增加,这意味着您的代理确实在学习。

折扣奖励用于创建某种未来奖励依赖关系,并用于学习方程。因此,与其根据您收到的即时奖励来评估特定状态的好坏,您还需要考虑下一个状态的未来奖励。在 RL 中,您尝试最大化您的预期回报,并且一些方法会估计每个状态的预期回报。

请注意,我的回答给出了高级别的描述,并不是指特定的 RL 算法(因为有很多变体)。我建议您在转向 RL 和函数逼近器组合之前很好地理解 Q 学习的简单表格形式。

为了考虑它们是否可以一起使用,让我们这样看。

折扣由论文中的“折扣因子”或伽马符号确定。这个超参数总是存在于return的计算中。您可以通过设置 gamma=1 将您的环境调整为完全没有折扣,或者您可以通过将 gamma 设置为低于 1 来选择有折扣。调整这可能会影响您的学习表现。

对于图 2 中的平均奖励,论文称“一个 epoch 对应于 50000 次 minibatch 权重更新或大约 30 分钟的训练时间”。在这 30 分钟内,特工不会只播放一集,而是会播放很多集。每个播放的剧集都会产生一个回报(在计算中包含该伽玛的总奖励)。平均奖励是直接从同一时期的那些情节中计算出来的。如果您不喜欢平均值,您可以选择 max 或 min 或任何其他运算符。这取决于你想看到什么。

这两件事是您可以选择独立调节的两个旋钮。