On-Policy Distillation(在策略蒸馏)

让学生模型自己采样轨迹,教师模型对每一步的每个 token 给出密集监督信号(reverse KL),结合了 on-policy 训练的相关性与蒸馏的密集梯度。

是什么

On-Policy Distillation 是一种后训练(post-training)方法。它让学生模型 自己生成 rollout,然后用一个高性能教师模型 对 rollout 中的每个 token 计算 log-probability,以 reverse KL 散度作为损失:

它位于 SFT(off-policy + dense)和 RL(on-policy + sparse)的交汇点,同时拥有两者的优势。

方法采样来源奖励密度
SFT / Off-policy Distillation教师(off-policy)密集(每 token)
RL(PPO/GRPO)学生(on-policy)稀疏(每 episode)
On-Policy Distillation学生(on-policy)密集(每 token)

为什么重要

  1. 计算效率远超 RL:RL 每 episode 只提供 bits 信息(对/错),蒸馏提供 bits(N = token 数)。实测 self-distillation 场景下计算效率提升 50–100×
  2. 避免 off-policy 的 compounding error:SFT 训练在教师分布上,学生犯错后会进入训练中未见过的状态,错误逐步放大。On-policy 训练永远在学生自身的状态分布上。
  3. 无需单独奖励模型:教师模型直接提供 token 级 log-prob,替代了 reward model + process reward model 的复杂管线。
  4. 恢复被覆盖的能力:Mid-training 注入领域知识后,用”旧版自己”做教师蒸馏,可廉价恢复指令遵循等后训练行为(IF-eval 45%→83%)。
  5. 数据高效复用:同一 prompt 可多 epoch 训练而不死记硬背,因为学的是教师的完整分布而非单一答案。

工作原理

训练流程

  1. 采样:学生模型对 prompt 生成完整轨迹(与 RL rollout 相同),记录每步的 student logprobs
  2. 教师评分:教师模型对同一轨迹做一次前向传播,输出 teacher logprobs
  3. 计算损失:逐 token 计算 reverse KL = student_logprob − teacher_logprob
  4. 梯度更新:以 negative reverse KL 为 advantage,使用 RL 的 importance sampling loss 更新学生

关键设计选择

  • Discount factor = 0:只优化当前 token,不传播未来 token 的奖励。简化训练,允许使用不完整轨迹。
  • 教师只需 forward pass:不需反向传播,大教师模型推理成本低。
  • Reverse KL 是 mode-seeking:学生被推向教师的单一行为模式,而非分散到多个次优选项。
  • Reverse KL “不可被 hack”:低 KL 总是对应教师视角下的高概率理想行为,不会被 reward hacking。

与 RL 的本质区别

文章提出一个重要视角:RL 的大部分算力花在”搜索”语义策略空间,而非梯度更新本身。RL 每一步随机采样已有权重的变体,靠运气”撞到”更好的策略。而 on-policy distillation 不需要建模 RL 课程中所有的中间策略——它直接学习最终的好策略。

类比:科研中花大量资源探索答案;一旦结果被发现,用自然语言教给别人就简单得多。对比之下,体育技能(肌肉记忆)难以言传,只能靠反复练习。

历史与演进

  • DAGGER (2011):迭代 SFT 算法,包含教师对学生访问状态的评估——on-policy distillation 的前身
  • Process Reward Modeling (2023):RL 方法,对 CoT 的每一步打分——同样是密集信号,但需要单独训练 PRM
  • Agarwal et al. (2023) / Gu et al. (2023):早期 on-policy distillation 探索
  • Qwen3 Technical Report (2025.05):展示 on-policy distillation 在 AIME’24 上以 1/10 RL 成本达到 74.4%——本文的直接灵感
  • 本文 (2025.10):系统化研究 on-policy distillation,在 Tinker 上开源实现,覆盖推理和个性化两大场景

常见误解

  • “On-policy distillation 就是 RL 的一种” → 它复用了 RL 的采样管线,但监督信号来自教师的 token 级分布匹配,而非标量奖励。信息量差 vs
  • “蒸馏一定比 RL 信息量大,所以总是更好” → 蒸馏只能学到教师已有的策略。如果教师也不知道最优策略(如新的创意任务),RL 的探索能力不可替代。
  • “在自己的样本上做 SFT 就是 on-policy” → 文章实证:即使是自己的样本,有限 batch 的随机性导致分布漂移,SFT 逐步退化为 off-policy 并退化性能。只有教师固定的 on-policy distillation 能保证收敛到教师。
  • “Reverse KL = Forward KL” → Forward KL 是 mean-seeking(覆盖教师所有模式),Reverse KL 是 mode-seeking(锁定单一模式)。对蒸馏而言 mode-seeking 更合适。

与相邻概念的区别

概念采样源监督信号信号密度典型用途
SFT外部数据集交叉熵密集指令遵循初始化
Off-policy Distillation教师采样教师 logits/trajectories密集小模型复现大模型
RL (PPO/GRPO)学生标量奖励稀疏对齐/推理能力激发
Process Reward Model学生逐步打分密集(但需单独训练 PRM)推理步骤监督
On-Policy Distillation学生教师 token log-prob密集高效后训练/持续学习
DMD(分布匹配蒸馏)学生教师 score + fake score密集扩散/流匹配少步生成
DiffRO(可微奖励优化)学生可微判别器 token 级奖励密集Token 级可微后训练

相关