大模型说话不再是一个字一个字的吐了,而是一段一段的输出。
刚刚,微信联合清华发布 CALM(Continuous Autoregressive Language Models,连续自回归语言模型)将 token 变成了向量。
大语言模型说话的方式古老且低效:一个词一个词地往外蹦。
这正是当前所有大型模型的核心瓶颈。在生成文本时,本质上是在玩一个重复数万亿次的游戏——猜下一个词。
这个过程基于离散的 token,计算成本与文本长度成正比,使得生成长文或处理海量上下文变得极其昂贵和缓慢。
问题的根源在于信息密度。
现代模型的词汇表动辄几万到几十万,但每个 token 携带的信息量却少得可怜,通常只有 15 到 18 位。想让每个单元承载更多信息,比如一个短语,词汇表就需要指数级增长,这在计算上是天方夜谭。
这就陷入了一个怪圈:用算力惊人的超级模型,去执行一个信息吞吐量极低的基础任务。这就像用一台超级计算机,一个字母一个字母地打字。
CALM 打破了这个怪圈。它提出了一种颠覆性的范式转变:让语言模型不再预测离散的 token,而是预测连续的向量。
CALM 重新定义了语言模型的说话方式
CALM 的核心思想简洁而有力:将 K 个离散 token 的文本块,压缩成一个单一的、信息密集的连续向量。
这个过程由一个精心训练的自编码器完成。它像一个高效的翻译官,能将一段文本(比如 4 个 token)无损地翻译成一个高维向量,并且能以极高的保真度再从这个向量翻译回原文。
这一转变的意义是革命性的。
在离散世界里,提升信息密度难如登天。但在 CALM 的连续世界里,想让向量承载更多信息,只需要增加它的维度即可。
这种优雅的可扩展性,直接将模型自回归的步骤减少了 K 倍。
语言建模的任务被重新定义了:从预测下一个 token,变成了预测下一个向量。
这个转变也带来了全新的挑战。
当我们进入一个没有边界的连续向量空间,传统的 softmax 层就失效了。
模型无法再计算出一个覆盖所有可能结果的概率分布。没有了概率,我们依赖的训练方法(最大似然估计)和评估指标(困惑度 Perplexity)都成了摆设。
CALM 框架用一套完整且自洽的无似然(likelihood-free)方法,漂亮地解决了这些挑战。
制造一个既可靠又稳健的翻译器
CALM 框架的基石,是那个负责在 token 和向量之间来回转换的自编码器。
它的首要任务是保证翻译的准确性,即高保真重构。
CALM 的自编码器架构设计得非常轻量。编码器将 K 个 token 的嵌入向量,通过几层网络处理,最终压缩成一个 l 维的潜在向量 z。
解码器则执行相反的过程,将向量 z 还原成 K 个 token。通过标准的交叉熵损失进行训练,这个简单的架构就能实现惊人的效果:当 K=4 时,一个仅有 10 维的向量就能达到超过 99.9% 的 token 级重构准确率。
一个能完美重构的自编码器就够了吗?
远远不够。
实践发现,一个只为重构优化的自编码器,会学到一个极其脆弱的表示空间。它为了最高效地打包信息,会创造一个高度不规则、犬牙交错的潜在流形。
在这个空间里,对一个向量做一丁点微小的扰动——比如下游生成模型不可避免的预测误差——解码出来的结果就可能谬以千里,变成完全不相干的文本。
这就像一块用最精密工艺雕琢的水晶,完美无瑕,但也一触即碎。这样的表示空间,无法承载后续生成模型的学习。
因此,自编码器必须满足第二个,也是更关键的目标:它的向量表示必须是鲁棒的。
为了打造一个平滑且稳健的潜在空间,CALM 采用了三项关键技术。
首先是变分正则化。
它将确定性的自编码器(AE)升级为变分自编码器(VAE)。
编码器不再输出一个固定的向量 z,而是输出一个高斯分布的参数,然后从这个分布中采样得到 z。同时,引入一个 KL 散度损失,惩罚这个分布与标准正态分布的差异。
这个变分目标,像一个温和的约束,阻止编码器过分依赖向量中某些精确或极端的数值。它鼓励编码器学习一个更平滑、更连续的潜在流形,让相似的文本块在向量空间中也靠得更近,从而对微小的扰动更具韧性。
其次是防止后验崩溃。
训练 VAE 时常会遇到一个问题,就是模型会偷懒,让某些潜在维度完全放弃信息编码,直接躺平崩溃到先验分布上。这些纯噪声维度会严重干扰下游语言模型的学习。
为了解决这个问题,CALM 采用了 KL 裁剪策略。
它为每个维度的 KL 损失设置一个下限。任何维度想偷懒,都会被这个下限拽回来,强制它积极参与到重构任务中。这确保了每个维度都物尽其用,共同构建一个信息密集的表示。
最后是引入噪声以增强鲁棒性。
CALM 在自编码器训练阶段巧妙地使用了两种 Dropout。
一种是直接在潜在向量 z 上应用 Dropout,这迫使模型学习冗余的表示,即使部分信息丢失也能恢复,从而对生成模型的预测误差更有抵抗力。
另一种是在输入 token 上随机屏蔽一部分,这迫使自编码器利用上下文信息去推断被屏蔽的 token,让最终的向量不仅包含文本内容,还融入了语义上下文。
这套组合拳下来,CALM 锻造出了一个强大而鲁棒的自编码器。对于 K=4 的情况,使用一个 128 维的向量,即使在注入了标准差约为 0.3 的显著高斯噪声后,解码器依然能保持超过 99.9% 的 token 级准确率。
这个兼具高保真度和高鲁棒性的向量空间,为后续的连续自回归语言模型铺平了道路。
在没有标准答案的世界里学习和衡量
有了可靠的翻译器,语言建模的核心任务就变成了预测下一个向量。
一个 T 个 token 的序列,被转换成 L=T/K 个向量的序列。模型的自回归目标,就是基于前面的向量,预测序列中的下一个。
这个任务进入了无似然领域,带来了训练和评估两大难题。
对于训练,既然无法使用最大似然估计,CALM 从严格适当评分规则(strictly proper scoring rules)理论中找到了出路。
在众多评分规则中,CALM 选择了能量分数(Energy Score)。
能量分数完全不依赖概率密度,而是通过样本间的距离来衡量预测与观测的对齐程度。
它的定义包含两项:一项是模型生成的样本之间的距离,用于鼓励多样性,惩罚模型产生单一、崩溃的预测;另一项是模型样本与真实样本之间的距离,用于鼓励保真度,驱动模型的预测向真实情况靠拢。
这个能量分数可以通过蒙特卡洛方法进行无偏估计,形成一个可操作的能量损失函数。
CALM 的整体架构清晰而高效。
一个标准的 Transformer 骨干负责处理上下文信息。它的输入来自上一步生成的 K 个离散 token(通过一个轻量级压缩模块处理),而不是直接使用上一时刻的连续向量,因为实验发现模型从离散 token 中解包语义信息更容易。
Transformer 的输出隐藏状态,会指导一个轻量级的生成头。这个生成头以随机噪声为起点,通过一系列残差 MLP 块的处理,最终生成下一个连续向量。这个过程是单步的,效率极高,整个生成头的参数量仅占总模型的 10% 左右。
生成的新向量会立刻通过冻结的自编码器解码器,变回 K 个离散 token,用于下一轮的自回归输入。这个离散反馈循环构成了 CALM 的完整生成过程。
解决了训练问题,接下来是评估。没有了似然,困惑度(Perplexity),就需要一个全新的、模型无关的、无似然的评估指标。
CALM 提出了 BrierLM,一个基于经典 Brier 分数的语言建模新度量。Brier 分数也是一个严格适当的评分规则,广泛用于评估神经网络的校准度。
Brier 分数的巧妙之处在于,它不仅奖励预测的准确性(即你猜对的概率),还通过一个额外的项来惩罚预测的不确定性(即所有可能结果概率的平方和)。
这种结构使其能够奖励那些既准确又校准良好的预测,而不是那些盲目自信的模型。
Brier 分数还可以通过一种完全无似然的方式进行无偏估计,只需要从模型中抽取样本即可。例如,通过抽样来估计两个独立样本恰好相同的概率。
这个特性让 BrierLM 成为评估 CALM 这类隐式生成模型的完美工具。
为了验证 BrierLM 的可靠性,研究者在传统语言模型上同时考察了它与交叉熵损失的关系。
结果令人信服。如图所示,BrierLM 与交叉熵损失高度相关,皮尔逊相关系数高达 -0.966。
这种强烈的单调关系证明,BrierLM 是衡量语言建模能力的可靠指标,是困惑度的一个可信的无似然替代品。
BrierLM 的意义超越了 CALM 本身,它为所有隐式生成模型(如基于扩散的语言模型)提供了一个公平、直接且无偏的评估标准,解决了该领域长期以来的评估难题。
如何在不知道概率的情况下控制模型的音量
可控生成是现代 LLMs 的标配,而温度采样是最核心的控制旋钮。
它通过调整 logits 的分布来控制模型的创造性:低温使输出更保守、更贴近训练数据,高温则更多样、更具随机性。
传统的温度采样需要直接操作模型的概率分布,这在 CALM 的无似然框架下是行不通的。我们只有一个黑盒采样器,如何仅用它来实现温度控制?
CALM 开发了一套基于拒绝采样的精确算法,巧妙地解决了这个问题。
算法的灵感来源于一个简单的概率关系。
从模型中抽取 n 个样本,当且仅当这 n 个样本完全相同时,才接受它。否则,全部拒绝,重新开始。这个简单的过程,理论上可以精确地从温度为 1/n 的分布中采样。
这个思想可以被推广到任意 0 到 1 之间的温度 T。通过将指数 1/T 分解为整数部分和小数部分,设计一个两阶段的拒绝采样过程,可以从任意温度分布中精确采样。
这个精确算法虽然理论完美,但它的计算成本,即获得一个有效样本所需的平均采样次数,对温度 T 非常敏感。
在低温下(T 趋近于 0),整数部分 n 会变得非常大,连续抽取 n 个相同样本的概率微乎其微,导致绝大多数采样都被拒绝,效率极低。
为了解决这个实用性问题,CALM 提出了一种高效的批量近似算法。
其核心思想是,与其进行一次又一次高风险的单抽,不如一次性抽取一个大批量(比如 N 个样本),然后在这一大批样本中进行组合搜索。
这个批量近似算法是渐近无偏的。当批量大小 N 趋于无穷大时,其输出分布会收敛到真实的目标温度分布。在实践中,批量大小 N 成为了一个在效率和准确性之间权衡的杠杆。
这个算法同样不依赖于模型的内部结构,只要求一个黑盒采样接口。这使它成为所有离散空间隐式生成模型的通用可控解码工具。
CALM 代表了一种深刻的范式转变,它将语言建模从离散的、步履蹒跚的下一个 token 预测,带入了连续的、高效的下一个向量预测时代。
通过将 K 个 token 压缩成一个向量,它从根本上将计算步骤减少了 K 倍。
实验结果证实,CALM 极大地改善了性能与计算成本的权衡,可以用显著更低的算力,达到强大的离散基线模型的性能水平。
这些发现不仅仅是关于效率的提升,它还为语言模型的扩展开辟了一个全新的维度:语义带宽。
CALM 通过让模型在更高层次的语义单元上进行思考和生成,我们可以构建出远超当前范式限制的、更强大、更高效的语言模型。
参考资料:
https://arxiv.org/abs/2510.27688
https://github.com/shaochenze/calm
END




