- 标题:Offline reinforcement learning with implicit Q-Learning
- 文章链接:Offline reinforcement learning with implicit Q-Learning
- 代码:ikostrikov/implicit_q_learning
- openreview:Offline Reinforcement Learning with Implicit Q-Learning
- 发表:ICLR 2022
- 领域:离线强化学习(offline/batch RL)—— IL-Based
- 【本文为速览笔记,仅记录核心思想,具体细节请看原文】
- 摘要:Offline RL 需要协调两个相互冲突的目标:学得策略要尽量优于收集 Offline 数据集的 behavior policy,同时还要最小化与 behavior policy 的偏差以避免由于 distribution shift 而导致的错误。这种 trade-off 是至关重要的,因为当前大多数 Offline RL 方法需要在训练过程中查询 unseen 的动作的价值来改进策略,为了减少估计误差,这些 应当约束在 behavior policy 诱导的分布附近,或者规范它们价值靠近 behavior policy 的价值。我们提出了一种新的 Offline RL 方法,该方法不需要评估数据集之外的动作,但仍能通过泛化使学习到的策略大大超过数据集中的最佳行为。我们的工作的主要见解是,不去评估最新策略在 unseen 动作下的 价值,而是通过将
状态下的最优动作的Q价值
看作一个随机性由动作决定的随机变量
来隐式地估计 policy improvement 步骤,然后将随机变量的估计期望上界作为此状态下最优动作的 价值,这利用了函数近似器的泛化能力来估计给定状态下的最佳可用动作的价值,而无需直接查询这个 unseen 动作的 价值。我们的算法在拟合这个上期望值函数和将其备份为一个 函数之间交替,没有任何显式的策略。然后我们通过 advantage-weighted behavioral cloning 来提取策略,这也避免了查询 OOD 样本的操作。我们将我们的方法称为 implicit Q-learning (IQL),它易于实现,计算效率高,并且只需要额外训练一个具有非对称 L2 损失的 Critic。IQL 在 D4RL 数据集上表现出 SOTA 的性能,我们还演示了 IQL 在 Offline 初始化后使用 Online 交互实现了很强的 fine-turn 性能
文章目录
- 1. Offline RL 背景
- 2. 本文方法
- 2.1 思想
- 2.2 方法细节
- 3. 实验
1. Offline RL 背景
Offline RL
是这样一种问题设定:Learner 可以获取由一批 episodes 或 transitions 构成的固定交互数据集,要求 Learner 直接利用它训练得到一个好的策略,而且禁止 Learner 和环境进行任何交互,示意图如下
关于 Offline RL 的详细介绍,请参考 Offline/Batch RL简介- Offline RL 是近年来很火的一个方向,下图显示了 2019 年以来该领域的重要工作
过去的许多 Offline RL 方法都涉及到 价值的评估,这就涉及到distribution shift / extrapolation error
问题,如果是迭代的 multi-step off-policy 评估,还会受到Iterative error exploitation
问题影响,在 one-step 论文 中这些都有了详细分析。过去的方法从各种角度出发缓解这两个问题,可以如下分类
2. 本文方法
2.1 思想
- 在 Offline 数据集上进行 policy evaluation 时,Bellman 迭代中涉及的 OOD 的 会导致 distribution shift,过去 policy constrain 和 value constraint 类方法都无法完全回避此问题,one-step 类方法虽然可以回避,但失去了 multi-step DP 能力。本文通过 expectile regression 进行隐式的策略评估,在完全避免 OOD 访问以避免 distribution shift 的同时,仍能执行 multi-step DP,从而学到更好的 ,最后用 AWR 方法(一种优势加权模仿学习)从
- 本文提出的 IQL 本质上属于 IL-Bsaed 类方法,它学习价值估计只是为了进行优势加权 BC
2.2 方法细节
目标是只在数据集上所含的 进行应用 Bellman optimal operator,从而回避 OOD 的 (文章所谓的 “SARSA-like”)
其中 是 target 网络,- 作者如下使用
expectile regression(期望回归)
方式实现这个操作
其中 是一个非对称 L2 损失,如下所示 - 当 时 退化为 MSE; 越接近 1,模型就越倾向拟合那些 TD error 更大的 transition,从而使 估计靠近数据集上的上界;当 时可认为得到了
直接使用 (2) 的问题在于引入了环境随机性 ,一个大的 TD target 可能只是来自碰巧转入的 “好状态”,即使这个概率很小,也会被 expectile regression 找出来,导致 。为此作者又学习了一个独立的 价值
这里 会近似 ,然后使用如下 MSE loss 来消除 的随机性
总的来看,就是使用 (3) (4) 实现 (2),达成 (1) 的思想,这里 (3) (4) 可以多步迭代计算实现 multi-step DP,且整个过程不需要访问价值收敛得到 后,直接用 AWR 方法,通过最大化下式来提取策略
其中 是一个逆温度系数,取值较小时类似 BC;取值较大时会试图做加权 BC 来恢复 ,注意这个过程也无需访问- 将上诉过程总结为如下伪代码
- 注意这里 “策略评估” 和 “策略提取” 是互相解耦的,提取出的策略不会以任何方式影响值函数,因此二者可以同时执行,也可在评估完成后执行,个解耦思路也出现了后来的 POR 方法中。另外,本文使用 Clipped Double Q-Learning 来缓解 Q 价值的高估
- 在 MuJoCo 的连续控制任务和 Ant Maze 任务上测试结果如下
- 这里选择的 MuJoCo 数据中都有相当一部分接近最优的轨迹,奖励比较密集,适合于 one-step 和简单 BC,这时 IQL 能取得相媲美的结果;
- Antmaze、kitchen 和 adroit 环境中轨迹质量都比较差,需要 agent 具有较强的次优轨迹拼接能力,这时 IQL 通过执行 multi-step DP 能得到更好的 ,远超过 DT、one-step 等方法;由于更好地缓解了 distribution shift,超过 TD3+BC 和 CQL 等约束类方法
- IQL 在训练时间上也有优势
- 作者在 AntMaze 环境上检查了 expectile regression 中超参数 的影响,如下
- 我个人感觉这里 ,另外针对 expectile regression 学得
- 由于 IQL 初始 offline 训练性能良好,且其使用的 weighted BC 式策略提取器在 online fine-turn 过程中通常由于其他类型的策略约束,IQL 也具有很好的 online fine-turn 能力,如下