核心要点

  • 离线 RL:只从固定数据集学习,训练中不与环境交互、不能采新样本

  • 核心挑战是分布偏移:学到的策略偏离数据采集策略,进入未见状态-动作

  • OOD 动作价值高估:Q 网络对数据外动作过度乐观,自举误差被放大

  • 常见对策:约束策略接近行为策略,或保守地压低 OOD 动作价值(CQL、BCQ)

标准回答

设定

离线(batch)RL 只使用一份预先收集好的固定数据集训练,训练过程中智能体不与环境交互、无法主动探索或纠错。适合医疗、自动驾驶等在线试错代价高的场景。

主要挑战

  • 分布偏移(Distributional Shift):学到的策略会偏离采集数据的行为策略,从而访问到数据集中没覆盖的状态-动作分布
  • OOD 动作价值高估:基于 Bootstrapping 的 Q 学习会对分布外(out-of-distribution)动作给出过度乐观的价值估计,且这种误差在自举中不断累积放大,却没有真实环境反馈来纠正
  • 数据质量受限:策略上界受数据集覆盖度与质量约束,数据没探索过的好动作学不到

典型对策

  • 策略约束:让学到的策略不要偏离行为策略太远(如 BCQ、BEAR)
  • 保守价值:CQL 等显式压低 OOD 动作的 Q 值,避免高估
  • 不确定性惩罚:对低置信度区域降权

常见误区

⚠️ 常见踩坑

把离线 RL 等同于「先离线再继续在线微调」——纯离线设定下完全不交互;问题根因是 OOD 动作的价值高估而非单纯过拟合,故用保守/约束类方法而非普通正则化解决。

追问

追问 1CQL 是如何缓解价值高估的?

CQL(Conservative Q-Learning)在标准 Q 学习目标上加一项正则,主动压低数据集中未出现(OOD)动作的 Q 值、同时抬升数据内动作的 Q 值,得到真实价值的保守下界,从而避免策略被高估的 OOD 动作误导。

追问 2为什么离线 RL 不能简单地多跑几轮在线探索来修正?

因为离线设定的前提就是不能与环境交互——可能出于安全(自动驾驶、医疗)或成本原因。没有新数据来纠正自举产生的高估误差,正是它区别于在线 RL 的根本难点,必须靠策略约束或保守估计在训练阶段就抑制误差。

延伸学习

与本题相关的知识库文章、术语、工具与行业资讯。