极其简洁的 Offline-to-Online (O2O) RL 算法 SO2,只需两个简单 trick:使用加入噪声的 action 来更新 Q 值+增大 Q 值更新频率,就可使 offline-to-online RL 领域的算法性能大幅度提升。从Q值估计的角度重新审视Offline-to-Online强化学习

AAAI 2024 高分作:Offline-to-Online 强化学习算法 SO2!

极其简洁的 Offline-to-Online (O2O) RL 算法 SO2,只需两个简单 trick:使用加入噪声的 action 来更新 Q 值+增大 Q 值更新频率,就可使 offline-to-online RL 领域的算法性能大幅度提升。

1. Halfcheetah 一骑绝尘:仅用 170K Env Steps 就可以在 Halfcheetah 环境上达到 1.3w+ 的累积回报,而 300K 则可以超过 1.6w+。强化学习社区尝试训练过 MuJoCo 环境的同学肯定深有感受:online RL 的最强算法 SAC, 一般需要 3M Env Steps 才能到 1.2w 的累积回报,之后无论再训练多长时间,1.6w 水准的 Halfcheetah 几乎都是遥不可及。

SO2~~_人工智能

图1. Halfcheetah 环境训练曲线对比图

2. MuJoCo 一招鲜吃遍天: 这种训练方法在所有 MuJoCo 环境和数据集上都大幅领先其他 offline-to-online RL baseline 方法。

SO2~~_人工智能_02

图2. MuJoCo 不同环境和数据集上各类 O2O 算法的表现

论文题目: A Perspective of Q-value Estimation on Offline-to-Online Reinforcement Learning

论文链接:https://arxiv.org/abs/2312.07685

开源代码链接:https://github.com/opendilab/SO2

引言

离线强化学习(offline reinforcement learning/batch reinforcement learning)可谓是近年来最火热也最重要的强化学习子领域,在各类决策任务中都展现出了惊艳的效果,相关的上下游任务也都发展得十分迅速。其中,基于离线强化学习已经训练收敛的策略,再继续进行后续的在线学习,这种训练方式就是本文研究的核心目标——offline-to-online reinforcement learning。

尽管目前这个方向已经出现了一些优秀的研究成果,但这些工作主要着眼于引入其他在线学习方法中的复杂设计,尝试去解决 O2O 训练中状态-动作分布飘移(shift)的问题。这些方法往往显著加大算法复杂度,同时又面临保障持续训练稳定性的挑战。

SO2~~_离线_03

图3. SO2 算法设计动机示意图。通过两个关键设计,SO2 显著缓解了值函数估计问题

为了提供一种简单统一的方法来释放离线到在线强化学习的潜力,来自悉尼大学,香港中文大学,北京大学,以及上海人工智能实验室(OpenDILab 团队)等机构的研究者们从 Q 值估计的全新视角出发,结合现在广泛使用的强化学习技术,实现了统一简单高效的离线到在线的强化学习。此外,还提供了关于动作值函数估计偏差分析的相关方法,以及相应的评测分析,深入理解 O2O 领域的挑战与机遇。

背景与贡献

尽管离线强化学习的算法研究和应用落地取得了诸多进展,但离线到在线强化学习(Offline-to-Online RL)仍然面临一系列困难和挑战,甚至在训练过程中常常出现完全崩溃的情况。具体来说,离线到在线强化学习的核心是在从离线预训练到在线学习的过程中维持有效的策略和决策。在 offline RL 中,由于缺乏在线交互,Q 值(一种衡量在特定状态下执行某动作的预期回报的指标)的估计容易产生偏差,而同时 online RL 需要准确的 Q 值来指导策略的优化和决策。因此,如何在离线到在线的训练转换中正确处理 Q 值估计,就成为 O2O RL 的关键问题。本文基于一个之前常常被忽视的视角,针对 O2O RL 中的 Q 值估计偏差问题进行深入研究和解决,并提出了一种新方法。具体来说:

1. 量化分析了离线强化学习训练过程中 Q 值估计可能产生的偏差及其对在线强化学习阶段的影响;

2. 提出了一种新算法 SO2,通过引入特定的技术手段减轻上文所述的偏差,提高 Q 值估计的准确性。这些技术包括对目标动作的扰动处理,以及提高 Q 值更新的频率,以加速学习过程并减少由离线训练带来的偏差。

这项工作的重要性在于,它不仅提供了一种提高 O2O RL 性能的具体技术路径,也为理解和解决 O2O RL 中的关键问题提供了新视角——Q 值估计的准确性。通过这项研究,可以更好地理解在离线到在线转换过程中如何处理和优化 RL 算法,从而推动整个强化学习领域的发展。

Q 值估计误差问题的分析与评估

和离线强化学习与在线强化学习领域类似,O2O RL 同样面临严重的 Q 值估计偏差问题,同时,由于离线数据集和在线样本之间可能存在更严重的数据分布漂移,该问题的复杂性更为棘手。因此,本文将针对离线到在线强化学习(O2O RL)中的 Q 值估计问题进行系统性的分析和评估。

SO2~~_在线学习_04

图4. 各类强化学习方法性能对比。其中 Online 方法已特殊标出。

首先,本小节会对 Q 值估计误差问题进行详细介绍。上面所示的图 4 对比了多种标准 online RL 方法和使用在线微调的 offline RL 方法的性能。以标准 online RL 方法的结果为基线,可以观察到这些直接使用在线微调的 offline RL 方法——包括 TD3-BC ,CQL,EDAC 和它们的 Loose 变体(减少保守估计的约束),在后续的在线学习中性能提升速度都显著变慢。

换句话说,虽然这些离线强化学习算法在离线设置中表现出色,但在后续的在线学习期间性能提升缓慢甚至会出现退化。因此,可以观察到 O2O RL 并不能简单迁移之前的算法,其中的优化问题面临着严峻挑战。

为了分析关于 Q 值估计的问题,本文提出了两个量化标准:

1. Q 值的标准化差异 (Normalized difference of the Q-value)

2. 基于 Q 值的肯德尔 τ 系数 (Kendall’s τ coefficient over Q-value)

首先,Q 值的标准化差异可以来衡量估计的 Q 值与真实 Q 值之间的差异。具体来说,实验中先计算真实 Q 值和对应的估计 Q 值,其中真实 Q 值是基于当前策略收集的充分延长轨迹上实际获得的回报来计算的,提供了真实 Q 值的准确反映,然后对两者之间的差异进行标准化差异计算,从而提供每种强化学习方法 Q 值估计的误差程度。

另外,为了突出在线 RL 算法与离线 RL 算法之间的差异,实验中还从离线 RL 算法的标准化差异中减去在线 RL 基线(如 SAC)的标准化差异。因此,正的标准化差异意味着离线 RL 算法的 Q 值估计相对于在线基线有过高估计的倾向,反之则意味着低估。

SO2~~_人工智能_05

图5. 几种 offline RL 算法 Q 值的标准化差异的对比图

从图 5 中可以观察到 TD3-BC 和 CQL 通常会过高估计在线收集的未见状态-动作对的 Q 值,而 EDAC 面临着显著的Q 值低估问题。

其次,基于 Q 值的肯德尔 τ 系数可以用来衡量估计的 Q 值的排序准确性。肯德尔 τ 系数(Kendall's τ coefficient)是一种用于衡量两组数据之间排序相关性的统计方法。它评估的是两个变量的排列顺序之间的相似性。具体的计算原理如下:

1. 数据准备:

  • 从预训练的策略中回放多个 episode,收集状态-动作对。
  • 使用滑动窗口方法在每个 episode 中选择状态-动作对的集合,记为P_i,其中 i 表示窗口编号。

2. 计算估计的 Q 值和真实 Q 值:

  • 对于每个集合 P_i 中的所有状态-动作对,计算它们的估计 Q 值和真实 Q 值。

3. 计算肯德尔系数:

  • 对每个集合 P_i ,计算肯德尔系数,记为 K_i。
  • 计算所有集合的系数的平均值。
  • 最终 τ 的值在-1到1之间,值为1表示完全正相关,-1表示完全负相关,0表示无相关。

通过肯德尔 τ 系数可以评估离线强化学习算法在估计 Q 值排序准确性方面的表现。较低的 τ 系数表明离线 RL 算法在 Q 值估计的排序准确性上明显逊于在线 RL 算法,这可能导致训练不稳定和性能提升缓慢。

SO2~~_在线学习_06

图6. 不同算法 Q 值的肯德尔 τ 系数对比

图 6 中显示 offline RL 算法的 τ 系数明显低于 online RL算法(SAC),表明它们在评估不同状态-动作对的相对质量方面并不够准确。

上述的分析说明:虽然这些离线算法(CQL、TD3-BC和EDAC)在预训练后表现出色,并为在线学习提供了良好的初始行为,但它们在不同环境和不同训练设置下,由于 Q 值估计的偏差和排序不准确而导致性能提升缓慢且稳定性差。因此,如何获得准确的 Q 值估计是 O2O RL 的重要瓶颈。

SO2 方法介绍

为了解决上文中分析的 Q 值估计问题,本文基于强化学习中广泛使用的算法设计技巧,提出了两种主要的解决方案:

  • 扰动值更新(Perturbed Value Update, PVU)
  • 增加Q值更新频率

首先,扰动值更新(Perturbed Value Update,PVU)可以对目标动作进行额外的噪声扰动,以平滑带有尖峰的偏差 Q 值估计。这种方法防止智能体过度拟合于过去可能有效但不一定适用于新情况的特定动作。

通过引入带噪声的动作,鼓励智能体在下一个状态中探索不同的动作,减少高估偏差。换句话说,这种设计鼓励智能体考虑一系列合理的动作,而不是固定在某一个看似最优的动作上,从而产生更准确的价值估计,减轻 online RL 中的价值估计偏差。其次,增加 Q 值更新频率则是一种更自然的想法。对于存在偏差的 Q 值估计,自然需要适当增加更新频率,以便快速收敛到正常水平。增加 Q 值和策略的更新频率使学习过程更能响应新的数据。这导致更准确的价值估计和更快地收敛到最优策略。

这两种技术共同提高了 Q 值函数估计的准确性,并进一步改善了在线学习期间的性能,具体的算法伪代码如下所示:

SO2~~_人工智能_07

图7. SO2 算法伪代码

实验分析

SO2~~_人工智能_08

SO2~~_强化学习_09

图8. MuJoCo 环境中 SO2 和其他算法的对比示意图和表格

尽管算法设计非常简单,但 SO2 算法却可以在 O2O RL 问题中表现出非常强大的性能。上图所示的学习曲线对比展示了在不同数量的训练步骤下的性能,SO2 在样本效率和渐近性能方面显著优于所有基准。与其他算法相比,SO2 在利用少量样本时表现出极高效率。同时在经过充分训练后,也可以看到 SO2 在长期训练中的优势。

SO2~~_离线_10

图9. 各个算法在不同环境的 Q 值标准差

在图 9 中,还可以观察到在不同实验条件下 SO2 表现为较低的 Q 值标准差,从而体现了SO2 性能收益和之前的 Q 值分析的一致性。

SO2~~_人工智能_11

图10. 基于随机数据集的SO2与在线强化学习的对比

此外,图 10 还表明即便使用随机策略收集的离线训练数据,SO2 仍然可以通过少量在线交互实现专家级性能。这体现了离线到在线强化学习的巨大潜力,并不像模仿学习那样需要大量的专家数据。

SO2~~_在线学习_12

图11. Adroit 环境中各个算法的性能对比

SO2~~_强化学习_13

图12. SO2 算法和之前 O2O RL 算法的组合效果

同时,SO2 也展现出强大的扩展性,兼容性和泛化性。Adroit 环境中的实验(图11)仍然体现了 SO2 的优异性能。而图 12 中的复合实验则说明,SO2 算法可以组合应用到之前的各类 O2O 算法中,更加增强这些算法的最终效果。

展望

O2O RL仍有很多尚未解决的算法问题和应用挑战,未来的工作将会继续探索和扩展 Q 值估计在离线到在线强化学习(O2O RL)的实际应用。研究如何进一步提高 Q 值估计的准确性和效率,以更好地适应和解决实际应用中的挑战。具体来说,如何进一步优化 Q 值估计方法,提高 Q 值估计的准确性和稳定性首当其冲。这可能包括开发新的算法框架,或对现有方法进行调整和优化。

其次,如何应用于更多场景和任务,将所提出的方法应用于更广泛的环境和任务,以验证其泛化能力和实用性,不仅仅局限于游戏或模拟环境的应用,而是扩展到更多现实世界中的复杂和动态场景。最后,除了实证研究外,也还需要更深入的理论研究,对 Q 值估计的理论基础进行更深入的探索和分析,以更好地理解其在不同决策场景下的行为和效果。