这项由美国伊利诺伊大学厄巴纳-香槟分校(UIUC)研究团队完成的工作,以预印本形式发布于2026年4月,论文编号为arXiv:2604.11748,感兴趣的读者可通过该编号在arXiv平台上查阅完整论文。
在人工智能生成文字这件事上,过去几年最热门的路线是"扩散模型"——这个名字听起来像是物理实验室里的概念,但它其实是一种非常优雅的生成思路:先把内容"模糊化"成一团噪音,然后再一步步把噪音"雕刻"成清晰的文字或图片。这套方法在图片生成领域已经大放异彩,Stable Diffusion、DALL-E等产品正是基于此。然而,当研究者试图把同样的逻辑搬到文字生成上时,却遭遇了一道令人头疼的墙。
文字和图片有一个根本性的区别。图片中的每个像素可以是任意连续的颜色值,而文字中的每个词(或者说"词元")只能是词汇表里那几万个单词中的一个——要么是"苹果",要么是"橙子",绝对不存在介于两者之间的状态。这种离散性,让"连续流动"的扩散思路在文字上碰壁了。
于是,研究者们分成了两个阵营。一个阵营选择直接在"离散空间"里做扩散,把文字的跳变规律直接建模,这一派被称为"离散扩散",代表性模型有MDLM、SEDD等;另一个阵营坚持在连续空间操作,试图把文字先映射到一个连续的数值空间(叫做"嵌入空间"),再在那里做扩散,这一派被称为"连续扩散"或"嵌入空间扩散"。长久以来,离散扩散一直领先,而连续扩散虽然理论上更灵活,却在实际效果上远远落后。
这项来自伊利诺伊大学的研究,提出了一个名为LangFlow的框架,首次让连续扩散真正追上甚至在某些任务上超越了离散扩散的水平。研究团队把问题掰开揉碎,找到了三个关键的设计失误,并逐一修正,最终让这只"跛脚的鸭子"重新健步如飞。
一、嵌入空间扩散:一个被低估的赛道
要理解这项研究,需要先搞清楚"嵌入空间"是什么。
每个单词在模型内部都被表示为一串数字,比如"猫"可能对应着一个768维的向量(可以理解成768个坐标轴上各有一个数值)。这串数字捕捉了这个词的语义:意思相近的词,它们的向量在空间中也彼此靠近。这套数字化的表示体系,就是"嵌入空间"。
嵌入空间扩散的思路是:把一段文字的每个词都转成对应的数字向量,然后在这个数字的世界里做扩散——往里加噪音,再慢慢去噪,最后把恢复出来的向量再转回文字。这个路线有几个天然的优势:空间是连续的,不像离散的词元那样跳跃;可以借用图像生成领域积累的大量技巧;也更容易在生成过程中进行干预和编辑。
然而,前人在这条路上走得磕磕绊绊。一方面,训练目标设计得不够严谨,要么是拍脑袋想出来的启发式规则,要么设计得极其复杂——比如有一个名叫Plaid的模型,需要把每个训练批次动态切片,对不同部分优化不同的损失函数,工程师做到绝望。另一方面,更大的麻烦在于没有一个可靠的"体检指标":语言模型最常用的评估指标叫做"困惑度"(Perplexity,PPL),数值越低说明模型对语言的理解越好,但之前的连续扩散模型只能用一种叫做SDE(随机微分方程)的随机方法来估算困惑度,这种估算既不精确,也难以和离散扩散模型做横向比较。没有好用的体检仪器,就很难知道哪里出了问题,改进就无从下手。
正是在这个背景下,伊利诺伊大学的团队重新审视了嵌入空间扩散这条路,试图从根子上解决这些问题。
二、用"流匹配"和"布雷格曼散度"重建理论地基
研究团队做的第一件事,是给嵌入空间扩散建立一套更扎实的数学基础,而关键的突破口来自把它和"流匹配"(Flow Matching)联系起来。
流匹配是一种相对较新的生成建模思路,核心想法是学习一个"速度场"——就像在地图上标注每个位置的风向和风速,让粒子从随机噪音出发,顺着这个风场流动,最终抵达真实数据的分布。这个过程完全是确定性的,像一条笔直的管道而不是随机游走的醉汉。
研究团队发现,嵌入空间扩散在数学上天然地和流匹配是同一回事——只是之前没人明确指出这一点。更进一步,他们把模型的训练目标(即"交叉熵损失",通俗地说就是"预测正确词的对数概率")和一个叫做"布雷格曼散度"的数学概念联系了起来。
布雷格曼散度是一种衡量两个概率分布之间差异的工具,交叉熵损失恰好是它的一个特例——选择一个特定的凸函数(即负熵函数),布雷格曼散度就自然地退化为交叉熵。这个联系意味着什么?意味着用交叉熵来训练嵌入空间扩散模型,并不是一个随便拍脑袋的选择,而是有严格数学保证的最优选择:在给定噪音状态的条件下,模型的预测会收敛到对真实词分布的最佳后验估计。
换句话说,之前研究者们或多或少凭直觉用的训练方法,这次被证明是理论上最正确的那一条路。这就好比一个厨师多年来凭经验调味,结果一位营养学家告诉他:你的调味比例恰好符合最优健康配方的数学最优解。
有了这个理论基础,研究团队还顺水推舟地推导出了一个重要的新工具:基于ODE(常微分方程)的负对数似然上界。这个工具专门用来估算连续扩散模型的困惑度,而且用的是确定性的ODE路径而非随机的SDE路径。这意味着:每次用同样的模型和同样的测试数据,得到的困惑度估计都是一样的、可复现的,而不像之前的SDE方法那样每次算出来都略有不同。有了这把精准的测量尺,研究者终于能清晰地看到模型训练到底好不好,也能和离散扩散模型公平地比较了。
三、噪音安排的学问:为什么语言不能套用图片的方案
理论地基打好了,研究团队开始审视第一个关键的工程设计:噪音调度(noise schedule)。
扩散模型的工作方式是把数据从"干净"逐渐变成"嘈杂",再在生成时反过来从噪音慢慢恢复干净。这个过程中,一个重要的问题是:噪音是如何一步步被加进去的?加得快还是慢?在哪个阶段加得多、哪个阶段加得少?这套安排就叫"噪音调度"。
在图像生成领域,最流行的噪音调度方案(比如Stable Diffusion 3采用的)是均匀地在时间步上分配噪音。研究团队一开始也照搬了这个做法,但他们画出了一张图,揭示了一个令人震惊的现象。
他们把模型在不同噪音水平下预测文字的损失值画成曲线。结果发现,当时间步t处于0.2到1.0这个区间时——也就是噪音相对较小的那大半段时间——模型的损失几乎是零。这意味着什么?意味着在这段时间里,模型已经能轻而易举地猜出正确的词,完全不需要花力气学习。然而,均匀的时间分配却把超过一半的训练时间浪费在了这个"没有挑战"的区域。
这就像一个音乐学生练钢琴,老师设计了一个训练计划,让他花60%的时间练那些已经烂熟于心的简单音阶,只有不到20%的时间练真正困难的高难度片段。这个计划显然非常低效。
问题的根源在于,文字数据的性质和图片根本不同。图片中的像素可以取连续的值,即使加了不少噪音,还是很难猜到原始颜色。但文字的目的地是离散的词元——词汇表中的那几万个词是有限的"孤岛",即使在相当嘈杂的状态下,模型也常常能根据语义线索猜出正确答案。
为了解决这个问题,研究团队引入了两个改进。
第一个改进是更换时间编码方式,从普通的时间步t切换到"对数噪信比"γ(gamma)。γ定义为噪音方差与信号方差之比取对数,它的巧妙之处在于:当噪信比在高噪音端呈指数级变化时,γ只是线性地移动,相当于把原本压缩在一起的"困难区域"展开拉长,让模型和训练计划都能更精细地关注那些真正有挑战的噪音水平。
第二个改进更有趣,研究团队提出了"信息均匀原则"。他们的出发点是这样的:扩散过程本质上是一个逐渐"消除不确定性"的过程——从完全随机的噪音(什么词都不知道)到完全确定的词序列,每一步都在获取信息。如果把每个噪音水平下模型的"不确定程度"(用信息熵来度量)画出来,就会得到一条随噪音减少而下降的曲线。这条曲线的斜率,就代表了"在这个噪音水平上,每改变一点噪音,能获得多少新信息"。
信息均匀原则的意思是:让每一步采样(无论是训练还是生成)获得的信息量尽可能相等。直觉上,这就像爬山时应该把步子迈在最陡的地方——在信息增益最集中的区域多花力气,在平坦区域快速通过。
那么,语言数据的信息增益集中在哪里呢?研究团队通过大量实验,发现γ值的信息导数呈现出一个正偏态的分布,而且形状与统计学中的"冈贝尔分布"(Gumbel distribution)高度吻合。冈贝尔分布是一种用于描述极值事件的概率分布,在这里它意外地成为了语言数据信息结构的最佳描述。
更聪明的是,研究团队没有把这个分布的参数固定下来,而是让模型在训练过程中自己学习这些参数。因为随着训练的进行,模型本身也在进步,它在不同噪音水平下的困难程度会随之改变,噪音调度也应该跟着调整。这套自适应的冈贝尔噪音调度器,把LangFlow的生成困惑度从约1000的灾难级别直接降到了154.2,效果可谓立竿见影。
四、自我条件化:一个被误解的技巧
第二个关键设计问题是"自我条件化"(self-conditioning)。
自我条件化是扩散模型中一个流行的小技巧,原理很简单:在每一步去噪时,模型不仅看当前的噪音状态,还把上一步自己的预测结果也喂给自己作为参考。这就像一个侦探不仅看当前的案发现场,还把自己之前整理的案情笔记放在旁边对照参考,帮助做出更准确的判断。
在离散扩散模型(比如MDLM)的研究中,自我条件化是个有些奇怪的存在:它确实能提升生成质量(即生成困惑度 Gen.PPL 有所改善),但同时会让模型对测试数据的拟合能力略有下降(即PPL略有升高)。正因为这个两面性,离散扩散的研究者们评估PPL时通常会关掉自我条件化,以免影响公平性。
然而,研究团队发现,这个惯例被不加思索地沿用到了连续扩散模型的评估中,而这是一个严重的错误。
他们做了一组对比实验,结果非常能说明问题。在没有自我条件化的情况下,LangFlow的PPL是49.0,Gen.PPL是154.2。开启自我条件化后,PPL直接降到30.0,Gen.PPL降到81.5。换句话说,自我条件化对连续扩散的PPL改善幅度高达19个点,而对离散扩散MDLM,PPL反而微微上升了1.7。
这个不对称性揭示了一个深刻的差异:在离散扩散中,自我条件化给模型提供了过多的"捷径",让它过于依赖之前的预测,导致对测试数据的真实概率估计变差;而在连续扩散中,自我条件化帮助模型在连续的嵌入空间中更好地校准方向,既提升了生成质量,也提升了概率估计的准确性。
研究者用一个有趣的实验进一步揭示了这个现象的机理。他们跟踪了模型在不同噪音水平下对某个目标词("run")的预测概率变化。在没有自我条件化的情况下,随着噪音增大,模型的预测会逐渐从正确的"run"漂移到语义相关的"go",再到高频的功能词"is"、"and"、"the"——也就是说,模型在高噪音下会被高频词"磁场"所吸引,忘记了语义上的正确答案。自我条件化的介入,帮助模型在这个漂移过程中保持了更多的语义记忆,避免了这种"语义遗忘"现象。
这个发现的实践意义是:如果你要公平地评估连续扩散语言模型,必须在自我条件化开启的状态下进行,否则你看到的只是一个被人为削弱了的版本。
五、最终成绩单:连续扩散第一次真正进入竞争
把所有这些改进整合在一起,LangFlow在标准语言模型基准测试上交出了一份让人眼前一亮的成绩单。
在LM1B数据集(一个包含十亿词的英文新闻语料库)上,LangFlow的PPL达到30.0,跻身离散扩散模型中最好的水平(MDLM为31.0),同时Gen.PPL为92.2,在同类连续扩散方法中排名第二。在OpenWebText(一个大规模网络文本数据集,文本多样性更高)上,LangFlow的PPL达到24.6,Gen.PPL仅为36.5,这个Gen.PPL成绩在所有扩散模型中排名第一,甚至比之前最好的连续扩散方法Duo低了整整41个点。
更有说服力的是零样本迁移测试。所谓零样本迁移,就是把在OpenWebText上训练好的模型,直接搬到完全没见过的七个不同类型的测试数据集上评估(包括新闻、学术论文、百科全书、对话等)。LangFlow在这七个基准中的四个上超越了经典的自回归Transformer(即逐词生成的传统语言模型),同时在三个基准上超越了离散扩散领域的顶尖模型MDLM。自回归Transformer向来是语言模型领域的"默认优胜者",连续扩散能在多个任务上打赢它,这在历史上是第一次。
研究团队还专门对比了另一个连续扩散基线模型Plaid,并发现了一个重要的技术警示。Plaid使用均方误差(MSE,即直接最小化预测嵌入向量和真实嵌入向量的距离)作为主要训练目标,而非交叉熵。研究团队通过可视化词嵌入的"最近邻距离"发现,Plaid的词嵌入发生了严重的"坍缩"现象——不同词的向量在空间中挤在一起,彼此几乎无法区分,Plaid的平均最近邻距离仅为0.058,而AR模型是1.211,MDLM是1.124,LangFlow是0.877。这种坍缩现象会严重限制模型的表达能力,解释了为什么Plaid在LM1B上表现尚可,但在更大规模的零样本迁移任务上远远落后。
在采样效率方面,研究团队也做了不同步骤数下的测试。LangFlow在128步时Gen.PPL为92.24,在64步时上升到104.83,32步时127.32,16步时179.60。随着步骤减少,性能确实有所下降,但这是在没有任何专门的少步训练优化(即"蒸馏")的情况下直接减步的结果,说明LangFlow本身已经具备了较好的采样鲁棒性,未来通过专门的少步加速训练有望进一步改善。
说到底,LangFlow这项工作的意义不只是刷新了一个数字。它做了一件更根本的事:给嵌入空间连续扩散语言模型重新建立了一套清晰的理论框架和工程规范。过去,连续扩散语言模型的研究者们各自为战,用着不同的训练目标、不同的评估方式、不同的噪音调度,结果难以比较,进展也难以积累。LangFlow相当于为这个领域立了一套统一的"行业标准":用基于布雷格曼散度的交叉熵训练、用ODE路径估算PPL、用冈贝尔分布做噪音调度、开启自我条件化做评估。
有了这套标准,后来的研究者可以站在更高的起点上继续探索。连续扩散语言模型还有很多可以挖掘的空间——比如它天然支持的"轨迹编辑"(在生成过程中修改中间状态,实现可控生成)、与流匹配蒸馏技术结合后可能实现的极速生成,以及嵌入空间本身带来的更丰富的语义干预能力。这些方向,离散扩散由于其离散性质,天然地很难实现;而连续扩散,在LangFlow打好地基之后,终于可以认真地去探索这些独有的优势了。
研究团队也坦诚地指出了目前的局限:LangFlow生成文本的多样性(用信息熵衡量)略低于一些离散扩散基线,说明模型在生成时有一定程度的频率偏向,倾向于重复使用某些内容词。有趣的是,这种重复不是那种让人读起来很别扭的局部重复(同一句话里连续出现),而是一个词在整段文本中出现了十来次但分散在各处——从阅读体验来看,并没有明显的质量下降。不过,这种频率偏向在更大规模的实验中可能会产生更明显的影响,这是留给未来研究的一个开放问题。
归根结底,这项研究想证明的,是连续扩散和离散扩散并不是非此即彼的对手关系,而是可以并肩作战的两种工具。离散扩散有其简洁和精准,连续扩散有其灵活和可塑。LangFlow首次让连续扩散站在了同一条起跑线上,接下来这场竞赛,才真正开始。
Q&A
Q1:LangFlow和现在常见的ChatGPT这类语言模型有什么区别?
A:ChatGPT属于自回归语言模型,生成文字时是逐词从左到右顺序生成的,就像一笔一划写字。LangFlow属于扩散模型,是从一团噪音出发,同时对整段文字反复"雕刻"直到得到清晰结果,生成过程是并行的、可双向修改的。自回归模型目前在效果上仍有优势,但扩散模型在可控性和编辑灵活性上有独特潜力。
Q2:LangFlow中提到的困惑度(PPL)到底是什么,数值越低越好吗?
A:困惑度是衡量语言模型"有多懂语言"的一个指标,直觉上可以理解为:如果让模型猜一句话里下一个词是什么,它平均要从多少个候选词里才能猜对——这个数越小,说明模型越确定、越准确。所以困惑度数值越低越好。LangFlow在LM1B数据集上达到了30.0,和最好的离散扩散模型持平。
Q3:LangFlow中的冈贝尔分布噪音调度是什么意思,为什么选它?
A:冈贝尔分布是一种统计学上常用于描述极端值分布的概率分布,形状是正偏态的(即右边有长尾)。研究团队发现,语言数据在不同噪音水平下"信息增益"的分布曲线恰好和冈贝尔分布吻合——大部分有价值的信息集中在一个特定的噪音区间,这个区间左边平坦、右边迅速衰减。用冈贝尔分布来安排训练时的噪音采样,就能让模型把更多注意力放在真正"困难且有价值"的噪音水平上,避免浪费训练资源。