这项由新加坡国立大学研究团队开展的工作于2026年7月以预印本形式发布编号为arXiv:2607.04428有兴趣深入了解的读者可通过该编号查询完整论文。研究提出了一种名为dOPSD的新型训练方法专门针对一类叫做扩散大语言模型的AI系统让它们在数学推理和代码生成等需要严密逻辑的任务上表现得更好。现在最火的那些会聊天、会写作的AI大多数都是从左到右一个字一个字往外蹦词的就像你在键盘上打字一样每敲一个键才决定下一个键。但扩散语言模型的工作方式完全不同——它更像是做一道填空题一开始所有格子都是空白的然后它一轮一轮地把最有把握的那些格子填上直到整篇文章写完。这种方式有个巨大优势它可以同时看到整个句子的前后语境而不是只知道已经写出来的部分。然而想让扩散语言模型学会深度推理研究团队遭遇了一道棘手的墙。这堵墙并非凭空出现而是源于AI训练领域长期存在的三大困境而这项研究的价值正在于找到了一条同时绕过这三道障碍的路径。一、为什么教会AI推理这么难教一个人解数学题最直接的方法是给他看大量例题和标准答案然后让他模仿。对AI来说这叫做监督微调通俗地说就是给AI喂答案让它抄。但问题来了训练时AI总是看着标准答案学但考试时它得自己独立作答这两种状态差别很大就像你练习时总有老师在旁边提示但考试时独自面对试卷会感到很不适应。这种现象在学术上叫做暴露偏差意思是AI在训练和实际使用时所处的环境不匹配。另一条路是用强化学习也就是让AI自己尝试解题答对了就给奖励答错了就扣分。这个方法更接近真实考试的状态但对扩散语言模型来说有个技术难题扩散模型的工作方式使得很难计算整篇答案有多大概率这个数字而强化学习恰恰需要这个数字。而且强化学习给出的奖励非常稀疏——只有当整篇答案完全正确时才有奖励就好比学生交完整张试卷才知道对不对中途完全没有反馈学习效率极低。还有第三条路叫做在线自我蒸馏OPSD这是近期研究人员为自回归语言模型也就是那种从左到右写字的AI开发的方法。这个方法很聪明用同一个模型同时扮演学生和老师两个角色。学生版只看题目老师版除了看题目还能看到参考答案。学生按自己的理解作答然后拿老师给出的每个词的概率分布来指导自己这样就能获得密集、细粒度的训练信号不必等到整篇答案出来才知道对错。但这里有个深层次的缺陷而这个缺陷在把方法搬到扩散语言模型上时暴露得尤为明显。老师的能力来源于它能看到那份参考答案然而学生在实际考试时永远看不到参考答案。于是对于每一道不同的题老师的建议都是针对那道题的特定答案量身定制的而学生只能取这些来自不同题目的老师建议的公约数最终学到的是一种模糊、折中的笼统策略反而比任何一个针对具体题目的老师建议都要弱。这个现象被研究人员形象地称为PI消解——老师的特权信息Privileged Information简称PI被平均掉了留下的只是一个无力的共识。更糟糕的是扩散语言模型的解题方式还带来了第二个独立的问题。传统的在线自我蒸馏会在模型写完答案后随机遮住其中一些词然后让模型猜这些词以此来训练。但随机遮词和扩散模型真正解题时的遮词顺序完全不同——扩散模型是按照先填最有把握的这个顺序来的随机遮住的词往往是那些早就该填好的简单词而不是模型当前真正需要学习的词。研究团队通过实验测量发现当随机遮住10%的词时大约90%被遮住的词其实是模型早就确定好的简单词和真实解题过程完全脱节。训练结果也印证了这一点用随机遮词的方式训练模型的数学成绩随着训练步骤的增加反而稳步下滑。这两道障碍——老师的特权信息是外部答案导致的平均化失效以及随机遮词导致的训练状态偏离真实解题路径——共同构成了把在线自我蒸馏移植到扩散语言模型时必须突破的核心瓶颈。二、扩散模型天生自带的金手指研究团队发现扩散语言模型解题时的特殊工作方式恰好内置了一种独特的信息优势而这种优势是左到右写字的普通模型完全没有的。回到填空题的比喻。扩散模型解题的过程是这样的一开始所有格子都空着第一轮填了几个最有把握的词第二轮又填了一些第三轮再填一些直到所有格子都填满。在这个过程中每一轮结束后的半成品答案都比上一轮包含更多已填好的词因此给剩余空格提供了更丰富的上下文信息。关键的洞察在于处于解题过程中间某一步的模型和处于更靠后一步的模型看到的上下文是不同的。靠后那步的模型已经填好了更多词所以它对剩余空格的预测会更准确因为它有更多参考信息。这就像同一个人做同一道题做到一半时猜剩余答案和做到八成时猜剩余答案后者显然更有把握。换句话说模型在自己解题过程的后期自然地成为了前期的老师而且这个老师的优势——那些额外知道的词——完全来自模型自己的解题过程不需要任何外部参考答案。这就是dOPSD的核心思路把老师的特权信息的来源从外部参考答案换成模型自己解题过程中产生的先知优势。三、dOPSD如何让模型用自己的解题历程当老师理解了核心思路之后具体的做法其实相当直观。每次训练时模型先完整地解一道题同时把解题过程中每一步的半成品状态都记录下来。这个完整的解题过程包含了从全空到全填的所有中间状态形成一条解题轨迹。接着从这条轨迹中随机挑选一个中间时刻——要求这个时刻还有足够多的空格具体来说答案区域至少还有一半是空的这样才有足够的训练素材。这个中间状态就作为学生的处境在这么多词已经填好的情况下模型对剩余空格做出预测这就是学生的答案。然后对于每一个此刻还空着的格子研究团队让同一个模型回到解题轨迹的后续各步骤看看在后续每一步那个更丰富的上下文中模型对这个格子的预测是什么。把这些来自不同后续步骤的预测平均起来就得到了老师对这个格子的建议。为什么要取平均而不是只用最后一步因为每一个更靠后的步骤都代表了比当前更充足的信息把所有后续步骤的预测都纳入平均等于把模型在整个后续解题过程中积累的所有先知优势都汇集起来信号最丰富。实验也证实了这一点只看后续50步的老师效果不如看后续100步而看完整剩余轨迹的老师效果最好。训练时用一种叫做詹森-香农散度的数学工具来衡量学生预测和老师建议之间的差距然后让模型朝着缩小这个差距的方向调整自己的参数。整个过程中梯度只流向学生老师是固定的参考目标不会被这次训练改变。这样设计是为了确保学习的方向清晰是学生在向老师学习而不是两者互相纠缠。此外研究团队还加入了一个过滤机制如果模型解这道题得出的最终答案是错的那么整条轨迹就被丢弃不纳入训练。道理很简单——如果最终答案就是错的那么沿着这条轨迹产生的老师建议也很可能是错的方向拿来训练只会强化错误。不过研究者们也测试了不加这个过滤机制的版本发现即使不过滤直接训练模型成绩依然能够提升只是提升幅度稍小。这说明过滤只是锦上添花不是方法成立的前提。四、用正向KL还是反向KL这个问题比看起来重要得多在把老师的知识传递给学生的过程中有一个技术细节值得专门说清楚用什么方式衡量学生和老师有多像会显著影响最终的训练效果。简单地说有两种极端方式来衡量两个概率分布之间的差距分别叫正向KL散度和反向KL散度。正向KL散度的特点是追求覆盖全面——它会强迫学生在老师认为可能的每一种答案上都分配一些概率不能对老师觉得可能的选项视而不见。反向KL散度的特点是追求集中精准——它允许学生只关注老师最看好的那个答案对其他选项忽略不计。在dOPSD这个场景下老师的建议本身就融合了解题轨迹多个后续步骤的信息是一个丰富的多峰分布——可能对好几个候选词都给出了不低的概率。如果用反向KL散度学生只会盯着其中最高的那个峰把其他峰包含的信息都丢掉等于浪费了老师的一部分知识。正向KL散度则会强迫学生把老师分布的全貌都吸收进来不遗漏任何信息。实验结果非常一致无论是在Dream还是LLaDA两个模型上无论是在数学还是代码这两类任务上正向KL散度的训练结果都明显优于反向KL散度。以LLaDA模型为例在HumanEval代码测试上正向KL达到了39.63分而反向KL只有37.42分在Dream模型的MBPP代码测试上正向KL达到58.49分反向KL只有50.61分。这个差距在四项测试中始终如一地存在因此研究团队将正向KL定为默认设置。五、真实的考验和其他方法的全面对比研究团队在Dream-7B-Instruct和LLaDA-8B-Instruct两个扩散语言模型上把dOPSD和四种其他训练方法做了系统对比同时保留了未经任何额外训练的原始模型作为基准。所有方法都用同一批数学题训练评估时既测数学GSM8K和MATH500两个基准也测代码生成HumanEval和MBPP两个基准而且代码测试完全是在模型从未见过相关训练数据的情况下进行的。结果呈现出一个非常清晰的格局。四种对比方法——监督微调、强化学习GRPO、仅用最终答案作为特权信息的OPSD、以及用完整参考解答作为特权信息的OPSD——在几乎所有测试上的表现都和原始模型相当甚至更差。监督微调在两个模型上的所有四项测试中全面低于原始基准印证了训练推理状态不一致带来的负面影响。强化学习方法的表现基本和原始模型持平偶尔有小幅提升比如在LLaDA的MATH500上提升了约1.5分但总体收效甚微体现了稀疏奖励信号和技术适配困难带来的瓶颈。两个OPSD变体的表现则直接验证了研究团队在理论分析中的预判。仅用最终答案作为特权信息的版本在原始基准附近徘徊始终无法形成有意义的提升——正是因为每道题的答案不同导致针对不同题目的老师建议互相矛盾平均后剩下的信号微乎其微。而用完整参考解答作为特权信息的版本则出现了严重的崩溃在Dream模型上GSM8K成绩从81.41分暴跌至67.25分跌幅超过14分在LLaDA模型上GSM8K从71.23分跌至57.86分跌幅超过13分。越是丰富、具体、针对单道题的参考信息就会让不同题目之间的老师建议差异越大平均后的结果就越趋向于一个什么都不说的无力共识这和理论预测完全吻合。此外完整参考解答版本还频繁出现截断不完整、甚至完全生成空输出的情况定性案例中可以看到多个这样的失败例子。与之形成鲜明对比的是dOPSD在所有测试上的全面提升。在Dream模型上GSM8K从81.41升至83.04MATH500从38.97大幅跃升至42.20在代码生成方面HumanEval从52.54升至56.71MBPP从57.43升至58.49。在LLaDA模型上GSM8K从71.23升至72.87MATH500从31.24显著提升至36.00HumanEval从36.12升至39.63MBPP从38.45升至39.54。在所有测试的所有方法中dOPSD是唯一能在所有四项测试上同时超越原始基准的方法。特别值得注意的是代码生成方面的提升因为训练数据完全是数学题模型从未接触过代码训练样本。dOPSD让模型在代码任务上也获得了提升说明通过轨迹导向的自我蒸馏学到的是一种更通用的推理能力而不是对特定数学题的记忆并且没有出现其他方法常见的灾难性遗忘现象。六、关于往后看多远和空格留多少的细节调优研究团队还系统测试了两个关键参数的影响这两个参数共同决定了训练信号的质量。第一个参数是老师在轨迹中往后看多远来构建建议分布。研究团队测试了只看未来50步、100步、200步以及看完所有剩余步骤四种配置。结果非常规律看得越远效果越好。只看未来0步即没有后续步骤可看退化为当前步骤的预测时GSM8K只有70.44分比原始基准还低看50步时回升到74.26分看100步时达到78.42分看200步时达到78.14分看完所有剩余步骤时达到83.04分MBPP也从只看200步时的48.92跳跃至58.49。这个趋势表明老师的先知优势确实随着掌握更多后续解题信息而持续增强而不是到某个点就饱和了。第二个参数控制的是选取学生所在训练时刻时要求那个时刻答案区域至少还有多少比例是空白的。研究团队测试了25%、50%、75%三个阈值。阈值设为25%时意味着允许选取几乎快填完的时刻空白格子太少老师和学生能从中学习的素材不足整体平均分只有53.63分。阈值设为75%时要求选取的时刻必须有大量空格但此时模型对剩余空格的预测基础极其薄弱老师的建议也变得难以可靠整体平均分59.49分。50%是一个最佳的平衡点整体平均分达到60.11分在GSM8K和MATH500上也都达到最优因此被定为默认值。七、AI解题的具体对比三个真实案例研究团队选取了三道具代表性的题目展示各方法在细节上的差异这些例子非常直观地说明了训练方法的差异如何体现在具体答题行为上。第一道题问的是Ada每天用12千瓦时的电加了一个设备后每周账单差多少。正确答案是21美元。包括原始模型、监督微调、强化学习和两个OPSD变体在内的所有对比方法都犯了同一个错误把每天的用电量乘以24小时把千瓦时每小时当成了每小时千瓦时凭空制造出一个单位换算。这个错误让所有方法的答案从21跑到了504甚至2520。完整参考解答版本的OPSD则走向另一个极端答案无限延伸超出了生成长度限制最终没有输出任何数字答案。只有dOPSD看清楚了题目已经给出的是每天12千瓦时直接正确推算出答案21。第二道题问Martin如果每天吃Cheerios会每周减1.25磅吃甜甜圈会每周增1.75磅5周后两种情况的体重差是多少。正确答案是15磅。所有对比方法都犯了同一个符号错误把6.25减少和8.75增加直接相减得到2.5但正确做法是把减少和增加看作方向相反的两个量差值应该是8.75加上6.25等于15。换句话说其他方法都没意识到一个是体重下降、一个是体重上升两者要叠加而非相减。dOPSD正确地认识到这是两个方向相反的变化量给出了15的正确答案。第三道题让计算Ava和Emma在游戏中的得分差Ava跳了更多敌人和收集了更多浆果但计时器超时最终净损益是-25分也就是Ava比Emma低25分答案应当取绝对值25。所有对比方法都正确计算出了-25这个带符号的结果但在报告答案时出现了各自不同的错误有的直接报告-25有的引入未知变量把问题复杂化后崩溃到0完整参考解答版本再次生成了空输出。dOPSD是唯一一个正确理解得分差是个绝对值把-25转换为25后给出正确答案的方法。这三个案例共同展示了一个模式其他方法犯的错误具有一定的系统性体现在对单位理解、符号逻辑、绝对值等基础推理规则的处理上而dOPSD通过从自身解题轨迹中汲取更一致的训练信号在这些细节上表现出更稳健的推理行为。归根结底dOPSD做的事情用一句话来说就是让扩散语言模型把自己解题过程中未来的自己当作老师用这个内生的、无需任何外部答案的信号来改进当下的自己。这种方法巧妙地利用了扩散模型独有的逐步解封信息特性把一个在自回归模型上根本无法实现的想法变成了现实。对于这个领域的发展意味着什么一方面它表明不一定需要大量标注好的参考解答才能提升AI的推理能力模型自身的解题过程就蕴含着足够丰富的训练信号另一方面它揭示了在把针对一种模型架构设计的方法移植到另一种架构时表面的相似性可能掩盖着根本性的不兼容需要从机制上重新审视而不是简单照搬。当然这项研究也有其局限性。训练数据集规模只有大约12000道数学题这在AI研究中算是相对小规模的实验实验也只在两个特定的扩散语言模型上进行尚不清楚这个方法是否能同样有效地迁移到其他架构的扩散模型。此外目前的实验主要集中在数学和代码这两个有明确正误判断的任务上对于开放式生成或需要主观判断的任务如何定义答案正确从而使用过滤机制还需要进一步探索。感兴趣的读者可以通过arXiv:2607.04428查阅完整论文代码也已开放在研究团队的代码库中。QAQ1扩散语言模型和普通的ChatGPT这类AI有什么根本区别A普通的ChatGPT是从左到右一个词一个词地生成答案每个词生成后就固定了。扩散语言模型则是一开始把所有位置都设为空白然后多轮迭代地把最有把握的位置填上整个过程可以同时参考上下文最终逐渐填满所有位置。这种方式的优势在于可以利用双向上下文信息但后训练难度也更高。Q2dOPSD方法为什么不需要参考答案就能训练模型AdOPSD的核心是让模型用自己解题过程中更靠后的状态来指导更早的状态。因为解题越到后期已填好的词越多对剩余空格的预测就越准。这种先知优势完全来自模型自身不依赖任何外部答案。即使去掉对最终答案正确性的过滤方法依然能带来提升只是效果稍弱。Q3为什么直接把OPSD方法从普通AI移植到扩散语言模型上会失败A移植失败有两个原因。第一OPSD的老师优势来自外部参考答案而每道题的参考答案不同导致不同题目的老师建议互相矛盾平均后变成一个无力的折中策略。第二OPSD需要随机遮住答案中的词来训练但随机遮词产生的状态和扩散模型真实解题时经历的状态完全不同导致训练信号和实际推理脱节实验中随机遮词训练方式导致成绩随训练持续下降。