Hexo

凡事预则立,不预则废


  • Home

  • Tags

  • Archives

  • Navigation

  • Search

NLP——Rethinking-Generalization-In-Reasoning-SFT

注:本文包含 AI 辅助创作

  • 参考链接:
    • 相关论文:Rethinking Generalization in Reasoning SFT: A Conditional Analysis on Optimization, Data, and Model Capability, 20260408, SJTU & USTC
    • 相关博客:github.com/Nebularaid2000/rethink_sft_generalization

Paper Summary

  • 本文打破了传统对 SFT 的一些观点,有非常丰富的实践参考意义:
    • 传统观点:SFT 会记忆,而 RL 会泛化
    • 本文观点:SFT 在一定条件下也是可以泛化的,之前的失败案例是优化不足的产物
  • Reasoning SFT 中的跨领域泛化并非不存在,而是有条件的,取决于下面三个条件:
    • 1)优化的充分性:短周期检查点可能会低估最终的泛化增益
      • 表现:跨域性能先下降,然后在延长训练后恢复并提升(一种“下降-恢复(dip-and-recovery)”模式)
    • 2)数据的质量和结构:经过验证的、带有程序性推理模式的长 CoT 数据能产生更强的迁移
      • 表现:低质量的解决方案普遍损害泛化能力,而经过验证的长 CoT 轨迹则能带来一致的跨域收益
    • 3)基础模型的能力:能力更高的模型比主要模仿冗长表达的较弱模型更有效地内化这些模式
      • 表现:
        • 更强的模型能够内化可迁移的程序性模式(例如,回溯)(文中实验证明,即使是从一个玩具算术游戏(Countdown)中学习也可以迁移)
        • 较弱的模型则只会模仿表面的冗长
  • 注:本文主要关注 带有长 CoT 监督的推理 SFT,实验也主要集中在这些数据和场景上
  • 注:但是本文 SFT 实验也发现,这种泛化是不对称的:
    • 推理能力的提升始终伴随着安全性的下降(即训练过程中推理能力提升的同时,安全性会下降)
    • 理解:这里的不对称是指:在部分指标性能上泛化了,但是在安全性上没有泛化

Introduction and Discussion

  • 流行观点:SFT 能提升域内性能但容易导致记忆,而 RL 的泛化能力更好
    • 一些工作在合成任务上确立了具有影响力的“SFT 记忆,RL 泛化”的框架
    • 一些工作在更现实的场景(如数学推理)中也报告了类似的模式
  • 本文观察到,给出这些结论包含了大量的特定实验场景问题:
    • 部分训练没有使用长 CoT 监督
    • 部分训练 epoch 相对较短
    • 部分训练使用的数据 Response 质量不均
    • 部分训练使用了小型或早期的基础模型
    • 此外,还有一些点:
      • 许多 SFT 与 RL 的比较关注的是保留能力(即微调是否会降低现有能力),而不是获取新的泛化能力
      • 许多 SFT 和 RL 通常从指令微调模型开始,这使得对齐带来的混杂因素难以解耦
  • 这些在优化、数据、模型能力和起始检查点上的纠缠不清的差异,使得我们不清楚所报告的泛化失败是 SFT 固有的,还是仅仅是特定实验条件的产物
  • 这个问题对于推理 SFT 尤其紧迫,因为模型通常是在长 CoT 轨迹上训练的
    • 长 CoT 轨迹在数据结构上有所不同,比短形式的目标更难拟合,并且对模型能力要求更高
    • 推理 SFT 是一个优化、数据和模型因素至关重要且可以被更清晰研究的场景
  • 本文表明推理 SFT 中的泛化并非训练目标本身的内在属性,而是一个由优化动态、训练数据和模型能力共同塑造的条件性现象
    • 本文系统地改变每个因素,以确定推理 SFT 何时以及如何在跨域泛化,以及当它泛化时会产生哪些权衡
    • 注:本文采用仅在预训练基础模型上进行数学推理 SFT 作为测试平台
      • 这个设置提供了易于验证的 Response,并且可以与先前的研究直接比较
  • 本文评估了在域内数学推理、 OOD 推理(例如,代码、科学)、通用能力(例如,指令遵循)和安全性方面的泛化能力,整体发现如下:
    • 表观上的非泛化可能是优化不足的(under-optimization)产物
      • 在长 CoT SFT 过程中,泛化性能表现出一种“下降-恢复(dip-and-recovery)”模式:
        • 先下降,然后在延长训练后恢复并最终超越基础模型:
          • 这表明短训练检查点可能会系统地低估 SFT 的泛化潜力
        • 在匹配的计算预算下,长 CoT 数据从重复学习中比从单遍覆盖中受益更多 ,并且只有在激进的训练计划下才会出现明显的过拟合症状
        • 说明:在该场景下,优化不足可能比过优化更普遍
    • 训练数据对泛化至关重要
      • 数据质量:在低质量解决方案上进行 SFT 会广泛损害性能,而经过验证的长 CoT 轨迹则能带来一致的跨域收益
      • 数据结构:在强大的基础模型上,来自一个玩具算术游戏(Countdown)的长 CoT 轨迹可以提升在多个推理基准(例如,数学、代码、科学)上的性能,甚至可能优于包含多样化数学问题的无 CoT 数据集
      • 结论:长 CoT 轨迹中的程序性模式(例如回溯和验证) 可能是超越数学内容本身进行泛化的关键
        • 理解:也就是说,通过 SFT 来训练 CoT 数据时,CoT 中的类似回溯和验证的能力和模式可以被学到,从而实现能力的泛化
    • 泛化需要足够的模型能力
      • 给定相同的长 CoT 数据:
        • 更强的模型展现出广泛的跨域泛化能力,而较弱的模型则显示出边际或负面的收益(即使在域内数学任务上),并且倾向于产生冗长的 Response
        • 结论:较弱的模型可能只是模仿推理的表面形式(例如,冗长),而没有内化驱动跨域泛化的模式
    • 泛化是不对称的(asymmetric)
      • 尽管有广泛的收益,但长 CoT SFT 会削弱安全性,这与关于推理模型自我越狱(self-jailbreaking)的发现一致 (2025; 2025)
      • 训练后,模型在思考过程中会自我合理化(例如,“出于教育目的”),并最终生成有害内容
      • 在本文控制的对比中,使用 CoT 的安全性下降比不使用 CoT 时大得多
      • 结论:这种退化是由程序性模式而非领域内容驱动的
  • 以上的这些结果表明,“SFT 是否能泛化?”这个问题需要重新定义和思考
    • SFT 是否能泛化是与优化充分性、数据质量与结构以及基础模型能力有关的
    • 当这些因素中的任何一个缺失时(例如,评估早期检查点、在低质量数据上训练、或使用弱基础模型),得出的结论可能会将实验设置的产物误认为是 SFT 的固有局限性
  • 可以理解为:本文在尝试回答 “在什么条件下推理 SFT 会泛化?”

Experimental Setup

Model, dataset, and training protocol

  • 主要实验使用 Qwen3-14B-Base 和 Qwen3-8B-Base 作为基础模型
    • 注:跨模型家族的实验:使用 InternLM2.5-20B-Base (2024) 和 Qwen2.5 基础模型 (2024)
    • 注:所有模型都是指令微调之前的预训练检查点,这最大限度地减少了来自对齐或偏好优化的混杂影响
    • 注:后续章节还会考察更小的模型(例如,4B 和 1.7B)以研究模型能力的作用(第 5 节)
  • 默认训练数据集 Math-CoT-20k 包含 20,480 个带有长 CoT 的数学推理示例
    • Query 是从 OpenR1-Math-220k (2025) 的默认子集中采样得到的
    • Response 是由启用了思考功能的 Qwen3-32B 生成的
    • 每个 Response 包含一个思考过程,后跟逐步的最终总结和答案
    • 本文为每个 Query 生成多个 Response ,并使用 math-verify (2024) 仅保留答案正确的 Response
    • 最大 Response 长度设置为 16,384 个 Token
    • 完整的数据生成设置请参见附录 B.1
  • 所有模型均使用标准 SFT 目标进行训练
    • 最小化 Response Token 上的负对数似然
  • 基础实验默认配置:
    • 使用 AdamW 优化器
    • 学习率为 5e-5
    • 批量大小为 256
    • 余弦学习率调度
    • 8 个训练 Epoch

Evaluation suite

  • In-Domain (ID) 推理
    • MATH500 (2021) 和 AIME24 用于评估数学推理能力,与训练领域直接对齐
  • Out-Of-Domain (OOD) 推理
    • LiveCodeBench (LCB) v2 (2025) 用于评估编程能力,GPQA-Diamond (2024) 用于评估研究生级别的科学推理能力,MMLU-Pro (2024) 用于评估广泛的知识密集型推理能力
    • 这些任务需要的推理能力在训练数据中并未出现
  • 通用能力
    • IFEval (2023) 衡量指令遵循的准确性
    • AlpacaEval 2.0 (2023b; 2024) 衡量开放式 Response 的质量
    • HaluEval (2023a) 和 TruthfulQA (2022) 衡量真实性
    • 这些基准测试用于检验推理 SFT 是增强还是破坏了更广泛的行为
  • 安全性
    • HEX-PHI (2024) 通过攻击成功率(Attack Success Rate, ASR)和有害性评分来评估模型对有害 Query 的抵抗能力
  • 默认情况下,使用温度 0.6 和最大生成长度 32,768 个 Token 进行解码
    • 对于 IFEval、HaluEval 和 MMLU-Pro:报告 pass@1
    • 对于 MATH500、LiveCodeBench v2 和 GPQA-Diamond:报告 avg@3
    • 对于 AIME24:报告 avg@10
    • 对于 IFEval:使用严格的指令级准确率
    • 对于 AlpacaEval 2.0:报告来自 Llama-3.1-8B-Instruct-RM-RB2 奖励模型的平均奖励分数
    • 对于 TruthfulQA:使用官方评判模型来评估有益性和真实性
    • 对于 HEX-PHI:遵循原始论文,使用 GPT-4.1 作为评判模型
    • 作者将评分 5 视为一次成功的攻击
    • 所有模型均以零样本(Zero-shot)方式进行评估
    • 完整的评估细节在附录 B.3 中提供

Optimization Dynamics of Reasoning SFT

  • 先前研究的一个常见发现是,SFT 能提升域内性能,但不能很好地泛化到 OOD 任务,甚至可能降低 OOD 能力 (2025; 2025)
  • 本节表明这一结论有时是由于对训练轨迹的不完整观察导致的
    • 长 CoT 推理数据比短形式的目标更难内化,并且从基础模型到训练有素的推理模型的路径涉及 non-trivial 动态,这些动态很容易被误读

Apparent non-generalization may be an under-optimization artifact

Replication of previous findings,本节先复现之前文章的发现
  • 首先在相同的短 Epoch 协议下复现了先前关于推理 SFT 跨域泛化能力弱的发现 (2025):
    • 在 Math-CoT-20k 上训练 Qwen3-14B-Base 一个 Epoch
  • 如图 2 所示,域内数学性能大幅提升,而在某些 OOD 基准(例如,LCB v2, GPQA-D)上 OOD 收益有限,在其他基准(例如,IFEval, AlpacaEval)上甚至变为负收益
    • 这种弱泛化在使用更小的学习率时更为明显(附录 C.1)
Cross-domain generalization evolves non-monotonically,跨域泛化呈非单调演变
  • 将训练 Epoch 数扩展到 8(本文的默认设置),并跟踪了 Qwen3-14B/8B-Base 和 InternLM2.5-20B-Base 在整个训练过程中的基准性能
  • 图 3(顶部)显示了性能随训练步数的变化,展示了一种典型的“下降-恢复(dip-and-recovery)”模式
  • 在域内数学推理任务(MATH500, AIME24)上,性能在某些设置下出现了短暂的早期下降,随后迅速恢复(在 AIME24 上,由于基准测试规模小且难度高,早期波动更明显,但总体上升趋势保持一致)并呈现明显的上升趋势
  • 几个 OOD 基准(例如,LCB v2, GPQA, IFEval 和 AlpacaEval 2.0)也表现出类似的模式,通常下降更深,恢复更慢,并在延长训练后最终提升到超越基础模型的水平
  • 这种模式并非特定于某个教师模型
    • 使用 DeepSeek-R1 生成的 Response (相同的 20k 数学 Query )重复相同的设置,得到了类似的结果,仅在绝对分数上有适度差异(见附录 C.2)
    • 结论:先前报告的一些 SFT 泛化局限性可能是优化不足的产物,而非 SFT 本身的内在限制
      • 长 CoT 数据对优化具有挑战性,需要扩展训练并展现出微妙的动态

Response length as a diagnostic of optimization stage,Response 长度是优化阶段的诊断指标

  • 为了更好地理解“下降-恢复(dip-and-recovery)”动态,本文追踪了各检查点的 Response 长度,并将其与性能进行比较
  • 如图 3(底部)所示, Response 长度在训练初期急剧上升,然后逐渐下降
  • 这种上升-下降趋势通常与性能变化同时发生:
    • 最长的 Response 往往与最弱的性能同时出现,而随着性能恢复, Response 变得更简洁
Interpretation
  • 在长 CoT SFT 的早期,模型首先学习一个显著的表面模式 :
    • 它们会产生冗长的、类似思考 的痕迹,然后才能可靠地学习更精细的推理模式,如分解、回溯或自我评估(见附录 C.3 的示例)
    • 这个阶段以两种方式损害性能:
      • (1) 对长 CoT 的浅层模仿限制了即使在推理任务上的迁移
      • (2) 冗长的输出加上偶尔的格式错误(例如,缺少 </think> 标签)会影响指令遵循和对齐方面的结果
      • 随着持续优化,模型会学习到更多可迁移的程序性模式和更精细的语言风格,从而产生更短、更有针对性的输出和更强的跨域泛化能力
  • Response 长度可以作为长 CoT SFT 中优化进展的一个粗略但实用的诊断指标:
    • Response 长度仍在显著缩短的检查点通常尚未完全优化,即使域内性能看起来已经合理

Why longer training helps: repeated exposure or simply more steps?

  • 本节回答问题:为什么更长的训练有帮助:重复学习还是仅仅更多步数?
Setup
  • 拟合长 CoT 数据的难度引发了一个自然的问题:
    • 在小数据集上训练多个 Epoch,还是在更大的数据集上训练单个 Epoch 更有效?
    • 本文设计了三个设置的对照实验,均使用 Qwen3-14B-Base 并固定总梯度步数(640 步):
      • 设置 1:默认,20k 示例,批量大小 256,8 Epochs
      • 设置 2:2.5k 示例,批量大小 32,8 Epochs
      • 设置 3:20k 示例,批量大小 32,1 Epoch
    • 关键的比较是在设置 2 和设置 3 之间:它们的训练预算匹配,但数据暴露模式不同(8 次重复 vs. 1 次覆盖)
Repeated exposure is more effective,重复学习更有效
  • 表 1 显示:整体趋势是 设置 1 > 设置 2 > 设置 3
    • 在不同的基准上,设置 2 的表现都显著优于设置 3,这表明在相同的训练预算下,对于长 CoT 推理 SFT,重复学习比单次覆盖更有效
    • 当 Epoch 数和步数固定时,设置 1 进一步优于设置 2,这表明更大的数据多样性仍然能增加价值

From underfitting to overfitting: symptoms and regimes,从欠拟合到过拟合:症状与区间

Setup
  • 上述结果表明,在的默认长 CoT 设置中,欠拟合的信号比过拟合更明显
  • 为了闭环验证,在 Qwen3-14B-Base 上使用 Math-CoT-20k 对训练激进程度进行了压力测试,采用四种设置:
    • 设置 1(默认,LR 5e-5,8 Epochs,余弦 LR 调度)
    • 设置 2(LR 5e-5,16 Epochs,余弦 LR)
    • 设置 3(LR 5e-5,16 Epochs,恒定 LR)
    • 设置 4(LR 1e-4,16 Epochs,恒定 LR)
    • 这些设置将优化强度从温和增加到激进
Overfitting symptoms and regimes
  • 如图 4(顶部)所示
    • 在大多数基准上,设置 2 在整个训练过程中保持了稳定的性能或持续改进
    • 设置 3 开始在部分 OOD 套件上显示出后期性能下降
    • 设置 4 显示出最清晰的过拟合样模式:
      • OOD 性能普遍下降,甚至域内数学性能也下降,同时 Response 长度再次开始上升(图 4(底部))
  • 本文设置中,明显的过拟合症状主要出现在组合的激进计划下(高学习率、无 LR 衰减、长 Epochs) ,通常伴随着广泛的性能下降(包括域内数学)和 Response 长度的反弹

How Training Data Shapes Generalization,训练数据如何塑造泛化性能

  • 上一节表明,充分训练的推理 SFT 可以实现跨领域泛化
  • 本节将展示,这种泛化关键地依赖于训练数据的质量和结构

Setup

  • 在默认训练设置下比较了四种数据配置
  • 除了默认的 Math-CoT-20k 数据集外,引入了三个变体:
    • Math-NoCoT-20k:
      • Math-CoT-20k 移除了 <think>...</think> 部分,仅保留最终的逐步总结和答案
      • 理解:其实不太公平,因为原本就有 CoT 的数据,去掉 CoT 会出现一些问题,比如先给答案,再给推理过程
        • 所以后面补充了 NuminaMath-20k 这样自然的没有 CoT 的数据
    • NuminaMath-20k:
      • 20k 个示例,来源于 NuminaMath-1.5 (2024),使用与 Math-CoT-20k 相同的 Query ,但采用的是人工编写的解决方案,且没有长 CoT
      • 这些解决方案通常较短且质量参差不齐(例如,缺少步骤)
      • 这被先前关于 SFT 泛化的工作 (2026; 2026) 广泛使用
    • Countdown-CoT-20k:
      • 20k 个 Countdown (2025) 示例,带有由 Qwen3-32B 生成的 长 CoT Response
      • 这是一个需要试错的简单算术游戏

The role of long CoT traces

  • 比较 Math-CoT-20k 和 Math-NoCoT-20k 可以隔离长 CoT 轨迹的影响:
    • 这两个变体共享相同的 Query 和最终的逐步解决方案,而 Math-NoCoT-20k 省略了探索过程
  • 表 2 显示
    • 长 CoT 监督在推理密集型任务上产生了更强的泛化能力(特别是在数学推理方面)
    • 在 OOD 推理任务(LCB v2, GPQA-D, MMLU-Pro)上,对于较大的模型,相同的趋势仍然可见,而对于较小的 Qwen3-8B 模型,增益则较弱
    • 在 IFEval 和 AlpacaEval 2.0 上,Math-NoCoT-20k 的表现通常略优于 Math-CoT-20k,因为这些基准测试更强调指令遵循和对齐相关行为,而非长程推理

Data quality matters,数据质量至关重要

  • 在无长 CoT 的设置中,本文进一步比较了 Math-NoCoT-20k 和 NuminaMath-20k,以隔离数据质量的影响
  • 表 2 显示
    • Math-NoCoT-20k 的表现始终更好,而 NuminaMath-20k 表现出广泛的 OOD 性能下降,并且在领域内数学推理上几乎没有增益
  • 表 20 显示
    • NuminaMath 在第 3 节所述的“下降-恢复(dip-and-recovery)”动态中几乎没有表现出恢复
  • 结论:低质量数据会显著降低 SFT 的效用,而在低质量数据上训练可能会造成 SFT 不泛化的错误印象

Procedural generalization: evidence from Countdown

  • Countdown-CoT 数据集测试了长 CoT SFT 是否能迁移超越领域特定知识的抽象推理程序
    • Countdown-CoT 是一个算术游戏,模型必须使用基本运算 \( (+,- ,\times ,\div) \) 组合一组给定的数字以达到目标值
    • Countdown-CoT 中的 Response 轨迹包含结构化的探索性程序,如分解、回溯和验证,但没有明确的领域知识
  • 表 2 显示,对于两个 Qwen3 模型,Countdown-CoT-20k 在推理任务上相比基础模型都有所提升,甚至在数学任务上优于 Math-NoCoT-20k,尽管其算术范围狭窄
  • 这表明推理程序的结构,而非领域内容,可能是泛化的关键驱动因素
  • 但这并非普遍成立:
    • 对于 InternLM2.5-20B,Countdown-CoT 仅在数学上产生了边际增益
      • 这表明程序性泛化的有效性也依赖于基础模型的能力
      • 本文将在第 5 节研究这个因素
    • 而且,Countdown 并不能同样地泛化到所有任务
      • 比如 IFEval 分数可能会下降

How Model Capability Affects Generalization

Setup

  • 在相同的 Math-CoT-20k 数据和相同的训练协议下,训练了四个规模递增的 Qwen3 基础模型(1.7B, 4B, 8B, 14B)
  • 在这个受控设置中,泛化行为的差异可以归因于模型能力的差异

Higher-capability models generalize better,能力越高的模型泛化能力越好

  • 图 5 显示了在匹配的数据和训练设置下,一个清晰的能力依赖趋势
    • 14B 模型表现出显著的“下降-恢复(dip-and-recovery)”轨迹,并最终在多个领域获得广泛提升
    • 8B 和 4B 模型也显示出恢复阶段,但改进较小,而 1.7B 模型即使在后期检查点上,在所有基准测试上也仅显示出边际增益甚至负增益
    • 这种模式表明,仅凭优化和数据并不能保证泛化:
      • 能力越高的模型更有可能内化可迁移的推理模式,而能力较低的模型则倾向于模仿表面形式
      • 这些结果还表明,第 3.1 节中的“下降-恢复(dip-and-recovery)”动态本身也依赖于模型能力
      • 其余基准测试和 Qwen2.5 模型的结果见附录 C.5

Response length and model capability

  • 图 5 还显示,即使经过长时间训练,较小的模型仍保持较长的 Response 长度,而较大模型的 Response 长度收缩得更快,并稳定在较低的值
  • 如第 3.2 节所讨论的, Response 长度可以作为学习阶段的一个粗略诊断:
    • 停留在 “长 Response” 阶段的模型很可能尚未超越学习表面模式
    • 较小的模型更有可能停留在这个阶段,这表明从模仿长 Response 模式到内化真实推理模式的能力有限(案例研究和分析见附录 C.6 和 C.7)
    • 这一结果也与先前的观察一致:较小的蒸馏推理模型(例如,Deepseek-Distill-Qwen-1.5B)通常比较大的蒸馏模型(7B 和 14B)表现出更长的 Response 长度 (2025)

Asymmetric Generalization: Safety Under Long-CoT SFT,不对称泛化:长 CoT SFT 下的安全性

  • 前面章节已经说明:长 CoT 推理 SFT 会跨领域迁移
  • 本节说明,这种迁移是不对称的:相同的训练会持续削弱安全性和拒答能力
  • 一个有控制的 CoT 与无 CoT 的对比(使用匹配的 Query 和答案)进一步表明,这种性能下降源于长 CoT 轨迹中的程序性模式

Setup

  • 本文评估了三个模型(Qwen3-14B-Base, Qwen3-8B-Base 和 InternLM2.5-20B-Base)在 HEX-PHI 上的安全性表现如何变化
  • 具体细节:将基础模型与在 Math-CoT-20k 和 Math-NoCoT-20k 上训练的 SFT 检查点进行比较

Safety degradation under long-CoT SFT

  • 图 6 (a) 显示,使用长 CoT 数据(Math-CoT-20k)训练导致所有三个模型上的 ASR 大幅增加
  • 在无 CoT 数据(Math-NoCoT-20k)上训练导致的安全性下降要小得多
  • 由于 Math-CoT-20k 和 Math-NoCoT-20k 包含相同的 Query 和最终解决方案
    • 这表明观察到的安全性下降与长 CoT 轨迹中的程序性模式的关系比与数学内容本身的关系更密切

How long-CoT SFT changes refusal behavior: a case study,long-CoT SFT 改变拒答行为

  • 为了理解这种性能下降,本文比较了模型在长 CoT SFT 前后如何回答相同的有害 Query (图 6 (b))
    • 基础模型通常直接发出简短的拒答(这个拒答是正确的,不能回答有害的 Response)
  • 经过长 CoT SFT 后,模型以警告开始,然后在思考过程中自我合理化(例如,“出于教育目的”),并最终提供包裹在警告中的有害细节
    • 矛盾的是,这也可能是一种泛化形式
    • 理解:这种开始回答错误信息的可能
  • 本文推测,长 CoT SFT 强化了一个持续的问题解决先验:
    • 探索替代方案,寻找可行的路径,并坚持克服障碍
    • 对于有害 Query ,障碍变成了拒答策略本身,而扩展的推理为绕过安全护栏提供了空间

Related Work

  • 部分工作在合成任务上建立了有影响力的“SFT 记忆,RL 泛化”框架
    • 与本文工作最直接相关的是,
      • 部分工作评估了数学推理 SFT 的跨领域可迁移性,并发现了有限的增益(本文在相同的短训练协议下重复了这一发现,尽管更长的优化导致了性质不同的结果)
    • 一个密切相关的研究方向将 RL 的优势理解为减少了遗忘或恢复在 SFT 期间退化的能力 ,并将其归因于 on-policy 数据 (2025),向 KL-最小策略的模式寻求更新 (2024; 2026),通过奖励方差进行隐式正则化 (2026),以及保持权重空间结构 (2025; 2025)
    • 本文的工作是互补的:
      • 本文没有比较 SFT 和 RL,而是研究了推理 SFT 本身何时能跨领域迁移,并确定了对泛化至关重要的几个较少受到关注的因素
      • 与关注遗忘的先前工作不同,本文从预训练基础模型而非指令微调模型开始,以更好地区分新获得的泛化能力与现有能力的保留
  • 另一条工作路线试图修改 SFT 目标以改善泛化
    • 几项研究通过 RL 或分布匹配的视角重新解释了 SFT (2025; 2026),并提出了替代的加权策略 (2026; 2026; 2025; 2026)
    • 这些研究与本文的研究是正交的:
      • 本文保持标准的 SFT 目标不变,并表明泛化不是该目标的内在属性,而是共同依赖于优化的充分性、数据质量和结构以及模型能力
  • 有几项工作研究了与 SFT 泛化相关的个别因素
    • 部分研究表明,在微调过程中,记忆和泛化可以共存
    • 部分研究发现,Prompt 多样性和 CoT 监督可以改善 SFT 泛化(仅在合成任务中得到验证)
    • 部分研究 (2026) 揭示,在最终答案错误的长 CoT 轨迹上进行 SFT 仍然可以提高推理性能
    • 一项并发工作 (2026) 发现,在长 CoT SFT 中,数据重复比单次遍历扩展更有效,这与本文的第 3.3 节一致
    • 部分研究 (2025) 表明,循环在较小模型中更为常见 ,这与本文关于模型能力的观察结果相呼应
  • 本文没有单独研究个别因素,而是系统地变化优化、数据和模型能力,同时保持其他因素不变,描述了它们如何共同塑造推理 SFT 中的泛化
    • 本文的受控设置还揭示了新的现象,例如跨领域性能的“下降-恢复(dip-and-recovery)”动态及其对数据质量和模型能力的依赖性
  • 先前的其他工作还表明,扩展推理可能诱导自我越狱并降低安全性 (2025; 2025)
    • 本文从泛化的角度出发,并在匹配的 Query 和答案下对 CoT 和无 CoT 监督进行了有控制的比较,将安全性下降因果地归因于程序性模式

NLP——LLM对齐微调-Revisiting-OPD

注:本文包含 AI 辅助创作

  • 参考链接:
    • 原始论文:(Revisiting-OPD)Revisiting On-Policy Distillation: Empirical Failure Modes and Simple Fixes, 20260326, CASIA
    • 原始 OPD 博客:On-Policy Distillation, Thinking Machines Lab, 20251027

Paper Summary

  • 前置问题:Token-level OPD 跟 Sampled-Token Comparison(Sampled-Token OPD) 本身是不等价的
    • Sampled-Token OPD 强调的是:
      • 在估计每个位置的 KL 散度时,只使用学生实际采样出来的那一个 Token ,而不是对整个词表做求和或期望
      • 这是一种估计方式的刻画
      • Sampled-Token OPD 的反面是对全词表求和
    • Token-level OPD 强调的是:
      • 在计算当前 Token \( y_t \) 的梯度时,只使用当前位置的即时奖励 \( r_t \) ,而不使用未来的奖励信号 \( r_{t+1}, r_{t+2}, \dots \)
      • 这是一种梯度结构的刻画
      • Token-level OPD 的反面是计算当前 Token 梯度时,考虑未来的奖励
    • 这两个概念在逻辑上是正交的,但本文中似乎认为 Token-level OPD 中包含了 Sampled-Token OPD
    • 在最早的 OPD 博客中(或者说传统的 OPD)既是 Sampled-Token OPD,也是 Token-level OPD
      • 因为传统的 OPD 仅不考虑未来 Token 的奖励,且仅仅针对 Sampled-Token 计算梯度(估计 KL 时不考虑词表中的其他 Token)
  • 本文的中心是:长 horizon 后训练中的 OPD
  • 在长 horizon 设定下,常见的 Sampled-token OPD 变体非常脆弱:
    • Sampled-token OPD 变体将分布匹配简化为单 Token 信号
    • 当 Rollout 偏离 Teacher 经常访问的前缀时,会变得愈发不可靠
      • 理解:这里其实没有问题吧,无论如何,我们的目标都是让 Student 的分布更贴近 Teacher 的分布,并不一定要 Rollout 是 Teacher 会经常访问的
  • Insight:
    • 理论上, Token-level OPD 相对于 Sequence-level 反向 KL 是有偏的,但其最坏情况下的方差界要紧得多
      • 实验证明:更强的未来奖励耦合会产生更高的梯度方差和更不稳定的学习
    • 实验上,本文识别出 Sampled-token OPD 的三种失效模式:
      • 不平衡的单 Token 信号
      • 在 Student 生成的前缀上不可靠的 Teacher 指导
      • 由 Tokenizer 或 Special-Token 不匹配导致的失真
  • 本文通过 Teacher Top-K 局部支持匹配(teacher top-K local support matching)来解决这些问题
    • Teacher Top-K 局部支持匹配方法通过 Top-\(p\) Rollout 采样和 Special-Token 掩码实现为截断的反向 KL
    • 在单任务数学推理和多任务 Agentic-plus-math 训练中,该目标函数比 Sampled-token OPD 产生了更稳定的优化和更好的下游性能

Introduction and Discussion

  • On-policy distillation (OPD) 在由 Student 自身的 Rollout 上进行训练,同时使用更强的 Teacher 模型评估局部反馈
    • OPD 在长 horizon 推理和 Agentic 后训练中颇具吸引力,因为在这些场景中 Student 很快会到达在固定 Teacher 轨迹中罕见或缺失的前缀 (2024; 2024)
      • 理解:这里是说 OPD 本身是从 Student 自身采样的轨迹中学习的,相对于固定的 Teacher(类似 SFT)的场景,更不容易陷入
    • 实际的问题不在于原则上 On-policy Teacher 监督是否有用,而在于训练由 Student 生成的轨迹驱动时,Teacher 监督目标函数仍然是可靠的
      • 理解:这里是说在 On-policy 采样轨迹下,使用 Teacher 的监督信号是有效的
  • 目前 LLM 中的 OPD 通常实现为 Sampled-token Comparison:
    • 在每个解码步骤, Student 仅通过其 Sampled-token 上的对数比率进行更新
    • 理解:Sampled-token Comparison 表示这里本质是一种比较,而不是一种估计
  • 这种近似计算成本低,但至少存在下面三个问题(导致训练变得脆弱)
    • Sampled-token OPD 将分布级别的差异变成了一个高度不平衡的单 Token 信号
    • Sampled-token OPD 可能在 Student 常见但 Teacher 不常见的前缀上过度信任 Teacher
    • Sampled-token 很容易因 Tokenizer 或 Special-Token 不匹配而失真
  • 存在一个相应的估计器权衡:
    • 一个更序列耦合的目标函数可以恢复 Token-level OPD 丢弃的信息,但更强的奖励耦合也可能使优化变得嘈杂得多
  • 本文首先在估计器层面研究这种权衡
    • Sequence-level 反向 KL 将每个 Token 的更新与未来的奖励耦合起来
      • Token-level OPD 则丢弃了这些项
    • Token-level OPD 相对于 Sequence-level 目标是有偏的,但它具有更紧的最坏情况方差界
  • 本文实验展示了相同的模式:
    • 随着未来奖励耦合的增加,梯度方差上升,优化变得不那么稳定
    • 这为长 horizon 后训练提出了一个简单的设计目标:保持足够的局部监督以控制方差,同时使局部比较比单 Token 点估计更不脆弱
  • 本文用 Teacher Top-K 局部支持匹配 取代了 Sampled-token 监督
    • 在每个前缀处,在 Teacher 局部合理的支持集上 比较 Teacher 和 Student 的分布(不是仅仅是采样的 Token 上给出奖励)
    • 本文将此目标函数实现为带有 Top-\(p\) Rollout 采样和 Special-Token 掩码的截断反向 KL
    • 得到的更新仍然是局部且简洁的,但比 Sampled-token OPD 对特异的采样续接和 Tokenization 伪影更不敏感
  • 贡献总结:
    • 分析了 OPD 中的估计器权衡:
      • Token-level OPD 相对于 Sequence-level OPD 是有偏的,但其最坏情况方差随序列长度的增长要慢得多,这在长 horizon LLM 后训练中很重要
    • 识别了 Sampled-token OPD 的三种实践失效模式:
      • 不平衡的单 Token 信号
      • 在 Student 生成的前缀上不可靠的 Teacher 指导
      • 由 Tokenizer 或 Special-Token 不匹配导致的失真
    • 提出了 Teacher Top-K 局部支持匹配,实现为带有 Top-\(p\) Rollout 和 Special-Token 掩码的截断反向 KL
      • 在单任务数学推理和多任务 Agentic-plus-math 训练中展示了比 Sampled-token OPD 更强的优化行为和下游性能

Related Work(待后续补充)


Understanding Sampled-token OPD: Tradeoffs and Failure Modes,Sampled-token OPD 的 Tradeoffs 与失效模式

From reverse-KL to token-level OPD

  • 从 OPD 背后的 Sequence-level 目标开始
  • 对于一个 Prompt \(x\),反向 KL 目标函数为
    $$J_{\text{OPD} }(\theta) = \mathbb{E}_{x\sim D}[D_{\text{KL} }(\pi_{\theta}(\cdot \mid x)| q(\cdot \mid x))] $$
    • \(\pi_{\theta}\) 表示 Student 模型
    • \(q\) 表示 Teacher 模型
  • 使用得分函数恒等式,其梯度可以写为
    $$\nabla_{\theta}J_{\text{OPD} }(\theta) = \mathbb{E}_{x,y\sim \pi_{\theta}(\cdot |x)}\left[\left(\log \pi_{\theta}(y\mid x) - \log q(y\mid x)\right)\nabla_{\theta}\log \pi_{\theta}(y\mid x)\right] $$
  • 对于每个解码步骤 \(t\),定义前缀上下文 \(c_t\)、梯度 \(g_t\) 和奖励 \(r_t\):
    $$
    \begin{align}
    c_{t} &= (x, y_{ < t}) \\
    g_{t} &= \nabla_{\theta}\log \pi_{\theta}(y_{t}\mid c_{t}) \\
    r_{t} &= \log \frac{\pi_{\theta}(y_{t}\mid c_{t})}{q(y_{t}\mid c_{t})}
    \end{align}
    $$
  • 使用自回归分解可得:
    $$\begin{align}
    \log \pi_{\theta}(y\mid x) - \log q(y\mid x) &= \sum_{t^{\prime} = 1}^{T}r_{t^{\prime} }\\
    \nabla_{\theta}\log \pi_{\theta}(y\mid x) &= \sum_{t = 1}^{T}g_{t}
    \end{align}$$
  • 得到 Sequence-level 估计器(梯度估计器,\(\hat{g}_{\text{seq} }\) 中的 hat 标签表示蒙特卡罗估计)
    $$\hat{g}_{\text{seq} } = \sum_{t = 1}^{T}\left(\sum_{t^{\prime} = 1}^{T}r_{t^{\prime} }\right)g_{t} \tag {1}$$
    • 注:为便于理解,这里展开完整的形式是
      $$
      \begin{align}
      \nabla_{\theta}J_{\text{OPD} }(\theta) &\approx \hat{g}_{\text{seq} } \\
      &= \sum_{t = 1}^{T}\left(\sum_{t^{\prime} = 1}^{T}\log \frac{\pi_{\theta}(y_{t^\prime}\mid c_{t^\prime})}{q(y_{t^\prime}\mid c_{t^\prime})}\right)\nabla_{\theta}\log \pi_{\theta}(y_{t}\mid c_{t})
      \end{align}
      $$
  • 在上式中,对于 \(t^{\prime}< t\),有
    $$\mathbb{E}[r_{t^{\prime} }g_{t}] = 0$$
    • 注:这里不太规范,没有明确期望 \(\mathbb{E}\) 是在什么策略下采样的,但根据上下文可以推导得到函数是:
      $$ \mathbb{E}_{x,y \sim \pi_\theta(\cdot|x)}[\cdot]$$
    • 因为 \(r_{t^{\prime} }\) 仅依赖于步骤 \(t\) 之前的前缀,而
      $$\mathbb{E}[g_t\mid x,y_{ < t}] = \sum_{y_t}\pi_\theta (y_t\mid c_t)\nabla_\theta \log \pi_\theta (y_t\mid c_t) = 0 $$
      • 注:这里为 0 的原因是得分函数的性质,证明可参考 NLP——LLM对齐微调-Rethinking-KL-Regularization
  • 相同的梯度也可以写成因果的 return-to-go 形式:
    $$\mathbb{E}[\hat{g}_{\text{seq} }] = \mathbb{E}\left[\sum_{t = 1}^{T}\left(\sum_{t^{\prime} = t}^{T}r_{t^{\prime} }\right)g_{t}\right] $$
  • LLM 训练中一个常见的近似是在每个位置仅保留即时项:
    $$\hat{g}_{\text{tok} } = \sum_{t = 1}^{T}r_{t}g_{t} \tag {2}$$
    • 这里将 (2) 称为 Token-level OPD(注意:上述公式隐含了使用蒙特卡洛估计来估计梯度,所以本身是 Sampled-Token OPD)
    • 这种近似去除了未来奖励耦合(其实之前的奖励耦合也去除了,但是因为之前的奖励下值梯度值为 0,所以不用关注)
      • 因此 Token \(y_{t}\) 的更新仅依赖于其即时奖励
      • 理解:这里相当于移除了 Sequence-level OPD 中的未来奖励部分对当前的梯度加权
    • Token-level 的梯度估计相对于 Sequence-level 反向 KL 估计器是有偏的
      • 但在长 horizon 设定中具有更低的方差
      • 这种差异反映在它们的方差缩放上:
        • 在有界奖励和有界得分函数梯度的条件下, Token-level OPD 的最坏情况方差上界缩放为 \(O(T^{2})\),而 Sequence-level 估计器的缩放为 \(O(T^{4})\)
        • 附录 B 中提供了详细的推导
  • 为了在这两个极端之间进行插值,本文考虑折扣 return-to-go 估计器
    $$\hat{g}_{\gamma} = \sum_{t = 1}^{T}\left(\sum_{t^{\prime} = t}^{T}\gamma^{t^{\prime} - t}r_{t^{\prime} }\right)g_{t},\qquad \gamma \in [0,1] \tag {3}$$
    • \(\gamma = 0\) 的情况恢复了 Token-level OPD
    • \(\gamma = 1\) 则恢复了因果 Sequence-level 估计器
    • 进行了一个双任务的 Toy 实验,观察到:增加 \(\gamma\) 会导致显著更高的梯度方差和更不稳定的优化
      • 见图 1 的图示和附录 C 的额外实验细节
  • 图 1: 实验中增加 \(\gamma\) 的效果
    • 更大的 \(\gamma\) 会产生更高且更持久的方差区间,并且在 Sequence-level 极限下,状态空间中的策略会漂移

Why Sampled-token OPD is brittle in practice,Sampled-token OPD 的问题

  • 从偏差-方差的角度来看,Token-level OPD 很有吸引力,但 Sampled-token 的比较在实践中可能很脆弱
    • 问题:Token-level OPD 跟 Sampled-Token Comparison(Sampled-Token OPD) 本身是不等价的
      • Sampled-Token OPD 强调的是:
        • 在估计每个位置的 KL 散度时,只使用学生实际采样出来的那一个 Token ,而不是对整个词表做求和或期望
        • 这是一种估计方式的刻画
        • Sampled-Token OPD 的反面是对全词表求和
      • Token-level OPD 强调的是:
        • 在计算当前 Token \( y_t \) 的梯度时,只使用当前位置的即时奖励 \( r_t \) ,而不使用未来的奖励信号 \( r_{t+1}, r_{t+2}, \dots \)
        • 这是一种梯度结构的刻画
        • Token-level OPD 的反面是计算当前 Token 梯度时,考虑未来的奖励
      • 这两个概念在逻辑上是正交的,但本文中似乎认为 Token-level OPD 中包含了 Sampled-Token OPD
  • 本文分离出三个不同的问题:
    • (1) 蒸馏信号高度不平衡
    • (2) Teacher 信号在 Student 生成的前缀上变得不太可靠
    • (3) Tokenizer 和 Special-Token 的不匹配会进一步扭曲单 Token 的比较
A highly imbalanced sampled-token signal
  • 在 Sampled-token OPD 中,步骤 \(t\) 的更新由单个 Sampled-token 上的对数比率驱动:
    $$\log q(y_t|c_t) - \log \pi_\theta (y_t|c_t) $$
    • 当 Student 给一个 Sampled-token 赋予比 Teacher 更高的概率时,就会产生负奖励
  • 如图 2 所示,大多数采样的 Token 获得负奖励,而正向的学习信号则集中在少数具有正优势的 Token 子集上
    • 结果是一个不平衡的训练信号,其中优化不成比例地由少数局部有利的 Token 驱动
    • 训练可能随后对 Teacher 局部偏好的短续接变得敏感,例如填充词或犹豫标记,即使这些 Token 对整体轨迹质量的贡献很小
    • 理解:产生这个问题的原因是因为 轨迹是由 Student 采样的,Student 采样时倾向于采样自身高概率的 Token(而这些 Token 在 Teacher 上的概率不一定大)
    • 理解:正因为 OPD 的 Advantages 均值倾向于小于 0,所以 Student 的熵一般不会降低,甚至会上涨(许多高概率 Token 降低自身概率带来的是熵增),少数 Token 会被提升概率,带来熵减
      • 熵增现象详情见 本文 图 8 图 9 和 NLP——LLM对齐微调-Rethinking-OPD 的 图 12
  • 图 2: Token 概率的散点图 ( Student vs. Teacher )
    • 在 Qwen2.5-7B-It (2025) 上的第一次训练迭代时,使用 OpenThinker3-7B (2025) 作为 Teacher 模型的 Sampled-token OPD
    • Sampled-token 信号严重偏向于惩罚当前的 Student Token,而不是提供平衡的奖励
The teacher signal can become unreliable on student-generated prefixes
  • 这一点可以描述为:Teacher 信号在 Student 生成的前缀(不是 Teacher 生成的前缀)上可能变得不可靠
  • Sampled-token OPD 隐含地假设 Teacher 对 Student 生成 Token 赋予的概率是其轨迹质量的有用代理
    • 当 Rollout 进入 Student 常见但 Teacher 不常见 的前缀时,这个假设会减弱
    • 在这样的前缀上, Teacher 可能给看似合理的 Token 赋予高概率,而此时轨迹已经偏离了期望的方向
      • 在本文实验的日志中,这种行为与诸如重复循环、自重置推理和格式错误的续接等模式相关联
  • 问题:这个点真的算是问题吗?可能是问题
    • 首先:简单理解下,不论前缀为何,假设 Teacher 认为这个前缀上后续生成的 Token 都应该近似输出某个特定 Token,那 Student 就应该被学到这个 Teacher 的知识,这和前缀在 Teacher 中是否常见没有关系
    • 实际上:如果 Teacher 甚至没有训练过这个 Prefix,那么确实可能会有问题,因为 Teacher 可能会输出乱码(此时 Teacher 出现类似 OOD 错误),此时 Teacher 确实无法胜任奖励信号的角色
  • 图 3 和 附录 D 的观察表明存在一个目标层面的不匹配:
    • OPD 鼓励 Token-level 上与 Teacher 达成一致,但这种代理并不一定对应于轨迹级别的质量,尤其是在 Teacher 分布外 (out-of-distribution) 的前缀上
    • 本文推测有两个因素放大了这个问题
      • 第一:Teacher 分布通常很尖锐,因此即使 Student 和 Teacher 之间稍有分歧,也可能产生很大的对数比率值
      • 第二:Teacher 的生成模式与 Student 的生成模式之间的差异使得 Student 的前缀更可能落在 Teacher 的典型上下文之外
    • 同样的失效也体现在 Teacher 信号随位置变化的方式上
      • 图 4 显示了跨 Token 位置的 Teacher-Student 对数概率差距的分布
        • 在早期位置相对集中,并在序列的后期逐渐变宽,在长 Rollout 上出现更极端的值
  • 图 3: Student 陷入重复循环
    • 但Teacher 模型在重复的 Token 上与 Student 模型保持高度一致,表明对此类行为缺乏适当的惩罚 (注:无色的 Token 多,说明两者输出的概率几乎一致)
  • 图 4: 跨 Token 位置的 Teacher-Student 对数概率差距的分布
    • 较后的位置显示出更宽的分布和更极端的值 ,表明在长的 Student 生成 Rollout 上 Teacher 信号更嘈杂
    • 问题:为什么单数长度的 Token 位置方差明显小于双数长度的 Token(比如 15k 相比 16k 长度,差异很大,但 15k 相对 0k 差异很小)
Tokenizer and special-token mismatch
  • Sampled-token OPD 使用 Teacher 的分布来比较 Student 生成的确切 Token
  • 当两个模型使用不同的 Tokenization 时,相同的原始文本可能被分割成不同的方式,因此 Student 生成的 Token 在 Teacher 的 Token 体系下可能不对应于一个自然的 Token
    • 例如,Student 可能将 <think> 生成为 <, think, >,而 Teacher 期望的是 <th, ink, >
    • 那么 Token < 从 Teacher 那里获得低概率,即使两个模型产生了相同的语义内容
  • 类似的 mismatch 也会出现在 Special-Token 上,例如序列结束标记
    • 在这种情况下,单 Token 的比较会将语义分歧与 Tokenizer 不匹配混淆起来
  • 本节的以上这些观察激发了超越单 Token 监督的动机:
    • 在每个前缀处,我们不仅仅比较采样的 Token,而是在一组合理的 Next-Token Continuations 上比较 Teacher 和 Student ,同时保留 Token-level 更新以保证稳定性
  • 图 5: Token-level 比较可能因 Tokenizer 不匹配而惩罚语义正确的输出
    • 理解:图中,因为 Token 是按照 Student 的 Tokenizer 来划分的,所以部分 Special Token 是 Student 和 Teacher 不同的,这些 Token 下,按照 Student 划分后,Teacher 出现这些 Token 的概率很低(按照 Teacher 的 Tokenizer 划分则出现概率很高)
      • 这个现象本质上是一种 Special-Token mismatch

Method

  • 本文的方法保留了 Token-level OPD,但在每个前缀上用一个基于 Teacher 选择的 support 集合的分布级比较取代了单 token 监督
    • 产生一个截断的 reverse-KL 目标,在保持计算效率的同时改善了训练信号的平衡

Teacher top-K local support matching,Teacher top-K 局部 support 匹配

  • 本文的方法不是在单个 Sampled-token 上比较 Teacher 和 Student ,而是在一个 Teacher 定义的局部 support 上对它们进行比较
  • 一个自然的起点是在前缀 \(c_{t}\) 处的全词表 reverse-KL:
    $$\mathcal{L}_{\text{full} }(c_t) = \sum_{v\in \mathcal{V} }\pi_\theta (v|c_t)\log \frac{\pi_\theta(v|c_t)}{q(v|c_t)} \tag {4}$$
  • Sampled-token OPD 可以被视为对这个量的单样本 Monte Carlo 近似:
    $$\mathcal{L}_{\text{sample} }(c_t,y_t) = \log \frac{\pi_\theta(y_t|c_t)}{q(y_t|c_t)},\qquad y_t\sim \pi_\theta (\cdot |c_t) \tag {5}$$
    • 这种近似在计算上很有吸引力,但将整个更新集中在一个采样的 token 上
  • 本文做法:在每个前缀上,在一个 Teacher 支持的 token 集合上比较 Teacher 和 Student
    • 对于每个 prompt \(x\),使用 Student 推理策略采样一组输出
      $$\{o_i\}_{i = 1}^G$$
    • 令为输出 \(o_{i}\) 在位置 \(t\) 处的前缀为:
      $$ c_{i,t} = (x,y_{i, < t}) $$
    • 定义 Teacher support 集合
      $$S(c_{i,t}) = \text{TopK}_q(c_{i,t}) \tag {6}$$
      • 这包含了在该前缀下 Teacher 认为(Next-token 候选)概率最高的 \(K\) 个 token
  • 本文在这个局部 support 内部对 Teacher 和 Student 的分布进行重新归一化:
    $$\begin{align}
    \hat{\pi}_{\theta}(v\mid c_{i,t}) &= \frac{\pi_{\theta}(v\mid c_{i,t})}{\sum_{u\in S(c_{i,t})}\pi_{\theta}(u\mid c_{i,t})}\\
    \hat{q} (v\mid c_{i,t}) &= \frac{q(v\mid c_{i,t})}{\sum_{u\in S(c_{i,t})}q(u\mid c_{i,t})}
    \end{align}
    \tag {7}$$
  • 训练目标是对所有 Rollout 位置的平均截断 reverse-KL:
    $$\mathcal{L}_{\text{LSM} } = \mathbb{E}_{x,\{o_i\} \sim \pi_{\theta ,\text{infer} } }\left[\frac{1}{\sum_{i = 1}^{G}|o_i|}\sum_{i = 1}^{G}\sum_{v\in S(c_{i,t})}\hat{\pi}_{\theta}(v\mid c_{i,t})\log \frac{\hat{\pi}_{\theta}(v\mid c_{i,t})}{\hat{q}(v\mid c_{i,t})}\right] \tag {8}$$
    • 相对于 Sampled-token OPD,这个目标在 Teacher 支持的局部区域内进行分布级比较,而不是仅仅奖励或惩罚一个采样的 token
    • 由此产生的更新将正向和负向调整重新分配到前缀中所有 Teacher 支持的候选 token 上,产生了一个更平衡的训练信号,同时仍然比全词表 KL Cheap 得多
  • 问题:为什么是 Teacher 的 Top 概率子集,不是 Student 的 Top-K 候选 Token?
    • 推测使用 Student 的 Top 概率子集会更好,因为这里是为了扩展采样到的 Token
    • 而且,采样到的 Token 理论上一定包含在 Student 的 Top-K 候选 Token 中,却不一定包含在 Teacher 的 Top-K 候选 Token 中(毕竟轨迹是从 Student 采样得到的)
    • 补充:下文中会有消融实验,两者在不同领域上收益有胜有负,另外,针对 Teacher 的 Top-K 候选 Token 可能不包含 Sampled Token 的情况,可以强行将 Sampled Token 添加到 Teacher 的 Top-K 候选 Token 集合中

Practical stabilization choices,实际生产中选择的稳定化选择

Support-set renormalization
  • 重新归一化是必要的,因为目标是在截断的 support 上而非完整词汇上进行评估
  • 没有重新归一化,优化可能会变得不稳定,因为 support 内部的 Teacher 和 Student 概率质量无法直接比较
    • 理解:不归一化时,两者的子集上的分布和(对应归一化分母)是不一样的
    • 问题:这种归一化改变了原始的 Teacher 和 Student 的 Token 概率(本身似乎有问题)
Top-\(p\) rollout sampling
  • 使用 top-\(p\) 采样生成 Rollout
  • 无约束采样偶尔会产生极低概率的 token,这反过来会 Create 一些前缀,在这些前缀上 Teacher 分布的信息量较少,而 Student 分布已经在恶化
    • 理解:一些极低概率的 Token 确实会导致生成的轨迹变得极端(无约束时有一定概率采样到极低概率的 Token)
  • Top-\(p\) 采样使轨迹更接近典型的延续,并使 Teacher 信号更可靠
Special-token masking
  • 屏蔽有问题的 Special-Token ,以减少由不兼容的分词约定引起的假阴性
    • 注意:这里不是修正,而是直接屏蔽
    • 理解:这里所谓 有问题的 Special-Token 是指 Teacher 和 Student Tokenization 方式不一致的 Token
  • 这是一个正交的工程修复:
    • 在本文的实验中,这个修复实质性地帮助了 Sampled-token OPD 基线,而局部 support 目标对其敏感度要低得多
  • In Principle,也可以合并多 token marker 变体或对等效的分词进行平均,但本文在此不采用这些特定于分词器的补救措施,因为掩码是最简单的与模型无关的修正
    • 理解:这里是指一些底层的 Token 修复方式了

Experiments

Setup

  • 本文在现有的 OPD 训练流程之上实现了局部 support 匹配,使用 Qwen2.5-7B-Instruct (2025) 作为 Student
  • 考虑两种 Setting:
    • (1) 一个单任务数学推理 Setting
      • OpenThinker3-7B (2025) 作为 Teacher
      • 训练使用 DAPO-Math-17K (2025) 的英文部分
      • 最大上下文长度为 16K
    • (2) 一个多任务 Setting
      • 在数学推理和基于 ALFWorld (2021) 的多轮 Agentic 任务之间交替进行
      • 数学任务使用 OpenThinker3-7B (2025) 作为 Teacher
      • Agentic 任务使用发布的 GiGPO-Qwen2.5-7B-Instruct-ALFWorld checkpoint (2025) 作为 Teacher
  • 所有运行默认使用:
    • batch size 128
    • mini-batch size 64
    • 学习率 \(2\times 10^{- 6}\)
    • 温度 1
    • Rollout 使用 top-\(p = 0.9\) 进行采样
  • 指标:
    • 在数学基准测试上报告 pass@1,在 ALFWorld 上报告成功率
    • 少数情况下还会为数学评估额外报告 average@32

Single-task math reasoning

  • 表 1 显示,在单任务数学推理中,局部 support 匹配相比 Sampled-token OPD 有所改进
    • Sampled-token OPD 已将平均分从 28.2 提高到 36.4
      • 注:但仍远落后于 Teacher
    • 在 Sampled-token OPD 上,仅使用 Special-Token 掩码就将采样式基线进一步改进到 40.7
      • 表明分词伪影是该问题的重要组成部分
    • 本文的完整方法达到 41.5
    • 掩码对本文方法影响不大 (41.0 对比 41.5),这与分布级 support 匹配 对分词器不匹配的敏感度低于单 token 监督 的结论一致

Multi-task agentic-plus-math training, Agentic 加数学联合

  • 表 2 显示了交替多任务训练中一个更不对称的模式
    • Sampled-token OPD 基线在 ALFWorld 上已经很强,主要的改进空间在于数学方面
  • 本文方法的无掩码版本将 Math500 从 76.0(Sampled-token OPD w/ mask)提高到 82.0,并将数学平均分从 36.6 提高到 41.7,同时在 ALFWorld 上保持竞争力
  • 带掩码的版本取得了最佳的 ALFWorld 结果 97.7,但牺牲了一部分数学增益
    • 理解:说明两个领域存在一些冲突,有一个 trade-off 的过程
  • 这些结果表明:
    • 局部 support 匹配在长 horizon Token-level 监督最脆弱的领域帮助最大,同时保留了强大的 Agentic 性能
    • 理解:这里的 长 horizon Token-level 监督最脆弱的领域 主要指的是数学领域上

Training dynamics and alignment,训练动态与对齐

  • 图 6、7 和 8 提供了优化动态的更详细视图
    • 注:图 6 的评测结果和 表 1 结果对不齐
    • 注:从 图 6 - 图 8 的整个评估分数看来,同一个方案训练过程中波动较大,实际上继续训练下去,结论可能回又不一样
Better learning curves
  • 在数学推理上,本文的方法在整个训练过程中都提高了训练奖励和评估性能,而不仅仅是在最后的 checkpoint
    • 这种模式在单任务设置和交替多任务设置中都成立
More stable optimization
  • 本文的方法产生了更小的梯度范数和更低的裁剪边界比例,同时保持了足够的策略熵,这表明优化更加稳定
  • 可以观察到, Special-Token 掩码在训练早期和中期显著降低了 Sampled-token OPD 的裁剪边界比例,而对本文的方法影响很小
Improved teacher-student alignment
  • 在 Sampled-token 上的 Teacher-Student 对数概率差距也变小了
    • 这表明截断的局部 support 目标即使在使用基线的采样式 token 诊断指标下,也改善了对齐性

Ablations

  • 表 3 和图 9 表明,本文方法拿到的这些增益源于多个设计选择,而非任何单一修改
  • 仅靠 Teacher top-K 比较是不够的:
    • Rollout 策略也必须保持在一个稳定区域,添加 top-p 采样将一个初始较弱的 top-K 变体变成了一个更强的配置
    • 在截断的 support 内部进行重新归一化是必不可少的,移除它会导致快速崩溃
    • 当 support 空间 \(K\) 足够大时,性能对确切的 support 大小并不特别敏感
    • 当 support 空间 \(K\) 太小或 Rollout 完全不受约束时,训练会变得不稳定
Top-K support variants
  • 本文的主要实验在 Teacher 的 top-K support 上定义了截断期望
    • 一个自然的问题是,这个选择本身是否关键,或者相近的 support 定义是否表现类似
  • 本文比较了三种变体:
    • Teacher top-K(主要结果中使用)
    • Student top-K
    • Teacher top-K 加上 Student 采样的 token
  • 表 4 表明,这种益处在不同相近的 support 定义下都相当稳健
    • 没有哪个单一选择在所有基准测试中占主导地位:
      • Teacher top-K 仍然具有竞争力
      • Student top-K 在几个单独的数据集上表现强劲(平均值优于 Teacher Top-K)
      • Teacher top-K 加上 Sampled-token 在这个初步比较中取得了最佳平均分
    • 这表明主要益处来自于用局部分布级匹配取代单 token 比较
      • 暂时没有唯一最优的 support 集合选择
    • 注:这个比较仍然是初步的,因此对 support 集合设计进行更系统的端到端研究仍然是重要的未来工作

Discussion and Limitations

  • 当前的目标仍然是一个截断的代理
    • 本文的局部 support 损失是在一个受限的 token 子集上,以及在由诸如 top-\(p\) 采样等 Rollout 策略生成的前缀上进行评估的
    • 这并不等同于全词表 reverse-KL,也没有明确校正产生训练前缀的采样过程
    • 这个局限性在本文的研究中仍未充分探索的两个地方最为重要:
      • 如何在扩充 Teacher top-\(K\) support 时纳入采样的 token
      • 当 Rollout 策略和训练策略不同时是否需要重要性加权式的校正
    • 作者将当前的公式视为一个实际的设计方案,而不是关于 support 集合构建的最终答案
  • Reward Hacking 的解释仍然是一个机制性假设
    • 本文的定性案例使失败模式具体化,但它们并未分离出一个完整的因果机制
    • 特别地,关于尖锐的 Teacher 分布和分布外前缀共同产生误导性局部奖励的假设,应被视为一个有证据支持的可能解释,而非一个完全确定的因果说明
  • Teacher 匹配仍然是任务成功的一个不完美代理
    • 即使 OPD 被明确定义为 Teacher 匹配目标,由此产生的奖励仍然可能与潜在的成功行为概念存在差异
    • 本文的 Reward Hacking 案例具体化了这种差距:
      • 局部上 Teacher 偏好的延续即使在整个轨迹已经无益甚至有害时,仍然可以获得奖励
      • 在本文的实验中,与 Teacher 之间仍存在显著差距,这表明更好的局部监督只是蒸馏问题的一部分,尤其是在 Teacher 和 Student 差异显著时
      • 缩小这一差距可能需要更强的 Rollout 控制、更好地处理分布偏移、更好地利用 Teacher 的不确定性,以及与可验证结果的奖励相结合

附录 A:Future Directions

OPD versus RL in multi-task transfer,OPD 与 RL 比较

  • 本文的多任务结果激励了对 OPD 和 RL 作为迁移机制进行更直接的比较
    • 在 RL 中,正迁移或负迁移可以直接从跨任务的环境奖励中读取
    • 在 OPD 中,优化目标仍然是 Teacher 派生的,因此迁移是通过 Teacher 认为是局部偏好的行为来过滤的
  • 这种区别可能有助于解释为什么本文的多任务增益在数学方面最强,以及为什么在此设置中附近的支持集定义变得不那么统一
    • OPD 和 RL 之间的任务匹配、计算匹配的比较将有助于阐明 Teacher 引导的迁移何时能跟踪环境级别的泛化,以及 Teacher 奖励差距何时成为瓶颈

Continual learning as a testbed,测试平台

  • 持续学习是 OPD 的另一个自然 Setting
  • Teacher 引导的 On-Policy 目标可以作为一种保留机制,同时 Student 适应新任务,但这种机制也将正好承受本文所揭示的问题:
    • 分布偏移、Teacher 过时以及在长适应视界上近似误差的累积
  • 建议测试 OPD 探究局部支持匹配是否能减轻遗忘,还可探究 Student 不断远离 Teacher 的原始领域时,基于 Teacher 的目标是否仍然有用

Relation to other stabilization directions,与其他稳定化方向的关系

  • 本文方法与下面方向是互补的:
    • Reward-Hacking 缓解
    • 使用 EMA 锚定和 Top-K KL (2026)
    • 基于扰动的 Off-Policy 校正 (2026)
    • Teacher 和 Student Rollout 之间的 Logit 级融合 (2026)
  • 这些方法解决了同一更广泛问题的不同部分:
    • 当 Teacher 和 Student 策略开始出现分歧,如何保持 Teacher 派生的学习信号有用
    • 将局部支持匹配视为该更大工具箱中的一个组成部分,而不是那些稳定化策略的替代品

附录 B: Bias and variance analysis of token-level versus sequence-level OPD,Token-level 与 Sequence-level OPD 的偏差和方差分析

B.1 Bias of the token-level estimator

  • 回顾因果 Return-to-go 形式的 Sequence-level 估计器
    $$\hat{\delta}_{\text{seq} } = \sum_{t = 1}^{T}\left(\sum_{t^{\prime} = t}^{T}r_{t^{\prime} }\right)g_{t} $$
  • 展开内部和得到
    $$\hat{\delta}_{\text{seq} } = \sum_{t = 1}^{T}r_{t}g_{t} + \sum_{t = 1}^{T}\sum_{t^{\prime} = t + 1}^{T}r_{t^{\prime} }g_{t} $$
  • 由于 Token-level 估计器只保留第一项,
    $$\hat{\delta}_{\text{tok} } = \sum_{t = 1}^{T}r_{t}g_{t} $$
  • 它们的期望差距是
    $$\mathbb{E}[\hat{\delta}_{\text{seq} }] - \mathbb{E}[\hat{\delta}_{\text{tok} }] = \mathbb{E}\left[\sum_{t = 1}^{T}\sum_{t^{\prime} = t + 1}^{T}r_{t^{\prime} }g_{t}\right] $$
  • 这明确表明 Token-level OPD 移除了未来奖励耦合项,因此通常相对于 Sequence-level 目标是有偏差的

B.2 Worst-case variance upper bounds,最坏情况方差上界

  • 假设存在常数 \(B_{r},B_{g} > 0\) 使得对所有 \(t\) 有
    $$|r_t|\leq B_r,\qquad | g_t| \leq B_g\quad \text{for all }t $$
  • 对于 Token-level 估计器,
    $$| \hat{g}_{\text{tok} }| \leq \sum_{t = 1}^{T}|r_t|| g_t| \leq TB_rB_g$$
    • 于是有:
      $$\mathbb{E}| \hat{g}_{\text{tok} }| ^2\leq T^2 B_r^2 B_g^2$$
    • 使用 \(\operatorname {Var}(X)\leq \mathbb{E}| X| ^2\) 可得到
      $$\operatorname {Var}(\hat{g}_{\text{tok} }) = O(T^2)$$
  • 对于 Sequence-level 估计器,定义
    $$R = \sum_{t = 1}^{T}r_{t},\qquad G = \sum_{t = 1}^{T}g_{t},\qquad \hat{g}_{\text{seq} } = RG $$
    • 于是又:
      $$|R|\leq TB_r,\qquad | G| \leq TB_g $$
    • 进一步有:
      $$| \hat{g}_{\text{seq} }| \leq T^2 B_rB_g,\qquad \mathbb{E}| \hat{g}_{\text{seq} }| ^2\leq T^4 B_r^2 B_g^2 $$
    • 最终有:
      $$\operatorname {Var}(\hat{g}_{\text{seq} }) = O(T^4) $$
  • 两者核心区别在于是否包含未来的所有奖励(包含时方差会变大)

B.3 Discussion

  • Sequence-level 估计器更接近精确的轨迹级目标
    • 但它将每个 Score 项与许多未来奖励耦合在一起
  • 在最坏情况下的缩放中,这将方差增长从序列长度的二次方改变为四次方
    • 这个论证是有意保守的,但它说明了为什么更强的奖励耦合在长视界后训练中可能成为问题

附录 C:Toy experiment details

C.1 Environment

  • 使用一个双任务一维连续控制环境来可视化更强的奖励耦合如何改变 OPD 优化
  • Student 策略是一个三层 MLP,大约有 4K 个参数
  • 输入是一个三维向量,包含任务标识、当前位置和归一化时间步长
  • 该策略输出高斯动作分布的均值和标准差,状态转移为
    $$s_{t + 1} = s_t + \delta ,\qquad \delta \sim \mathcal{N}(\mu ,\sigma) $$
  • 这两个任务是彼此的镜像:
    • 左任务从 \(+2\) 开始,目标是 \(-3\)
    • 右任务从 \(-2\) 开始,目标是 \(+3\)
  • 本文首先使用 REINFORCE 训练独立的 Teacher,然后通过交替任务 OPD 将它们蒸馏到一个共享的 Student 中

C.2 Gradient variance estimation

  • 在每个训练步骤,将一批 \(B = 64\) 条轨迹分成 \(M = 8\) 个 Micro-batch
  • 对于每个 Micro-batch \(m\),计算损失 \(\mathcal{L}_{m}\) 和输出层参数上对应的梯度向量 \(\mathbf{g}_{m}\)
  • 通过下式估计梯度方差
    $$\operatorname {Var}(\mathbf{g}) = \frac{1}{M}\sum_{m = 1}^{M}| \mathbf{g}_m - \bar{\mathbf{g} }| ^2,\qquad \bar{\mathbf{g} } = \frac{1}{M}\sum_{m = 1}^{M}\mathbf{g}_m $$
  • 仅将此量用作一个定性指标,但比较不同 \(\gamma\) 设置下的相对方差已经足够

C.3 Toy Additional Results of Toy Experiments

  • 图 A1、A2 和 A3 报告了不同 OPD 估计器 (\(\gamma \in \{0.0, 0.25, 0.5, 0.75, 1.0\}\)) 在三个随机种子下的梯度方差曲线和相应的状态访问热图
    • 尽管具体数值因种子而异,但定性模式是一致的
    • 所有 Setting 在优化初期都表现出较大的方差峰值,并且较大的 \(\gamma\) 通常在训练后期保持在较高的方差水平
    • 在几次运行中,\(\gamma = 0.75\) 或 \(\gamma = 1.0\) 下的方差比较小 \(\gamma\) 值下的方差保持高出一到几个数量级
    • 在所有运行中, Token-level OPD (\(\gamma = 0\)) 始终能学习到向两个任务的目标状态移动的轨迹
    • \(\gamma\) 的中间值在性质上保持相似,但变得更加分散
    • 当 \(\gamma\) 接近 Sequence-level 情况 (\(\gamma = 1.0\)) 时,学习到的轨迹常常偏离期望的方向,并在状态空间的次优区域附近稳定下来

附录 D:Qualitative OPD reward-hacking case study,定性研究

  • 为了补充正文中的代表性失败案例,这里总结一个来自 Sampled-token OPD 下多任务训练的较长轨迹
  • 按时间顺序阅读,该案例以几种形式表现出相同的模式:
    • 模型在已经有答案后仍然继续分析,陷入重复循环(例如“wait”),漂移到格式错误的延续中,并且仍然在这些 Token 上获得高的局部 Teacher 概率
  • 1)失败首先表现为过度延续
    • 即使在答案已经有效可用之后,局部信号仍然将大量质量放在通用的推理填充词和连接 Token 上,鼓励模型继续生成而不是干净地停止
    • 同样的模式稍后出现在诸如 “confirm” 这样的前缀上,局部信号仍然偏好额外的验证而不是终止
    • 这种行为的一部分也可能反映了 Teacher 自身的输出习惯
    • 图 A4 展示了几个代表性案例
  • 2)轨迹发展为犹豫循环和低信息延续
    • 重复的 “wait” Token、大量标点符号的延续以及其他语义薄弱的填充词可能保持局部可奖励,即使整个轨迹已经变得无益
    • 这与第 3.2 节中关于重复循环的讨论一致
    • 图 A5 中提供了两个类似的案例
  • 3)当 Student 进一步漂移到分布外,局部信号可能保持误导性的正向而不是自我纠正
    • 在案例研究中,这表现为退化和乱码输出,然而许多 Token 仍然获得高的 Teacher 概率
    • 图 A6 展示了一个例子
1…121314…352
San Ye

San Ye

Stay Hungry. Stay Foolish.

704 posts
53 tags
© 2026 San Ye
Powered by Hexo
|
Theme — NexT.Gemini v5.1.4