微信扫一扫,关注公众号

  • 科技行者

  • 算力行者

见证连接与计算的「力量」

首页 当学生比老师聪明的时候,我们该怎么办

当学生比老师聪明的时候,我们该怎么办

2026-09-02 17:10
分享至:
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-
2026-09-02 17:10 • 科技行者

有一道题,正确答案是480。一个刚学完知识的小模型,算出了80。它错在哪一步?它在推导过程中,遇到了一个边界条件,随手把一个变量设成了0,然后就下结论说"这就是最小值",完全没检查这个0是不是真的对应一个合理的几何图形。

有意思的是,另一个理论上更强的模型,用了完全一样的错误逻辑,也算出了80。

这个更强的模型,是经过一种叫做"在线蒸馏"的方法训练出来的。它本该跟着一个更厉害的老师模型学习,结果却把老师的错误方向也学了过去。这篇来自香港科技大学(广州)、清华大学、浙江大学和阿尔伯塔大学联合团队的论文,就是想解决这个问题:当老师的指导信号本身可能带偏学生的时候,怎么办?

**这个问题的核心,藏在一个反直觉的现象里:一个让学生更像老师的训练信号,未必是一个让学生更接近正确答案的信号。**

这句话拆开看很拗口,但道理其实很朴素。想象一下你在教一个刚入行的实习生写代码。你写代码的风格是先搭框架再填细节,实习生某次尝试用了完全不同的路径,直接从一个巧妙的边界情况入手,居然一步到位解决了问题。如果你这时候按照"跟我风格越像分数越高"的标准去打分,这次巧妙的尝试反而会被扣分,因为它"不像你"。长期这样打分,实习生会学会放弃自己那些真正管用的直觉,转而模仿你的形式,哪怕这个形式并不是唯一正确的路。

这就是这篇论文想指出的问题所在。

一、先搞懂现在流行的"在线蒸馏"是怎么回事

先说说背景。知识蒸馏这个概念本身不新鲜,简单说就是让一个小模型(学生)去学习一个大模型或者更强模型(老师)的行为,这样不用真的把大模型部署到线上,也能获得接近的效果。

在线蒸馏(On-Policy Distillation,简称OPD)*:一种蒸馏训练方式,让学生模型自己生成答案,再拿这些自己生成的内容去问老师模型"你觉得这一步该怎么走",用老师在这些具体节点上的反馈来纠正学生。

传统蒸馏用的是老师提前写好的一堆范文,让学生死记硬背。问题是,学生自己实际做题时走的路,跟老师写的范文路径不一定一样,等学生真正上考场,遇到的是自己从没在训练里见过的分支,表现就会打折扣。这个现象有个专门的名字。

暴露偏差(Exposure Bias)*:训练时看到的都是标准答案的轨迹,但真实使用时模型要自己走一步生成一步,一旦某一步偏离了训练轨迹,误差会不断累积放大。

在线蒸馏的巧妙之处在于,它让学生先自己走一遍,走到哪一步,就在那一步去问老师"如果是你,你觉得下一个词该是什么概率分布"。这样训练出来的模型,面对的场景更贴近它实际推理时会遇到的场景。具体的技术手段,是用一种叫KL散度的东西衡量学生和老师在每个词上给出的概率分布差多少,差得越多,扣分越多,逼着学生每一步都往老师的方向靠。

KL散度(Kullback-Leibler Divergence)*:一种衡量两个概率分布差异程度的数学指标,两个分布越接近,KL散度越小。

听起来很合理对不对?老师厉害,学生跟老师学,天经地义。但问题恰恰出在这里。

二、症结所在:像老师≠对答案有帮助

论文团队观察到一个现象,他们统计了两个模型(DeepSeek-R1-Distill-Qwen-1.5B和Qwen3-1.7B)在做数学题时的表现,发现大概三分之一的回答,其实推理过程是对的,答案思路也没问题,但因为想得太多、思考链条拖得太长,最后被截断了,根本没输出最终答案。

这意味着什么?

意味着只靠"回答对不对"这一个最终结果来判断训练信号靠不靠谱,会漏掉一大批本来推理是对的、只是收尾没做好的宝贵样本。

而如果只靠"每一步是不是像老师"这个信号来判断,又会遇到开头那道480的题目里的问题:一个推理步骤即便真的往正确答案迈进了一大步,只要它的表达方式、思考角度跟老师不太一样,就会被在线蒸馏的KL散度惩罚,判定为"偏离轨道"。

这两种信号,一个太粗(只看终点对不对),一个太细但方向不一定对(只看每一步像不像老师),都不能真实反映"这一步到底有没有让学生离正确答案更近"。

论文提出,需要一种独立于老师之外的、专门衡量"推理进展"的信号。这个信号该怎么造?

三、造一把不受老师影响的尺子:过程奖励

思路是这样的:与其看学生这一步是不是像老师,不如直接测一测,学生走到这一步之后,继续往下走,能不能真的走到正确答案。

过程奖励(Process Reward)*:一种衡量推理中间状态好坏的指标,做法是从某个中间节点出发,让模型自己往下续写若干次,看看这些续写最后答对的比例有多高,比例越高说明这个中间状态越有价值。

具体的操作是这样的。先把一段很长的推理过程切成若干个小段,切分的位置不是随便选的,是靠一套关键词库来找,比如"等等""其实""让我重新检查一下"这类带有自我反思意味的转折词,出现这些词的地方往往标志着推理进入了新的阶段。

切完段之后,在每一段的边界处,让当前的学生模型基于这个边界之前的内容,自己往下续写8次,每次续写完直接问"你现在能给出最终答案吗",看看这8次里有几次真的答对了。这个比例就是这个边界点的"解题概率"。相邻两个边界点解题概率的差,就是这一段推理带来的"进展",进展是正的说明这段推理帮了忙,进展是负的说明这段推理反而把学生带偏了。

这里要提一句为什么终点和起点的解题概率不用重新计算。起点(也就是刚拿到题目还没开始推理)直接设成0,这是合理的假设,因为完全没有任何推理线索时几乎不可能瞎蒙对。终点则直接复用这条回答本身最终是否正确的结果,不用额外再生成一遍,省了不少计算量。

这个过程奖励信号有个天然的好处:它完全不依赖老师模型的意见,是纯粹站在"这条路能不能走通"的角度来评估的。

四、噪声太大怎么办:先把方向一致的路段拼起来

不过,这里有个现实问题。用8次续写去估计一个概率,样本量说实话不算大,估计出来的数字很容易上下抖动,今天这一段测出来进展是+0.1,明天可能因为随机采样又变成-0.05,纯粹是噪声导致的,不代表这段推理真的忽好忽坏。

同样地,每个词的KL散度也会因为局部用词习惯、老师模型本身的不确定性等各种细枝末节的因素而剧烈波动。

如果拿这两个本身就很吵闹的信号直接逐字逐句去比较,很容易比出一堆假冲突,根本靠不住。

论文的解决办法是先做一次"合并同类项":把方向一致的相邻推理段拼接成更大的单元。具体规则是,如果连续几个小段的过程奖励都是正的(或者都是负的),就把它们合并成一个大段;奖励恰好是0的小段不会单独触发新的分界,会被并入当前正在累积的这个大段里;只有当奖励的符号真正从正转负或从负转正的时候,才会开启一个全新的大段。

这一步的巧妙之处,在于过程奖励本身的定义方式,是相邻两个节点解题概率的差值。当你把一串这样的差值加起来的时候,会发生一件很干净的事情:中间那些节点的估计值会互相抵消掉,最后只剩下这个大段最左端和最右端两个节点的估计误差。论文里专门证明了这一点,叫"望远镜求和",意思就是像收放望远镜一样,中间的部分层层抵消,只留头尾。

这就意味着,合并之后的过程奖励,比合并之前那些零零碎碎的小段过程奖励,噪声要小得多,因为它不再受内部那些不稳定的中间边界估计值拖累。

**这里可以打一个比方:这就好比你想知道一段旅程整体是不是在爬升,与其一步一步测每个台阶的高度差(每一步的测量误差都会叠加),不如直接测起点和终点的海拔差。如果非要靠每一级台阶的读数去判断,仪器本身的抖动会让你误以为路时而上坡时而下坡,实际上整段路是稳定向上的,你却因为噪声得出了错误结论。**

同样地,对于KL散度这一侧,论文也做了对应处理:在合并好的每个大段内部,把这一段所有词的KL散度取个平均值,而不是死盯着某一个词的瞬时数值。论文里还给出了理论证明,只要相邻词之间的相关性随着距离增大而衰减(这是个很自然的假设,隔得越远的词彼此的影响确实会越弱),那么段内平均之后的方差就会随着段长度增加而按比例下降。段拼得越长,这把尺子就量得越准。

五、抓真正的冲突:排序打架的地方才动手

有了两把都相对稳定的尺子,一把测"这段推理进展多大"(过程奖励),一把测"这段推理跟老师差多远"(平均KL散度),接下来该怎么用?

论文没有选择把这两个信号简单相加变成一个新的训练目标,也没有让过程奖励直接顶替原来的KL散度。作者的思路更谨慎:只用这两把尺子之间的"排序矛盾",来判断哪些地方的老师监督信号不太可信,然后把这些不可信的地方的KL散度惩罚屏蔽掉,其他地方保持原样。

具体来说,在同一条回答内部,把各个合并后的大段按照过程奖励从高到低排一次序。理想情况下,进展越大的段,应该得到越低(越宽容)的KL惩罚,因为它做得好,不该被老师的风格差异拖后腿。但如果出现了进展更大的段反而被打了更高的KL惩罚,这就是一次"排序违反"。

论文给每个段都算了一个"不一致得分",凡是跟其他段之间存在这种排序颠倒关系的段,得分就会累积升高。得分排在最前面的那些段(论文里默认是排名前30%),会被打上标记,在计算训练损失的时候,这些段对应的KL散度惩罚会被直接屏蔽掉,既不参与损失计算,也不参与梯度回传,其余没被标记的段照常参与训练。

这里有个细节值得多说一句:为什么不是直接比较这两个数字的绝对大小,而是比较它们的相对排序?因为过程奖励和KL散度这两个东西,本身的量纲完全不一样,一个是概率差值,一个是散度值,直接放在同一把尺子上比较大小是没有意义的。但排序不一样,排序只关心"谁比谁强",不care具体数值差多少,也不会被整条回答里普遍存在的一些系统性偏移干扰,这种做法在强化学习里其实有先例,比如人类偏好学习里常用的成对比较,也是同样的道理,比较相对好坏,而不是纠结绝对分值。

**这一整套设计像什么呢?像一个班主任批改学生的思路过程,不是简单地打个总分了事,而是先标出哪几步写得潦草但结论对,哪几步写得工整但推错了,然后专门针对"写得工整但推错了"的这几步降低批评力度,因为这几步表面上像标准答案的排版,实际上对最后做出正确结论没什么贡献,甚至可能是误导。如果班主任只按照卷面工整程度打分,那些真正抓住了解题关键但写法特立独行的学生,反而会被压分,久而久之这些学生就会放弃自己的好直觉,转而去模仿卷面,哪怕卷面漂亮的那份答案压根没做对题。**

六、这套方法到底管不管用

论文在两组模型上做了实验。第一组是学生模型DeepSeek-R1-Distill-Qwen-1.5B配老师模型JustRL-1.5B,第二组是学生Qwen3-1.7B配老师e3-1.7B,用来验证这个方法能不能跨模型家族通用。训练数据用的是DAPO-Math-17K这个数学题库,测试则放在AIME 2024、AIME 2025和OlympiadBench这几个知名的高难度数学竞赛题集上。

结果显示,在第一组实验里,这套方法(论文里叫R?-OPD)达到了35.06的平均准确率(avg@4,即采样4次取平均),比标准的在线蒸馏方法高出2.51个百分点,在pass@4(4次里只要有一次对就算过)这个指标上更是高出4.46个百分点,其中AIME两个赛题集上的提升最明显。

跟另外几种改进方法比,包括强调保留老师高不确定性位置信息的E-OPD、根据词的重要性动态调整权重的TIP-OPD、结合正确性校准的Uni-OPD,还有针对位置偏差做加权的IW-OPD,R?-OPD在综合表现上都是最好的,即便是表现最接近的Uni-OPD,也被拉开了4.28个百分点的差距。

比较有意思的是,E-OPD和TIP-OPD这两种强调"关注老师不确定的地方"的方法,在AIME这类高难度题目上反而表现更差。论文给出的解释是,过度关注不确定位置,虽然能保留更多样的思路,但也容易让模型在难题上想得太久、拖得太长,超过了训练时设定的最大回答长度限制,结果反而没能完整输出答案。这也从侧面印证了本文一开始提到的那个现象:那三分之一因为想太多被截断的正确推理,如果处理不好,反而会拖累整体表现。

在跨模型家族的实验里,虽然avg@4的提升幅度收窄了一些,但pass@4依然从45.70提升到了48.19,而且在三个测试集上都取得了更高的pass@4,说明这套过程感知过滤的思路,确实能在不同模型架构之间迁移,只是具体收益大小会因数据集和评估指标的不同而有所浮动。

七、细节调优:屏蔽比例不是越高越好

论文还专门做了消融实验,测试屏蔽比例这个参数该怎么设。测试了10%、30%、50%三档。结果是30%这一档综合表现最好,AIME 2024上能到32.50,AIME 2025上能到25.83。屏蔽比例降到10%的时候,AIME两个赛题集上的表现都掉了下来,这说明太保守的屏蔽策略,会保留下太多本该被过滤掉的、跟推理进展相矛盾的监督信号。但屏蔽比例升到50%的时候,AIME 2024和AIME 2025的准确率断崖式下跌到19.17和12.15,说明屏蔽过头了,把不少本来对学生有用的老师指导也一并砍掉了。

OlympiadBench这个测试集在三档屏蔽比例下表现相对稳定,波动不大,这说明不同类型的题目对这个屏蔽力度的敏感程度是不一样的,30%这个数字并不是放之四海皆准的黄金比例,而是在这套实验设置下摸索出来的一个平衡点。

另外一个消融实验专门验证了"先合并方向一致的相邻段"这一步到底有没有用。论文测量了训练过程中过程奖励排序和KL散度排序之间的一致程度,如果两者完全随机不相关,一致比例应该在0.5左右。实验发现,不做合并处理的时候,这个一致比例大概只有0.20到0.27,做了合并处理之后,一致比例提升到了0.55到0.73,并且在整个训练过程中持续保持在随机基线之上。这说明合并操作确实有效降低了边界估计带来的噪声,让两把尺子之间的比较变得更可信。反映到最终准确率上,合并操作让AIME 2024和AIME 2025分别提升了15.00和14.16个百分点,只是在OlympiadBench上小幅下降了0.96个百分点,整体上合并这一步对更难的题目帮助更大。

八、两个真实案例,看看差距具体在哪

论文附录里放了两个具体的解题例子,能更直观地看出差异在哪里。

第一个是一道关于双曲线和菱形的几何题,正确答案是480。基础模型和标准在线蒸馏训练出来的模型都犯了同一个错误:推导到某个边界情况时,直接把一个参数设成0,然后武断地宣称这就是所求表达式的最小值,得出了80这个错误答案,完全没有验证这个边界条件是否真的对应一个合法的几何构型。而经过这套过滤方法训练的模型,正确地把这个边界当成一个极限过程来处理,随着参数趋向无穷,表达式趋近于480这个下确界,最终得出了正确答案。

第二个案例是一道关于13次单位根乘积的题目,正确答案是321。基础模型把一个关键的代换步骤搞错了,得到191。标准在线蒸馏训练出来的模型倒是没走错什么大方向,思路也算清晰,用了复数极坐标的方法去展开计算,但反反复复自己纠错、推倒重来,最后在生成长度限制内没能算出一个完整答案,只能被判定为不完整(自动提取到的答案是1)。而这套过滤方法训练出来的模型,干净利落地把这个表达式因式分解成两个共轭复数因子的乘积形式,直接对应到分圆多项式在特定点上的取值,一步到位算出8321,取模之后就是正确的321。

这两个例子当然只是个案,不能当作因果证据,但它们至少说明了一件事:在真实的解题场景里,那些被标准KL惩罚过度约束的推理路径,确实存在明显走错方向或者拖沓冗余的问题,而经过筛选的监督信号能让模型在关键节点上做出更干脆、更准确的判断。

Q&A

Q1:在线蒸馏(OPD)为什么会存在监督信号不可靠的问题?

A:因为OPD用KL散度衡量学生每一步是否像老师,但"像老师"不等于"离正确答案更近",一段真正推动解题进展的推理如果表达方式和老师不同,反而会被扣分,这种误伤会压制学生本来有效的推理路径。

Q2:R?-OPD具体是怎么修正这个问题的?

A:它先用学生自己续写的答对概率估算每段推理的"过程奖励",再把方向一致的相邻段合并降噪,然后比较过程奖励排序和KL散度排序,只在两者出现明显矛盾的段落屏蔽掉不可靠的KL惩罚,其余部分照常训练。

Q3:R?-OPD相比标准OPD和其他改进方法效果如何?

A:在DeepSeek-R1-Distill-Qwen-1.5B配JustRL-1.5B的实验中,R?-OPD平均准确率达到35.06,比标准OPD高2.51个百分点,pass@4指标高4.46个百分点,且优于E-OPD、TIP-OPD、Uni-OPD等对比方法,在AIME赛题上提升尤为明显。

分享至
0赞

好文章,需要你的鼓励

推荐文章
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-