跳转到内容

Linear Attention, Still: Why Mamba-style Models Plateau

待复核

这篇 2026 年的论文问的是:把注意力(attention)改成线性复杂度、或换成 Mamba 这类状态空间模型(SSM)之后,为什么长上下文任务常常先快后慢、收益不再涨?日常类比:把十字路口改成单行快车道——平时车流顺了,但一旦多条干道同时汇入、司机要临时改道,单行道反而堵死;你需要的是「平时走快车道、关键路口再开信号灯」。

先把两个词落地:

  • 注意力:生成每个新词时,模型可以回头「看」序列里任意位置,像全班举手对答案
  • 线性注意力 / SSM:不再两两对看,而是把历史压进固定大小的状态里往前滚,像传话游戏

线性化把每步代价从大约 O(n²) 压到 O(n),显存更省;Mamba/SSM 擅长平滑、长程的规律信号。论文的核心判断不是「线性化没用」,而是:全盘替换全局注意力后,多主题跳转、跨段指代这类任务容易进入平台期,更稳的做法是按任务混合。

不理解这篇工作,下面这些现象会像玄学:

  • 为什么公开吞吐榜上 Mamba 很亮眼,换到多文档问答又容易掉点
  • 为什么序列拉到 16k/32k token 后,纯线性方法的准确率涨幅明显变缓
  • 为什么新工作又回到「Transformer + SSM 混合」,而不是彻底换掉注意力
  • 为什么只看 FLOPs / tokens-per-second 会高估线性化,却低估语义跳转成本

论文把对比收成三条主线:

  1. 表达形态不同:全局注意力像「全班举手对答案」——任意两个位置都能直接对齐;Mamba 像「传话游戏」——信息经状态往前滚,规律信号稳,突然换题容易丢。类比:点名册 vs 接力棒。

  2. 效率账很好算:线性注意力 / SSM 在长序列训练与推理上更省显存、吞吐更高,部署成本更低。类比:同样油箱,高速巡航更远。

  3. 平台期从哪来:当上下文主题多峰、指代稀疏、跨段跳跃多时,单靠递推状态装不下「谁在跟谁对齐」,收益曲线变平。作者建议:局部窗口用线性模块,跨段转场再注入注意力。

一句话记:复杂度赢在账本上,平台期输在信息路由上

案例 1:长文档问答里的三种配置

Section titled “案例 1:长文档问答里的三种配置”

把一篇约 24k token 的多章节手册问答,想成三种「路由策略」(教学对照,不是替你跑通某家内部实验):

A 全注意力:每段都能互相对齐 → 跨章指代准,延迟峰值高
B 全 Mamba/线性:状态一路滚 → 省算力,跨章「它/该接口」易指错
C 混合:每 ~1k token 或章节边界触发一次注意力补齐 → 准度与延迟折中

逐部分解释

  • A 对应「全局点对点」;B 对应「纯递推」;C 对应论文主张的按粒度混合
  • 观察指标别只看 tokens/s,还要看跨段指代是否答对
  • 章节边界比固定字符切窗更接近「语义块」

案例 2:代码补全的局部规律 vs 远距离约束

Section titled “案例 2:代码补全的局部规律 vs 远距离约束”
# 局部:缩进、括号、重复 API —— SSM/线性往往很强
def read_cfg(path: str) -> dict: ...
# 远处:50 行外的类型/不变式 —— 更需要显式对齐
cfg = read_cfg(p)
assert isinstance(cfg["timeout"], int) # 跨函数约束

逐部分解释

  • 前半像「顺坡推车」,递推状态吃得消
  • assert 依赖远处定义时,混合模型在跨函数边界补一次注意力更稳
  • 评测要分开报:行内补全 vs 跨文件引用

案例 3:日志异常检测的周期与交织

Section titled “案例 3:日志异常检测的周期与交织”
正常:每隔固定间隔出现 heartbeat / gc 模式 → 线性/SSM 易建模
异常:偶发错误码与另一服务的告警交叉出现 → 需要跨片段对齐
策略:基线用 SSM 压噪声;主题跳转率升高时提高 attention 注入比例

逐部分解释

  • 周期性强 → 平台期来得晚;交织跳转多 → 更早需要注意力
  • 「false alarm 下降」要和「漏报」一起看,不能只报吞吐
  1. 把吞吐当成准确率代理:训练更快不等于问答/补全更准,尤其在多跳指代集上。
  2. 只说「平台期」不拆任务形态:平滑长序列与多主题切换是两类题,混着归因会选错架构。
  3. 混合比例拍脑袋:注意力太少像局部最优,太多又回到显存墙;应按主题跳转率调,而不是固定全局比例。
  4. 评测集偏吞吐:只压长序列速度会放大线性优势,真实产品还要覆盖跨段语义跳转。

适用

  • 序列明显长、信号相对平滑,且有延迟/显存预算(日志、传感、部分代码局部补全)
  • 能接受混合结构:局部线性、跨段注意力,或 encoder/decoder 分工
  • 多阶段流水线里,可按检索 / 重排 / 生成分别分配计算预算

不适用

  • 核心依赖全局 token 对齐的跨篇问答、长链因果追踪(例如合同条款互相引用)
  • 极短序列(线性复杂度优势几乎体现不出来,额外状态开销不划算)
  • 强符号、强对齐的推理路径(某些程序分析 / 形式推导),纯递推往往不够
  • 团队还没有稳定的长序列评测集时,不宜只凭吞吐榜拍板换架构
  • 2017:Transformer 靠全局注意力在机器翻译等任务普及
  • 2020–2023:长上下文需求推高线性注意力与高效注意力变体
  • 2023–2025:Mamba 等 SSM 路线因吞吐优势快速进入开源讨论
  • 2026:本篇把焦点从「谁更快」转到「何时平台期、如何混合」,把工程折中写成主结论
  • 同期讨论里,「混合不是妥协,而是按语义块分配预算」逐渐成为默认工程叙事
  1. 速度与表达力不能只二选一,关键是序列的「跳转形态」是否匹配算子
  2. 线性注意力 / SSM 擅长局部与规律结构,不是全局注意力的免费替代品
  3. 平台期常常是任务与架构失配,不等于模型「坏掉」
  4. 混合应按语义块 / 段落边界分配注意力预算,而不是固定一个全局比例
  5. 评测要同时覆盖吞吐与跨段鲁棒性,否则很容易高估线性化收益
  • 论文条目:arXiv:2605.30621《Linear Attention, Still: Why Mamba-style Models Plateau》(2026)
  • attention —— 全局注意力与近似注意力的对照入口
  • transformer —— 仍是多数任务的强基线
  • mamba —— 状态空间模型路线(若仓库已有条目)
  • llm-inference —— 推理预算与延迟权衡
  • flash-attention —— 另一条「保表达、抠实现」的长上下文路线,可与线性化对照
  • attention —— 对照点对点对齐与线性近似
  • transformer —— 全注意力基线与混合方案中的「信号灯」
  • mamba —— SSM / 选择性状态空间的代表路线
  • seq2seq —— 顺序建模任务边界
  • rag —— 长文档问答常与检索分段一起设计
  • llm-inference —— 吞吐、显存与准确率的三方权衡
  • flash-attention —— 不改算法复杂度、靠 IO 友好实现拉长上下文

(暂无反向链接)