Datawhale干货
方向:强化学习,来源:机器之心
在奖励中减去平均奖励
但这些强化学习方法仍有改进空间。前些日子,强化学习之父、阿尔伯塔大学教授 Richard Sutton 的团队低调更新了一篇论文,其中提出了一种新的通用思想 Reward Centering,并称该思想适用于几乎所有强化学习算法。这里我们将其译为「奖励聚中」。
该论文是首届强化学习会议(RLC 2024)的入选论文之一。一作 Abhishek Naik 刚刚从阿尔伯塔大学获得博士学位,他是 Sutton 教授的第 12 位博士毕业生。
论文标题:Reward Centering 论文地址:https://arxiv.org/pdf/2405.09999
这里研究的问题是持续性问题,即智能体和环境的交互会无限地进行。智能体的目标是最大化长期获得的平均奖励。为此,该团队考虑了估计每个状态的预期折扣奖励总和的方法:
奖励聚中思想很简单:从奖励中减去实际观察到的奖励的平均值。这样做会让修改后的奖励看起来以均值为中心。
这种以均值为中心的奖励在 bandit 设置中很常见。举个例子,Sutton 和 Barto 在 2018 年的一篇论文中表明,根据观察到的奖励估计和减去平均奖励可以显着提高学习速度。
而这里,该团队证明所有强化学习算法都能享受到这种好处,并且当折现因子 γ 接近 1 时,好处会更大。
奖励聚中之所以这么好,一个底层原因可通过折现价值函数的罗朗级数(Laurent Series)分解来揭示。
折现价值函数可被分解成两部分。其中一部分是一个常数,并不依赖状态或动作,因此并不参与动作选取。
用数学表示的话,对于与折现因子 γ 对应的策略 π 的表格折现价值函数:
这种 Laurent 级数分解能解释奖励聚中为何有助于解决 bandit 问题。
在完整的强化学习问题中,与状态无关的偏移可能会相当大。举个例子,图 2 中展示的三状态马尔科夫奖励过程。如果状态从 A 变成 B,则奖励是 +3,否则都是 0。平均奖励为 r(π) = 1。右侧表中给出了三个折现因子的折现状态值。
可以看到,这个已经聚中的值在幅度上要小得多,并且当折现因子增大时,也只会发生轻微变化。这里还给出了微分值以供参考。
这些趋势普遍成立:对于任意问题,折现值的幅度都会随着折现因子接近 1 而急剧增加,而聚中折现值则变化不大,并接近微分值。
从数学上看,聚中折现值是平均聚中奖励的预期折现和:
因此,奖励聚中能够通过两个组件(恒定平均奖励和聚中折现值函数)捕获折现值函数中的所有信息。这种分解非常有价值:
当γ→1时,折现值趋于爆炸,但聚中折现值仍然很小且易于处理。 如果问题的奖励偏移了一个常数 c,那么折现值的幅度就会增加 c/(1 − γ),但聚中折现值会保持不变,因为平均奖励也会增加 c。
使用奖励聚中时,还可以设计出在智能体的生命周期内可以改变折现因子(算法参数)的算法。对于标准折现算法来说,这通常是低效或无效的,因为它们的非聚中值可能会发生巨大变化。相比之下,聚中值可能变化不大,当折现因子接近 1 时,变化会变得微不足道。
当然,为了获得这些潜在好处,首先需要基于数据估计出平均奖励。
简单奖励聚中以及基于价值的奖励聚中
该团队表明,如果行为策略采取目标策略所做的所有操作,那么可以使用 TD 误差很好地近似目标策略的平均奖励:
无聚中的 TD 学习(蓝色)最终达到了与 oracle 聚中算法(橙色)相同的误差率,这符合预期。
简单聚中方法(绿色)确实有助于更快地降低 RMSVE,但其最终误差率会稍微高一点。这也符合预期,因为平均奖励估计会随时间而变化,导致与非聚中或 oracle 聚中版本相比,更新的变数更大。当 γ 更大时也有类似的趋势。这些实验表明,简单的奖励聚中技术在在策略设置中非常有效,并且对于较大的折扣因子,效果更为明显。
在学习率和渐近误差方面,基于价值的奖励聚中(红色)在在策略问题上与简单聚中差不多。但在离策略问题上,基于价值的聚中能以更快的速度得到更低的 RMSVE,同时最终误差率也差不多。
总体而言,可以观察到奖励聚中可以提高折现奖励预测算法(如 TD 学习)的学习率,尤其是对于较大的折扣因子。虽然简单奖励聚中方法已经相当有效,但基于价值的奖励聚中更适合一般的离策略问题。
此外,该团队还研究了奖励聚中对 Q 学习的影响。具体的理论描述和实验过程请访问原论文。
总之,实验表明,奖励聚中可以提高 Q 学习算法的表格、线性和非线性变体在多种问题上的性能。当折现因子接近 1 时,学习率的提升会更大。此外,该算法对问题奖励变化的稳健性也有所提升。
看起来,奖励聚中这个看起来非常简单的方法确实可以显著提升强化学习算法。你怎么看待这一方法,会在你的研究和应用中尝试它吗?