离线强化学习
本讲迁移自原课程讲义,经 AI 事实核查未发现存疑项,未逐页人工审核;如有出入,以原始论文和 CS285 课程资料为准。
学习目标
- 精确说出离线 RL 的核心困难:外推误差(extrapolation error)与"离线无纠错回路";
- 解释为什么直接把 DQN/SAC 跑在固定数据上会发散/性能崩塌;
- 掌握三条解法族的思想与代表:策略约束(BCQ/BEAR/TD3+BC)、保守价值(CQL)、回避 OOD(IQL);
- 说明 CQL 下界保证的理想条件、期望/策略值口径,并掌握 IQL 的 expectile 回归 + advantage-weighted regression;
- 了解模型化离线 RL(MOReL/COMBO)、何时用离线 RL、以及离线到在线微调的坑。
离线强化学习(Offline RL,也叫 Batch RL) 问一个极具现实意义的问题:只给你一个固定的历史数据集、完全不允许与环境交互,你能学出比数据里更好的策略吗? 这对医疗、自动驾驶、推荐、机器人等”试错代价高昂或危险”的领域至关重要。看似只是把 off-policy 算法拿来跑在固定数据上,实则暗藏一个致命难题——分布漂移导致对分布外(OOD)动作的 Q 值系统性过高估计,而在线 RL 赖以纠错的”试一下发现不好”机制在离线场景彻底失效。本模块剖析这个难题,并系统讲解三条解法:策略约束(BCQ/BEAR/TD3+BC)、价值保守(CQL)、以及回避 OOD 查询(IQL),最后触及模型化离线 RL 与离线到在线微调。
学习目标
- 精确说出离线 RL 的核心困难:外推误差(extrapolation error) 与”离线无纠错回路”;
- 解释为什么直接把 DQN/SAC 跑在固定数据上会发散/性能崩塌;
- 掌握三条解法族的思想与代表:策略约束(BCQ/BEAR/TD3+BC)、保守价值(CQL)、回避 OOD(IQL);
- 说明 CQL 下界保证的理想条件、期望/策略值口径,并掌握 IQL 的 expectile 回归 + advantage-weighted regression;
- 了解模型化离线 RL(MOReL/COMBO)、何时用离线 RL、以及离线到在线微调的坑。
编者按 · 批判性视角
CQL / IQL 在算法上很优雅,本模块也值得认真学。但对其必要性要保持怀疑:在很多真实(尤其 LLM)场景里,比一整套离线 RL 机器更好用的,往往是朴素得多的 filtered-SFT(按分数筛选后监督微调)、拒绝采样(rejection sampling)、best-of-——它们没有 Bellman 自举、没有 OOD 高估,实现和调参都简单,效果却常常不输甚至更好。更根本的一击来自 Decision Transformer / RvS:它们把离线 RL 重述为”以回报为条件的序列建模”(即监督学习),直接绕开价值自举,逼问”是否还需要一整套离线 RL 机器”。诚实地说,离线 RL 在真实世界的落地其实相当薄:学它贡献的”悲观""缝合""反事实”等思想是值得的,但对”必须用 CQL/IQL 这类专用算法”这一点,请保持批判(对照 模块 13 的 DPO / 拒绝采样讨论)。
1. 什么是离线 RL 与为什么重要
三种学习范式的对比框定了离线 RL 的位置:
- on-policy RL(PPO):用当前策略采集数据、更新、再采集,数据始终”新鲜”。
- off-policy RL(DQN/SAC):从回放池学习,数据由历史策略混合而来,但仍可持续与环境交互、补充新数据。
- offline RL:给定一个由未知行为策略(behavior policy) 收集的固定数据集 ,训练全程零交互,目标是学出尽可能好的 。
动机:在很多真实场景里,“试错”要么危险(自动驾驶撞车、机器人损坏)、要么昂贵/缓慢(医疗试验、真实推荐流量)、要么有伦理/法律约束。但历史数据往往已大量存在(病历、驾驶日志、点击流)。离线 RL 的承诺是:像监督学习利用大数据那样,让 RL 也能”从既有数据里榨出好策略”,并且理想情况下能超过数据里任何单一策略(通过”缝合” stitching:把不同轨迹的好片段组合出更优路径)。
本质 Insight
离线 RL 想要的”缝合(stitching)“能力,正是它区别于行为克隆(BC) 的关键:BC 只直接拟合数据里的示范动作,通常缺少显式回报优化与可靠的策略改进保证;而 RL 的 Bellman 自举原则上能把”A→B 的好片段”和”B→C 的好片段”拼成 A→C 的更优策略。但也正是这个”自举 + 外推”的组合,埋下了下一节的祸根。
批判性追问:“离线 RL 能从固定数据学好策略”——好到哪、又凭什么相信?
这句承诺要打两个折扣。其一,能力天花板被数据支撑锁死。“缝合”只是把数据里已出现的好片段重新拼接(A→B 与 B→C 拼成 A→C),它无法凭空发现数据里从未出现、却更优的动作——那是一个反事实问题,数据对此永远沉默(第 2 节)。所以”超越数据”仅限于”超越任何单条轨迹”,而非”超越数据的支撑”。其二,就算产出了候选策略,也很难可信地确认它更好。 离线策略评估(OPE,第 10 节)要估的正是”策略在数据外会怎样”,与学习难题同根同源: 越偏离 (越是我们期待”缝合出更优策略”之时),所有 OPE 越不准。于是有个尴尬闭环:越想突破数据,越无法验证是否真的突破了。诚实的结论是——离线 RL 学到的”好”,是”在数据支撑内、且可被粗略评估的范围内”的好;把它当成”能可靠地无中生有出超越数据的策略”,是对这门方法的高估(呼应编者按)。
2. 核心难题:分布漂移与外推误差
离线 RL 的一切困难都归结为一件事:训练时会查询数据集里未覆盖的动作(OOD 动作,即某状态下数据没见过的动作)的 Q 值,而这些查询是纯外推,可能任意离谱——尤其是被 max/argmax 系统性地偏向高估的那些。
回顾 Q-learning / actor-critic 的 Bellman 目标:
问题在于: 是由当前正在学习的策略挑的,它很可能落在数据集没有覆盖的动作区域(out-of-distribution, OOD)。神经网络在 OOD 处的 是外推、无监督约束,可能虚高。而 / 是一个正偏差放大器:它专门挑出被高估的动作。这个虚高的 又被回灌进 Bellman 目标,自我强化、越滚越高。
举例
想象一个只有历史点单记录的外卖推荐。数据里大家反复点过宫保鸡丁、鱼香肉丝,评分稳定在 4 分上下;而”香菜冰淇淋盖饭”从来没人点过。模型对这道零数据的菜纯靠外推,可能凭空打出 9 分的高估,然后 一挑就挑中它、还越学越自信地把它顶到推荐首位。现实里这道菜大概率难吃——可离线时谁也不会真去点一口,这个幻觉便永远不会被戳穿。
推导:为什么外推误差在离线下会自我放大(online 能纠、offline 不能)
关键假设
函数逼近的 在数据支撑外无约束;bootstrapping 目标含 ;离线下数据分布固定为 。
第 1 步:高估的产生。 设某 OOD 动作 处 因外推而偏高(误差 )。由于目标取 ,只要存在某个 OOD 动作被高估, 就会选中它:。
第 2 步:回灌与自举。 把这个偏高的 作为回归目标训练 ,于是 处的 Q 也被抬高;下一轮它又作为别处的 bootstrap 目标……高估沿 Bellman 备份传播并累积。
第 3 步:online vs offline 的分水岭。 在在线设定下,策略若因高估而去执行 ,环境会返回真实(通常很差)的奖励与后继,TD 误差为负, 被拉回——这是一个自我纠正的负反馈回路。但在离线设定下, 从不会被真正执行、永远拿不到真实反馈,纠错回路被切断。高估只增不减,最终策略去追逐这些幻觉动作,性能崩塌。
结论:离线 RL 的病根 = OOD 动作的乐观外推 × max 的正偏差 × 无纠错回路。局限:这不是”更多数据/更大网络”能解决的——只要策略被允许查询数据外的动作,问题就在。
本质 Insight:困难本质上是”反事实推理”
离线 RL 在问一个反事实(counterfactual) 问题:“如果当初采取了数据里没出现的动作,会怎样?“——但数据对此沉默。任何声称知道答案的 Q 值都是外推臆测。因此离线 RL 的所有成功方法,本质上都在贯彻同一条戒律:不要相信数据没告诉你的东西。它们只是把这条戒律实现在不同层面——约束策略别偏离数据(策略约束)、压低没见过的动作的价值(保守)、或干脆不查询数据外的动作(IQL)。理解了这一条,三大方法族就统一了。
图 1:在数据覆盖区外,学到的 Q 可能任意虚高; 恰好挑中这些点,导致 Bellman 目标被系统性抬高。
3. 为什么 naive off-policy 失败
一个自然的想法:DQN/SAC 本来就是 off-policy 的,直接把它们的回放池换成固定数据集不就行了?实践中会性能崩塌。关键区别在于:普通 off-policy 训练中,回放池由不断更新的策略持续补充,数据分布会跟着策略走(尤其会包含策略实际执行动作后的真实后果);而离线数据分布被冻结在 上,策略与数据分布之间的鸿沟只会随训练越拉越大,第 2 节的外推-自举正反馈得不到任何真实反馈的制衡。
举例
好比只靠看别人的行车记录仪录像来学开车,却永远不许自己上路。在线 RL 像有教练陪练:你猛打方向、车差点蹭墙,教练一句”错了”当场把你纠回来——这是自我纠正的负反馈。离线 RL 没有这一步:你脑补”这个急转弯肯定很爽”,但既然从不真的开出去,就永远收不到”其实会翻车”的反馈,错误的自信只会越滚越大。这就是”离线不能纠错”的要害。
局限 / 陷阱:常见误解
「加更多数据就好了」——不一定。除非新数据覆盖策略想查询的 OOD 动作,否则未必解决问题。「用更保守的网络/更小学习率」可能只是延缓朴素方法的崩塌,不改病根。覆盖不足时,朴素 DQN/SAC 的自举可能随训练加剧高估;保守或只用数据内动作的方法则不必如此。真正需要的是显式地把策略/价值约束在数据支撑内。
4. 策略约束法:BCQ / BEAR / TD3+BC
第一条解法族:策略约束(policy constraint)——强制学到的策略 别离行为策略 太远,从而只在数据覆盖的动作上做备份。形式上给策略优化加约束:
4.1 BCQ(Batch-Constrained Q-learning)
BCQ(Fujimoto et al. 2019):先用一个 CVAE(条件变分自编码器) 学行为策略 (回顾模块 07 的 VAE),备份时只在”由 CVAE 生成、再经一个小扰动网络微调”的候选动作里取 max。这样 永远只在数据似然高的动作里挑,杜绝 OOD 查询。它是系统研究并缓解”外推误差”的早期代表工作。
4.2 BEAR(Bootstrapping Error Accumulation Reduction)
BEAR(Kumar et al. 2019):把”硬约束在 支撑内”放宽为支撑集匹配(support matching)——只要求 的支撑落在 支撑内(允许在支撑内自由重新分配概率),用 最大均值差异(Maximum Mean Discrepancy, MMD) 约束实现。比 BCQ 的分布匹配更灵活。
4.3 TD3+BC:极简却强
TD3+BC(Fujimoto & Gu 2021) 把策略约束简化到极致:在 TD3 的策略损失上直接加一个行为克隆正则项:
其中第二项是 BC(把策略拉向数据里的动作), 平衡”追 Q”与”像数据”。 用 的平均绝对值做归一化以适配不同奖励尺度。就这么一行改动 + 状态归一化,性能媲美复杂得多的方法——成为强基线。
本质 Insight
策略约束的哲学是”别乱走”。但它有个内在张力:约束太紧 → 退化成行为克隆、失去”缝合”带来的提升;约束太松 → 又回到 OOD 高估。而且它需要显式估计 (BCQ 的 CVAE、BEAR 的 MMD),当 是多模态或本身次优时,估计不准会误导约束。这些张力促成了下面两族更精巧的方法。
5. 保守法:CQL 及其条件性下界
第二条解法族:不约束策略,而是直接把 OOD 动作的 Q 值压低,让价值函数变”保守(conservative)“,从根上消除高估。代表作 CQL(Conservative Q-Learning, Kumar et al. 2020)。
CQL 在标准 Bellman 误差之上,加一个正则项:压低”策略/OOD 动作”的 Q、同时抬高”数据里动作”的 Q:
其中 是一个”要压低的分布”(常取当前策略 或对 Q 做 softmax)。第一项把 采样到的动作(可能 OOD)的 Q 往下拉,第二项把数据里真实动作的 Q 托住,差值即”保守惩罚”。
式中系数 是保守系数(conservatism coefficient),也就是这条保守惩罚的”力度旋钮”: 越大,OOD 动作的 Q 被压得越狠、价值越保守; 则整项消失、退回不保守的普通 Bellman 拟合。它是 CQL 最关键、也最需要调的超参(太大会过度保守,连数据内的好动作也一起被压),在讨论课 D9.1 的实现伪码里改记作 ——请注意别和 IQL 里 AWR 的温度 (式(9.10))、以及模块 07 的熵温度 混淆:三处名字撞车,含义各不相同。
举例
接着上面那道”香菜冰淇淋盖饭”:CQL 的态度是”没人点过的菜,一律先按普通甚至偏差记账,别乱推荐”。它专门把这些没数据支撑的动作的 往下压(例如把凭空的 9 分压回 3 分上下),同时把数据里真被点过、有据可依的菜的分数托住不动。于是 再也挑不到那道幻觉神菜,只能在”确实有人验证过好吃”的菜里选。这种“没尝过就别高估”的记账方式,是理解 CQL 保守压力的直觉;下界结论还需要下节列出的分布、表达力、采样与 条件。
推导:CQL 在什么条件与口径下给出下界
关键假设
表格式或满足论文所列函数逼近条件;对状态边缘分布 取期望;式 (9.6) 的策略价值下界要求压低分布 ;还需覆盖、有限样本集中界与足够大的 等条件。
第 1 步:对 Q 求极值。 只看正则项(先不含 Bellman 拟合),对每个 的 求导并令为零,可解出使目标最小的 。加入 Bellman 项后,其不动点相比标准解多了一个逐点的下压量,正比于 与 的密度比之差:
第 2 步:读出符号。 对 OOD 动作, 而 ,密度比差为正且很大 → 被大幅下压;对数据内动作,,下压量小。于是虚高被针对性地打掉。
第 3 步:期望意义下的下界。 Kumar 等证明:当式 (9.4) 中的压低分布取 ,并满足其余采样与表达条件时,虽然逐点 Q 不保证是下界,但在策略 下的期望价值上,CQL 给出真实价值的下界 [1]:
为什么下界是好事? 因为它把优化从”最大化一个可能虚高的量”变成”在上述条件下最大化一个悲观的、不高估的量”,减少策略追逐虚高 Q 的风险。局限: 太大 → 过度保守、连数据内的好动作也被压、性能受限;下界仅在 时的策略期望意义及相应采样、覆盖和表达条件下成立;实际深网训练是近似。
推导:CQL(H) 的 logsumexp 保守项——为何能”针对性”压 OOD(逐步)
关键假设
连续/大动作空间,压低分布 不再固定、而是内层取最坏并加熵正则;对每个 求解内层 。
第 1 步:把”压谁”也变成优化。 CQL 的完整形式对压低分布 取 max(最保守),并给 加熵正则 防止坍缩到单点:
第 2 步:解内层 。“线性目标 + 熵正则”的最大化解是 Boltzmann 分布(同模块 07 的软策略):。把它代回式(9.7),第一项的 恰好化成 log-sum-exp:
于是保守项变成 ——这正是 CQL(H)(讨论课 D9.1 里用重要性采样估计的那个量)。
第 3 步:为什么它针对高估施加压力。 是软 max,被较大的 主导。哪个动作被网络高估得更厉害,它的 对 logsumexp 的贡献就更大,因而承受更强的下压。第二项 相对减少对数据动作的下压,但在有限样本和函数逼近下仍可能改变甚至低估这些 Q 值,并无“不伤数据内价值”的逐点保证。局限:logsumexp 在连续动作下要用重要性采样估计(混合均匀 + 策略样本去偏),估计噪声大; 仍需调(或用 Lagrange 版对保守程度设阈值自动调)。
图 2(启发式示意):CQL 正则倾向下压高值动作、托住数据动作。原论文的下界是理想假设下的策略期望价值口径,不是现实深网中每个 的逐点真值下界。
本质 Insight
把三大解法族并排看,会发现它们其实都是同一条原则的不同实现——悲观(pessimism):CQL 在 等理想条件下给出策略期望价值口径的下界;TD3+BC 用 BC 项把策略钉在数据附近;双 Q 取 则在自举时倾向抑制高估。而”约束新策略贴近行为策略”这件事,正是 模块 06 那个 KL 母题在离线场景的化身:把 里的 取成行为策略 ,就得到策略约束型离线 RL;其闭式解 与 IQL 里 AWR(式(9.10))的加权行为克隆形式相呼应。于是”悲观”与”贴近参考分布”在离线 RL 里形成统一视角(见模块 15)。
5.1 保守系数 的定量刻度:下压量、下界松紧与安全的三角
式(9.5)、式(9.6) 已给出” 越大越保守”的定性结论。下面用局部近似刻画 的作用;这不是额外的 CQL 定理。
下压量随 线性。 由式(9.5),每个 的价值相对标准 Bellman 解被下压
它正比于 ,且正比于”目标分布 相对行为分布 的密度比过剩量”。对深 OOD 动作()下压量急剧变大,对数据内动作()几乎为零——这就是”针对性打击”的定量来源。
期望下界的”欠估幅度”也随 线性。 对策略 取期望,真实值与保守估计之差约为
这是从式(9.5)读出的局部启发式。 的符号并非对任意 自动非负;只有当压低分布在目标策略重视的动作上相对 过重,使 时,它才表示随 线性增加的平均下压。真正的 CQL 下界还依赖原论文中的分布、采样误差与函数表达假设,不能由这一行单独推出。
启发式“盖住外推误差”的阈值。 若在所考察分布下确有 ,并把外推 + 采样带来的平均正向误差记为 ,则要求下压量至少覆盖它,会得到调参尺度:
三条读法:(i) 时保守正则消失;(ii) 在上述局部近似与 下,式(9.8c)只是“可能够用”的量级,不是普适保证;(iii) 过大仍会造成过度保守。实践应联合看数据动作 Q、OOD 采样 Q、Bellman 残差与 OPE/少量在线验证,不能直接算出一个“理论正确”的 。
6. IQL:expectile 回归 + AWR
第三条解法族最激进:干脆完全不查询数据外的动作。既然 OOD 高估来自”对 OOD 动作求 max/评估 Q”,那就只用数据里出现过的动作来做价值学习。代表作 IQL(Implicit Q-Learning, Kostrikov et al. 2021)。
6.1 用 expectile 回归隐式逼近 max
IQL 的核心技巧:不显式 (那会碰 OOD 动作),而是训练一个状态价值 去估计数据条件分布下的上 expectile,用 **expectile regression(非对称平方回归)**实现 [2]。定义 expectile 损失:
价值网络最小化 。当 , 趋近于”在行为策略支撑内的动作上 的上确界”,即隐式地实现了”只在数据内取 max”。
为什么这样 · 能不能不这样
为什么用 expectile 回归把 推向数据内 的上端,而不直接取经验 、或退一步取均值? 直接对数据内动作取经验 看似最贪婪,但每个状态在数据里往往只有寥寥几个(甚至一个)动作样本,经验 会死死咬住其中偶然偏高的那个、方差极大、追噪声;而取均值(等价 )又太保守。expectile 用一个连续可调的 在两者之间平滑滑动: 越接近 1,越重视上尾正残差;在有界支持等正则条件下才逼近数据内本质上确界。它始终只在数据样本上加权、从不外推到 OOD 动作。
推导:expectile 为何偏向数据内上尾(逐步)
关键假设
固定为目标网络;对每个 , 服从数据条件分布 ;。
第 1 步:expectile 的定义。 随机变量 的 -expectile 是 。 时就是均值; 时对“超出 的正残差”赋更大权重,于是 被推向 的上端;对有界支持等常见正则条件,有 。令导数为零给出一阶条件 。逼近上确界的具体速率取决于上尾分布,不能仅用 与取值跨度给出普适的线性误差率; 越接近 1,也越易追逐偶然高值。
第 2 步:套到 。 于是 学到的是该条件分布下 的上 expectile——它只用了 的样本,从不评估 OOD 动作。这就把“对所有动作取 max”替换成对数据内样本做上尾非对称平方回归。
第 3 步:Q 的更新只用数据转移。,其中 是数据里的真实后继、 又只由数据内动作算出。整个回路闭合在数据支撑内,OOD 动作从头到尾没被查询过。局限: 太接近 1 会放大 的估计噪声(追逐数据里偶然的高值); 只能反映数据覆盖的动作,若最优动作根本不在数据里,IQL 也无能为力。
统计意义:expectile 与 quantile 不同
分位数(quantile) 由非对称绝对值损失 定义(pinball loss);expectile 由非对称平方损失 定义。二者不是同一统计量: 时 expectile 是均值,而 quantile 是中位数。对有界支持等正则条件, 时 expectile 才趋向本质上确界。关键性质是它始终只在数据内 上计算,不外推到 OOD 动作。
6.2 用 advantage-weighted regression 抽取策略
IQL 学完 后,并不对 Q 求 argmax(又会碰 OOD),而是用 advantage-weighted regression(AWR,优势加权回归) 从数据里抽取策略——本质是加权行为克隆:
解读:对数据里的每个 ,按其优势 的指数加权做行为克隆——优势高(比该状态平均更好)的动作被大力模仿,优势低的被忽略。温度 控制”多贪婪”。这与模块 07 的 MaxEnt/加权后验一脉相承,且只模仿数据里的动作,绝不外推。
图 3:expectile 损失对 的正残差赋予更高权重(),把 拉向数据内 的上端。
本质 Insight
IQL 把离线 RL 的戒律执行到极致:价值学习与策略抽取全程只碰数据里的 。它不需要估计 (省去 BCQ 的 CVAE),也不需要显式保守惩罚(省去 CQL 的调 ),只用两个回归 + 一个加权 BC,简单、稳定、强。代价:策略被”锁”在数据支撑内,缝合能力来自 的自举而非对新动作的探索——它擅长”从好数据里挑好片段拼起来”,但无法凭空造出数据里没有的更优动作。
7. 模型化离线 RL:MOReL / COMBO
还可以把模块 08的模型思想搬到离线场景:用离线数据学一个动力学模型,在模型里做规划/生成数据。但模型在数据外同样会幻觉,所以必须与”保守/悲观”结合。
为什么这样 · 能不能不这样
为什么把模块 08 的动力学模型搬到离线,还必须再叠一层”悲观”(MOReL 的悲观 MDP、COMBO 的 CQL 式下压),不能直接照搬在线那套 MBRL? 因为离线的病根——数据外没有真实反馈——对”学出来的模型”同样致命:模型在数据覆盖区外只会幻觉,而规划器 / 策略又是对抗性优化器,会专门跑去模型最乐观的幻觉区(正是模块 08 第 2 节那个分布漂移,但这次连”上线跑一下把模型拉回真实”的机会都没有)。能不能不加悲观、直接用在线的 PETS / MBPO? 可以,但没有真实交互纠偏,模型误差会被无制衡地放大,最终重演第 3 节 naive off-policy 的崩溃。加悲观的代价是多一套不确定性估计 / 保守正则要调,好处是把”这个模型敢不敢信”显式管起来。
- MOReL(Model-based Offline RL):学模型 + 构造一个悲观 MDP(pessimistic MDP)——在模型不确定性高(用 ensemble 分歧度量)的状态-动作处,把奖励设成一个大负值/引入吸收的”惩罚”状态。策略在这个悲观世界里优化,自然不敢去模型没把握的地方。
- COMBO(Conservative Offline Model-Based):把 CQL 的保守正则与 model-based 数据生成结合——对模型 rollout 生成的(可能 OOD 的)状态-动作施加 CQL 式的 Q 值下压,无需显式估计不确定性即可保守。
本质 Insight
无论 model-free 还是 model-based,离线 RL 的解法都收敛到同一个词:悲观(pessimism)。在线 RL 靠乐观驱动探索(“没试过的可能很好,去试试”,见模块 10);离线 RL 反过来靠悲观保命(“没数据的地方假设很差,别去”)。乐观与悲观的对偶,是理解 online/offline RL 分野的一把钥匙。
8. 方法对比与选型
| 方法族 | 代表 | 核心机制 | 要不要估 π_β | 会否查询 OOD | 优点 / 局限 |
|---|---|---|---|---|---|
| 策略约束 | BCQ, BEAR, TD3+BC | 限制 π 靠近 π_β | BCQ/BEAR 要;TD3+BC 用 BC 项 | 受限 | 直观、TD3+BC 极简强;约束松紧难调、依赖 π_β 估计 |
| 保守价值 | CQL, COMBO | 下压高值/OOD 动作 Q(条件性下界) | 否 | 会(但被压) | 等理想条件下有策略期望值下界;深网实践是近似,α 过大过度保守 |
| 回避 OOD | IQL | expectile+AWR,只用数据内动作 | 否 | 不查询 | 简单稳定强、无需调保守项;被锁在数据支撑内 |
| 模型化 | MOReL, COMBO | 悲观 MDP / 模型+保守 | 否 | 模型内会(受惩罚) | 可缝合、样本效率高;依赖模型质量与不确定性估计 |
选型经验:需要强基线且实现简单,可比较 TD3+BC 或 IQL;数据质量差、分布窄、追求稳健,可评估 CQL(保守正则)或 IQL;数据充足且希望增强缝合、可接受模型开销时,可考虑模型化方法。选择仍取决于数据覆盖、动作空间、评估预算和部署风险,不存在跨领域的默认算法。
8.1 逐条对照:BCQ / BEAR(策略约束)vs CQL / IQL(保守 / 回避)
把四个最常被并列讨论的算法拉到同一张表上,能看清”约束策略”与”保守价值 / 回避 OOD”两条路线在作用位置、代价、失效模式上的差异:
| 算法 | 作用在哪 | 如何限制 OOD | 要不要估 π_β | 关键超参 | 主要弱点 |
|---|---|---|---|---|---|
| BCQ | 动作生成(备份的 argmax 候选) | 只在 CVAE 生成 + 微扰的动作里取 max | 要(CVAE) | 扰动幅度 Φ、候选数 | 受限于 CVAE 对 π_β 的拟合质量 |
| BEAR | 策略约束(支撑集匹配) | MMD 约束 π 支撑 ⊆ π_β 支撑 | 要(MMD 需 π_β 样本) | MMD 阈值、核带宽 | MMD 调参敏感、支撑估计难 |
| CQL | 价值(critic 正则) | logsumexp 施加保守压力; 等条件下给策略期望值下界 | 否 | 保守系数 β_cql | β_cql 过大过度保守;logsumexp 估计噪声 |
| IQL | 价值 + 策略抽取(全程数据内) | expectile 隐式取”数据内 max”,AWR 加权 BC | 否 | expectile τ、AWR 温度 β | 被锁在数据支撑内、无法造新动作 |
一句话对照
策略约束(BCQ/BEAR)在动作端设卡、需要显式建模 ,因此 估不准就会误导;CQL 在价值端下压、无需估 但要调保守强度;IQL 干脆不查询数据外动作、把价值学习与策略抽取全闭合在数据内,超参较少且通常较稳定。三者是”同一条戒律(别信数据没告诉你的)“在动作端 / 价值端 / 查询端的三种落点。
9. 离线到在线微调
离线 RL 常作为起点:先用海量离线数据学一个不错的初始策略,再用少量在线交互微调(offline-to-online fine-tuning) 突破数据天花板。这一步有个反直觉的坑:
局限 / 陷阱:微调初期的性能骤降
离线阶段学到的策略/价值是保守的(尤其 CQL 压低了 OOD 动作)。一旦切到在线、开始遇到新数据,过度保守的价值会导致策略更新方向混乱,甚至出现初期性能暴跌再回升。缓解:在线阶段逐步放松保守约束、用平衡的回放(离线+在线数据混合)、或用天然适合微调的算法(IQL 因不显式保守、切换更平滑,常作为 offline-to-online 的良好起点;也有 Cal-QL 等专门校准初始价值以稳住微调的方法)。
推导直觉:微调初期骤降的两重分布漂移机制(逐步)
关键假设
离线阶段学到保守价值 (对 OOD 动作系统性低估)与相应策略;切到在线后策略开始与真实环境交互、收集新数据。
漂移一:价值的”保守欠账”被在线数据揭穿。 离线 CQL 把 OOD 动作的 压到真实值以下。在线后,策略一旦真的执行某个曾被压低的动作、拿到真实(往往更高) 的回报,TD 误差为大正值 → 被猛拉高。这批剧烈修正会短暂打乱 actor 的更新方向(原本”以为不好”的动作突然变好),造成策略震荡。
漂移二:状态分布从 移向 。 价值网络在离线数据的状态分布 上训练;策略一改进,访问的状态分布就变,新状态对旧价值网络是分布外的,估计不可靠 → 又一轮修正。两重漂移叠加,就是”先崩后升”的来源。
对策的统一逻辑:别让在线初期的修正太剧烈。(1) 平衡回放:batch 里混入离线数据,锚住已学到的东西、稀释新数据的冲击;(2) 退火保守:让 CQL 的 随在线步数衰减,逐步交还乐观;(3) Cal-QL:离线阶段就把下界校准到不低于一个参考策略的真实价值,使”欠账”不至于过深,微调时无需大修正;(4) 用 IQL 起手:它不显式施加 CQL 式保守正则,切换通常更平滑。局限:退火/混合比例本身又是超参,调不好会重新引入高估或拖慢提升。
图 4:offline-to-online 微调曲线。过度保守的价值在切到在线后引发剧烈修正、初期骤降再回升;IQL / Cal-QL / 平衡回放让过渡更平滑。
前沿实践
- 离线 RL ↔ LLM 偏好优化:DPO 从带 KL 正则的奖励最大化目标推导,但实际训练损失是在偏好回答对上比较相对参考策略的对数概率比,并不显式优化一个 项 [3]。偏好数据可以固定,也可以迭代重采;两者的共同点是都需关注训练策略相对数据或参考策略的分布偏移。
- 决策 Transformer / RvS:把离线 RL 重铸为”以回报为条件的序列建模”,用监督学习范式绕开 Bellman 自举与 OOD 高估,是离线 RL 与大模型的另一交汇点。
- 真实世界应用:机器人操作、推荐和医疗决策都存在使用历史数据学习策略的研究,但公开证据不足以把专用离线 RL 概括为这些领域的“主力范式”或把离线预训练加在线微调称为统一标准配方。
前沿实验室视角
用自己的话概括工业界对离线 RL 的现实态度:一方面,推荐 / 广告系统很早就在用海量交互日志做 off-policy 学习与反事实纠偏(如 Google/YouTube 的 Top-K off-policy 推荐用倾向权重修正日志偏差,Chen 等 2019),这与离线 RL 同源;另一方面,真正把”纯离线 RL”(完整的价值自举 + 悲观正则那一整套)搬上生产线却相当谨慎——因为第 10 节说的”无法在线可信验证”在高风险业务里是硬伤。顶级实验室在 LLM 后训练里的经验也指向同一方向:比起复杂的离线 RL 机器,按分数筛选的监督微调(filtered-SFT)、拒绝采样、以及 Decision Transformer 式”以回报为条件的序列建模” 往往更实用、更稳——例如 Meta 在 Llama 2 的后训练里就把拒绝采样微调作为常规一环。这些机构公开取向可归纳成一句:离线数据要用,但优先用监督式、能小步验证的朴素做法,把重型离线 RL 留给确有必要的场景。出处:Chen et al., Top-K Off-Policy Correction for a REINFORCE Recommender System(2019);Touvron et al., Llama 2(Meta,2023,拒绝采样微调);Chen et al., Decision Transformer(2021)。
10. 离线策略评估(OPE)
训练出策略之后,一个在离线设定下格外棘手的问题浮现:怎么知道它好不好? 在线 RL 跑几个 episode 一看便知;离线全程零交互,我们只有一批由行为策略 收集的数据。离线策略评估(Off-Policy Evaluation, OPE) 就是这门”只用离线数据估计目标策略 真实回报 “的手艺,主要用于模型选择与早停(回顾第 9 节图 4 与讨论课 D9.3 那个”Q 涨、真实回报崩”的陷阱——正是缺乏可信 OPE 的直接后果)。
10.1 重要性采样(IS)及其方差灾难
重要性采样(Importance Sampling, IS) 用两策略的概率比对数据回报重加权,把”在 下采到的轨迹”纠正成”在 下的期望”:
当行为策略概率已知(或正确估计)、目标策略满足绝对连续/覆盖条件 ,且样本独立时,它是无偏的;任一条件破坏都会引入偏差或令比值不可定义。代价是重要性比为 个比值的连乘:在常见的持续分布错配下,其方差可随 指数增长(并非每个问题都必然恰好指数爆炸)。加权 IS(WIS / self-normalized) 以有限样本偏差换较低方差;逐决策 IS只给每项奖励乘到该时刻为止的比值,通常进一步降方差。
10.2 拟合 Q 评估(FQE)与双稳健(DR)
FQE(Fitted Q Evaluation) 换个思路:不重加权,而是为待评策略 专门拟合一个 ——用数据反复回归 ,再估 。它方差低、目前较常用,但因为要在 上自举,同样受 OOD 外推之苦( 偏离数据越远越不准)。
双稳健(Doubly Robust, DR) 把两者的长处合一:以 FQE 的价值模型为基线(低方差),再用 IS 比值对基线的误差做纠偏(保无偏):
名字里的“双”指:在相应正则、覆盖与序列估计条件下,价值模型或行为概率/比值模型有一方正确即可获得一致性(具体有限样本无偏性取决于所用 DR 变体与估计方式);当 大致准确时,TD 残差较小,IS 纠偏项通常方差更低。它不是无条件“兼得无偏与低方差”:覆盖差、比值截断、两套模型同时错都会破坏保证。
图 5:OPE 方法的偏差-方差权衡。满足覆盖且概率比正确时,普通轨迹 IS 无偏但可能有极高方差;加权 IS 以偏差换方差;FQE/DR 受模型偏差与 OOD 外推之限。
局限 / 陷阱:OPE 与学习难题同根同源
别指望 OPE 能”免费”给你可信的验证。OPE 要估计的正是”策略在数据外的行为会怎样”——而这恰恰是离线 RL 学习难题的同一个问题:数据没覆盖的地方无法可信外推。因此当 显著偏离 (正是我们希望”缝合出更优策略”的时候),所有 OPE 都最不准。诚实的现实做法:留一个小的在线 / 仿真预算做最终验证,训练中用 FQE + 保守指标做粗筛,绝不凭 Q 值绝对大小选模型。
本质 Insight
OPE 把离线 RL 的”评估困境”讲透了:学习靠悲观兜底,评估却无处兜底。你可以在学习时用保守/约束避免被幻觉带偏,但评估时若也”保守”就失去了区分好坏策略的分辨率。这种”无法在线验证”的结构性困难,是离线 RL 在真实世界落地偏薄的重要原因之一(呼应编者按),也是为什么工业界更青睐”能小步在线验证”的 filtered-SFT / 拒绝采样等朴素做法。
讨论课 · Section 9:Offline RL(CQL / IQL 实现与评估陷阱)
本节把第 5–6 节的 CQL 与 IQL 落到可照抄的实现要点伪代码,再讲离线特有的评估陷阱(为什么”训练曲线好”骗不得、OPE 是什么),最后给一份超参与失败排查清单。核心戒律仍是那一条:不要相信数据没告诉你的东西。
D9.1 CQL 实现要点:在 SAC 上加一个 logsumexp 保守正则
CQL 通常构建在 SAC 之上:critic 损失 = 标准 Bellman 误差 + 一个把 OOD 动作 Q 压下去、把数据内动作 Q 托起来的保守正则。连续动作下那个”压低所有动作”的项用 logsumexp 近似(对动作采样估计),这正是式(9.4) 里 (经式(9.8) 化成 logsumexp)的可算版本。
# CQL(H):在 SAC critic 上加保守项(每个 Q_θi 都加)
# 1) 标准 Bellman 目标(与 SAC 一致,含熵项/双 Q min)
y = r + γ(1−done)·( min_i Q_θ̄i(s',a') − α·logπ(a'|s') )
L_bellman = mean( (Q_θi(s,a) − y)**2 )
# 2) 保守正则:logsumexp_a Q(s,a) − Q(s, a_data)
# 第一项“压低所有(尤其OOD)动作”,第二项“托起数据内动作”
a_unif ~ Uniform(A) [M 个] # 重要性采样估 logsumexp
a_pi ~ π_φ(·|s) [M 个]
logsumexp_Q = logmeanexp( cat[ Q(s,a_unif)−log_u, Q(s,a_pi)−logπ ] ) # 去偏
L_cql = mean( logsumexp_Q − Q(s, a) ) # a 为数据里的真实动作
# 3) 合并;β_cql 即第5节的 α,控制保守强度(可用 Lagrange 自动调)
L_critic = L_bellman + β_cql · L_cql
# actor / 温度更新与 SAC 相同
要点:(1) logsumexp 用重要性加权(减去提议分布对数密度 log_u / logπ)去偏,混合”均匀动作 + 当前策略动作”两组样本更稳;(2) (=第 5 节的 )是最关键超参——太小压不住高估、太大过度保守连数据内好动作也被压;(3) CQL 有 Lagrange 版:给保守项设一个目标阈值,自动调 ,省去手调。
D9.2 IQL 实现要点:expectile 回归 + AWR 三步
IQL 全程只碰数据里的 ,三步各管一件事: 用 expectile 回归隐式取”数据内的 max”、 只用数据转移自举、策略用 AWR 加权 BC 抽取。
# 超参:expectile τ∈(0.5,1)(如 0.7~0.9);AWR 温度 β;折扣 γ
# --- 步骤 1:V 网络(expectile 回归,把 V 推向数据内 Q 的上端)---
u = Q_θ̄(s,a) − V_φ(s) # 用目标 Q(停梯度)
L_V = mean( |τ − 1(u<0)| · u**2 ) # 非对称平方损失(expectile)
# --- 步骤 2:Q 网络(只用数据里的真实后继 s',绝不评估 OOD 动作)---
y = r + γ(1−done)·V_φ(s') # 目标里没有任何 max/π 采样!
L_Q = mean( (Q_θ(s,a) − y)**2 ); 软更新 Q_θ̄
# --- 步骤 3:AWR 抽策略(优势加权行为克隆,只模仿数据内动作)---
adv = Q_θ̄(s,a) − V_φ(s)
w = min( exp(β · adv), w_max ) # 指数优势权重,裁剪防爆
L_π = mean( −w · logπ_φ(a|s) ) # 加权 BC
要点:(1) 越接近 1, 越贪婪地逼近数据内 上确界,但太接近 1 会放大 噪声(追偶然高值);(2) Q 目标里没有 / 没有对 采样——这是 IQL 回避 OOD 的关键,整条回路闭合在数据支撑内;(3) AWR 的权重要裁剪(w_max,如 100)防止个别高优势样本主导;(4) IQL 不需要估 、不需要保守项,超参少、切换到在线微调也平滑。
D9.3 离线评估的陷阱
局限 / 陷阱:训练指标会骗人
离线 RL 最危险的坑是评估:训练时你能看到的 Q 值、Bellman 损失、甚至”策略在数据集上的似然”都不能可靠反映真实性能。典型病态——Q 值一路飙升(高估)但真实回报早已崩溃;由于全程零交互,你在训练中拿不到任何真实回报信号来发现这件事。这与在线 RL”跑几个 episode 一看便知”形成鲜明对比。
OPE(Off-Policy Evaluation,离线策略评估) 就是试图”只用离线数据估计新策略真实回报”的一类方法,用于在无法在线测试时做模型选择/早停:
- 普通轨迹重要性采样(IS):用 重加权数据回报;在覆盖、概率比正确等条件下无偏,但持续分布错配时方差可随时域指数增长。
- 加权 IS(WIS)与双稳健(DR):WIS 以有限样本偏差换取较低方差;DR 的无偏性或一致性取决于具体变体、覆盖条件,以及价值模型或行为概率模型至少一方正确等假设。
- 拟合 Q 评估(FQE):为待评策略单独拟合一个 再估 ——目前较常用、相对稳的 OPE,但同样受 OOD 外推之苦。
- 模型化 OPE:学动力学模型 rollout 估回报,受模型误差限制。
本质 Insight
离线 RL 的评估难题和它的学习难题同根同源:都是”数据没覆盖的地方无法可信外推”。所以现实里常见的稳妥做法是——留一个小的在线/仿真预算专门做最终验证,训练中则依赖保守指标(如 CQL 的 Q 是否被压住、策略是否偏离数据太远)+ FQE 做粗筛,而绝不凭 Q 值绝对大小选模型。
D9.4 常见超参与失败排查
| 症状 | 可能原因 | 排查 / 对策 |
|---|---|---|
| Q 值爆炸式增长、回报崩 | OOD 高估未被压住 | CQL 调大 / 用 Lagrange;或换 IQL;检查双 Q min 是否开 |
| 性能被”锁”在数据水平、无提升 | 约束/保守过强,退化成 BC | CQL 减小 ;IQL 提高 、增大 AWR 温度 |
| IQL 的 抖动大 / 追高 | 太接近 1,放大 Q 噪声 | 把 降到 0.7~0.8;检查 AWR 权重是否裁剪 |
| 训练后期越训越差 | 过拟合到虚高目标 | 早停(用 FQE/保守指标);减小 UTD;奖励/状态归一化 |
| offline→online 微调初期骤降 | 保守价值与在线数据冲突 | 逐步放松保守;混合回放;用 IQL / Cal-QL |
默认起手式
数据质量参差、追求稳健:先上 IQL(、AWR 附近)或 CQL(Lagrange 版);务必做状态归一化与奖励缩放;模型选择靠 FQE + 少量在线验证,不看 Q 绝对值。
图 6:离线训练中”估计 Q”可能一路上升(高估),而无法观测的真实回报早已见顶回落;这正是不能凭 Q 值选模型、需要 OPE 或少量在线验证的原因。
方法溯源:动机 · 启发 · 局限
离线 RL 的整部历史,是围绕同一个病根——OOD 动作的乐观外推被自举放大——反复换角度下药的过程。下表把这条谱系串起来:每一行的”关键局限”往往正是下一行”要解决的问题”,而它们全都在贯彻同一条戒律——不要相信数据没告诉你的东西。
| 方法 / 代表作(年代) | 要解决什么问题(动机) | 受什么启发 / 技术脉络 | 关键局限(→ 引出谁) |
|---|---|---|---|
| 批量 RL / naive off-policy(把 DQN/SAC 直接跑在固定数据上) | 希望像监督学习那样从既有数据里榨出好策略 | off-policy 的回放机制、Bellman 自举 | OOD 动作过估计 × 正偏差 × 无纠错回路 → 自我放大而崩(→ 策略约束) |
| BCQ(Fujimoto 等 2019) | 系统研究并缓解”外推误差” | 用 CVAE 建模行为策略 ,只在数据似然高的动作里取 max | 受限于 CVAE 对 的拟合质量、约束偏硬(→ BEAR 放宽为支撑匹配) |
| BEAR(Kumar 等 2019) | 把”硬分布匹配”放宽为支撑集匹配,允许支撑内自由重分配概率 | 用最大均值差异(MMD)约束 的支撑 支撑 | MMD 调参敏感、仍需估 (→ 更极简的 TD3+BC / 换到价值端) |
| TD3+BC(Fujimoto & Gu 2021) | 要一个免复杂 建模的极简强基线 | TD3 + 一项行为克隆正则 + 状态归一化 | 约束松紧仍要平衡 、本质仍是策略约束(“别乱走”的张力还在) |
| CQL(Kumar 等 2020) | 不约束策略,直接从价值端抑制高估 | 保守正则: 下压 OOD、托起数据内 ;在 等条件下给策略期望意义的下界 | 过大过度保守、logsumexp 估计噪声、微调时”保守欠账”(→ IQL 回避、Cal-QL 校准) |
| IQL(Kostrikov 等 2021) | 干脆完全不查询数据外的动作 | expectile 回归隐式取”数据内的 max” + advantage-weighted regression 加权 BC | 被锁在数据支撑内、无法造出数据里没有的更优动作 |
| Decision Transformer(Chen 等 2021) | 绕开 Bellman 自举与 OOD 高估这一整套麻烦 | 把离线 RL 重述为”以回报为条件的序列建模”(监督学习 + Transformer) | 缝合能力弱、依赖的”目标回报”条件本身要外推(逼问是否还需专用离线 RL 机器) |
| MOReL / COMBO(2020–2021) | 把模块 08 的模型思想搬到离线以增强缝合 | 悲观 MDP(MOReL)/ 模型 rollout + CQL 式保守(COMBO) | 依赖模型质量与不确定性估计(模型在数据外同样会幻觉) |
演进故事线 ①:同一个病,从动作端一路治到价值端、再到”干脆不查询”
起点是一个诱人却致命的想法:off-policy 本就从回放池学,直接把回放池换成固定数据集不就行了? 结果崩溃——因为 Bellman 目标里的 会专挑被网络乐观外推的 OOD 动作,而离线下没有真实反馈把它拉回,高估自我放大。三族解法就是对这条因果链的三处不同下刀:策略约束(BCQ 用 CVAE 只在数据内取 max → BEAR 放宽为支撑匹配 → TD3+BC 用一行 BC 正则极简化)在动作端设卡,但都要显式建模 、且面临”约束太紧退化成 BC、太松又回到高估”的张力;CQL 转到价值端,用 对高值动作施加更强保守压力,并在理想条件下给出策略期望价值口径的下界,无需估 但要调保守强度 ;IQL 最激进——从头到尾不查询数据外动作,用 expectile 回归把危险的“对所有动作取 max”换成对数据内样本做上尾非对称平方回归。作用点从动作端 → 价值端 → 查询端,一步步把病根堵死。
演进故事线 ②:一条戒律的三种落点,与”乐观 / 悲观”的对偶
把所有方法并排看,会发现它们其实是同一条戒律的不同实现——悲观(pessimism):CQL 在限定条件下给策略期望值下界、TD3+BC 用 BC 把策略钉在数据附近、双 Q 取 系统性往低了估、MOReL 直接构造悲观 MDP。这与在线 RL 靠乐观驱动探索(“没试过的可能很好,去试试”)恰成对偶:离线 RL 靠悲观保命(“没数据的地方假设很差,别去”)。而”约束新策略贴近参考分布”这件事,正是那个 KL 母题在离线场景的化身——把 里的 取成行为策略 ,其闭式解 就是 IQL 里 AWR 那个加权行为克隆。于是”悲观”与”贴近参考分布”在离线 RL 里合流为同一件事(统一视角见 模块 15)。
贯穿线:Decision Transformer 的”反问”与 LLM 时代的落地
谱系的最后出现了一记釜底抽薪:既然价值自举 + OOD 高估这么麻烦,Decision Transformer / RvS 干脆把离线 RL 重述为”以回报为条件的序列建模”(即监督学习),绕开 Bellman 自举——直接逼问”是否还需要一整套专用的离线 RL 机器?“在 LLM 后训练中,DPO 可以直接在固定偏好对上训练;它由 KL 正则化奖励目标推导,并通过相对参考策略的对数概率比隐式体现约束 [3]。这可类比为限制策略偏离参考策略,但并不等同于 TD3+BC 的 BC 正则。典型 RLHF 则先拟合奖励模型,再由当前策略生成样本并做 RL 优化,不能一概归为固定数据上的离线策略优化。更朴素的 filtered-SFT、拒绝采样、best-of- 提供了绕开价值自举的替代路线;离线 RL 最值得学习的是”悲观 / 缝合 / 反事实”这些思想,而非预设必须使用 CQL/IQL(呼应编者按,详见模块 13)。
图 7:离线 RL 的方法谱系。上排是”naive 崩溃 → 策略约束(动作端)→ 保守价值(价值端)→ 回避 OOD(查询端)“的主线,绿色支线是 Decision Transformer 把问题重述为序列建模;所有方法共享”悲观”这一贯穿主题。
11. 小结
- 定义:固定数据集、零交互,目标是学出(理想上超越数据的)好策略,靠”缝合”取胜。
- 核心难题:OOD 动作的 Q 值乐观外推 × 正偏差 × 无纠错回路 → 高估自我放大;本质是反事实推理难题。
- naive off-policy 失败:数据分布冻结、策略与数据鸿沟越拉越大,得不到真实反馈制衡。
- 三大解法:策略约束(BCQ/BEAR/TD3+BC,“别乱走”)、保守价值(CQL,下压高值/OOD 动作;在 等条件下给策略期望值下界)、回避 OOD(IQL,expectile 回归隐式 max + AWR 加权 BC,全程不碰数据外动作)。
- 模型化:MOReL(悲观 MDP)、COMBO(模型 + CQL 保守);统一主题是悲观(与在线 RL 的乐观探索对偶)。
- 微调:offline-to-online 有两重分布漂移(保守欠账被揭穿 + 状态分布迁移),要逐步放松保守 / 校准 / 混合回放以避免初期骤降;DPO 的参考策略约束与离线策略约束可作功能类比,但典型 RLHF 并非固定数据上的离线优化。
- 评估(OPE):满足覆盖且概率比正确时,普通轨迹 IS 无偏但可能有极高方差;WIS 以偏差换方差,DR 保证依赖具体变体与模型条件;“无法在线验证”与学习难题同根同源,需留小额在线/仿真预算做最终验证。