Diffusion Language Models Know the Answer Before Decoding

该论文提出了一种名为 Prophet 的免训练快速解码范式,通过利用扩散语言模型在解码中途即可收敛至正确答案的特性,动态决定提前终止采样,从而在保持生成质量的同时显著加速推理过程。

Pengxiang Li, Yefan Zhou, Dilxat Muhtar, Lu Yin, Shilin Yan, Li Shen, Soroush Vosoughi, Shiwei Liu

发布于 2026-04-10
📖 1 分钟阅读☕ 轻松阅读

Each language version is independently generated for its own context, not a direct translation.

这篇论文介绍了一种名为 Prophet(先知) 的新方法,旨在让一种叫做“扩散语言模型”(Diffusion Language Models, DLMs)的 AI 写得更快、更聪明。

为了让你轻松理解,我们可以把 AI 写文章的过程想象成**“在迷雾中拼图”**。

1. 背景:AI 是怎么写东西的?

传统的 AI(像现在的聊天机器人)是**“一个字一个字地写”**(自回归)。这就像你在迷雾中走路,每走一步都要确认脚下的路,虽然稳,但很慢。

扩散语言模型(DLMs) 则是**“先画个大概,再慢慢擦除迷雾”**。

  • 比喻:想象你有一张被涂满墨水的纸(全是乱码)。AI 的任务是像用橡皮擦一样,一步步把墨水擦掉,露出下面的文字。
  • 问题:虽然这种方法可以“并行”处理(一次性擦掉很多块),但为了擦得干净,它通常需要反复擦很多次(比如 100 次)。这就导致它虽然能同时动,但总耗时比传统 AI 还要长。

2. 核心发现:AI 其实早就知道答案了!

论文作者做了一个有趣的实验,他们观察 AI 在“擦除迷雾”的过程中,什么时候才真正确定了答案。

  • 惊人的发现:在大多数情况下,AI 在只擦了一半(甚至更少)的时候,心里其实已经知道正确答案是什么了!
  • 比喻:就像你在解一道数学题。当你写到一半时,虽然草稿纸上还有很多乱涂乱画的步骤没理顺,但你心里已经算出“答案是 540"了。剩下的步骤,其实只是在把过程写得漂亮一点,或者把那些乱涂的线擦得更干净而已。
  • 数据:在数学题(GSM8K)和常识问答(MMLU)上,高达 97% 到 99% 的题目,AI 在只走了一半路程时,答案就已经稳定且正确了。

3. 解决方案:Prophet(先知)

既然 AI 早就知道答案了,为什么还要让它把剩下的步骤走完呢?这就太浪费时间了!

于是,作者发明了 Prophet。它就像一个**“聪明的监工”**,站在旁边盯着 AI 擦图的过程。

  • 它是怎么工作的?

    • 它不数步数,而是看**“信心”**。
    • 它会问 AI:“你确定这个答案是 540 吗?还是说你觉得可能是 541?”
    • 如果 AI 对“答案是 540"这件事非常有信心(比如它觉得是 540 的概率是 99%,是 541 的概率只有 1%),Prophet 就会大喊一声:“停!别擦了,直接交卷!”
    • 这就叫**“早期提交解码”(Early Commit Decoding)**。
  • 比喻

    • 以前的做法:不管心里多确定,都要把 100 步走完,哪怕最后 30 步只是在把“答案”这两个字描得更黑一点。
    • Prophet 的做法:走到第 50 步,发现答案已经稳如泰山,直接说:“够了,剩下的 50 步不用走了,直接输出结果!”

4. 效果如何?

  • 速度快了:Prophet 让 AI 的生成步骤减少了 3.4 倍(比如原来要跑 100 步,现在跑 30 步就够了)。
  • 质量没降:虽然走得少了,但答案的准确率几乎没有损失,甚至在某些情况下(比如防止 AI 后来“想多了”把正确答案改错)反而更好。
  • 不用重新训练:这是一个“外挂”插件,不需要重新训练 AI 模型,直接加在现有的系统上就能用。

5. 总结

这篇论文告诉我们:扩散模型其实很“早熟”,它们往往在过程还没结束时就知道了结局。

Prophet 就是利用了这个特性,像一位经验丰富的老手,知道什么时候该“见好就收”,不再做无用功。这让未来的 AI 不仅能写得快,还能在推理、写代码和做计划等任务中,像闪电一样迅速给出准确答案。

一句话总结
以前 AI 写答案像“慢工出细活”,非要磨蹭到最后一秒;现在有了 Prophet,AI 只要心里有底,就立刻“交卷”,既省时间又不耽误质量。

在收件箱中获取类似论文

根据您的兴趣定制的每日或每周摘要。Gist或技术摘要,使用您的语言。

试用 Digest →