谁来主导这一步解码?让扩散语言模型互相"接力",把错的拉回正轨
核心摘要
把多个大模型的知识揉到一起,这事在自回归模型上早就玩烂了——投票、加权平均 logits、router 路由,套路一大堆。但有一类模型偏偏吃不到这波红利:掩码扩散语言模型(Masked Diffusion Language Models,MDLM)。它不是从左往右一个词一个词吐出来的,而是像填字游戏一样,先随机解开几个位置,再一步步把剩下的 mask 填满。顺序是乱的,每个模型每一步处理的"半成品句子"都不一样,你压根没法定义一个跨模型共享的"下一个 token"。传统集成方法在这里直接失灵。
这篇来自 KAIST 和 AITRICS 的论文(arXiv:2606.16281)盯上了这个空白。作者发现一个挺有意思的现象:生成正确答案的那条解码轨迹,在答案相关位置上的置信度波动特别小、特别稳;而走偏的轨迹,往往能靠"注入"另一个模型的中间状态被拉回来。基于这个观察,他们提出 TIE(Trajectory-based Iterative Ensembling)——让多个 MDLM 各自解码几步,然后评估谁现在走在更靠谱的轨迹上,把那条轨迹"接力"给所有模型,从这个更可靠的中间态继续往下走。GSM8K 上从单模型的 78.77 / 78.39 直接干到 83.47,八个推理基准全面超过单模型。
说实话,这篇论文最打动我的不是涨点,而是它那个"领跑模型一直在换"的发现——没有哪个模型从头强到尾,不同模型在生成的不同阶段各自贡献长板。这个洞察本身就比方法更有价值。
论文信息
- 标题:Who Should Lead Decoding Now? Tracking Reliable Trajectories for Ensembling Masked Diffusion Language Models
- 作者:Heecheol Yun、Joonhyung Park、Joowon Kim、Eunho Yang
- 机构:KAIST & AITRICS
- arXiv:2606.16281(2026 年 6 月提交,cs.CL / cs.AI)
- 链接:https://arxiv.org/abs/2606.16281
🤔 先搞清楚:扩散语言模型到底怎么解码
聊 TIE 之前,得先讲明白 MDLM 是个什么东西,不然后面的"轨迹""中继"全是空话。
你熟悉的 GPT 系列是自回归的:给定前面的词,预测下一个词,一个接一个往右吐。掩码扩散模型走的是另一条路。它的灵感来自图像扩散——先把一张完整的"句子"全部 mask 成噪声,然后反向去噪,每一步解开(unmask)一部分被遮住的 token,直到整个序列填满。
关键区别在于:解码顺序是灵活的、非从左到右的。模型可以先填句子中间的某个词,再填开头,再填结尾。每一步具体解开哪些位置,通常由置信度决定——哪个被 mask 的位置模型最有把握,就先解开哪个(low-confidence remasking 策略)。
它的训练目标是一个负 ELBO。前向加噪过程把 token 按噪声调度 \(\alpha_t\) 逐渐替换成 mask:
反向过程则学习从带 mask 的序列预测原始 token,训练损失只在那些被 mask 的位置上计算:
公式不用死磕,记住一件事就行:MDLM 在解码的每一步,对每个还被 mask 的位置都有一个完整的概率分布。这个分布会随着解码推进不断变化——而 TIE 的全部精髓,就藏在"这个分布怎么变"里面。
现在问题来了。我手上有 LLaDA、有 Dream、有 DreamCoder,它们各有所长,我想把它们的知识合起来用。自回归模型我直接 ensemble logits 就行,但这几个 MDLM 每一步解开的位置都不一样,处理的半成品句子各不相同,根本没有一个对齐的"下一个 token"让我去平均。这就是论文要解决的核心难题。
📖 一个反直觉的观察:稳定的轨迹更可能是对的
作者没有上来就设计方法,而是先做了一组观察实验——我挺欣赏这种做法的,先理解现象,再对症下药。
他们盯着 answer-related tokens(答案相关的那些位置)看,统计这些位置上的置信度指标随解码步骤怎么变化,然后按"最终答对"和"最终答错"两组分开画。

图1:三个置信度指标(top-1 概率、概率边际、熵)在答案 token 上随解码步骤的演变,按正确/错误样本分组并在答案位置上做了平均。结论很清楚——正确样本在三个指标上始终更"自信":top-1 概率更高、概率边际更大、熵更低。
这张图说的事其实很朴素:答对的那条轨迹,从中途开始就比答错的轨迹更笃定,而且这种笃定是稳定的。模型对答案位置反复横跳、犹豫不决,往往就是要翻车的前兆。
为了把这个直觉量化,作者定义了一个特别朴素但好用的指标——token change count(token 变化计数 𝒞)。意思是:在最近 n 步解码里,那些被 mask 的答案位置上,top-1 token 在相邻两步之间"改主意"了多少次。
变化次数越少,说明这条轨迹越稳、越可靠。Table 1 给的数据很有说服力——错误样本的 token change count 大约是正确样本的两倍:
| 模型 | 任务 | 正确样本 𝒞 | 错误样本 𝒞 |
|---|---|---|---|
| LLaDA | MMLU | 1.81 | 4.27 |
| LLaDA | GSM8K | 32.29 | 51.48 |
| Dream | MMLU | 2.32 | 6.19 |
| Dream | GSM8K | 40.88 | 58.07 |
光有"识别可靠轨迹"还不够。作者还问了第二个问题:走偏的模型,能被救回来吗? 他们做了个注入实验——把一个模型走到一半的(正确的)部分轨迹,喂给另一个本来要答错的模型,让它从这个中间态接着解码。
| 任务 | 模型 | 注入 33% 后纠正率 | 注入 50% 后纠正率 |
|---|---|---|---|
| MMLU | LLaDA | 56.43 | 65.22 |
| MMLU | Dream | 68.84 | 76.57 |
| GSM8K | LLaDA | 74.66 | 72.60 |
| GSM8K | Dream | 78.63 | 80.92 |
注意第一列——哪怕只给三分之一的正确轨迹,就有过半的错误样本被纠正了。这个数字其实挺关键的,它说明 MDLM 的错误很多时候不是"知识缺失",而是"走错了路",给个正确的方向引子就能拐回来。这两个观察直接撑起了 TIE 的设计。
🏗️ TIE 的方法:解码、评估、接力,循环往复
理解了上面两个观察,TIE 的设计就顺理成章了。它是一个无需额外训练的框架,给定 M 个 MDLM,跑一个三步循环,直到生成结束。

图2:TIE 概览。每个 MDLM 先从当前状态独立生成一段部分解码轨迹;TIE 用答案位置上的置信度打分评估这些轨迹,把最可靠的那条中继给所有模型,再从这个更可靠的中间态继续解码。图中 (2-A) 的答案位置原本是被 mask 的,为了可视化才显示了它们的 top-1 token。
拆开看这三步:
第一步——轨迹生成(Trajectory Generation)。每个模型从自己当前的状态出发,独立解码 n 步。这个 n 叫 ensemble interval(集成间隔),是个关键超参。有个细节值得注意:解码时强制让所有推理位置(reasoning tokens)先解开,答案位置(answer tokens)最后才解。这样在评估阶段,答案位置还都是 mask 状态,正好可以观察模型对答案的"信心动态"。
第二步——轨迹评估(Trajectory Assessment)。这是 TIE 的大脑。作者试了四种打分指标,全都只在被 mask 的答案位置上算:token change count(取负,越稳越高分)、top-1 概率、负熵、概率边际(top-1 与 top-2 概率之差)。
但这里有个坑:不同模型的置信度校准不一样,A 模型天生就比 B 模型更"自信",直接比 logit 不公平。作者用了两种策略来应对:
- 历史型打分(针对 token change count):累计统计这段时间内答案位置 top-1 token 的变化次数。由于不同模型、不同步骤的答案位置数量 \(|\mathcal{A}_m^{(t)}|\) 不同,必须做归一化,否则答案 token 多的模型会因为基数大而虚高变化次数:
- 跨模型打分(针对三个 logit 型指标):把每条候选轨迹 \(\mathcal{T}_m^{(n)}\) 前向喂给所有 M 个模型,用跨模型的平均分作为最终置信度:
这个设计我觉得是点睛之笔。它选出的是"在所有模型眼里都靠谱"的轨迹,而不是"只有它自己亲妈觉得好"的轨迹。避免了某个过度自信的模型把整个集成带沟里。
第三步——轨迹中继(Trajectory Relay)。选出得分最高的那个模型 \(m^* = \arg\max_m \text{Score}(\mathcal{T}_m^{(n)})\),把它的轨迹复制给所有模型,替换掉大家当前的解码状态:\(\mathcal{T}_m^{(n)} \leftarrow \mathcal{T}_{m^*}^{(n)}\)。中继之后,所有模型从这个统一的、更可靠的中间态出发,各自再独立解码 n 步,分数清零,循环重开。
就这样生成、评估、接力转圈,直到某个模型先解码完。最后从 M 个候选答案里,挑那个在整个过程中答案动态最稳(归一化 token change count 最低)的作为最终输出,平局就比 top-1 概率。
整个流程读下来,我最喜欢它"接力"这个隐喻——不是让模型们投票表决,也不是简单挑一个最强的从头跑到尾,而是像接力赛一样,谁这一棒状态好就谁先跑,下一棒可能换人。这跟传统集成的思路完全不同。
🧪 实验:八个基准全面超越单模型
作者用了四个 MDLM 来组队:LLaDA-1.5、Dream-7B-Instruct、DreamCoder-7B-Instruct、DiffuCoder-7B-Instruct。覆盖四类任务八个基准:通用推理(MMLU、ARC-Challenge、WinoGrande)、数学(GSM8K、MATH500)、编程(HumanEval、MBPP)、规划(Countdown)。
实现上用半自回归生成,block size 16,greedy decoding,集成间隔默认 16 步。硬件挺接地气——每个模型一张 RTX 3090,bfloat16。这里有个值得强调的工程点:集成期间所有模型并行生成,整体延迟跟单模型相当。这意味着 TIE 没有把推理时间成倍放大,实用性大大加分。
由于现有集成方法和 MDLM 不兼容,作者主要跟单模型比。Table 3 是 LLaDA + Dream 的主结果:
| 方法 | MMLU | MMLU*高分子集 | ARC-C | WinoGrande | GSM8K | MATH500 | HumanEval | MBPP | Countdown |
|---|---|---|---|---|---|---|---|---|---|
| LLaDA | 61.23 | 71.45 | 85.15 | 71.59 | 78.77 | 37.4 | 45.73 | 53.16 | 13.4 |
| Dream | 67.46 | 77.37 | 86.69 | 72.22 | 78.39 | 48.0 | 61.59 | 63.23 | 16.4 |
| Post-gen 集成 | 67.26 | 77.92 | 88.57 | 73.72 | 80.29 | 43.0 | 55.49 | 62.53 | 19.2 |
| TIE(token change count) | 67.55 | 78.12 | 89.16 | 72.85 | 83.47 | 48.6 | 54.27 | 64.17 | 18.8 |
| TIE(top-1 概率) | 67.25 | 77.69 | 88.82 | 73.95 | 82.71 | 47.0 | 57.32 | 62.06 | 18.8 |
| TIE(熵) | 67.53 | 78.12 | 88.57 | 71.90 | 83.62 | 45.2 | 57.93 | 62.76 | 19.4 |
| TIE(概率边际) | 67.34 | 77.61 | 88.74 | 73.88 | 82.56 | 48.4 | 57.32 | 62.06 | 18.6 |
注意里面那个 Post-gen 集成——它其实就是 TIE 的一个特例:集成间隔等于整个生成长度,也就是说每个模型从头到尾各跑各的,最后才比一次。它能代表"生成后集成"这一类方法。TIE 在 GSM8K 上比它高了 3 个多点(80.29 到 83.47),这个差距恰恰证明了"生成过程中接力"比"生成完再挑"更有效。
token change count 这个最朴素的指标反而最稳健,八个基准里有四个拿到最佳。这点挺反直觉的——我本来以为算 entropy、probability margin 这种连续信号会更准,结果一个数"改了几次主意"的离散计数赢了。可能正是因为它直接捕捉了"犹豫"这个最本质的不可靠信号。
编程任务上 DreamCoder + DiffuCoder 的组合(Table 4)也有小幅提升,MBPP 从 75.88 涨到 76.58。
三个值得细品的发现
发现一,没有模型从头领跑到尾。 这是我觉得整篇论文最有意思的地方。Table 5 统计了"模型切换率"——相邻两次接力中,得分最高的模型发生变化的比例:
| 打分方法 | MMLU | ARC-C | WinoGrande | GSM8K | MATH500 | HumanEval | MBPP | Countdown |
|---|---|---|---|---|---|---|---|---|
| token change count | 12.28 | 10.55 | 12.59 | 23.74 | 27.80 | 27.36 | 21.60 | 32.04 |
| top-1 概率 | 34.25 | 30.31 | 40.99 | 44.80 | 47.32 | 28.29 | 22.83 | 44.43 |
越是难的任务(数学、规划),切换率越高,最高到 47%。这说明在复杂推理里,不同模型在不同解码阶段轮流贡献长板,没有谁能独占主导。这也从根上解释了为什么"过程中接力"会赢——因为最优的引领者本来就一直在变。

图3(a):MMLU 上集成领跑模型变化的可视化,纵轴是最高分模型发生切换的解码步骤比例。

图3(b):GSM8K 上的同类可视化。可以看到领跑模型在解码早期切换得更频繁——这正是早期路线未定、各模型互相纠偏最活跃的阶段。
发现二,组队的两个模型势均力敌且都强时,TIE 效果最好。 当一个模型明显拖后腿时,集成反而帮倒忙。比如 HumanEval 上 LLaDA 和 Dream 差了 15 个点以上,TIE 就追不上 Dream 单干。反过来在 MMLU*(高分子集)上两个模型都强,增益就比完整 MMLU 大。这其实是集成方法的通病,作者没回避,挺诚实。
发现三,错的能被救回来。 Table 11 和 Table 12 给了两个定性例子。比如一道珠宝 vs 电子产品利润题,正确答案 125:LLaDA 答 71(算成了两者未来值之差),Dream 答 96(只算了电子产品利润),而 TIE 把两条轨迹接力融合后答出了正确的 125。两个都错的模型,合起来反而对了——这才是集成真正的魅力。
📊 消融实验:每个设计都站得住脚
作者的消融做得相当扎实,几个关键设计都验证了。
集成间隔 n(Table 6):试了 8、16、32 步。间隔太小,部分轨迹信息不够,评估不可靠;间隔太大,接力频率降低,知识融合受限。16 步综合最优,GSM8K 在 16 步时拿到 83.47。
| 集成间隔 | MMLU* | ARC-C | GSM8K | MATH500 |
|---|---|---|---|---|
| 8 | 78.21 | 89.33 | 82.34 | 46.0 |
| 16 | 78.17 | 89.51 | 83.47 | 48.6 |
| 32 | 78.12 | 89.16 | 82.49 | 46.0 |
归一化的作用(Table 8):去掉对答案位置数量的归一化,GSM8K 从 83.47 掉到 82.64。归一化确实在补偿不同模型答案位置数量差异这件事上起了作用。
跨模型打分的作用(Table 9):只用源模型自己打分的话,MATH500 从 47.0 掉到 42.4,差了快 5 个点。这验证了"在所有模型眼里都靠谱"比"只有自己觉得好"要可靠得多。
与推理加速策略兼容(Table 7):TIE 跟 threshold 解码(τ=0.9,一次解开所有超过阈值的 token)和 top-k 解码(每步解开最自信的 k 个)都能叠加,依然有效。这对实际部署很重要——你不用在"加速"和"集成"之间二选一。
最终答案选择策略(Table 10):对比了三种挑最终答案的方式——最低 token change count、直接选最强的单模型、选被接力次数最多的模型。三种都不差。在模型能力差距大的领域,直接选最强单模型反而更好;势均力敌时,最低 TCC 更优。
💡 我的判断:洞察比方法更值钱
读完这篇论文,我的整体感受是——它的方法不算特别复杂,但背后的观察特别扎实。
先说亮点。TIE 真正解决了一个被忽视的真问题:MDLM 的集成。自回归模型的集成方案没法直接搬过来,这是硬约束,不是作者硬造出来的伪命题。而它给出的解法——追踪答案位置的置信度动态、用 token change count 这种朴素指标识别可靠轨迹、周期性接力——逻辑链条非常清晰,每一步都有前面的观察实验撑着。尤其是"领跑模型一直在换"这个发现,我觉得它的价值超过了方法本身:它告诉我们,模型的能力不是一个标量,而是在生成的不同阶段分布不均的,这对未来怎么组合模型有更普遍的启发。
无需训练、并行生成不增加延迟、跟加速策略兼容——这几个工程属性也让它有真正落地的可能,不是那种"实验室刷榜专用"的方法。
但也有得泼点冷水的地方。
第一,增益的天花板取决于模型间的能力匹配。作者自己也承认,一旦组队的模型实力悬殊,集成就帮倒忙。这意味着 TIE 不是万能药,你得先有两个势均力敌且各有所长的强模型,它才能发挥。而现实中能凑出这种组合的场景有多少,要打个问号。
第二,涨点幅度其实比较温和。除了 GSM8K 那 3 个多点比较亮眼,多数基准的提升都在 1-2 个点甚至更小,部分任务(比如 HumanEval)还退步了。考虑到要同时跑多个模型(哪怕并行,显存和算力是实打实翻倍的),这个性价比见仁见智。
第三,token change count 为什么比连续的置信度信号更好用,论文给了实验结果但没给特别深入的理论解释。我个人猜测是离散的"改主意"信号对噪声更鲁棒,但这块作者讲得不够透。
总的来说,如果你正在做扩散语言模型,手上又有多个互补的 MDLM 想榨干它们的联合能力,TIE 这套思路绝对值得一试,实现也不复杂。如果你只是想了解"扩散模型集成该怎么做",光是 Figure 1 那个"稳定轨迹更可靠"的观察和"领跑模型动态切换"的发现,就够你琢磨一阵子了。
这是一篇观察驱动的好论文——不华丽,但扎实。
觉得有启发的话,欢迎点赞、在看、转发。跟进最新 AI 前沿,关注我