跳转到内容

分布偏移与保守估计:CQL、IQL

离线 Q-learning 会高估数据集中未出现的动作。CQL 显式压低这些动作的 Q 值;IQL 用期望回归只在数据集内动作上做改进,避免查询 OOD 动作。本章比较策略约束、价值正则、隐式改进三类思路。

离线 RL(batch RL)只有一个固定数据集 D\mathcal{D},不能与环境交互。核心困难是分布偏移:改进步骤 arg⁡max⁡aQ(s,a)\arg\max_a Q(s,a) 会找到数据集里未出现的动作(OOD 动作),而 QQ 对这些动作的取值是外推——没有数据约束,外推没有界。

与致命三要素的联系:离线 RL 是"off-policy 的极端情形"(数据来自完全不同的策略),三要素的发散机制在这里最严重(→ 致命三要素)。高估沿自举传播,训练越久 QQ 在 OOD 区域越高,策略越倾向 OOD 动作,评估越不准——恶性循环。

对抗 OOD 高估,有三类思路:

1. 策略约束(policy constraint):限制策略靠近数据分布。BCQ、BEAR 等方法让策略只从"数据集支持的动作"中选,把改进限制在数据附近。缺点:约束的松紧难调,太紧退化为 BC,太松压不住外推。

2. 价值正则(value regularization):让 QQ 本身保守。

CQL(Conservative Q-Learning, Kumar et al., 2020)在 TD 损失外加一个惩罚项:压低所有动作的 QQ、抬高数据集内动作的 QQ:

min⁡θ α[ Es Ea∼μ Q(s,a)−E(s,a)∼D Q(s,a)]+LTD,\min_\theta\ \alpha \Big[\, \mathbb{E}_{s}\, \mathbb{E}_{a \sim \mu}\, Q(s,a) - \mathbb{E}_{(s,a) \sim \mathcal{D}}\, Q(s,a) \Big] + \mathcal{L}_{\text{TD}},

其中 μ\mu 可以是策略的当前分布或均匀分布。效果:数据集外的 QQ 被系统性压低,arg⁡max⁡\arg\max 落在数据集内的动作上。CQL 把"保守"变成了一个可调的旋钮(α\alpha):越大越保守(越接近 BC)、越小越激进(越接近普通 Q-learning)。

3. 隐式改进(implicit):根本不做 OOD 查询。

IQL(Implicit Q-Learning, Kostrikov et al., 2021)的观察:改进步骤 arg⁡max⁡aQ\arg\max_a Q 是 OOD 查询的来源。它用期望回归(expectile regression)替代 max——学一个上分位数回归:

LV(ϕ)=E(s,a)∼D[ Lτ±(Qθ(s,a)−Vϕ(s))],LQ(θ)=E[(r+γVϕ(s′)−Qθ(s,a))2],\mathcal{L}_V(\phi) = \mathbb{E}_{(s,a) \sim \mathcal{D}}\Big[\, L_\tau^\pm\big( Q_\theta(s,a) - V_\phi(s) \big) \Big], \qquad \mathcal{L}_Q(\theta) = \mathbb{E}\Big[\big( r + \gamma V_\phi(s') - Q_\theta(s,a) \big)^2\Big],

其中 Lτ±L_\tau^\pm 是期望分位数损失(τ≈0.7\tau \approx 0.7:只对 Q>VQ > V 的误差加权)。VV 学到的是"数据集内动作的 QQ 的上分位"——近似 max,但只在数据集内。策略提取用加权 BC(AWR):a=arg⁡max⁡a = \arg\max 被换成 exp⁡(β(Q−V))\exp(\beta(Q - V)) 加权的模仿。

IQL 的优点:没有任何一步查询 OOD 动作,简单稳定,是离线 RL 的常用基线。

思路代表机制代价
策略约束BCQ、BEAR动作空间限制松紧难调
价值正则CQL压低 OOD 价值α\alpha 敏感
隐式改进IQL期望回归,无 OOD 查询τ\tau 决定保守程度

离线训练的保守策略要上线,通常需要在线微调。衔接的困难:离线的保守性上线后变成低效(过度保守),直接放开又撞上 OOD 高估的回归。实践做法:保守系数退火、保留 BC 正则、逐步提高采样温度。这是当前离线 RL 落地的关键问题(→ 离线 RL 基准与评估)。

  • 离线 RL 是致命三要素的最坏情况
  • IQL 简单稳定,是常用基线
  • 离线到在线微调的衔接问题