这项由Meta FAIR(Meta基础人工智能研究院)与法国国家信息与自动化研究院(Inria Paris)、巴黎高等师范学院(ENS-PSL University)和德国图宾根大学联合开展的研究,于2026年7月8日以预印本形式发布,编号为arXiv:2607.07386。感兴趣的读者可通过该编号在arXiv平台查阅完整论文。

打开网易新闻 查看精彩图片

每个人都有过这样的体验:和一个人聊天聊了很久,聊到后面,对方开始忘记你一开始说过的事情。这种感觉很让人沮丧。现代AI语言模型也面临同样的困境——它们在处理超长对话或者超长文档时,往往会"忘记"早先出现的关键信息,因为它们的"工作记忆"容量是有限的。

Meta FAIR的研究团队提出了一种叫做"稀疏差分记忆"(Sparse Delta Memory,简称SDM)的新架构,用一种精妙的"稀疏寻址"方案,在不增加计算量的前提下,将AI模型的工作记忆容量提升了整整三个数量级(也就是一千倍以上)。这项研究的核心发现是:更大的记忆容量能让AI在处理超长文本时表现显著更好,不仅能更准确地回忆起很久之前出现的信息,在知识推理和常识问答等"短文本"任务上也有明显提升。

一、AI的"工作记忆"瓶颈:为什么大模型会"忘事"

要理解这项研究,可以先把AI模型的工作方式类比成一个在读长篇小说的读者,只不过这个读者的笔记本大小是固定的。

目前最流行的大语言模型采用一种叫做"Transformer"的架构,其核心是"软最大值注意力机制"(softmax attention)。这种机制的工作方式类似于让读者把所有读过的内容都一字不差地写在笔记本上——这自然非常准确,但笔记本会越来越厚,最终变得无法携带。技术上,这个"笔记本"被称为KV缓存(Key-Value Cache),它的大小随着处理的文本长度线性增长。处理8000个词的对话需要一定的存储和计算资源,处理128000个词就需要大约16倍的资源,处理100万个词则几乎令人望而却步。

另一类AI架构被称为"线性RNN"(Linear Recurrent Neural Network,线性循环神经网络),它的策略更像是一个记忆力有限的读者:阅读时不断把内容压缩成摘要,只保留一个固定大小的笔记本。这种方式的好处是资源消耗恒定,不论读多长的书,笔记本大小不变,计算量也不变。其中一类广受关注的模型叫做"Gated DeltaNet"(GDN,门控差分网络),它代表了当前线性RNN的最先进水平。

然而,这个固定大小的笔记本也是线性RNN的致命弱点:笔记本太小,能记住的东西太少,在需要精确回忆长文本中特定信息的任务上,表现远不如Transformer。美国斯坦福大学等机构的研究者已经从理论上证明,模型在长文本任务上的极限,从根本上受限于其隐藏状态(也就是这个"笔记本")的大小。

道理很简单:如果笔记本更大,不就能记更多东西了吗?问题在于,简单地把GDN的笔记本做大,计算量会同比例增加——笔记本大一倍,每翻一页书的计算量也增加一倍,这在工程上是难以接受的代价。

Meta FAIR的研究团队观察到,GDN更新笔记本的方式其实有一个关键特点可以加以利用:每次更新时,并不需要修改整个笔记本的所有位置,只需要修改与当前读到的内容最相关的少数几个位置就够了。这个洞察催生了SDM架构。

二、SDM的核心秘密:用"稀疏索引"撬动超大记忆

SDM的核心思路可以用图书馆检索系统来类比。普通的线性RNN就像一个小型书架,每次找资料都要扫描整个书架,书架大小决定了能存多少信息,扫描时间也跟书架大小成正比。SDM则像是把书架换成了一个拥有数十万个格子的巨型仓库,但引入了一套精准的坐标系统,每次只需要打开和关闭其中很少的几个格子——查找时只开几个,存放时也只改几个,整体操作时间几乎与仓库总格子数无关。

这套坐标系统借鉴了一种叫做"乘积键值记忆"(Product-Key Memory,PKM)的技术,最早由Meta(当时还叫Facebook)的研究团队于2019年提出。PKM的精妙之处在于它利用了一个数学技巧:假设仓库有N个格子,正常情况下为每个格子打一个标签需要N个数字;但如果把这N个格子理解为一个二维方阵(每边长度为√N),就只需要两组各√N个数字来描述坐标,然后通过"外积求和"(outer sum)的方式得到每个格子的综合评分。更重要的是,寻找评分最高的那几个格子时,可以先在两个维度上各自找出候选者,再组合,这样计算量从O(N)降低到了O(√N)的量级——仓库越大,这个加速效果越显著。

在SDM中,这套机制被用于"稀疏键选择":模型从输入中生成一对预索引向量,各自分成两半,通过外积求和生成N个评分,然后只选择评分最高的W个格子用于写入,以及评分最高的R个格子用于读取。在实验中,W和R都被设置为64,而仓库总格子数N则可以达到数十万甚至更多——计算量几乎与N无关,只与W和R有关。

写入的方式也延续了GDN的"差分规则"(delta rule):存入新内容之前,先读出这个格子里已有的内容,用新内容减去旧内容,再把差值写入。这样做的好处是防止新旧信息互相干扰,让记忆保持整洁。同时,每个格子还配备了一个"遗忘门"(forget gate),控制旧记忆以多快的速度淡出,以及一个"输入门"(input gate),控制新内容以多大的力度写入。没有被选中的格子则完全不受影响,保持原状。

读取的方式同样稀疏:从选出的R个格子中各取出一段记忆,按照对应的权重加权求和,得到本次查询的结果。

从数学上可以证明,当所有格子都被选中(W=R=N),且格子数等于GDN的键向量维度时,SDM的更新公式退化为完全等价于GDN的更新公式——SDM是GDN的直接推广。而SDM比GDN多出的唯一东西,就是那个巨大的仓库和精巧的索引系统。

三、让仓库的知识从训练中"留下来":可学习的初始状态

SDM相比GDN还有一个重要的额外能力:可以把仓库的初始状态(记为M?)设置为模型的可学习参数。

对GDN而言,它的笔记本实在太小,初始状态几乎没有意义——每次开始处理新文本时,笔记本基本是空的,所有信息都要从当前文本中实时获取。而SDM的仓库容量可以高达数亿个参数,足以在训练过程中把大量世界知识"预存"进去,就像在图书馆开门之前就把一批常用参考书放好。这样,模型在处理任何新文本时,一开始就能调用这些预存知识,而不是完全从零开始。

研究团队选择把可学习的M?作为SDM的默认设置,理由之一是:在推理(使用)阶段,可学习M?和零初始M?的计算量完全相同,不会带来任何额外开销。

四、怎么保证和GDN用同样的计算资源:等计算量设计

为了让比较有说服力,研究团队精心设计了SDM的参数规模和计算量,确保与GDN完全匹配。

GDN每处理一个词的计算量主要来自密集矩阵运算,与其键向量维度(dqk)和值向量维度(dv)的乘积成正比。SDM每处理一个词的计算量则来自对W+R个格子的操作,与(W+R)×dv成正比,而与总格子数N完全无关。只要把W和R设置为等于GDN的dqk(本文中均为64),两者的每词计算量就精确相同。PKM索引本身(寻找格子坐标的过程)额外消耗不到整个层计算量的1%,可以忽略不计。

两种模型的可训练参数数量(线性投影矩阵的大小)也完全相同,确保任何性能差异都只来自记忆容量的不同,而非参数量的差异。需要说明的是,SDM额外拥有那个巨型仓库(M?),但这部分不计入"参数"用于公平比较——仓库的大小是通过头数(H)这个超参数来控制的,H越大,每个头的仓库越小,总仓库容量也越小;H越小,总仓库容量越大。

在实验配置中,研究团队针对不同规模的模型调整H值,使得SDM的仓库总大小与模型其他参数大致相当(大约为模型参数量的56%到150%)。

五、实验设计:一场从小到大的竞赛

为了系统评估SDM的性能,研究团队设计了一个"缩放阶梯"实验,训练了从约2.5亿参数到81亿参数共8个规模的模型,并最终将结论推广验证到81亿参数(8B)规模的大模型上,这些模型总计使用了超过1万亿个词符(token)进行训练。

所有模型采用相同的混合架构:大多数层(约75%)使用窗口大小仅为128个词的滑动窗口注意力(SWA),这种方式只关注邻近的词,计算高效;其余约25%的层是"全局感受野层",负责跨越整个已见文本的长程信息整合。在SDM模型中,这个全局层就是SDM层;对比模型中则分别是GDN层、Mamba2层或完整的全注意力层(FullAttn,相当于传统Transformer)。

选择小窗口(128个词)的原因也值得一提。研究团队之前的工作发现,当短程注意力窗口和长程记忆层共存时,如果短程窗口太大,两类层之间会产生竞争,反而让长程记忆层学不到有用的东西。使用128词的极小窗口,可以把长程信息处理的压力完全交给SDM层,让专门化分工得到充分体现。

评估内容包括三类。一是在保留测试文本上的"负对数似然"(NLL)——可以粗略理解为模型预测下一个词有多准确,数值越小越好。二是涵盖15个不同任务的短文本推理和常识问答基准,包括HellaSWAG、WinoGrande、ARC、PIQA、MMLU、GSM8K等广为人知的测试集。三是RULER长文本基准,这是一个专门测试模型在4000到131000词长度范围内回忆特定信息能力的测试集,包含"大海捞针"(在长文中找特定词句)、多键检索、多值检索等13个子任务。

六、实验结果:SDM在每个规模上都赢了

从缩放规律的角度看,结果颇具说服力。在所有8个规模的实验中,SDM的训练损失(每词预测误差)始终低于同等计算量的GDN,而且这种改进非常稳定,可以用幂律曲线精确拟合(相关系数R?=0.999,意味着几乎完美的规律性)。更引人注目的是,当把这条规律外推到81亿参数规模时,预测结果与实际实验结果高度吻合——SDM不仅超过了GDN,还超过了同规模的完整注意力Transformer模型。

在短文本任务上,14亿参数规模的SDM与GDN相比,在15个任务中有13个取得了更高的分数,平均准确率从37.93%提升到38.51%。在81亿参数规模上,SDM的平均准确率(56.84%)不仅高于GDN(55.70%),甚至略高于同规模的完整注意力Transformer(56.65%)。研究团队将这部分提升主要归功于可学习的初始状态M?——预存的世界知识在这些不需要长文本的任务上同样有帮助。

在验证NLL指标上,SDM在14亿和81亿参数规模上都取得了所有测试模型中最低的数值,包括完整注意力Transformer也被它压过。

在长文本检索任务(RULER)上,差距更加显著。14亿参数的SDM整体得分为31.2,而同规模GDN只有20.0,Mamba2只有17.9;81亿参数的SDM得分50.2,GDN只有34.2。具体来看,在单针检索类任务(在长文中找一个特定信息点)上,SDM相比GDN的提升高达34到50个百分点;在多值、多查询等更复杂的检索任务上,SDM也全面领先。完整注意力Transformer因为有无限增长的KV缓存,在某些任务上仍有优势(整体RULER得分61.2),但SDM在6个RULER子任务中有4个(14亿规模)到3个(81亿规模)达到或超过了Transformer的水平——这对于固定记忆容量的模型来说是相当惊人的成就。

在代码数据的困惑度(perplexity,衡量语言模型预测准确性的指标,越低越好)随文本长度变化的测试中,SDM从512词到50万词的全程都保持了最低的困惑度,在32000到512000词的长上下文范围内,SDM困惑度接近2.0,而GDN和Mamba2停留在2.2到2.3附近。当只测量长程记忆层本身贡献的困惑度改善时,SDM甚至在100万词处仍在持续进步,而固定记忆的其他方法在更短的长度处就已经趋于平稳。

七、拆解SDM的功劳:到底是大仓库还是预存知识的贡献?

研究团队做了细致的消融实验,把SDM的两个关键创新点分开检验:更大的仓库(大记忆容量)和可学习的初始状态(预存知识)。

结果非常清晰:没有可学习M?的SDM(仓库一开始是空的)依然显著优于GDN,代码NLL从0.849(GDN)降低到0.845(SDM无初始状态),RULER得分从20.0提升到28.0。相比之下,给GDN加上可学习M?几乎没有任何帮助(NLL从0.849到0.850,RULER从20.0到20.6),因为GDN的仓库太小,能预存的知识微乎其微。换句话说,SDM性能提升的主要驱动力是更大的记忆容量,而可学习的初始状态在这个更大的容量基础上提供了额外的加成(RULER从28.0进一步提升到31.2,代码NLL从0.845降低到0.822)。

记忆容量大小的消融实验同样清晰:在固定其他所有设置的情况下,将仓库大小从27MB逐步增大到108MB再到432MB,代码NLL单调地从0.947降低到0.937再到0.914,RULER得分从20.2提升到20.7再到21.5。即便是最小的27MB版本,RULER得分(20.2)也已经超过了GDN的0.2MB版本(16.0)。

研究团队还分析了SDM的记忆访问模式,发现了一些有意思的规律。写入分布(模型决定把新信息写进哪些格子)是相对集中的:在选出的64个格子中,权重最高的32个大约占据了85%的总权重,说明模型有比较明确的写入偏好。读取分布则更均匀:在选出的128个格子中,权重最高的64个只占约77%的权重,说明模型在读取时倾向于广撒网。

更有趣的是读写分布的互动:当读取格子数较少(R=32)时,写入分布变得更均匀(更分散);当读取格子数较多(R=128)时,写入分布变得更集中。这说明模型自动学会了在读写资源之间进行权衡和适配,而不是需要人工干预。

八、训练效率和工程细节:稀疏带来的代价

SDM并非没有代价。普通线性RNN(如GDN)的状态很小,可以完全存放在GPU的高速缓存(SRAM)中处理,访问速度极快。SDM的仓库则大得多,必须存放在GPU的主显存(HBM)中,而HBM的带宽只有SRAM的约十分之一。因此,尽管SDM和GDN的理论计算量(FLOPs)相同,当前实现的SDM内核GPU利用率(MFU)比高度优化的GDN内核低约一个数量级。

不过,由于大部分计算(约75%的层)仍然是高效的短窗口注意力,SDM整体训练速度的下降是相对有限的:在81亿参数规模上,SDM的训练吞吐量比GDN慢约1.49倍——考虑到其记忆容量是GDN的约4000倍,这个代价相当合理。在推理(使用)阶段,14亿参数的SDM解码速度比GDN慢约10%,但比完整注意力Transformer快约6倍。

训练的工程实现采用了分块并行策略:将长序列分成若干固定大小的块(chunk),块内的计算可以并行处理(利用矩阵运算的高效性),块间则串行处理(因为后一块依赖前一块的仓库状态)。两个词的相互影响量通过一个稀疏内积核计算,利用"两指针归并"算法在已排序的格子索引上找到共同选中的格子,时间复杂度从O(W?)降低到O(W)。

内存效率方面,训练时采用就地稀疏更新并在反向传播时撤销更新的策略,将峰值内存需求从O((T/C)×N×d)降低到O(N×d+T×W×d)。以81亿参数模型、16384词序列、块大小128、W=64为例,这个优化把每个SDM层的状态检查点内存从226GB降到8GB。对于128000词的长文本微调,研究团队还探索了将状态检查点量化为fp8或int4格式,发现两种量化精度对训练损失和最终性能均无不利影响,因此推荐在长文本微调时使用。

在训练过程中,SDM的记忆访问统计量也呈现出清晰的学习轨迹:遗忘门(控制旧记忆淡出速度)在训练早期就收敛到约0.95的均值,输入门(控制新信息写入强度)稳定在约0.50的均值,而仓库格子的读取利用率(有多少格子被实际用到)几乎从一开始就达到100%,写入利用率则在整个训练过程中从28%稳步增长到42%,说明模型随着训练进行不断学会更充分地利用仓库空间。

九、三路混合的可能性:SDM与完整注意力的联姻

研究团队还探索了一种更激进的架构:在同一个模型中同时使用短窗口注意力层(局部)、完整注意力层(全局)和SDM层(全局),三类层交替排列。这个三路混合架构在缩放规律图上的表现介于纯SDM和纯完整注意力之间,但其缩放斜率(损失随计算量增加而下降的速度)优于纯SDM。这意味着在更大的计算规模下,三路混合架构可能会超越纯完整注意力架构。这一发现暗示,SDM和完整注意力在能力上可能是互补而非竞争的关系,将SDM层插入现有的Transformer模型中可能是一个值得探索的方向。

说到底,这项来自Meta FAIR及合作机构的研究给了我们一个清晰的信号:对于AI语言模型来说,记忆容量并非一个固定的天花板,通过聪明的稀疏索引机制,完全可以在不增加计算开销的前提下把记忆扩大一千倍以上。更大的记忆容量不仅让AI在超长文本中的检索和理解能力大幅提升,还为模型提供了一个更大的"仓库"来在训练中积累和存储世界知识,对日常推理和知识问答任务也有连带帮助。

归根结底,SDM的意义不只是一个技术参数上的改进,它更像是打开了一扇门:让固定计算资源的AI系统在处理越来越长的对话、代码库、视频或跨会话记忆时,拥有了过去无法实现的能力。随着AI越来越多地被用于需要长期记忆的代理系统,这种能力的价值只会越来越大。当然,SDM目前也有明显的局限:它的记忆仓库本身占用不小的存储空间(81亿参数模型的仓库大小约等于完整注意力Transformer在处理20万个词时的KV缓存),在存储资源受限的场景下并不总是合适的选择。另外,当前的内核实现效率还有较大的优化空间,未来更高效的硬件实现有望进一步缩小与密集实现之间的速度差距。

你可能会好奇,这种超大记忆的AI将来会用在哪里?研究团队特别提到了几个方向:能持续追踪整个代码库上下文的软件工程助手、能记住长期交互历史的个人助理、以及需要处理超长视频流的世界模型和机器人系统。这些应用都有一个共同特点:它们需要AI记住的不是几百个词,而是成千上万甚至数百万词的历史信息。有兴趣深入了解这项研究所有技术细节的读者,可以通过arXiv编号2607.07386查阅完整论文。

Q&A

Q1:SDM(稀疏差分记忆)和普通的线性RNN相比,记忆容量能大多少?

A:SDM通过稀疏索引机制,可以在与GDN(Gated DeltaNet)完全相同的计算量下,将记忆容量提升约三个数量级(即一千倍以上)。例如在81亿参数规模下,SDM的记忆仓库大小约为8GB,而GDN的隐藏状态只有约2.2MB,差距接近4000倍。

Q2:SDM的训练速度和推理速度比传统Transformer快还是慢?

A:在训练速度上,SDM比GDN慢约1.49倍,但比完整注意力Transformer(FullAttn)有一定优势。在推理解码速度上,14亿参数的SDM比GDN慢约10%,但比同规模完整注意力Transformer快约6倍,因为SDM的记忆大小是固定的,不随文本长度增长。

Q3:SDM在长文本检索测试RULER上的表现怎么样?

A:SDM在RULER基准上的表现远超同等计算量的GDN。14亿参数规模下,SDM整体得分31.2,GDN只有20.0;81亿参数规模下,SDM得分50.2,GDN得分34.2。SDM甚至在多个子任务上达到或超过了拥有无限KV缓存的完整注意力Transformer的水平。