Paper Reading Report · arXiv:2605.10889v1

Unmasking On-Policy Distillation

这篇论文把 on-policy distillation 从“teacher 最终能不能涨分”的宏观问题,拆成“每个 token 上的 teacher gradient 是否真的指向成功”的局部诊断问题。

论文题名Where It Helps, Where It Hurts, and Why
作者 / 机构Mohammadreza Armandpour 等,Apple
版本arXiv v1 · 2026-05-11 · 23 页
报告生成2026-05-13 · 中文精读 HTML

核心判断

这篇论文最重要的贡献不是提出一个新的训练算法,而是提出了一个很清楚的诊断框架:把 teacher 在每个 token 上给出的蒸馏梯度,和“真正能提高 student 最终成功率”的 ideal gradient 做方向比较。

一句话:OPD 的问题不是没有 dense signal,而是 dense signal 太混杂。teacher 可能在纠正推理错误,也可能只是在教风格,甚至可能把 student 推向失败分支。

它回答什么

某个 teacher/context 在某个 token 上是否真的帮助 student 更可能答对。

它不是什么

不是直接可部署的低成本训练方法;它主要是离线诊断和研究工具。

最有用结论

错误 rollout 上蒸馏信号更可靠;正确 rollout 上很多 teacher 分歧只是风格噪声。

Source Map:读了什么,怎么核验

主源

arXiv HTML 与 PDF:2605.10889v1。PDF 元数据核验显示题名、作者、页数均匹配:23 页,作者为 Mohammadreza Armandpour 等。

辅助源

Hugging Face paper page 用于确认论文摘要和社区页信息;最终技术解读以 arXiv 正文和 PDF 为准。

本地沉淀

Obsidian PaperNotes 已同步:26-05-13 Unmasking On-Policy Distillation.md

核验边界

本报告解读的是 arXiv v1。论文没有展示用该诊断框架直接训练后的新 benchmark SOTA,因此不能把它当作完整训练 recipe 评估。

1. 论文在解决什么问题?

On-policy distillation 的吸引力很明确:student 先在自己的当前策略下生成 rollout,然后 teacher 在 student 自己访问到的状态上给逐 token 分布监督。这样它同时具备两个优点:

  1. On-policy:训练状态来自 student 自己,降低 off-policy SFT / teacher-forcing 的分布错位。
  2. Dense signal:teacher 对每个 token 都能给概率分布,比 RL 只有最终对错 reward 更密集。

但 dense token-level supervision 有一个被低估的问题:teacher 和 student 在某个 token 上不一致,并不代表 teacher 正在纠正推理错误。它可能只是偏好另一种格式、符号或表达方式。

标准蒸馏 loss 通常把所有 teacher-student disagreement 都当成训练信号。于是“把 four 改成 4”和“把 3 + 4 改成 3 x 4”都会产生梯度,但前者多半只是风格,后者才影响最终答案。

所以论文真正关心的是:teacher 的 token-level signal 是否和最终成功率有关?这件事不能只看 teacher 概率本身,因为 teacher 很自信也可能自信地推向失败分支。

2. 术语表

术语含义为什么重要
OPDOn-policy distillation。student 先生成自己的 rollout,再由 teacher 在这些 rollout 上提供 token-level 监督。减少训练 / 推理分布错位,同时保留 dense supervision。
Self-distillation同一模型在不同上下文下扮演 student 和 teacher;teacher 看到正确示范等 privileged context。避免外部大模型,但 context 设计会强烈影响信号质量。
Generation tree多条 student rollout 共享前缀合并成树,节点是 token 前缀,边是 next-token choice。把 token 选择和最终答案是否正确连接起来。
P_succ^k在节点 u 选择 token k 后,最终答对的经验概率。定义 ideal gradient 的关键变量。
Ideal gradient最大化 student 从当前节点继续生成并答对的 logit 更新方向。作为 teacher distillation gradient 的 oracle 参照。
Gradient alignmentcos(g_ideal, g_distill)判断 teacher signal 是帮助、无关,还是有害。
Comprehensibilityteacher signal 是否处于 student 能理解的 reasoning style / context 范围内。解释小模型为什么不一定适合更强外部 teacher。

3. 方法机制:从 rollout 到梯度对齐

1采样 student rollout同一问题下采样多条推理路径,记录最终答案对错。
2构建 generation tree共享前缀合并成树,节点是 token 状态,边是候选 token。
3估计 P_succ统计选择某个 token 后最终答对的概率。
4构造 ideal gradient提高高成功率 token,降低低成功率 token。
5比较 teacher gradient用 cosine similarity 判断 teacher 是否同向。

3.1 用 P_succ 定义“真正应该学什么”

对某个节点 u,student 有一组候选 next token。论文估计每个 token 对应的下游成功率:

Branch success probability Psucck = Pr(最终答对 | 在节点 u 选择 token k)

然后定义当前节点的 ideal objective:

Ideal objective at node u Lideal(u) = k Pθk · Psucck

这个式子就是 student 当前 token 分布下的 expected success。最大化它,就等价于把概率质量从低成功率 token 挪到高成功率 token。

3.2 Ideal per-node gradient 的直觉

对 logit z_j 求导后,论文得到:

Ideal per-node logit gradient ∂Lideal∂zj = Pθj · (Psuccj − P̄succ)

其中 succ = k Pθk · Psucck。这个公式的含义很直接:

  • 如果 token j 的成功率高于平均值,就提高它的 logit。
  • 如果 token j 的成功率低于平均值,就降低它的 logit。
  • 前面的 P_theta^j 表示 student 本来几乎不会选的 token,单步梯度也很小。

这说明 distillation 更擅长放大学生已经有一点概率的正确方向,而不是从零注入完全陌生的 reasoning path。这也是“小模型不一定学得动强 teacher”的机制解释之一。

3.3 Dr. GRPO / GKD / MiniLLM 的共同结构

论文推导出一个统一形式:Dr. GRPO、GKD、single-sample GKD estimator、MiniLLM 都可以写成类似的局部 logit 梯度结构:

Shared local gradient form ∂L∂zj = Pθj · (fj − f̄)

区别只在于 f_j 来自哪里:

方法f_j 的含义训练信号来源
Dr. GRPO / ideal referenceP_succ^j下游成功概率 / outcome reward
GKDstudent-teacher log probability ratioteacher token distribution
Single-sample GKD采样 token 上的 importance-weighted estimator只需 sampled token 的 teacher/student logprob
MiniLLMtrajectory-dependent reward-to-go后续 token 的 teacher/student logprob 累积

这个统一形式让论文可以直接比较 reward-based ideal gradient 和 distillation gradient 的方向。

3.4 Gradient alignment score

Gradient alignment score Align(u) = cos(guideal, gudistill)

Align < 0

teacher gradient 把 student 推向更低成功率 token,是有害信号。

Align ≈ 0

teacher disagreement 与成功率无关,常见于风格、格式或低 stakes token。

Align > 0

teacher gradient 与提高成功率的 ideal gradient 同向,是有帮助的蒸馏信号。

4. Targeted-rollout:怎样把 P_succ 算得起

难点是估计 P_succ^k 很贵:vocab 可能有 150K,序列可能从几百 token 到几万 token。论文没有穷举所有 token,而是做 targeted enrichment。

  1. 每个问题先采样 G = 200 条 student initial rollouts。
  2. 构建 generation tree,找 branching nodes。
  3. 优先补采 teacher-student 分歧大、GKD 梯度幅度大的 token。
  4. 对访问不足的 token,强制构造 prompt + prefix_to_u + token_k,再让 student 继续生成到结束。
  5. 一次 targeted rollout 会同时丰富目标节点、祖先节点和后续节点。
  6. 按指数深度窗口分配预算,例如 1-5051-150151-350
  7. 所有 teacher 共享同一棵 enriched tree,因为 P_succ 只依赖 student rollout 和最终 outcome。
项目论文设置含义
重要 token 条件P_theta^k > 0.02P_teacher^k > 0.02只关注能实际影响梯度的 token。
补采目标N_min = 100 visits每个重要 token 尽量补到 100 次访问。
主实验保留条件N_sig = 20 visits per childBoolQ / MMLU 上用于保留统计可靠节点。
AIME 保留条件N_sig = 40长链数学更稀疏,所以要求更高访问数。
计算规模每问题约 45K-200K targeted rollouts说明它主要是离线诊断,不是便宜在线训练信号。
总计算72 A100-days全实验套件计算成本较高。

5. 评估设置:到底评的是什么?

5.1 Student 和 teacher

论文评估两个 student scale:Qwen3-0.6BQwen3-1.7B。每个 student 搭配 8 种 teacher/context 配置。

类别配置解释
SelfSelf-1C同一模型作为 teacher,但上下文放 1 个正确解答。
SelfSelf-Sum-1C正确解答先由 Qwen3-32B 摘要成关键步骤。
SelfSelf-1C1W放 1 个正确示范 + 1 个错误示范,并提示错误不要模仿。
SelfSelf-Sum-1C1W正确和错误示范都先摘要化。
SelfSelf-1C (32B)正确示范由 Qwen3-32B 生成,再给 student-as-teacher 看。
ExternalQwen3-4B / 8B / 14B外部大模型 teacher,与 student 使用同样 prompt。

5.2 Benchmark

数据集任务类型输入 / 输出这里评估什么
BoolQ阅读理解 True/False输入问题和上下文,输出布尔答案,推理链较短。短链 reasoning 下 teacher gradient 是否对齐成功方向。
MMLU多选知识问答输入题目和选项,输出 A/B/C/D,推理链中等。知识与中等推理链场景下的 alignment。
AIME 2025数学竞赛题长链数学推理,输出数值答案。只做 4 道题 case study,观察 5K-30K token 长链是否有相同规律。

5.3 指标

指标怎么算怎么读
Mean cosine每个 branching node 上计算 cos(g_ideal, g_distill) 后聚合。越高说明 teacher 越常把 student 推向成功 token。
Fraction positivealignment 大于 0 的 decision points 比例。高于 0.5 表示超过一半 token 位置上 teacher 信号有帮助。
Weighted cosine (SR range)用分支成功率差距给 cosine 加权。更重视 token 选择真正影响最终成败的高 stakes 节点。
Teacher advantageE_teacher[P_succ] - E_student[P_succ]teacher 分布本身是否比 student 更偏向成功 token。

6. 关键结果

6.1 错误 rollout 上蒸馏信号更可靠

这是论文最稳定、也最有训练启发的结论:最终答错的路径上,teacher gradient 与 ideal gradient 的 alignment 更高。

SettingMetricCorrectIncorrect解读
0.6B BoolQMean cosine0.0110.044错误路径约 4 倍更高。
1.7B BoolQMean cosine0.0010.058正确路径几乎没有有用方向。
0.6B MMLUMean cosine0.0090.048错误路径更适合纠偏。
1.7B MMLUMean cosine0.0120.028mean gap 不显著,但关键节点仍显著。
0.6B BoolQWeighted cosine0.0460.110高 stakes 节点差距更明显。
1.7B BoolQWeighted cosine0.0100.093teacher 对错误轨迹的纠偏最强。
0.6B MMLUWeighted cosine0.0210.118高 stakes 错误节点信号很强。
1.7B MMLUWeighted cosine0.0340.098关键节点上错误路径优势仍成立。

训练含义:OPD 更应该像修错机制,而不是对所有 rollout 做无差别 teacher imitation。failed rollouts、high-stakes branching nodes 应该得到更大权重。

6.2 最佳 teacher 取决于 student 容量

Teacher0.6B BoolQ0.6B MMLU1.7B BoolQ1.7B MMLU
Self-1C0.0470.0400.0280.010
Self-1C (32B)0.0470.0520.0200.021
Self-Sum-1C0.0410.0470.0500.036
Self-Sum-1C1W0.0160.0370.0080.034
Self-1C1W0.0190.0270.0020.009
Qwen3-14B0.0160.0150.0360.017
Qwen3-8B0.0180.0110.0530.014
Qwen3-4B0.0180.0000.0400.017

0.6B 上,Self-1C / Self-Sum-1C / Self-1C(32B) 明显优于外部大 teacher。1.7B BoolQ 上,Qwen3-8B 开始领先。这支持论文的 comprehensibility 假说:teacher signal 不只要强,还要处于 student 能理解的区域内。

6.3 错误示范不是总有用

BoolQ / MMLU 上,1 correct + 1 wrong 通常比只放正确示范差,说明错误示范在短链任务中常常是噪声。但 AIME case study 给出反例:在更难的数学题上,Self-1C1W 在 Q3 和 Q28 上成为最好 teacher。

短推理任务

错误示范常常干扰上下文,让 student 看到不该模仿的路径,alignment 下降。

复杂数学任务

常见错误可能提供可理解的 contrastive signal,帮助 student 避免具体陷阱。

6.4 Oracle selective distillation 的上限很高

如果训练时能神谕式知道哪些 token alignment 为正,只蒸馏这些 token,保留约一半 token 就能让 mean signal 提升约 10-15 倍。

SettingFull GKDSelective t=0保留 token
0.6B BoolQ0.0070.07051.6%
1.7B BoolQ0.0060.09351.6%
0.6B MMLU0.0050.05751.7%
1.7B MMLU0.0060.07751.2%

这不是可直接训练的结果,因为真实训练不知道 alignment。但它说明 OPD 的损失里存在大量可以被过滤掉的无效或有害 token。

7. 这些结果真正说明什么?

Dense 不等于 clean

token-level supervision 很密,但里面混着纠错、风格、格式和有害 teacher preference。平均蒸馏会把这些信号全部吃进去。

蒸馏更像修错

错误 rollout 上 teacher 更可能提供和成功方向一致的纠偏;正确 rollout 上很多 teacher 差异只是模仿风格。

强 teacher 不一定好

小 student 如果看不懂大 teacher 的 reasoning style,外部强 teacher 反而不如 self-demo。

context 需要按任务选

summary、wrong demo、external teacher 是否有用,都取决于 student 容量和任务难度。

8. 局限与失败模式

  • 不是直接训练算法:每个问题需要大量 targeted rollouts,更适合离线诊断。
  • 只覆盖采样到的局部空间:没被 student 或 targeted enrichment 访问到的 token 不能评估。
  • 依赖明确 verifier:BoolQ、MMLU、AIME 都有最终答案;开放式对话和 agentic tasks 的 success 更难定义。
  • 局部梯度不等于完整训练动态:真实训练还会受 optimizer、KL、数据混合、学习率和非线性迁移影响。
  • AIME 只是 case study:4 道题能说明趋势,但不能当完整数学 benchmark 结论。

9. 我的 Insight

我认为这篇论文的长期价值在于:它把 OPD 从 recipe 层面的经验问题,推进到 token-level credit assignment 问题。它提醒我们,后训练不是“teacher 越强、token supervision 越密越好”,而是要问每个训练信号是否真的能改变最终成功率。

9.1 OPD 应该少做全面模仿,多做失败修复

正确 rollout 上继续模仿 teacher,经常是在教风格。错误 rollout 上 teacher 才更像 repair signal。实际训练里,我会优先尝试 failed rollout upweighting,而不是对所有生成 token 平均做 KL。

9.2 可理解性比 teacher 强度更关键

0.6B 更适合看自己风格的正确示范,而不是看 8B/14B 的外部 teacher。这说明小模型蒸馏应该先控制 reasoning style、步骤粒度、上下文长度,再谈 teacher scale。

9.3 Divergence filter 只能做粗筛

KL / JS divergence 的方向稳定但相关很弱。它能过滤掉“teacher 和 student 几乎一样”的 token,但不能判断高分歧是纠错还是误导。更有潜力的是学习一个近似 P_succ 的 lightweight gate。

9.4 对 long-horizon agent 更有启发

长周期 agent 的 teacher signal 更混杂:工具选择、错误恢复、探索路径、格式偏好、状态解释都会缠在一起。如果全量蒸馏,噪声会比数学题更严重。这篇论文给了一个很好的诊断方向:用小规模 targeted rollouts 或 value proxy 判断哪些动作/token 真正影响任务成功。

10. 实践建议

  1. 先按 outcome 切分 rollout:failed rollout 的 OPD 权重应高于 successful rollout。
  2. 降低 correct rollout 的全 token imitation:只在 high-stakes 或 high-divergence token 上蒸馏。
  3. 对小模型优先 self-demo / intermediate teacher:不要默认强 teacher 最好。
  4. context 设计做任务级选择:summary 适合较大模型和简单可压缩推理;复杂数学可能需要完整 trace。
  5. wrong demo 谨慎使用:短任务容易变噪声,难任务可能提供有价值反例。
  6. 把 divergence 当 cheap filter,而非 judge:低 divergence 可跳过,高 divergence 仍需 value / verifier / rollout 近似判断。