MERLIN:用二阶路由提升线性注意力长上下文能力

MERLIN用二阶矩路由让多状态线性注意力感知对齐度分布,长上下文任务一致提升。
文章介绍了多状态线性注意力(MSLA)在长序列建模中的效率优势及其被忽视的缺陷:聚合各片段记忆状态时仅依赖查询与片段键的平均对齐度,忽略了对齐度在片段内部的分布,造成信息损失。为此,研究者提出MERLIN,通过同时追踪每个片段键的一阶矩和二阶矩,使查询能恢复对齐度的均值和方差,从而实现分布感知的逐状态读出聚合。在Gated DeltaNet-1.3B和Mamba-2-780M上,MERLIN在RULER长上下文QA上分别提升8.3%和7.0%,在LongBench上提升13.5%和12.0%,甚至超越消耗4倍内存的基线。文章认为该方法在方法论上揭示了对齐度分布这一被忽略的信息维度,在工程上提供了轻量通用的插件式长上下文增强方案。
线性注意力的效率困境与MSLA的突破
长序列建模一直是大型语言模型的核心挑战。标准自注意力机制虽然强大,但其二次时间复杂度从根本上限制了模型处理超长上下文时的扩展性。近年来,多状态线性注意力(Multi-State Linear Attention, MSLA) 作为一种高效替代方案受到关注:它将上下文切分为多个片段,每个片段压缩到独立的记忆状态中,从而在保持线性复杂度的同时实现对长序列的建模。
然而,现有的MSLA机制存在一个被忽视的缺陷——在聚合各记忆状态的信息时,它仅依赖查询与每个片段键之间的平均对齐度,完全忽略了对齐度在片段内部的分布情况。换句话说,模型只知道“这个片段整体上与查询有多相关”,却不知道“这种相关性在片段内是均匀分布还是高度集中”。这种信息损失直接影响了聚合的精准度。

标准自注意力的二次复杂度源于其计算方式:对于长度为 n 的序列,每个 token 都需要与所有其他 token 计算注意力权重,形成 n×n 的注意力矩阵,因此时间和内存开销都随序列长度平方增长。线性注意力则通过将 softmax 注意力近似或重构为核函数形式,把计算重排为“先聚合键值、再与查询相乘”的顺序,使复杂度降为 O(n)。MSLA 进一步将长序列切分为多个片段,每个片段维护一个固定大小的记忆状态,查询时只与这些压缩状态交互,从而在保持线性复杂度的同时避免单个状态的容量瓶颈。这种“分段压缩+状态聚合”的设计是理解 MSLA 效率优势的基础,也是其聚合精度问题的来源——片段内部的信息在被压缩为状态时,分布细节被丢弃了。
MERLIN的核心思路:从一阶到二阶矩
针对上述问题,研究者提出了MERLIN(MomEnt Routing for multi-state LINear attention),一种面向多状态线性注意力的矩路由方法。其核心创新在于:不再只追踪每个片段键的一阶矩(均值),而是同时追踪一阶矩和二阶矩。
借助键的矩信息,一个查询可以同时恢复其与每个片段对齐度的均值和方差。方差这个额外维度至关重要——它让聚合过程能够感知片段内部对齐度的离散程度,从而实现更内容感知的逐状态读出聚合。直观地理解:如果查询与某片段的对齐度均值很高但方差极大,说明相关性集中在少数位置;而均值高且方差小时,相关性则更为均匀。MERLIN让模型能够区分这两种截然不同的情况,做出更精细的路由决策。
论文将这一机制描述为“简单且通用的路由机制”,意味着它不依赖于特定架构,可以灵活嵌入不同的MSLA变体中。
一阶矩与二阶矩是概率统计中的基本概念。一阶矩即均值,描述随机变量的中心位置;二阶矩(或更准确地说是二阶中心矩,即方差)描述随机变量围绕均值的离散程度。在 MERLIN 的语境中,每个片段键与查询的对齐度被视为一个分布:一阶矩告诉模型该片段整体上与查询有多相关,二阶矩则告诉模型这种相关性在片段内部是集中还是分散。仅用均值时,两个均值相同但分布截然不同的片段无法区分;引入方差后,模型可以判断高均值是由少数强相关位置驱动,还是由大量中等相关位置共同贡献。这种区分能力正是“分布感知”聚合的核心,也是 MERLIN 相比传统 MSLA 多出的信息维度。值得注意的是,矩追踪只需维护少量统计量,计算开销远低于逐位置精确计算对齐度分布。
实验验证:跨架构的一致提升
MERLIN的有效性在两个主流架构的多状态变体上得到了验证:Gated DeltaNet-1.3B 和 Mamba-2-780M。实验覆盖了多种长上下文任务,结果呈现出高度一致性。
在RULER needle-in-a-haystack(大海捞针)和长上下文问答任务上,MERLIN相比基线方法取得了显著提升:Gated DeltaNet-1.3B上提升8.3%,Mamba-2-780M上提升7.0%。在LongBench的多个子任务上,提升幅度更为可观,分别达到13.5% 和12.0%。
一个尤其值得关注的细节是:MERLIN甚至超越了消耗4倍内存的基线方法。这表明二阶矩路由带来的收益并非来自更奢侈的计算资源,而是源于聚合机制本身的信息效率提升——用更少的资源做更聪明的聚合。
RULER 是一套用于评估长上下文语言模型能力的基准测试,其中 needle-in-a-haystack(大海捞针)任务要求在大量无关文本中定位并提取特定信息,是检验模型长程检索能力的经典测试。LongBench 则是面向长文本理解的多任务基准,涵盖问答、摘要、代码理解等多种子任务,用于综合评估模型在长上下文场景下的实用能力。这两个基准从不同角度衡量长上下文能力:RULER 侧重精确检索与位置鲁棒性,LongBench 侧重多任务泛化。MERLIN 在两个基准上均取得一致提升,说明其二阶矩路由带来的收益不局限于单一任务类型,而是对长上下文信息利用具有普遍性的改善。
对长上下文技术路线的影响
MERLIN的提出为MSLA模型的长上下文能力提升提供了一个轻量而通用的插件式方案。它的意义可以从两个层面理解。
在方法论层面,它揭示了线性注意力聚合过程中被长期忽略的信息维度:对齐度的分布特性。将二阶统计量引入路由决策,本质上是让模型从“平均相关”进化到“分布感知相关”,这对任何涉及分段记忆压缩的架构都有借鉴价值。
在工程层面,MERLIN不改变MSLA的基本框架,仅增加矩追踪的计算开销,却换来了跨架构、跨任务的稳定增益,且内存效率优于更重的基线。对于追求长上下文能力但又受限于显存和推理成本的部署场景,这种“小改动大收益”的路线具有现实吸引力。
当然,当前实验集中在1.3B和780M参数级别的模型上,更大规模模型上的表现仍有待观察。但作为线性注意力长上下文优化的一个新方向,MERLIN提出的二阶路由思路已经展示出清晰的价值。
Gated DeltaNet 与 Mamba-2 分别代表了两类不同的线性注意力/状态空间架构。DeltaNet 系列基于 delta 规则更新记忆状态,属于线性注意力的一种现代化实现;Mamba-2 则是状态空间模型(SSM)的代表,通过结构化状态空间递推实现线性复杂度序列建模。两者虽然数学形式不同,但都采用“压缩历史到状态”的范式,因此都可以自然地扩展为多状态(MSLA)变体。MERLIN 能同时在这两种架构上生效,验证了其“架构无关”的设计主张——二阶矩路由作用于状态聚合层,而不依赖底层的状态更新规则。这种跨架构通用性意味着该方法的适用面较广,凡是将长序列压缩为多个记忆状态并进行查询聚合的模型,都有可能受益。
相关推荐

导演大师配置Ollama本地模型全流程教程
B站教程完整演示导演大师配置Ollama本地模型的方法:从Ollama安装、模型路径设置、千问模型下载,到在导演大师Agent设置中接入本地模型,并用本地千问3.8跑通选题、大纲、剧本和分镜全流程。

导演大师接入Ollama本地模型:配置与全流程创作实战
B站教程详解导演大师如何接入Ollama本地模型:从安装Ollama、设置模型存储路径、命令行拉取千问模型,到在Agent设置中添加提供方,并用本地千问3.8跑通选题、大纲、剧本、分镜的短片创作全流程。

本地大模型部署三条路线:个人、企业、专用引擎怎么选
本地大模型部署分三条路线:个人端 Ollama、LM Studio、LLaMA.cpp 如何取舍;企业端 vLLM 与 SGLang 的内存复用模式差异;专用引擎 NIFL、Halogen、Strix 的适用边界。用三个问题帮你选对工具。