论文精读

精读:OPSA——把教师从 on-policy 蒸馏里彻底移除

控制实验证明 on-policy 蒸馏的收益来自「抑制低概率 token」而非教师监督,据此提出的 OPSA 只靠 token 熵自适应负优势,在无教师、无奖励、无标签的条件下把 Qwen3-1.7B 的 AIME24 Avg@32 从 13.44 推到 48.85

论文: Does On-Policy Distillation Really Distill? From Noisy Teacher to Self-Improvement
作者: Yi Ding, Ruqi Zhang
arXiv: 2608.31046
强化学习 后训练 On-Policy蒸馏 知识蒸馏 自提升 数学推理 token熵 RLVR

1 论文概览

一句话总结:普渡大学 Yi Ding 与 Ruqi Zhang 用控制实验证明,on-policy 蒸馏(OPD)里教师的 token 级监督有 30%–50% 是噪声、剔除与否对结果几乎无影响;真正的收益来自「给低概率 token 施加负优势」这一与教师无关的操作,据此提出完全无监督的 OPSA,在 Qwen3-1.7B 上把 AIME24 的 Avg@32 从 13.44 推到 48.85。

核心问题

RLVR(GRPO、DAPO)用可验证奖励在一组回答内做归一化得到优势。这条路线有两个老毛病:奖励是结果级而非过程级,对长链条推理过于稀疏;一组内回答同对同错时归一化优势归零,学习信号消失、训练易崩。

OPD 换了个思路:拉一个强教师,在学生自己采样的前缀上算反向 KL,把 token 级的对数概率比当成优势,监督密度一下子上来了。代价是要共享词表、要教师白盒 logits,教师选型被锁死。OPSD 把外部教师换成「带提示的自己」,省了教师却仍要构造提示(参考答案等),有泄露风险。

论文盯上的是 OPD 与 OPSD 共有的一个结构性隐患:

We call the supervision noisy when the sign of the teacher-provided advantage on these tokens disagrees with the verifiable reward, i.e., when incorrect answers receive positive advantages or correct answers receive negative ones. Such supervision provides the student with misleading learning signals during RL training. —— §2.2,噪声信号的定义

教师的任务是给学生生成的前缀打分,而这些前缀对教师而言天然 off-policy。一个从未见过这条推理链的强模型,凭什么在中间步骤上给出可靠的 token 偏好?作者没有停在质疑,而是把噪声量化了,接着追问:收益究竟来自教师,还是来自别的什么。

主要贡献

  1. 量化 OPD 的监督噪声,且发现噪声随教师规模上升。4B 教师整体噪声率 30.6%,30B-A3B 升至 34.7%,235B-A22B 达到 50.6%。更关键的是,最大教师对 97.8% 的正确答案 token 也给了负优势——它几乎无差别地说「不」。
  2. 学生对噪声不敏感。只用含噪声轨迹训练、只用不含噪声轨迹训练、标准 OPD 三者,在相近步数后收敛到可比精度。这直接否定了「收益来自行为匹配」的解释。
  3. 定位收益来源。有效学习集中在学生采样的低 logp token 上;把全部 OPD 优势换成一个固定负值即可复现 OPD 的效果。
  4. 提出 OPSA(On-Policy Self-Adaptation)。无教师、无验证奖励、无提示,只做三件事:挑最低 20% logp 的 token、给负优势、按 token 熵自适应缩放幅度。
  5. 给出效率与机制证据。训练步时 46.3 秒,对比 OPD 61.2 秒、GRPO 186.2 秒;通过 token 预算对照实验排除了「只是答得更长」这一替代解释。

2 方法详解

方法概述

OPD 的损失函数与优势定义如下(Eq. 2):

LOPD=−E[1∣y∣∑i=1∣y∣Ailog⁡πs(yi∣x;y<i)],Ai=log⁡πt(yi∣x;y<i)πs(yi∣x;y<i)\mathcal{L}_{\text{OPD}}=-\mathbb{E}\Big[\frac{1}{|y|}\sum_{i=1}^{|y|}A_i\log\pi_s(y_i|x;y_{<i})\Big],\quad A_i=\log\frac{\pi_t(y_i\mid x;y_{<i})}{\pi_s(y_i\mid x;y_{<i})}

OPSA 保留这个骨架,换掉两处:token 集合从「全部」改为最低 20% logp 的子集 Slowest20\mathcal{S}_{\text{lowest}20},优势从教师比值改为熵自适应负值(Eq. 5):

Aidyn=−12−Hi−Hmin⁡2 (Hmax⁡−Hmin⁡)A_i^{\text{dyn}}=-\frac{1}{2}-\frac{H_i-H_{\min}}{2\,(H_{\max}-H_{\min})}

Hmin⁡H_{\min}、Hmax⁡H_{\max} 在每条回答内部的最低 20% logp 位置上取,所以 rir_i 是相对自身 rollout 的归一化熵,AidynA_i^{\text{dyn}} 落在 [−1,−0.5][-1,-0.5] 区间:熵越高,负优势幅度越大。整条流程只需要学生自己的前向结果,教师、验证器、参考答案一个都不需要。

关键创新点

第一,从 logit 梯度反推「哪些 token 有用」。 这是全文方法论上最干净的一步。Eq. 3 给出 logit 级梯度:

−∂LOPD∂ztv∝{At(1−πs(v∣x;y<t)),v=yt−At πs(v∣x;y<t),v≠yt-\frac{\partial\mathcal{L}_{\text{OPD}}}{\partial z_t^v}\propto\begin{cases}A_t\big(1-\pi_s(v\mid x;y_{<t})\big), & v=y_t\\ -A_t\,\pi_s(v\mid x;y_{<t}), & v\neq y_t\end{cases}

梯度在两个区域消失:∣At∣|A_t| 很小,或采样 token 的概率趋近 1。作者据此去做分布统计,实测 29.2% 的 token 优势恰好为零、51.7% 优势量级低于 10−410^{-4}。超过一半的教师算力,产出的梯度约等于零。再按学生 logp 分桶看,近零优势几乎全部落在高 logp token 上——学生极度确信时,教师在同一前缀上通常也确信,两者对数概率之差自然趋零。反向验证也做了:只用高 logp token 训练没有提升,把优势换成 [−1,1][-1,1] 均匀随机值,性能也基本不动。

第二,正负优势的极端不对称。 固定 −0.5-0.5 优势能稳定提升,回答长度渐增至约 12K token 后稳定;固定 +0.2+0.2 则在 40 步内崩溃——长度塌缩到近乎为零,梯度范数爆炸,之后输出乱码。这个对照把「负优势是收益来源」从相关推到了因果。

第三,用熵区分低 logp 的两种成因。 一个 token 概率低,或源于策略不确定、概率摊在多个候选上(此时连头部分 token 的 logp 都不高),或源于分布已经很尖锐、采样恰好掉进尾部。仅看 logp 分不开这两种情况。Eq. 4 引入参数 δ\delta 控制优势幅度与熵的相关方向:δ=1\delta=1 给高熵 token 更大幅度的负优势,δ=−1\delta=-1 反过来,δ=0\delta=0 退回固定负优势。结果 δ=1\delta=1 的 avg@4 达到 50.0%,远超标准 OPD 的 35.13%;δ=−1\delta=-1 在 350–450 步之间失稳、梯度范数全程偏高,最终还略低于固定负优势基线。

第四,把机制拆成四类 token 逐一解释。 按「熵高低 × 采样 token 是否头部」划成四象限:高熵处的尾部 token 被压制、概率转给头部;高熵处的头部 token 只在头部分 token 之间重新分配,尾部不受影响,多样性得以保留;低熵处的尾部 token 被回避;低熵处的高置信预测不动。这套解释的要害在于高熵与低熵走相反方向——低熵处更尖锐保证精度,高熵处更均匀保证探索,两者由同一个负优势自动实现。

与基线方法的区别

方法密集 token 信号无可验证奖励无外部教师无提示
RLVR (GRPO)✗✗✓✓
TTRL✗✓✓✓
OPD✓✓✗✓
OPSD✓✓✓✗
OPSA✓✓✓✓

OPSA 是这张表里唯一四项全占的。两个附带的结构性优势容易被忽略:OPD 要求师生共享词表并开放教师 logits,跨家族蒸馏基本不可行;OPSA 没有任何约束,任意模型开箱可用。GRPO 需要在每个 prompt 上采样一组回答才能归一化,OPSA 的配置是 n samples per prompt = 1(附录 Table 4),每个 prompt 只采一条,无需组内基线——这是它步时只有 GRPO 四分之一的主因之一。

3 实验结果

主要指标

训练只用 DAPO-17k 的题目,不碰标签与参考答案;8 卡 H100/H200,学习率 1×10−61\times10^{-6},全局批 64,采样温度 1.0,最长 12000 token。评测在 non-thinking 模式下每 prompt 采 32 条,报告 Avg@32 与 Pass@32(Table 2)。

模型AIME24 avgAIME24 passAIME25 avgHMMT25 avgMBPP+GPQA-D
Qwen3-1.7B13.4440.009.695.7358.2427.92
+ OPSA48.8580.0035.3123.3359.4432.40
Δ+35.41+40.00+25.62+17.60+1.20+4.48
Qwen3-4B23.3356.6720.5213.1366.9338.46
+ OPSA62.0883.3358.4437.4068.3541.29
Δ+38.75+26.66+37.92+24.27+1.42+2.83
Qwen3.5-9B76.3593.3356.0444.4877.3370.53
+ OPSA87.8196.6776.9867.4079.2773.70
Δ+11.46+3.34+20.94+22.92+1.94+3.17

数学域内相对增益 263%–307%(1.7B)、166%–185%(4B)、15%–52%(9B)。Pass@32 三基准全部翻倍或更好。

与同类方法的对比

Table 3(Qwen3-1.7B,三基准平均):base 9.62 / 31.11,GRPO 24.79 / 54.44,TTRL 11.81 / 27.78,OPD 22.15 / 54.44,OPSD 23.58 / 56.67,OPSA 35.83 / 65.56。OPSA 比最强基线高 11.04 分 avg@32、8.89 分 pass@32。AIME24 上 OPSA 的 48.85 对 OPD 的 32.08,差值 16.77 分。

几个对照值得一提。TTRL 同样无外部监督,它的自洽式训练会把分布向局部最优锐化,Pass@32 掉到 27.78,比 base 的 31.11 还低——这说明「无监督」这条路本身不保证多样性。OPSD 只在「学生关 thinking、教师开 thinking」时才有明显增益,作者点明这等于在首 token 位置制造了巨大的分布失配。附录 Table 7 补了 NSR(负样本强化):NSR 平均 24.13 / 58.89,仍低于 OPSA,差别在于 NSR 需要可验证奖励、且是轨迹级粗粒度。

效率(附录 Table 6,Qwen3-1.7B):单步耗时 OPSA 46.3s、OPD 61.2s、GRPO 186.2s。OPSA 比 OPD 快是因为不部署教师、不做教师前向;比 GRPO 快是因为不做组采样。

消融实验关键发现

token 选择比例:最低 10% 明显落后,因为这批 token 几乎全是 top-1 之外的尾部,只压它们会过度锐化、熵骤降。20% / 30% / 40% 三档都把 avg@4 推到 45 以上,说明这个超参数不敏感。

fork token 掩码:把头部分词含反思词(wait、but 等)的高熵位置排除出训练,长度增长与精度提升双双消失,长度在约 300 步塌缩。这一条把「收益来自高熵分叉处的概率重分配」钉死了。

token 预算对照(附录 C.3):为排除「只是答得更长」,作者把 GRPO 与 OPD 的回答末尾 \boxed{} 答案删掉、接一个 “wait” 继续解码,把长度拉到与 OPSA 相近(约 23K token)。结果 GRPO 32.81、OPD 31.67,都不升反微降,OPSA 仍是 48.85。长度不是解释变量。

多样性(§5.3.2):用 4-gram 的 Jaccard 距离衡量,随生成长度增加,OPSA 与 base 的差距逐步收窄并趋近于零——分布锐化没有吞掉长程多样性。附录 C.2 补了一个反直觉的现象:OPSA 的训练熵显著低于 GRPO 与 NSR,Pass@32 却更高。总体熵不是探索能力的可靠代理,关键在于不确定性如何分配到各位置。

冷启动(附录 C.4):以 OPSA 检查点初始化、再用 GRPO 在 DAPO-17k 上训练 Qwen3-4B,40 步内 avg@4 涨约 9 分,曲线平滑无崩塌。

4 个人分析

亮点

它把一个「用得很顺手」的方法拆到了机制层,而不是再刷一个 SOTA。 近两年 OPD 系列工作很多,改进方向集中在 token 选择(Xu et al.)、细粒度信用分配(Xing、Xie、Hou et al.)——都在保留外部监督的前提下修修补补。这篇问的是更前置的问题:监督本身有没有用。答法是三段递进的消融——先证明噪声多且随规模恶化,再证明噪声无关紧要,最后证明固定负值就能复现。三段都配了控制组,论证链闭合得相当紧。

噪声的分解方式比噪声率本身更有信息量。 直接看 30.6% → 50.6% 只是「大教师更噪」。拆开看就变了味:4B 教师的错误模式是「太宽容」——40.8% 的错误答案拿到正优势;235B 教师的错误模式是「太严苛」——97.8% 的正确答案也拿负优势,96.6% 的错误答案同样拿负优势。 Teachers 不是变准了,是塌缩成了「几乎恒负」。而 §3.2 恰好证明了恒负就够用。

这意味着,235B 教师的 50.6% 噪声率与「固定负优势复现 OPD」是同一个现象的两端。教师越贵,其输出越接近一个常数函数;而常数函数恰好是有效的。作者的措辞很克制:

These observations suggest that OPD’s gains come from suppressing low-probability tokens sampled by the student, requiring no teacher. —— §1,贡献第二条

顺着这句话往下推,OPD 相当大的一部分算力开销是在用一台 235B 模型去实现一个减法。这个结论对任何正在采购教师算力做蒸馏的团队都不友好,但数据摆在那里:51.7% 的 token 优势量级低于 10−410^{-4}(梯度约等于零),剩下的又被噪声占掉一半。

熵自适应的设计是这个领域少见的「负负得正」。 通常压低尾部概率会连带压掉多样性,这是 RLVR 里 entropy collapse 的老问题。OPSA 因为负优势的梯度形式(Eq. 3 第二行,非采样 token 的梯度与 −πs(v)-\pi_s(v) 成正比),在高熵位置上表现为在头部分词之间摊平而不是向单点收敛——尾部概率基本不动。机制解释与实证(Jaccard 距离趋零、Pass@32 全面上涨)对得上。

局限性

「跨模型家族」这个说法需要打折。 摘要写的是 “across model families”,实验覆盖 Qwen3-1.7B、Qwen3-4B 与 Qwen3.5-9B,外加作教师的 Qwen3-4B/30B-A3B/235B-A22B。全是 Qwen 谱系。不同词表、不同后训练配方、不同 tokenizer 粒度下,低 logp token 与高熵位置的对应关系未必一致。这个判断不是吹毛求疵:OPSA 的全部机制都建立在「token 熵」这个量上,而 token 熵的分布形态对 tokenizer 高度敏感。

规模上限没验证,而收益曲线已经在往下走。 作者自己在附录 A 承认只做到 9B,MoE 架构未测。收益随底座变强而单调衰减才是更该盯住的信号:1.7B 拿 +35.41 分,4B 拿 +38.75 分(绝对值更高),9B 只剩 +11.46 分(相对 +15.0%)。9B 的 Pass@32 已经接近饱和(93.33 → 96.67,仅 +3.34)。作者给出的解释是一致的:

Its benefits may therefore be limited for heavily post-trained models whose output distributions are already overly sharp and exhibit very low entropy. —— 附录 A

换句话说,OPSA 是一个挖存量的方法。它重新分配策略已有的概率质量,不注入新知识。底座越强、分布越尖锐,可重分配的余地越小。这条限制比「只测到 9B」更根本——即便算力充足跑通 70B,按这条曲线的走势,收益大概率继续收窄。

域外增益撑不起「通用自提升」的框架。 摘要强调 “across model families and tasks”,但看 Table 2 的 OOD 两列:1.7B 的 MBPP+ 从 58.24 到 59.44(+1.20,相对 +2.1%),GPQA-D 从 27.92 到 32.40(+4.48,相对 +16.0%)。代码列的三档增益是 +1.20 / +1.42 / +1.94,量级接近评测噪声。真实的图像是:OPSA 是一个强力的数学推理锐化器,在训练域外的迁移很有限。

推理成本被放在了附录里。 Table 6 显示 1.7B 的推理耗时从 1.78s 涨到 6.58s(3.7 倍),生成 token 数从 4457 涨到 23205(5.2 倍)。作者用一句话带过:「产出更长但更准的回答」。这个代价在数学基准上是划算的,在高 QPS 的在线服务里不是。换个角度:OPSA 把训练期的教师算力折算成了推理期每请求的解码成本——一次性节省换永久支出,做不做这笔交易取决于业务形态。有意思的是 9B 那一档长度只从 6847 涨到 9695(+41%),而 1.7B 涨了 420%,长度爆炸集中在弱模型上——这从侧面印证了「重分配需要余量」的判断。

还有一个方法层面的空缺:论文没有给出为什么「负优势 + 低 logp」这个组合是充分的。现象很清楚,固定 +0.2+0.2 崩溃、固定 −0.5-0.5 有效,但机理层面的解释停留在「压制低概率分支」的直觉上。结论段把它上升到了一个漂亮的说法:

More broadly, our results show that the policy’s internal token-level uncertainty can itself provide an effective fine-grained learning signal for on-policy self-improvement, without rewards, reference answers, or teacher-provided supervision. —— §7

这句话值得推敲。「内部不确定性提供信号」与「纯粹抑制低概率 token」是两种不同的主张,后者不需要「不确定性」这个概念——一个固定负常数就够了,δ=0\delta=0 那一档照样涨。真正不可或缺的似乎是负号与低 logp 筛选,熵自适应只是锦上添花(50.0% 对固定负优势档)。把收益归因到「不确定性信号」,归因得比证据支持的更远。

对大模型领域的影响

最直接的一击是教师经济学。过去两年的默认动作是「训不动了就找个更强的模型做蒸馏」。这篇给出的数据是:教师越强,监督噪声率越高(30.6% → 50.6%),且噪声剔除与否不影响结果。这不等于蒸馏在所有设定下都无效——SFT 阶段的离线蒸馏、跨模态蒸馏不在这篇的射程内——但对on-policy + K1 估计器这一特定配方,教师的边际价值需要重新评估。

第二层影响在RL 后训练的最小信号这条线上。NSR 证明了只学负样本可行,OPSA 进一步证明连「哪些是负样本」都不用知道,只看概率与熵就够了。这条线走到底会碰到一个有意思的问题:如果策略的自我改进只需要「把自己不确信的地方压得更确信」,那它与自洽(self-consistency)方法、与熵正则化方法的边界在哪里?TTRL 的失败(Pass@32 反降)说明这条路的分寸很要紧。

第三层是评测口径。OPSA 的 OOD 提升只有 +1.20 / +4.48,却与数学域内的 +35.41 放在同一张表里呈现。这类「域内大涨、域外微涨」的结果在后训练论文里很常见,读者需要养成先看列再看的平均值的习惯。

5 实践启示

可以借鉴的技术

1. 无标签后训练这条通路。 OPSA 只吃题目,不吃答案。对没有验证器的领域——开放式写作、数据工程任务规划、多轮 agent 决策——这意味着一条此前不存在的后训练通路。工程门槛也低:核心改动是 token 筛选 + 优势替换,在 slime 这类框架上是一处 loss 改写,不需要额外的教师部署或奖励模型。

2. 作为 GRPO 的零成本冷启动。 附录 C.4 的实验很实用:OPSA 检查点初始化 → GRPO 继续训,Qwen3-4B 在 40 步内涨约 9 分且不崩。把 OPSA 当成 RLVR 之前的「分布整形」阶段,比直接上 GRPO 更稳,也比 SFT 冷启动省掉标注。

3. 梯度消失诊断法。 Eq. 3 的用法可以照搬:拿到任何一个 token 级加权的 RL 目标,先写出 logit 级梯度,找出梯度归零的条件,再去统计实际训练中落入这些条件的 token 占比。OPSA 团队用这招发现 51.7% 的 token 白算了。对自己的训练管线做一遍同样的统计,成本很低,往往能直接指出算力浪费在哪。

4. 熵分位而非绝对熵。 Hmin⁡H_{\min} / Hmax⁡H_{\max} 在每条回答内部计算,而不是用全局常数阈值。这个细节让方法对模型与任务的变化不敏感——不同模型的熵尺度差异很大,全局阈值很难调。做类似的 token 级加权时,用分位数而非绝对值是个稳妥选择。

5. 长度对照实验的写法。 附录 C.3 的 protocol(删掉 \boxed{} 答案、接 “wait”、加最小长度约束、取达标后第一个完整答案)是排除「答得更长」这一混淆因素的标准做法。任何会改变输出长度的 RL 方法都该补这一对照。

潜在应用场景

内部工具与代码助手的能力整形。 数学域 +263% 的增益说明这类方法对「有明确正确性的多步推理」最有效。代码生成里的单元测试通过、SQL 正确性、数据管线的 schema 校验都属于这一类。不过要留意 OPSA 在 MBPP+ 上只涨了 1.20 分——代码域的迁移增益未必复刻数学域的幅度,值得先在小规模上试,别直接按 263% 做规划。

算力受限下的后训练。 单步 46.3s 对 GRPO 的 186.2s,且不部署教师。对 8 卡级别的团队,这个差距决定了能不能在合理时间内跑完一轮。加上 n samples per prompt = 1,rollout 成本直接除以组大小。

不适合直接用的场景,三条:一是底座已经很强(如 Qwen3.5-9B 这类充分后训练的模型),可挖存量有限;二是高并发在线服务,3.7 倍解码成本要先算清楚账;三是需要真正注入新知识的场景——OPSA 只重分配已有概率质量,不扩展探索前沿,这一点作者在附录 A 里说得很直白。

一个值得试的组合:OPSA 的分布整形 + 少量高质量验证信号的 RLVR。前者把质量推到一定水位,后者负责注入新知识。附录 C.4 的冷启动结果说明这条串行路径可行,且 OPSA 阶段不消耗任何标注预算。

参考文献

  • Ding, Y., & Zhang, R. (2026). Does On-Policy Distillation Really Distill? From Noisy Teacher to Self-Improvement. arXiv:2608.31046 [cs.LG]. Purdue University.

相关精读

本专栏连续四十三期追问同一个问题:on-policy 训练究竟要不要外部监督。