向教师学习:课程垫路,蒸馏跟着学生的脚印走
6a 算法篇收官助攻(L11 p.48-53):前四路对症,反馈太稀、等待太久、更新太猛、奖励太假,都还在学生自己试的框架里;第五路换思路,RL 采不动的任务,让会做的老师带。两条路(p.49-50):课程与热启动先把「可学会区」垫出来,demonstrations 热启动 → 偶尔能成功的任务上跑 RL → 再上更难任务,旧任务留在混合里防遗忘,固定评测集当不变的路边里程碑;蒸馏让学生匹配教师的动作分布。固定轨迹蒸馏(p.50,Hinton et al. 2015 §2;Agarwal et al. 2024 §3)在教师存下的历史上匹配 q(·|h₃)=80%/20%,病灶与第 5 讲暴露偏差同构:学生自己犯错会走进训练集里没有的历史,那里没有教师标签。GKD(p.51,Agarwal et al. ICLR 2024)让学生自己 rollout 产生历史,教师在那些历史上给目标,并把在谁的数据上算损失、用什么散度拆成两个正交旋钮;目标用反向 KL(p.52):student 0.5/0.5 对 teacher 0.8/0.2,0.5log(0.5/0.8)+0.5log(0.5/0.2)≈0.223,L_OPD=E_{h∼d^μ}[D_KL(πθ(·|h)‖q(·|h))],每步拿到分布级 dense 监督,是 Thinking Machines 2025 工程版配方的核心;Qwen3 强到弱蒸馏是同一「教师给目标、往小了传」骨架的变体;OPSD(p.53,Zhao et al. 2026)更进一步:教师输入=学生历史+已验证解答,冻结初始模型当教师,不需要外部强模型,自己教自己。
任务难到什么份上?学生十条轨迹九条挂零,组比较都没有信息,RL 采不动了。L11 收官段 p.48-53 换思路:前四路都是学生在自己的 rollout 里自己学,这一段请会做的老师带。
老师出手两条路。课程学习把任务的坡度垫平,蒸馏把教师的分布搬进学生。蒸馏自己还有一条演化线,固定轨迹 → on-policy → 自蒸馏,每一步都在回答同一个问题:在谁的历史上学。
一、课程与热启动:先把可学会区垫出来
最朴素的一路,L11 p.49。纯 RL 从零起步,策略在难任务上几乎从不成功,奖励长年全零,这就是第四节无信息组(L11 p.37)的死法。解法是把坡度垫平,三段推进:
- Demonstrations 热启动(warm start):先从教师的成功解里学,模仿学习把策略拉进偶尔能成功的区间;
- 在可学会任务上跑 RL:任务选到模型 “sometimes succeeds” 的程度,组内比较才有差异、梯度才有分辨率;
- 再上更难任务:能力涨了就加难度,这就是课程(curriculum)。
p.49 底行还写了两个防坑细节,都直连本讲前几节:
- 旧任务留在混合数据里,防遗忘。课程管的是数据的配比,旧任务不撤走;
- 用固定评测集衡量真进步。课程在变,尺子不能变,否则分数涨了也说不清,是学会了新任务,还是换了考卷。第四节的独立验证三栏,是它的完整版。
往回接一句:全败三诊断(L11 p.38)的第二问「当前能力 —— 换更强模型 demo 能否成功」,课程学习就是这道问的工程化答案。demo 能成的任务区间,就是课程该垫的那段坡。
二、固定轨迹蒸馏:教师只在自己走过的路上留脚印
第二条路,L11 p.50:把教师会做这件事本身变成监督信号。蒸馏的定义:在固定的一组教师轨迹上,训练学生匹配教师的动作概率。
图景是这样。教师先跑一条轨迹存档 h₀→a₀→h₁→a₁→h₂→a₂→h₃,在存档的 h₃ 上给下一动作的分布,a₃ 占 80%、另一个动作占 20%,记作 q (・|h₃)。学生的目标,就是把 πθ(・|h₃) 对到这份分布上。
分类模型的版本即 Hinton et al. 2015 §2 的经典配方:软标签带温度 T,暗知识(类间相似度)比 one-hot 多、梯度方差更小。搬到语言模型(Agarwal et al. 2024 §3),下一动作分布换成下一 token 分布,骨架不变。
病灶也在定义里。p.50 原话:学生自己犯错时,会走进这份训练集里没有的历史。
固定轨迹蒸馏买到的是便宜且稠密的监督,付的是训练分布 ≠ 使用分布这笔老账。要还账,就得让训练数据跟着学生的脚印走。
三、GKD:让学生自己 rollout,教师跟着脚印给目标
GKD 把定义换了方向,L11 p.51:让学生生成训练历史,再让教师在那些历史上给目标。教师不再提供轨迹,只提供「到这段历史上,我会怎么走」。学生 rollout 到 h₃,教师看一眼给 80%/20%,学生照着对齐。
on-policy 三个字说的就是这个:历史来自学生自己的 rollout,训练分布永远是学生当前的分布,脚印跟着脚走。
GKD(Agarwal et al.,ICLR 2024)把这条思路拆成两个正交旋钮,下面表格的两行就是它们:
| 旋钮 | 取值谱系 |
|---|---|
| 在谁的数据上算损失 | 教师采样 / 学生 on-policy 采样 / 两者插值 |
| 用什么散度对齐 | 前向 KL / 反向 KL / 广义 JSD |
两个旋钮独立调。固定轨迹蒸馏只是 (教师数据,前向 KL) 那个角落的特例,工程上常取中间态:完全 on-policy 方差大,混入固定数据稳住训练。
散度为何常选反向 KL?看目标函数的形状最清楚。
四、目标长什么样:反向 KL 的 0.223
p.52 给了一个两动作的数值例:同一历史 h₃ 上,学生 πθ 给 (0.5, 0.5),教师 q 给 (0.8, 0.2)。反向 KL 取自然对数,按学生的概率加权:
两项一负一正。学生在教师低概率动作上放的质量(0.5 对 0.2,log 2.5≈0.92),罚得比学生在教师高概率动作上的欠缺(log 0.625≈−0.47)重。反向 KL 对「学生敢冒、教师不让」的方向更敏感,是 mode-seeking 的形状。
对整个分布的目标,是在学生的历史分布 d^μ 上平均(p.52):
一条轨迹跑完才知道一个标量 R (τ),中间步骤的信号全靠本讲前三节的信用分配去补 —— 组均值、critic、PRM,每层都要付钱。
学生在自己 rollout 的每个历史上都拿到教师完整的下一动作分布 —— 不用等结局、不用估优势,监督天然步级。代价是要一直请教师在场:训练中教师在线打目标,算力换分布匹配。
这笔以 dense 换延迟的账,2025 年被 Thinking Machines 的工程复盘做成了系统实证:反向 KL 版 on-policy 蒸馏每步拿到分布级监督、免 reward 模型,样本效率高出 RL 一截,小模型蒸馏后甚至反超大模型 RL。GKD 的学术配方,落成了工业读法。
Qwen3 Technical Report 的强到弱蒸馏是同一骨架的又一变体:教师给目标,学生不必同架构同规模,会做的可以往小了传。
五、OPSD:冻结自己当教师
演化线的最后一站去掉了一个看似不可少的依赖:外部强教师,L11 p.53。OPSD(Zhao et al. 2026)的做法分两半:
- 教师是谁:冻结的初始模型,RL 还没动过的那个自己。不需要外部强模型,教师成本为零;
- 教师看什么:学生的历史,加上一份已验证的解答。学生输入是任务与历史 h₃,教师输入是同样的内容再附一个已验证解。拿着答案看学生的处境,给出的下一动作分布自然更可靠,也防住自训(self-training)的漂移。
热启动的 demonstrations 是别人的成功解,OPSD 的教师输入是自己的已验证解。中间那几步演化,固定轨迹、on-policy、反向 KL,决定的是监督在哪个分布上、以什么形状发下来。
与本讲的连接
本篇下钻 6a 收官段 L11 p.48-53:p.49 课程与热启动,p.50 固定轨迹蒸馏与暴露偏差病灶,p.51 GKD 的 on-policy 定义,p.52 反向 KL 目标与 0.223 数值例,p.53 OPSD 自蒸馏。
五张资料卡各就各位:
- m6-hinton-distill,软标签蒸馏的奠基原典,§2 就是 p.50 的出处;
- m6-gkd,学术版,两个正交旋钮与散度选择的全部推导都在里面;
- m6-opd-blog,工程版,反向 KL 配方的系统实证;
- m6-opsd,2026 前沿,自蒸馏与自我提升合流;
- m6-qwen3,强到弱蒸馏的生产案例。
跨讲三处回接:
- 本篇第二节的暴露偏差(固定轨迹蒸馏病灶),第 5 讲从模仿学习侧推过,本篇在蒸馏侧复发;GKD 让学生自己 rollout,第 5 讲 RL 在真实分布上算损失,是同一句话;
- 第一问的组比较依赖偶尔能成功,课程学习就是把任务垫进这个区间的手艺;
- 第四问的固定评测集,在这里以课程变了、尺子不能变复现。
看任何蒸馏配方,先问三行:数据在谁的历史上采、散度用哪个方向、教师在场怎么算。教师这一头可以一路退:OPSD 冻结自己当教师,成本为零。学生那一头,Thinking Machines 的复盘给出对照,小模型蒸馏后甚至反超大模型 RL。
本节论文与规范
- Distilling the Knowledge in a Neural Network (Hinton et al., 2015)↗
- On-Policy Distillation of Language Models: Learning from Self-Generated Mistakes (GKD, ICLR 2024)↗
- On-Policy Distillation (Thinking Machines Lab, 2025)↗
- Self-Distilled Reasoner: On-Policy Self-Distillation for Large Language Models (OPSD, 2026)↗
本节资料
- On-Policy Distillation of Language Models: Learning from Self-Generated Mistakes(GKD) 论文2306.13649进阶
2023/ICLR 2024。On-policy 蒸馏(GKD):学生自己 rollout 产生历史、教师在那些历史上给目标,专治「学生犯错后走到训练集没有的状态」——L11 p51 的出处(slides 引其 §3)。把「在谁的数据上算损失」与「用什么散度」拆成两个正交旋钮,反向 KL 与 JS 各有适用面。训练中教师在线打目标,算力换分布匹配,是蒸馏走向 RL 形态的关键一步。
- Distilling the Knowledge in a Neural Network 论文1503.02531入门
经典·高引(2015)。知识蒸馏奠基文:软标签温度、学生匹配教师分布——L11 p50「学生在固定教师轨迹上匹配 q(·|h)(80%/20% 例)」的理论源头。软目标携带类间相似度的「暗知识」,比 one-hot 信息更多、梯度方差更小,温度 T 调「教师讲多细」。短文几页可读完,却是包括 on-policy 蒸馏在内一切变体的公共起点。
2025 一线实践。反向 KL 版 on-policy 蒸馏的系统实证与工程配方(每步 dense 监督、免 reward 模型),与 GKD 学术版互补——L11 p51-52 两页公式的工业化对应。每步拿到教师分布级监督而非延迟标量奖励,样本效率高出一截;小模型蒸馏后反超大模型 RL 的对照极具冲击力。公式不多,工程细节都在明面。
2026 前沿。On-policy 自蒸馏:冻结初始模型当教师、教师输入=学生历史+已验证解答——L11 p53 的出处,把蒸馏与自我提升合流。教师即冻结的初始 checkpoint,零额外教师成本;已验证解答注入教师输入,防止自训漂移。与强到弱蒸馏(见 Qwen3 报告)正交,合流处即「自我提升的稳定化」。
- Qwen3 Technical Report 论文2505.09388前沿
2025 前沿。GRPO 家族超大规模(旗舰 235B-A22B、119 语种)完整落地记录:强到弱蒸馏、thinking budget 控制与四种尺寸训练配方——「slides 里的算法如何变成产品」的最佳样本;其默认 chat template 删 reasoning 的行为也是 L12 p21 模板陷阱案例。训练管线四阶段(长 CoT 冷启动→推理 RL→模式融合→强到弱蒸馏)公开可抄。
AI 生成 · 仅供参考,与课程方无关。选中正文里的任何一段也能直接问我(解释一下 / 举个例子)。
本详解以 CMU 11-768 AI Agents (Fall 2026) 课程大纲为参考框架独立撰写,AI 辅助起草、人工抽审。 涉及的官方课件、论文与课程材料版权归原所有方,讲义为站内镜像、其余外链原文出处; 观点与文字(除标注引用外)为作者原创。