Recursive Self-Improvement via On-Policy Distillation for Reasoning
Shangjian Yin, Zehao Zhao, Kavosh Asadi, Rui Liu, Yuchen Lu, Shike Mei, Hang Cui, Luke Simon, Zhouxing Shi, Hamed Firooz
cs.CL
2026-09-25
Meta把OPSD里冻结的特权教师改成每轮和学生共用更新后的checkpoint,让纠错进入下一轮监督。Qwen3-8B在AIME 2024–2026与HMMT上Average@12从30.35%升到65.97%,短改写把平均输出从19046压到17561 token。
On-policy self-distillation(OPSD)把同一份 checkpoint 拆成两个角色:学生只看到题目,特权教师额外看到标准答案,再在学生自己滚出来的前缀上做 token 级蒸馏。教师冻在初始权重上,训练更稳。代价是学生后来学会的回看、回溯、改错,教师带不走。
Meta 在固定的错误轨迹上测过这件事。冻结的金标条件教师在错误终点给 EOS 的平均概率是 94.5%,对轨迹里实际出现的「Wait」这类反思标记只有 22.0%。学生训练中越来越会反思,监督信号却停在「该结束了」。密集的 token 监督如果不会跟着学生长,就会把新能力压回去。
Dynamic Co-Evolution(DCE)把递归做成默认流程。每一轮当前模型 θk 先对题目采样一条 on-policy 回答。学生仍只看题目加前缀;特权教师看同一前缀,但把标准答案放进 assistant 侧,当成「自己刚写过的推理」,再给出 next-token 分布。梯度在教师支路上截断。这一轮更新完,新 checkpoint 同时初始化下一轮的学生和教师。
金标放在 assistant 侧不是排版问题。当作用户材料塞进去,8B、4B、1.7B 上 Average 分别少 9.79、6.39、14.66 个点。
更会改错也会更啰嗦。Self-Refined Concise Learning(SRCL)让同一 checkpoint 在看不到答案的条件下把这条回答改短,只有更短、自然结束、结构合法、答案正确的改写才进交叉熵。一批里没有任何改写被收下时,只跑 DCE。两个损失加权相加,主实验用 Forward KL。
训练数据是 OPSD 用过的 14717 道 OpenThoughts 数学题。Qwen3 上 LoRA rank 128、学习率 5×10^{-6},学生和教师都走 non-thinking 模式。
评测是 AIME 2024、2025、2026 和 HMMT February 2025,每题 12 次采样、32K 上限,报 Average@12。
| 方法 | Qwen3-8B | Qwen3-4B | Qwen3-1.7B |
| GRPO | 20.28% | 18.47% | 10.90% |
| OPSD | 30.35% | 22.85% | 10.35% |
| OPSD 强制 16K | 30.76% | 22.99% | 9.24% |
| DCE | 65.76% | 60.00% | 23.33% |
| DCE+SRCL | 65.97% | 61.88% | 26.88% |
8B 上 DCE+SRCL 相对 OPSD 高 35.62 个百分点。把 OPSD 用 Wait 续写撑满 16K token,准确率几乎不动,说明不是写长了就对。8B 加上 SRCL 把平均长度从 19046 压到 17561 token,准确率几乎不动;4B 还从 60.00% 走到 61.88%。1.7B 上 SRCL 把长度从 12600 拉到 19504,准确率才从 23.33% 到 26.88%,小模型上这条短改写并不稳。
教师必须一起动。8B 上 DCE 冻住教师只有 47.99%,一起更新是 65.76%;加上 SRCL 后冻结版 41.04%、共进化 65.97%。固定错误轨迹探针里,教师终点 EOS 概率从 90.4% 降到 41.3%,观察到的反思 token 概率从 32.8% 升到 77.4%。
Gemma-4-12B-IT 上 DCE+SRCL 到 63.61%,OPSD 是 51.04%。Qwen3-14B 早期轨迹从基线 21.39% 走到 step 30 的 66.39%。蒸馏目标上 Forward KL 是 65.97%,Reverse KL 低 5.55 个百分点还多吐 6187 token,JSD 塌到 17.99%。单开 SRCL 在 8B 上只剩 2.36%。
谁在做数学后训练、又不想养一个更强外部教师,这篇给出一条可复用的回路:金标只用来条件化教师和验收短改写,监督密度来自模型自己的 rollout。能直接抄的选择也清楚:教师每轮刷新,金标放 assistant 侧,蒸馏用 Forward KL,短改写当长度阀门,不要指望它单独把准确率拉起来。
这是后训练配方的改进,不是新的推理算法。8B 的 65.97% 略高于该模型 thinking 模式基线的 62.08%,但评测仍是竞赛数学、non-thinking、LoRA。
论文没有单独的 Limitations 节。能看见的边界是:金标必须有,开放式任务接不上这条特权教师;每套评测 30 题,Average@12 的方差不会小;1.7B 加 SRCL 变长,说明短改写依赖已经会改的模型;14B 只报到 step 50,没有和同设置 OPSD 的完整对照。特权教师每轮要再前向一遍,算力账没有摊开。把「Wait」当反思探针也偏窄,真实改错不一定走这个词。