论文:Emergent Structure in the Marginal Attention Space of Language Models
arXiv: 2610.03109
代码: Flegyas/marginal-attention
一个简单的观察
如果你训练 60 个不同的语言模型——不同的实验室、不同的数据、不同的参数量、不同的 tokenizer、不同的架构——它们的注意力矩阵会一样吗?
直觉说:不会。这些模型连权重都不一样,注意力怎么可能一样?
但 2026 年 10 月,Valentino Maiorca、Walter Nelson 和 Francesco Locatello(Bocconi 大学 / IST Austria)发现了一个反直觉的现象:如果你把注意力矩阵"压"到正确的维度上,不同模型的注意力模式惊人地相似——但只在某一个特定的"压"法下。
这个发现揭示了一件事:注意力矩阵里藏着两种完全不同的结构,一种属于文本,一种属于模型。
什么是"边际注意力"
先解释术语。Transformer 的注意力是多头的,每个头、每个输出位置都有一个注意力分布(softmax 后的权重向量,长度等于输入长度)。这是一个三维张量:[输出位置, 头, 输入位置]。
论文的洞察是:把这个三维张量沿"输出位置"轴求平均,得到一个二维矩阵:[头, 输入位置]。这就是"边际注意力"(marginal attention)。
为什么要沿输出位置求平均?因为输出位置是"查询"——它决定了"我现在在看哪里"。但论文关心的不是某个特定查询的注意力,而是"整体上,每个头对每个输入 token 的关注程度"。这就像从"每个时刻的注意力"变成"一段文本上的平均注意力"——后者更稳定,也更有信息量。
得到这个 [头, 输入位置] 矩阵后,可以沿两个轴分别"压":
压法一:沿"头"轴求和 → 每个输入 token 的"边际注意力"
结果是一个长度等于输入长度的向量,每个元素代表"所有头加起来,对这个 token 的总关注度"。
关键发现:这个向量在不同模型之间高度相似。同一篇文本喂给 60+ 个不同的 LLM,它们对每个 token 的"总关注度"几乎一样。
这说明:这个向量是文本的属性,不是模型的属性。它反映的是"这个 token 在这段文本中有多重要"——一个文本内在的、与模型无关的信号。
压法二:沿"输入位置"轴求和 → 每个头的"边际注意力"
结果是一个长度等于头数的向量,每个元素代表"这个头对所有输入 token 的总关注度"。
关键发现:这个向量在不同模型之间差异巨大,但在同一模型的不同文档之间高度稳定。
这说明:这个向量是模型的属性,不是文本的属性。它反映的是"这个头的工作风格"——有些头天生关注得多,有些头天生关注得少,这取决于模型的训练,不取决于输入。
为什么会有这种二分性
论文给出了一个理论解释,把"边际注意力"和模型的"输入-输出雅可比矩阵"联系起来。
雅可比矩阵 \(\frac{\partial \text{output}}{\partial \text{input}}\) 描述的是:输入的每个 token 对最终输出的每个 logit 有多大影响。这是整个模型计算的局部描述——包括注意力、值矩阵、前馈层、所有非线性变换的一阶近似。
论文发现:边际注意力(只看注意力矩阵的统计量)能很好地近似雅可比矩阵的 blockwise 范数。
这看起来很奇怪——注意力只是雅可比的一部分,怎么会近似整个雅可比?
理论解释是:对于两个平滑的模型,如果它们的下一个 token 分布接近,那么它们的输入-输出雅可比也接近。这是一个定理(论文 Theorem 1)。
直觉是:如果两个模型对"下一个 token 是什么"的判断基本一致,那么"输入的每个 token 对这个判断的影响"也基本一致——因为后者就是前者的梯度。
而不同模型在同一篇文本上的下一个 token 分布确实接近(因为它们都在预测同一门语言),所以它们的边际注意力也接近。这就解释了为什么"边际注意力沿头轴压缩"是文本的属性——它反映的是"文本本身的可预测性结构",这个结构对所有会这门语言的模型都一样。
反过来,"边际注意力沿 token 轴压缩"反映的是"每个头的工作风格"——这个风格取决于模型的训练细节(初始化、数据顺序、正则化等),所以不同模型不同,但同一模型在不同文档上稳定(因为头的"性格"是训练时定下的)。
实际应用:KV 缓存驱逐
理论之外,论文给出了一个实际应用:用边际注意力做 KV 缓存驱逐。
KV 缓存是 Transformer 推理时的大头——长文本下,缓存会占用大量显存。驱逐(eviction)方法保留"重要"的 token,删掉"不重要"的,以节省空间。
问题是:怎么决定每个头保留多少缓存?传统方法要么所有头用同一个预算(太粗),要么每个文档重新计算预算(太慢)。
论文的做法:
- 离线计算每个头的边际注意力(在预训练文本上)
- 根据这个"头的性格"决定每个头的 KV 缓存预算——关注得多的头保留更多,关注得少的头保留更少
- 在线推理时,用这个预计算的预算 + 一个简单的训练-free token 评分(基于 per-token 边际注意力)
效果:在标准驱逐基准上,这个方法的表现和"每个文档重新计算预算"或"训练一个驱逐模型"的方法相当,但预算是离线预计算的,推理时零额外开销。
这直接利用了边际注意力的二分性:
- per-head 边际注意力(模型属性)→ 离线预计算预算
- per-token 边际注意力(文本属性)→ 在线计算 token 重要性
数据说话
- 60+ 个 LLM 评估,覆盖不同实验室、参数量(2B 到 70B+)、tokenizer、架构
- per-token 边际注意力在模型间的相关性:高度一致(论文 Figure 1)
- per-head 边际注意力在同一模型不同文档间的相关性:高度稳定
- 雅可比近似质量:边际注意力与雅可比 blockwise 范数的相关性 > 0.9
- KV 缓存驱逐:在标准基准上和 SOTA 方法相当,但零在线开销
为什么这件事重要
1. "表示趋同"从嵌入扩展到注意力
之前的研究发现不同模型的嵌入空间相似(Kornblith 2019, Raghu 2017, Morcos 2018, Moschella 2023)。这篇论文把这个现象从"嵌入"扩展到"注意力"——不只是最终表示相似,连中间的注意力机制也在趋同。
这暗示了一件事:可能存在一种"注意力的不变量"——只要模型学会了同一种语言,它的注意力模式就会收敛到同一种结构。这个结构不是设计出来的,是涌现出来的。
2. "文本属性 vs 模型属性"的二分框架
论文最深刻的贡献是提出了一个二分框架:任何模型内部统计量都可以问"这是文本的属性还是模型的属性?"
- 如果是文本属性:不同模型在同一文本上应该一致 → 可以做跨模型迁移
- 如果是模型属性:同一模型在不同文本上应该一致 → 可以做跨文档预计算
这个框架可以推广到其他统计量:
- 前馈层的激活模式:是文本属性还是模型属性?
- 残差流的范数:是文本属性还是模型属性?
- 每层的"信息流":是文本属性还是模型属性?
每个统计量都可以用同样的方法测试:沿不同轴压缩,看哪个轴上跨模型一致,哪个轴上跨文档一致。
3. 雅可比连接的理论价值
"边际注意力近似雅可比 blockwise 范数"这个发现,把一个"只看注意力矩阵的简单统计量"和"描述整个模型计算的雅可比"联系起来。
这意味着:注意力矩阵不只是"模型在看哪里"的记录,它还隐含了"输入对输出的影响有多大"的信息。后者是雅可比的领域,通常需要反向传播才能计算。但边际注意力只需要前向传播的注意力权重——一个几乎免费的统计量。
这个连接可能开启一类新的研究:用前向传播的统计量近似反向传播的量。如果注意力能近似雅可比,那其他前向统计量可能也能近似其他反向量——比如影响函数、梯度归因等。这会大幅降低可解释性研究的计算成本。
4. 实用价值:零开销 KV 缓存驱逐
KV 缓存是长上下文推理的主要瓶颈。现有方法要么精度不够(所有头同一预算),要么速度不够(每文档重算)。边际注意力给出了第三条路:离线预计算每头预算,在线零开销。
这个方法可以立即部署到生产环境——不需要改模型架构,不需要训练,只需要在预训练文本上跑一次边际注意力统计。对于推理服务提供商(OpenAI、Anthropic、本地部署)来说,这是几乎免费的优化。
诚实的局限
论文也承认了几点:
- 平滑性假设。理论结果依赖"模型是平滑的"这个假设。ReLU 网络不严格平滑,但实验显示近似仍然成立。为什么?论文没有完全解释。
- 只看一阶。雅可比是一阶近似,忽略了高阶效应。对于"注意力能近似多少 Jacobian 信息"这个问题,论文给出了经验估计但没有理论上界。
- KV 缓存驱逐不是 SOTA。论文方法和重计算方法"相当",但没有显著超越。边际注意力的实际价值可能更多在诊断和理解,而非性能提升。
- 模型范围。60+ 个 LLM 覆盖面广,但都是 decoder-only Transformer。编码器-解码器模型、MoE 模型、非 Transformer 架构是否也有同样现象?未知。
一个更大的图景
这篇论文让我想到一个更深的道理:复杂系统的内部往往藏着简单的不变量。
60 个不同的语言模型,训练数据不同、架构不同、参数量差 30 倍,但它们的注意力矩阵在某个特定的"压"法下几乎一样。这说明:不管你怎么训练,只要你学会了同一种语言,你的注意力就会收敛到同一种结构。
这个结构不是设计出来的——没有人告诉模型"你应该这样关注 token"。它是涌现的,是学习同一种语言的必然结果。
这和物理学里的"普适类"(universality class)很像——不同微观机制的系统,在宏观层面展现出相同的行为。统计力学里,不同格点模型在临界点附近的行为可以用同一个标度函数描述。语言模型里,不同训练的模型在边际注意力上也可以用同一个函数描述。
也许,语言的统计结构本身就是一种"吸引子"——不管你从哪里出发,只要你在预测同一种语言,你最终都会被吸引到同一种注意力模式上。这个想法如果成立,它比任何具体的 KV 缓存优化都重要——它意味着语言模型的"表示趋同"不是偶然现象,而是语言本身的数学性质。
论文:https://arxiv.org/abs/2610.03109
代码:https://github.com/Flegyas/marginal-attention
讨论回复
加载中...正在加载回复...
推荐
智谱 GLM-5 已上线
我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。