](https://deep-paper.org/en/papers/2025-10/2006.04779/images/cover.png)
从过去中学习:保守 Q 学习如何解锁离线强化学习
想象一下,我们正在训练一个机器人来做饭。在强化学习 (RL) 中,传统的方法是试错法。机器人可能会尝试捡起一个鸡蛋——有时成功,有时失手摔落弄得一团糟。经过数千次尝试,它最终学会了。但如果我们已经拥有一个人类厨师做饭的海量数据集呢?机器人能否仅仅通过观察就学会,而无需自己打碎任何一个鸡蛋? 这就是**离线强化学习 **(也称为批量强化学习,Batch RL) 的愿景。它旨在完全依靠静态、预先收集的数据集来学习有效策略——从而无需进行成本高昂、缓慢甚至可能有危险的真实世界交互。这可能会为强化学习在机器人、自动驾驶或药物研发等复杂领域的应用带来巨大变革,因为这些领域拥有大量的历史数据日志,但无法进行无休止的实时实验。 离线学习的风险: 分布偏移 要理解为何离线强化学习如此困难,我们先来回顾一下 Q 学习的基础。在强化学习中,智能体会学习一个Q 函数 \(Q(s, a)\),它估计在状态 \(s\) 下采取动作 \(a\),并在此后始终以最优方式行动时所能获得的总未来奖励。智能体的策略 \(\pi(a|s)\) 则是在状态 \(s\) 下选择能最大化该 Q 值的动作方案。 在 Actor-Critic (演员-评论家) 框架中,这一过程通常是一个两步循环: 策略评估 (Policy Evaluation): 更新 Q 函数,以反映当前策略的表现。 策略提升 (Policy Improvement): 更新策略,使其倾向于选择更高 Q 值的动作。 图: 标准的 Actor-Critic 循环: Q 函数评估当前策略;策略更新以偏好高价值的行动。 当智能体可以自由探索时,这套机制运行良好。如果它高估了某个糟糕动作的价值,它可以尝试该动作,看到不理想的结果,然后修正自己。 但在离线强化学习中,智能体无法进行探索。它只能使用由某个行为策略 \(\pi_\beta\) 收集的固定数据集。随着学习到的策略 \(\pi\) 不断优化,它会逐渐偏离 \(\pi_\beta\)。这种现象被称为分布偏移 (distributional shift) 。 智能体可能会开始相信某个从未见过的动作非常出色——例如,一个机械臂觉得用最大速度去抓积木是最佳方法。如果数据集中不存在这种高速动作 (因为数据是由人类谨慎地收集的) ,那么由具备泛化能力的神经网络驱动的 Q 函数就会在缺乏证据的情况下进行外推。这种外推往往会极度乐观。 这可能造成一个危险的反馈循环: Q 函数给某个分布外 (out-of-distribution, OOD) 的动作赋予很高的价值。 策略更新倾向于选择这种“极佳”但从未出现过的动作。 随后的评估包含这些 OOD 动作,进一步强化了错误的乐观估计。 没有真实环境的反馈,价值估计就可能失控,最终导致灾难性的策略。早期的一些方法试图约束学习到的策略,使其与 \(\pi_\beta\) 保持“接近”。而保守 Q 学习 (Conservative Q-Learning, CQL) 则直击问题根源——直接处理错误的 Q 值。 ...