当前位置: 首页 » 资讯 » 科技头条 » 正文

训练大模型太烧钱?Nous Research找到让AI"一目十行"的学习秘诀

IP属地 中国·北京 科技行者 时间:2026-05-19 22:19:28


这项由Nous Research团队发布的研究成果以预印本形式发表于2026年5月7日,论文编号为arXiv:2605.06546,有兴趣深入了解的读者可以通过该编号查询完整论文。

训练一个大型语言模型,就像培养一个需要读遍图书馆所有书籍的学生。问题不在于书不够多,而在于读书的速度太慢——每次只能读一个字,一字一字地啃完整本书,才能真正理解它的内容。当全球的AI实验室都在为高昂的算力账单发愁时,Nous Research的研究团队提出了一个听起来有点"投机取巧"但效果惊人的方案:先让这个学生以"扫读"模式快速浏览大量内容,建立起对知识的整体感知,再切换回逐字精读模式,将之前的粗略印象打磨成扎实的理解。

这个想法背后的方法被他们命名为"词元叠加训练"(Token Superposition Training,简称TST)。所谓词元,可以理解为语言模型处理文字时的最小单位,大致相当于一个字或一个词的片段。传统的语言模型训练像是让学生逐字朗读课文,读一个字,预测下一个字,一步一步向前。而TST的做法,是把相邻的几个字"叠加"在一起,压缩成一个单位来处理,让模型用同样的计算量读到更多的内容。最终实验证明,在训练一个100亿参数、10亿活跃参数的大型模型时,TST相比传统方法实现了高达2.5倍的训练速度提升。

一、为什么给AI"加速"这件事如此困难

要理解TST为何重要,得先明白大模型训练面临的核心困境。当前AI领域有一个普遍共识:模型越大越聪明,数据越多越厉害。于是各大实验室拼命往模型里塞更多参数,往训练过程里喂更多数据。但这两件事都需要消耗大量的计算资源,也就是人们常说的"算力",其背后是数以万计的高端GPU日夜不停地运转,对应的是天文数字般的电费和硬件成本。

提升训练效率的方法,研究界已经探索了很多路径。大致可以归为三类。第一类是改善"原材料"的质量,比如开发更聪明的分词方式,让每个词元包含更多信息,或者设计更丰富的训练目标,让模型每次学习时获得更多启发。第二类是在"加工流程"上做减法,比如稀疏混合专家模型(MoE)——不是每次处理数据都调动所有参数,而是根据任务特点只激活一部分,节省不必要的计算。第三类是在模型内部"压缩表示",让更少的中间状态承载更多信息,减少昂贵计算层需要处理的数量。

但这三类方法都有一个共同的麻烦:它们要么改变了模型的架构,要么引入了额外的参数和损失函数,要么需要对数据或分词器动手术。这些修改往往牵一发而动全身,不仅实现复杂,还可能影响模型最终的推理能力——毕竟训练时用的是一套逻辑,推理时换了另一套,难免出现"水土不服"的问题。

Nous Research团队的出发点与这些方法截然不同。他们问的问题是:有没有一种方法,完全不碰模型的架构、不改分词器、不换优化器、不动数据,只在训练阶段悄悄做点手脚,等训练结束后模型拿出来用时,一切照旧,效率却能大幅提升?

二、"扫读"与"精读"——TST的核心思路

TST的工作原理可以用一个上班族的早晨阅读习惯来理解。他每天通勤时先用20分钟快速刷完当天的头条新闻,把大量信息的轮廓和主题装进脑子里。下班后,他再拿出一篇感兴趣的长文细细品读,这时他的理解会比直接从零开始精读快得多,因为已经有了知识背景。TST就是这样运作的——先让模型用"扫读"模式快速消化海量数据,再切换到"精读"模式,让之前建立的知识底蕴发挥作用。

具体操作分为两个阶段。在第一阶段,也就是"叠加阶段",训练数据中相邻的若干个词元会被合并成一个"叠加词元"(s-token)。合并的方式极为简单:把这几个词元对应的向量表示(可以理解为每个词在模型内部空间里的坐标)取平均值,得到一个新的坐标,作为这组词的综合代表。这样一来,原本需要处理100个词元的序列,现在只需处理20个叠加词元(如果每组合并5个),模型用同样的计算量就能扫过5倍多的原始文本。

在这个阶段,训练目标也相应调整。传统训练让模型预测下一个词,而TST让模型预测下一组词。预测多个词时,损失函数从"猜中单个答案"变成了"猜中一袋子答案"——研究团队将其称为"多热交叉熵损失"(Multi-hot Cross-Entropy,MCE)。这个损失函数的设计思路是:对袋子里的每个词都平等对待,要求模型给每个词分配相同的概率权重,谁都不偏袒。

第二阶段是"恢复阶段"。在第一阶段训练了一段时间之后,训练代码中所有与叠加相关的部分被完全移除(不是关闭,而是物理删除,以避免任何混淆),模型从第一阶段保存的检查点继续训练,回归到最传统的逐词预测方式。神奇的是,经历过"扫读"预热的模型,在"精读"阶段的学习速度明显快于从未接受过叠加训练的模型,损失值下降得更快,就像那个刷过头条的上班族,理解长文时比从头学习的同事快得多。

有一个细节值得特别说明:为了让叠加阶段和非叠加阶段的计算量保持公平可比,每一步训练的计算量(FLOPs)被设计成相等的。做到这一点的方式是:叠加阶段处理的序列长度会增加相应倍数。比如叠加大小为8时,每步喂给模型的序列就是正常的8倍长。这样,每一步训练的数学运算量相同,但消化的原始数据量是传统方式的8倍。

三、两个机制,各有妙用

为了搞清楚TST的效果究竟来自哪里,研究团队做了一系列拆解实验,把"输入叠加"和"输出叠加"分开来各自测试。

输入叠加,就是只对输入端做手脚——把多个词的嵌入向量取平均后喂给模型,但预测目标仍然是下一个单独的词。输出叠加,则是输入端保持正常(一次一个词),但把预测目标换成下一组词的集合。

拆解测试的结果表明,两种方式单独使用都比传统训练强,但把两者结合起来效果最好,而且两种效果相加后没有出现互相干扰的迹象,而是呈现出协同增益。研究团队认为这是因为两个机制作用于完全不同的层面:输入叠加改变了模型处理信息时的"粒度"和每单位计算量消化的数据量,而输出叠加则改变了模型学习的目标和梯度信号(可以理解为每次学习后更新参数的方式)。

对于输出叠加,可以找到不少相关的历史研究作为参照。预测多个未来词的思路与"多词元预测"(Multi-Token Prediction,MTP)有相似之处,也与用未来词的词袋摘要来指导当前表示学习的"未来摘要预测"异曲同工。区别在于TST完全不引入额外的参数和预测头,而是直接用主预测头替换目标,结构极为简洁。

对于输入叠加,研究团队坦承这在已有文献中几乎找不到直接对应的工作。为什么把几个词的表示取平均,反而能让模型学得更好?他们提出了两种可能的解释:一是这个过程类似于"预预训练"——在真正的逐词语言建模之前,先让模型在一个更粗粒度、更简化的语言分布上暖身,就像骨骼发育完成前先练习爬行再练习走路,更自然地形成对语言结构的初步感知。二是取平均这个操作本身对词向量空间有一种隐性的正则化效果,促使词向量排布得更加有序,因为大量不同的词组合在平均后必须仍然保持可区分性。

四、为什么其他类似方法没能做到这一点

一个很自然的疑问是:把粗粒度学习和细粒度学习结合起来的思路并不新鲜,为什么以前没人发现这么做有效?

研究团队给出了一个有说服力的假设:以往试图把两种粒度的训练结合起来的方法,通常会在两个阶段之间引入一个"对齐阶段"——先冻结主模型,只训练一个小小的适配器,再逐渐解冻。这种做法的初衷是防止第一阶段和第二阶段的表示空间"对不上",造成信息损失。但研究团队的直觉是,正是这种对齐操作本身遮盖了粗粒度预训练的真正价值。

为了验证这一点,他们设计了一个对照实验:在TST的第一阶段结束、第二阶段开始之前,随机重新初始化模型的输入嵌入层和输出语言模型头(即处理词汇输入和输出的两个关键部分),其余参数保持不变。结果令人印象深刻:这个"破坏实验"中,不仅第一阶段的训练效果荡然无存,最终模型甚至比完全没有用过TST的基线模型还差——第一阶段的所有计算都白费了。

这个结果支持了一个关键结论:TST之所以有效,核心在于第一阶段和第二阶段共享了完全相同的词汇表示层,没有任何人为割断。词向量空间的连续性是两个阶段"对话"的基础,一旦破坏这个桥梁,整个机制就会崩塌。用一个比喻来说:就像一个学生在快速浏览阶段建立起来的概念联想,全部存储在他特定的神经连接模式里;如果突然给他的大脑"格式化"词汇区,再让他精读,之前所有的积累都付之东流。

五、实验规模与验证结果

任何方法的说服力,最终还是要靠数字说话。研究团队在多个规模的模型上进行了系统性验证,从2.7亿参数的小型模型一路做到100亿参数的大型混合专家模型(MoE),覆盖范围之广是同类工作中较为少见的。

针对2.7亿参数和6亿参数的模型,研究团队进行了极为细致的超参数扫描,覆盖叠加大小从2到12的所有整数,以及叠加训练步数占总训练步数的比例(称为比率r)从0.1到0.6的多个档位,最终得到了数百个数据点,完整记录在论文附录的系列表格中。整体规律显示:叠加大小在4到8之间,叠加比率在0.2到0.4之间,效果最为稳定可靠。超出这个范围,效果逐渐减弱,在极端情况下(比如100%的步数都用叠加,即r=1.0)模型几乎完全无法正常工作,输出乱码。

在3B(30亿)参数的模型上,研究团队用相同的总计算量对比了TST和基线方法的差异。结果显示,使用6倍叠加大小、30%叠加比率(也就是前6000步使用叠加,后14000步正常训练)的TST模型,在总步数和总计算量与基线相同的情况下,最终损失值从2.808降到了2.676,而要让基线方法达到同样的损失值,需要运行到36000步,额外消耗了约80%的计算量。换句话说,同等计算预算下,TST让模型"学到了更多";或者反过来说,要达到同等学习效果,TST大约节省了一半的算力。

下游任务的评估结果同样支持这一结论。在HellaSwag(一个测试常识推理的基准)上,3B TST模型得分62.4,与需要更多算力才能到达的36000步基线(62.3)几乎持平。在ARC-Easy(一个科学知识测验)上,TST模型66.3,同样不逊色于多训练了80%步数的基线(65.9)。

最具说服力的是那个10B A1B(100亿总参数、10亿活跃参数)混合专家模型的实验。基线模型训练了12.5万步,消耗了约1.05万亿个数据词元,B200 GPU时约12311小时;而TST模型前约1.25万步使用16倍叠加,后续正常训练到约5万步,总共消耗了约2万亿数据词元,GPU时约4768小时。在同等损失值的对比下,TST版本只用了约2.5倍更少的训练步数。由于研究团队确保了每步的计算量相等,这个2.5倍的步数差直接对应了2.5倍的训练时间节省——从图1的损失曲线上,可以清晰地看到两条曲线在不同步数处相交于同一损失值,视觉冲击非常直接。

六、损失函数的设计细节与变体探索

论文在数学推导上也颇为细致,对多热交叉熵的设计逻辑进行了完整的推演。标准的交叉熵损失,可以理解为"猜对了给满分,猜错了扣分,目标是让概率分配完全集中在正确答案上"。当目标从单个词变成一组词时,需要把概率分散到多个正确答案上。

研究团队选择的方式是对袋子里的每个词平均分配概率目标(每个词1/s),然后对每个词分别计算一次标准交叉熵,最后取平均。数学上可以证明,这等价于KL散度(一种衡量两个概率分布差异的度量),其最低点恰好在模型预测分布与均匀多热目标完全一致时达到,保证了优化的正确性。

他们还研究了另一种变体:不要求每个词获得相同概率,而只要求这些词的总概率之和为1,让模型自己决定如何在袋子内部分配概率。这在数学上可以写成对整个词袋的"综合概率"取对数的负值,形式上像是把一组词当成一个复合词元来预测。有限的实验表明,这种方式和等权方式效果相当,但因为实现起来更复杂(无法直接复用现有的交叉熵计算内核),研究团队选择了更简洁的等权版本作为最终方案。

研究团队也尝试了多种对袋子内不同位置的词给予不同权重的方案。毕竟直觉上,离当前位置越近的词应该越容易预测,而越远的词信息越稀薄。受到自然语言中互信息随距离按幂律衰减这一现象的启发(这个规律在中文和英文文本中都有实证),他们测试了均匀权重、幂律权重(近处权重高,远处权重低,按1/i衰减)、指数权重等方案。结论是:对于叠加大小较小(如4以内),均匀权重最好;对于较大的叠加大小(8以上),幂律权重更稳定,能在大叠加时保持性能而不至于急剧下降。

七、与同类方法的对比定位

研究团队特别花了篇幅讨论TST与多词元预测(MTP)的区别和关系,因为这是最容易混淆的对照方法。MTP同样涉及预测多个未来词,但它的做法是在原有模型基础上额外附加独立的预测头,每个头负责预测未来不同距离的词。这意味着MTP需要引入额外参数,增加计算量,且研究表明它对小模型(如7亿参数以下)效果有限甚至有害。更关键的是,MTP的主要收益体现在推理阶段——可以用这些额外的头进行"推测解码",加速生成速度——而不是训练阶段的效率本身。TST的收益则完全体现在训练阶段,推理时模型和普通模型一模一样,没有任何变化。两者针对的是不同的效率瓶颈,研究团队认为两者完全可以叠加使用,留作未来工作探索。

另一个值得提及的对照是SuperBPE方法,它通过重新设计分词器,把相邻词元合并成"超词元",从而减少序列长度。表面上看与TST的输入叠加有些相似,但区别在于SuperBPE是永久性地改变了分词器和词汇表,对推理也有影响;而TST的叠加完全发生在嵌入空间里,分词器毫发无损,推理时的输入输出格式与普通模型完全一致。

八、局限性与未来方向

研究团队在文章最后直言不讳地指出了当前工作的边界和未探索的方向。TST的核心假设是训练受算力约束而非数据约束——换句话说,是"有钱买GPU,但看不完数据"的场景。在这个前提下,用更多数据换更低损失是值得的。然而有研究者指出,随着互联网高质量数据逐渐耗尽,未来的训练可能反过来变成数据受限的场景。在那种情况下,TST中"输出叠加"部分的意义仍然存在(它不需要消耗更多数据,只是改变了已有数据的学习目标),而"输入叠加"部分带来的数据消耗增加则变成了一种负担。

此外,由于叠加阶段处理的序列实际上覆盖了更长的原始文本(以叠加大小为8为例,相当于把8倍长的内容压缩进一个序列),TST在理论上可能对长文本处理能力有额外的正向影响,但这一点在当前工作中没有得到评估。

在超参数的规模律方面,当前工作仅靠经验归纳出了一个粗略的有效范围(叠加大小4-8,比率0.2-0.4),但没有建立起预测性的规模律模型。也就是说,对于一个全新规模的模型,目前还无法精确预测最优的叠加设置,需要一定的实验摸索。

最后,这项工作的所有实验都在单次运行下进行,没有重复多次运行取平均来评估统计显著性,这在一定程度上受限于计算资源,是未来需要补充的验证工作。

说到底,TST做的事情有点像教会了一个学生"先整体后细节"的学习方法。这个方法没有改变学生的大脑结构,没有换教材,没有请额外的老师,只是调整了学习的节奏和方式——先粗后细,先快后慢。结果发现,同样的时间里,这个学生比一直保持同一速度精读的同学学到了更多,或者说,要达到同样的知识水平,这个学生只需要花更少的时间。

对于AI行业的从业者来说,这意味着在不改变任何基础设施的情况下,可能以更低的成本训练出同等质量的模型;对于关注AI发展的普通人来说,这类研究积少成多,共同推动着大模型训练成本的下降,使得更多机构和个人能够参与到这个领域中来。当然,当前结果仍是预印本,尚未经过同行评审,研究结论是否完全可靠,还需要学界进一步检验和复现。对此抱有兴趣的读者,可以通过arXiv:2605.06546获取完整论文和代码细节。

Q&A

Q1:词元叠加训练(TST)在训练结束后还会影响模型的使用方式吗?

A:不会。TST只在训练阶段起作用,训练结束后模型和普通训练出来的模型在结构、输入输出格式上完全一致,用起来没有任何区别。第二阶段开始时TST相关代码就被完全移除,最终拿到的模型是一个标准的语言模型。

Q2:词元叠加训练中把多个词的向量取平均,模型不会"搞混"不同的词吗?

A:这正是TST第一阶段有意为之的设计。取平均后的叠加向量确实丢失了词序信息,模型在这个阶段只能感知一组词的整体分布特征而非精确顺序。但研究发现这种粗粒度学习反而提供了有价值的预热效果,让模型在后续精读阶段起点更高。丢失信息是有意的代价,而非缺陷。

Q3:词元叠加训练需要消耗更多数据,如果数据有限该怎么办?

A:这是研究团队自己承认的一个局限。TST的核心假设是算力比数据更稀缺。如果数据有限,可以只使用TST中的"输出叠加"部分,即把预测目标改为下一组词的集合,而输入保持正常,这样不会消耗额外数据,但仍能获得部分效果提升。研究团队将这种场景的详细研究留作了未来工作。

免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其内容真实性、完整性不作任何保证或承诺。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。