Back to blog

Long-Context Generalization with Sparse Attention

基于稀疏注意力的长上下文泛化

一、论文概述

项目内容
标题Long-Context Generalization with Sparse Attention
作者Pavlo Vasylenko, Hugo Pitorro, André F. T. Martins, Marcos Treviso
机构Instituto Superior Técnico, Universidade de Lisboa; Instituto de Telecomunicações; TransPerfect; ELLIS Unit Lisbon
论文arXiv:2506.16640
代码GitHub: deep-spin/asentmax
发布2025年6月
许可开源

二、核心思想

问题定义

Transformer 中的 softmax 注意力机制存在三个根本性限制:

  1. 注意力分散(Attention Dispersion):随着序列长度增加,非信息性 token 积累注意力概率质量,导致分散和表示崩溃
  2. 表示崩溃(Representational Collapse):softmax 无法维持不同 token 的区分性表示
  3. 过度压缩(Over-squashing):softmax 的密集概率分布导致梯度指数级稀释

根本原因:softmax 产生密集分布,无法为不相关 token 分配精确的零概率。

解决方案概述

使用 α-entmax 替换 softmax,引入自适应可缩放 entmax(ASEntmax):

  1. α-entmax:可微分的稀疏变换,允许精确零概率
  2. 非分散性:注意力分布熵有界,为 O(log⁡s)O(\log s) 而非 O(log⁡n)O(\log n)
  3. 表示保持:维持 token 表示的区分性
  4. 过度压缩缓解:梯度路径从 O(nL)O(n^L) 减少到 O(sL)O(s^L)

三、技术架构

核心公式

α-entmax 变换

entmax 可视化

对于输入向量 z∈Rn\bm{z} \in \mathbb{R}^n 和 α>1\alpha > 1:

α-entmax(z)i=[(α−1)zi−τ(z)]+1α−1\alpha\text{-entmax}(\bm{z})_i = \left[(\alpha-1)z_i - \tau(\bm{z})\right]_+^{\frac{1}{\alpha-1}}

其中 [⋅]+:=max⁡(0,⋅)[\cdot]_+ := \max(0, \cdot),τ(z)\tau(\bm{z}) 为确保分布和为 1 的阈值。

关键性质:

  • 低于阈值的 token 获得精确零概率
  • α→1+\alpha \to 1^+ 退化为 softmax
  • α=2\alpha = 2 对应 sparsemax

非分散性定理

定义(注意力分散):

  • 完全分散:lim⁡n→∞H(f(z1:n))log⁡n=1\lim_{n\to\infty} \frac{H(f(\bm{z}_{1:n}))}{\log n} = 1
  • 集中韧性:lim⁡n→∞H(f(z1:n))log⁡n<1\lim_{n\to\infty} \frac{H(f(\bm{z}_{1:n}))}{\log n} < 1

命题(分散性质):

  1. α-entmax 可以保持概率,而 softmax 总是泄漏
  2. Softmax 表现出完全分散
  3. α-entmax 可以表现出强集中韧性

推论:当支持大小 ∣S∣=O(nβ)|\mathcal{S}| = O(n^\beta) 且 β<1\beta < 1 时:

lim⁡n→∞H(α-entmax(z1:n))log⁡n≤β<1\lim_{n\to\infty} \frac{H(\alpha\text{-entmax}(\bm{z}_{1:n}))}{\log n} \leq \beta < 1

表示保持与过度压缩缓解

命题(表示保持与梯度路径减少):

  1. 保持表示:存在输入族使得 ∥vn(L)−vn+1∗(L)∥1≥c\|\bm{v}_n^{(L)} - \bm{v}_{n+1}^{*(L)}\|_1 \geq c 对所有 nn 成立
  2. 缓解过度压缩:有效梯度路径缩放为 O(sL)O(s^L) 而非 O(nL)O(n^L)

ASEntmax

学习到的位置

问题:固定 α 和温度在长上下文中可能过于稀疏或过于密集

解决方案:自适应可缩放 entmax(ASEntmax):

ASEntmax(z)=α-entmax((δ+β(log⁡n)γ)z)\text{ASEntmax}(\bm{z}) = \alpha\text{-entmax}((\delta + \beta(\log n)^\gamma)\bm{z})

其中 β,γ,δ∈R\beta, \gamma, \delta \in \mathbb{R} 为头特定的标量:

β=softplus(Xwβ)∈R+n,γ=stanh⁡(Xwγ)∈(−s,s)n\bm{\beta} = \text{softplus}(\bm{X}\bm{w}_\beta) \in \mathbb{R}_+^n, \quad \bm{\gamma} = s\tanh(\bm{X}\bm{w}_\gamma) \in (-s, s)^n

关键性质:

  • 当 β=0\beta = 0 时恢复标准 α-entmax
  • γ>0\gamma > 0:温度随序列长度缓慢上升
  • γ<0\gamma < 0:温度随序列长度下降,抵消 logit 范围增长

与位置编码的交互

注意力分布

不同位置编码下的 α-entmax 行为:

  • NoPE:内容驱动的稀疏性
  • ALiBi:注意力窗口,有明确截止
  • RoPE:频率依赖模式,可能有周期性死区

NAPE(NoPE + ALiBi):

  • 一半头使用 ALiBi 诱导局部偏好
  • 一半头使用 NoPE,更内容驱动
  • 特别适合长度外推:ALiBi 头维持一致的局部感受野,NoPE 头允许检索远程证据

模型组件

组件说明关键参数
α-entmax稀疏注意力变换α > 1,阈值 τ
ASEntmax自适应缩放 entmaxδ, β, γ(头特定)
NAPE混合位置编码NoPE + ALiBi
AdaSplash高效 entmax 内核GPU 加速

训练流程

合成任务设置

  • 小型 decoder-only Transformer
  • 尽可能少的层数
  • α = 1.5(Entmax 和 ASEntmax)
  • δ = 1(SSMax 和 ASEntmax)
  • NAPE 作为默认位置编码

语言建模设置

  • 420M 参数 decoder-only 模型
  • LLaMA 3 架构
  • DCLM-Edu 数据集,77B tokens
  • 上下文长度 n = 2048

四、核心创新

创新点说明理论/实验依据
非分散性α-entmax 注意力分布熵有界 O(log⁡s)O(\log s)命题 3.2
表示保持维持 token 表示区分性命题 3.3
过度压缩缓解梯度路径从 O(nL)O(n^L) 到 O(sL)O(s^L)命题 3.3
ASEntmax自适应可缩放 entmax公式 8-10
NAPENoPE + ALiBi 混合位置编码实验验证

五、实验结果

合成任务

长上下文泛化

评估设置:训练长度 64,测试长度最高 1024×

任务方法ID2×4×16×64×256×1024×
MQMTARSoftmax100.0100.0100.099.597.880.23.0
SSMax99.9100.099.999.698.390.626.7
Entmax100.0100.0100.099.292.766.89.3
ASEntmax100.0100.0100.099.799.699.095.3
ReverseSoftmax100.036.00.0----
SSMax100.054.60.0----
Entmax100.099.086.028.50.2--
ASEntmax100.0100.099.896.456.7--

关键发现:

  • ASEntmax 在极端长度下显著优于其他方法
  • 在 MQMTAR 上实现 1000× 长度外推(95.3% 准确率)
  • 固定 α-entmax 在极端长度下可能过于稀疏

语言建模

短上下文评估

方法Lambada (PPL)LambadaHellaSwagPIQAArc-C
Softmax52.430.933.165.125.6
SSMax48.931.632.965.125.0
Entmax47.932.132.863.624.6
ASEntmax41.634.333.463.826.0

结论:ASEntmax 在短上下文上保持或优于 softmax。

长上下文困惑度

方法ArXiv (4K)ArXiv (8K)ArXiv (16K)PubMed (4K)PubMed (8K)PubMed (16K)
Softmax13.8712.4612.7115.5915.3118.23
SSMax13.7412.2912.3115.1413.7514.72
Entmax13.3611.0410.0714.7912.8613.02
ASEntmax13.3110.8910.0114.7612.6112.90

结论:ASEntmax 在 8× 训练长度下仍保持下降的困惑度趋势。

RULER 检索任务

方法S-NIAH-1 (4K)S-NIAH-1 (8K)S-NIAH-1 (16K)S-NIAH-2 (4K)S-NIAH-2 (8K)
Softmax94.211.40.84.80.0
SSMax99.292.075.264.414.8
Entmax89.021.61.264.87.2
ASEntmax100.099.897.483.225.4

结论:ASEntmax 在 8× 长度外推下保持 97.4% 检索准确率。

与现有方法对比

特性ASEntmaxSoftmaxSSMaxα-entmaxTop-K
注意力分散有界完全分散部分缓解有界有界
表示保持✓✗部分✓✗
过度压缩缓解O(sL)O(s^L)O(nL)O(n^L)O(nL)O(n^L)O(sL)O(s^L)O(kL)O(k^L)
自适应缩放✓✗✓✗✗
长度外推最佳差中等中等差

六、相关工作

注意力分散

方法关键特性局限性
Softmax密集分布完全分散
SSMaxlog⁡n\log n 缩放未解决稀疏性
Adaptive Temperature学习温度未解决根本问题
α-entmax稀疏分布固定 α
ASEntmax自适应稀疏本文贡献

稀疏注意力

方法关键特性局限性
Longformer结构化模式固定模式
BigBird随机 + 局部 + 全局固定模式
Top-K动态稀疏不可微分
α-entmax可微分稀疏固定 α
ASEntmax自适应可微分稀疏本文贡献

七、总结

核心贡献

  1. 理论分析:证明 α-entmax 的非分散性、表示保持和过度压缩缓解
  2. ASEntmax:自适应可缩放 entmax,根据序列长度调整稀疏性
  3. NAPE:NoPE + ALiBi 混合位置编码
  4. 1000× 长度外推:在合成任务上实现 95.3% 准确率
  5. 8× 语言建模外推:保持下降的困惑度趋势和 97.4% 检索准确率

技术影响

  • 长上下文泛化:直接解决注意力分散的根本原因
  • 理论基础:为稀疏注意力提供理论保证
  • 实用价值:ASEntmax 可直接替换 softmax
  • 高效实现:使用 AdaSplash 内核,无额外开销

局限性

  • 全局排序任务:Sort 等任务仍难以长度外推
  • 模型规模:仅评估 420M 参数模型
  • 位置编码依赖:NAPE 作为默认,其他 PE 的适用性需进一步研究
  • 稀疏内核效率:依赖 AdaSplash 实现

八、参考资源