花几十亿 token 把 LLM 线性化,结果输给了改一行注意力掩码?
你有没有过这种体验:辛辛苦苦把一个 Llama 蒸馏成线性注意力模型,又是 attention transfer 又是 LoRA 微调,烧了几十上百亿 token 的训练预算,最后跑分一看——还打不过一个推理时直接改注意力掩码、零训练的滑窗注意力?
这不是段子,是这篇论文的核心结论。
核心摘要:这两年"把预训练 LLM 后训练改造成线性注意力"是一条很热的研究路线,LoLCATs、MOHAWK、Llamba 这些工作一个比一个精巧。但这篇来自微软 ASG 的论文(arXiv: 2608.28444)泼了一盆冷水:作者把市面上十几种线性化方法和最简单的带 attention sink 的滑窗注意力(SWA with sinks)放到同一个擂台上,发现 SWA 在 11 个模型中的 9 个上平均分最高,而且一个 token 的训练都不用。长上下文任务上差距更夸张——Needle-in-a-Haystack 和 BABILong 上 SWA 的成绩是线性化模型的 2 到 10 倍。说实话,我读完的第一反应是:这条赛道上很多论文的 baseline 选得有点太"体贴"了。这篇论文的价值不在于提出新方法,而在于补上了那个所有人都有意无意绕开的对照实验。
论文信息
- 标题:Sliding-window beats linear attention
- 作者:Alexia Jolicoeur-Martineau、Rhea Sanjay Sukthanker、Pashmina Cameron、Emy Gervais
- 机构:Microsoft / Applied Sciences Group (ASG)(Emy Gervais 为独立研究者)
- 链接:https://arxiv.org/abs/2608.28444
- 提交时间:2026 年 8 月 28 日
🎯 问题动机:线性化改造,到底有没有跟对 baseline 比?
先交代下背景。标准 softmax 注意力的老问题大家都熟:每多生成一个 token,KV cache 就得一直囤在显存里,成本和序列长度平方挂钩。于是社区想了很多招把它"降维"成线性复杂度,其中一条路线特别吸引人——不改预训练,直接后训练把现成的 LLM 改造成线性注意力。
这条路线这两年出了不少明星工作:
- LoLCATs(Zhang et al., 2025):两阶段——先学一个特征映射让线性注意力模仿原 softmax 注意力的输出(attention transfer),再用 LoRA 微调把误差补上。只要 40M token 就能线性化 8B 模型,还顺手在层里混了一小段 SWA。
- MOHAWK、Llamba:把 Transformer 蒸馏成 Mamba 类的状态空间模型。
- SUPRA、Hedgehog、DiJiang、ARWKV、QLinAtt、QRWKV 等等,各路人马都有。
听起来很美好:花点小钱,模型从平方变线性,性能还号称 SOTA。
但作者注意到了一个不太对劲的地方——这些论文几乎从来不跟"带 attention sink 的滑窗注意力"比。
这里有个关键细节。普通的 SWA(只看最近 w 个 token)有个致命缺陷:一旦开头几个 token 滑出窗口,性能会灾难性崩盘。这就是 StreamingLLM(Xiao et al., 2024)当年发现的现象——开头几个 token 充当 attention sink,模型会把大量注意力质量堆在它们身上,把它们扔了,整个注意力分布就散了。所以工程实践里用 SWA 都会保留前几个 sink token。
而线性化论文们的对比对象,往往是没有 sink 的裸 SWA,或者干脆不比。赢一个注定会崩的 baseline,说服力能有多强?
这就是这篇论文要补的课:把 SWA with sinks 这个免费、免训练的方案,跟所有花真金白银训练出来的线性化方法正面刚一次。

图1:三种注意力掩码的直观对比。左边是完整的全注意力;中间是 LoLCATs 式混合——整段历史用线性注意力(绿),最近窗口叠加精确 softmax(红);右边是本文主角 SWA with sinks——保留最前面几个 sink token(第一列红块)加上一条对角滑窗带。注意右边方案一个可训练参数都不需要。
🧠 方法核心:SWA(w, s),简单到不像论文方法
本文的"方法"一句话就能讲完:推理时把全注意力的掩码换成"前 4 个 sink token + 最近 w−4 个 token 的滑窗",其他什么都不动。
作者用记号 SWA(w, s) 表示这个配置:
- w:窗口大小。短上下文实验用 64,长上下文实验用 128 / 256 / 512。
- s:sink 数量。所有实验固定为 4,即每个 query 永远能看最开头的 4 个 token。
没有 attention transfer,没有 LoRA,没有蒸馏,没有任何训练。就是在推理的时候改一下注意力掩码,用 FlashAttention 直接跑。
为什么这个朴素的方案可能很强?作者的逻辑其实挺顺的:线性注意力的问题不只是"表达力弱",更根本的是它必须自己学会记住什么、忘掉什么——把无限长的历史压缩进一个固定大小的循环状态,这个取舍本身就是个棘手的优化问题,所以线性化才需要那么多训练 token 去补。而 SWA 的思路简单粗暴:该扔的全扔,只留下最近的和最重要的开头,模型在预训练时学到的注意力模式基本原封不动地保留下来。权重没动过,自然就没有"忘掉怎么推理"的风险。
等等,你可能会问:窗口只有 64,那窗口外的信息不就彻底丢了吗?对,这正是 SWA 的软肋,也是线性注意力理论上该赢的地方。问题是——实验会告诉我们,理论上的优势兑现了多少。
🧪 实验:11 个模型、十几种线性化方法,一张擂台
实验设置我给作者点个赞,覆盖面相当扎实:
- 基座模型 11 个,从 Phi1.5-1.3B 一路到 Qwen2.5-72B-Instruct、Llama-3.1-70B,涵盖 Phi / Mistral / Llama / Qwen / QwQ 五大家族。附录还补了 Qwen3-8B、Phi-4-mini-reasoning、Phi-4-reasoning-plus。
- 对手十几种:SUPRA、Hedgehog、LoLCATs(+SWA)、Liger-GLA(+SWA)、MOHAWK、Mamba in the Llama、DiJiang、ARWKV、Llamba、QLinAtt、QRWKV6/7 等,附录又加了 Gated DeltaNet、GLA、QRWKV6 的 LoLCATs 式蒸馏版本。
- 为公平起见,不含部分全注意力层的纯线性/纯滑窗模型才上桌,混合模型不比。
- 任务:短上下文用 MMLU (5-shot)、ARC-C/E、HellaSwag、PIQA、WinoGrande;长上下文用 S-NIAH 三种大海捞针(0.5K 到 4K 上下文)和 BABILong QA1–QA5。
短上下文:零训练的 SWA 拿了 99 分
先看最能说明问题的 Table 1——性能恢复率(线性化模型分数 ÷ 原模型分数,%):
| 方法 | 微调 Tokens | 训练阶段 | MMLU 恢复率 | 六项平均恢复率 |
|---|---|---|---|---|
| SUPRA | 100B | 1 | 53.0 | 88.1 |
| Hedgehog | 40M | 2 | 36.9 | 73.9 |
| LoLCATs | 40M | 2 | 83.2 | 97.5 |
| Liger-GLA | 20M | 1 | 62.2 | 92.0 |
| MOHAWK | 3-5B | 3 | 56.9 | 92.4 |
| Mamba in the Llama | 20B | 2 | 67.7 | 86.7 |
| ARWKV | 60M/830M | 2/3 | 84.1 | 94.7 |
| Llamba | 8-12B | 3 | 91.5 | 98.6 |
| QRWKV6 | 350-700M | 3 | 92.4 | 99.1 |
| SWA(64, 4) | 0 | 0 | 93.2 | 99.0 |
看到 Tokens 那一列我有点绷不住。别人烧了 20M 到 100B 不等的训练 token,SWA 那行是个大大的 0——然后恢复率排第一梯队,MMLU 恢复率 93.2% 直接全场最高。
分模型的详细结果里,SWA 在 11 个对比案例中拿下 9 个的平均分第一。仅有的两个例外:Phi-1.5-1.3B 上 LoLCATs 以 62.5 对 62.4 险胜 0.1 个点(这在噪声范围内);Qwen2.5-32B-Instruct 上 QRWKV6 拿了 77.3,SWA 是 76.6。单看 MMLU,SWA 几乎全胜,唯一输给 DiJiang 一次(39.8 对 40.7)。
有意思的是附录 A.2 那组新实验:用 LoLCATs 同款两阶段蒸馏(约 0.1B token)去线性化 Qwen3-8B 和 Phi-4 系列的新模型,Gated DeltaNet、GLA、QRWKV6 全线崩盘——恢复率只有 55–75 分水平,MMLU 从 70+ 直接掉到 24–27。而 SWA(64,4) 依然是 95 分以上的恢复率。这说明线性化方法对新架构的泛化性本身就是个大问号,训练配方换个模型可能就失灵。
长上下文:差距大到不像一个量级的比赛
短上下文只能算"打平",真正拉开差距的是长上下文。Table 3 是 Llama-3.1-8B 上的 S-NIAH 大海捞针(S-NIAH-3 是最难的一种针),window 256 这一档:
| 方法 | S-NIAH-3 @0.5K | @1K | @2K | @4K |
|---|---|---|---|---|
| SWA(256,4) | 100 | 68.0 | 50.2 | 19.6 |
| LoLCATs(+SWA) | 100 | 30.6 | 6.0 | 2.2 |
| Liger-GLA(+SWA) | 97.6 | 1.0 | 3.8 | 0.6 |
| 全注意力(上界) | 100 | 99.8 | 100 | 99.8 |
4K 上下文下,SWA 还能找回 19.6% 的针,LoLCATs 只剩 2.2%,Liger-GLA 基本归零。注意 LoLCATs 自己内部也带 SWA 窗口,但它的线性部分不但没帮上忙,反而拖了后腿——说实话这个结果挺讽刺的,线性注意力理论上能"记住"窗口外的东西,实际却好像把模型本来就有的远程检索能力给弄丢了。
BABILong(QA1–QA5 平均,window 256)也是一样的剧本:
| 方法 | 0K | 1K | 2K | 4K |
|---|---|---|---|---|
| SWA(256,4) | 55 | 20 | 19 | 15 |
| LoLCATs(+SWA) | 56 | 22 | 10 | 3 |
| 全注意力(上界) | 74 | 70 | 67 | 60 |
4K 时 SWA 保住 15 分,LoLCATs 掉到 3 分。作者的总结是 2 到 10 倍的差距,从表里看这个数字毫不夸张。
我对这组结果的理解是:大海捞针类任务极度依赖精确的远程检索,而预训练模型的这个能力编码在 softmax 注意力的"尖峰"分布里。线性化改造无论蒸馏得多好,循环状态对历史的压缩就是有损的,针的踪迹很容易被抹掉。SWA 虽然窗口外的信息也丢了,但 sink token 稳住了注意力分布,窗口内的检索还是原汁原味的。丢得干脆,反而比"假装记得"强。
速度与显存:免费的还最快
4.3 节在 NVIDIA RTX PRO 6000 Blackwell 上测了 4 层 Transformer(embedding 1024、16 头)从 128 到 256K 上下文的解码吞吐和显存。FA 和 SWA 走 FlashAttention,线性注意力走 ThunderKittens 核。具体数字画在图里(正文 Figure 2、附录 Figure 3–4),结论很干脆:
- 速度:全注意力过 1K 后吞吐随长度下滑,其余方法基本持平;SWA 是全场最快的(窗口 64 比 512 更快,但都比其他方案快)。
- 显存:FA 线性增长;SWA 涨到窗口大小后恒定。显存从低到高排序是 SWA(64) \lt 线性注意力 \lt 线性+SWA 混合 \lt SWA(512)。
也就是说窗口开到 512 以内,SWA 又最快、显存又最少、成绩还最好。推理成本这关,线性化连"理论上该赢"的阵地也没守住。
📊 我的判断:这不是新方法,是一面照妖镜
坦率地讲,这篇论文没有任何"新东西"。SWA with sinks 是 StreamingLLM 2024 年就有的方案,本文只是把它当成了对照组。
但这恰恰是我觉得它值钱的地方。
它戳破了一个基准设定的系统性偏差。 线性化这条赛道的论文,对比对象长期停留在"裸 SWA"或者根本不跟 SWA 比。而裸 SWA 会在 sink token 滑出窗口后灾难性崩盘,这是 2024 年就知道的事。赢一个已知会输的对手,发出来的"SOTA"水分有多大,这篇论文用 11 个模型量化了答案。以后线性化论文再不带 SWA with sinks 当 baseline,审稿人该打回去了。
对工程实践的建议非常直白:如果你现在想在有限显存里降推理成本,别再折腾线性化改造了,直接上 SWA with sinks。零训练成本、零质量风险、FlashAttention 开箱即用。作者的措辞一点不客气——"我们强烈建议从业者改用 SWA,而不是后训练线性模型"。
当然,也要给线性注意力说句公道话,这篇论文没有否定整条路线,它否定的是"后训练改造"这条路。线性注意力的真正主场可能在两头:一是从头预训练的线性/混合架构(Kimi Linear、Qwen3-Next 这类工作已经展示了 with-scale 的竞争力),二是超长上下文下窗口内的信息确实不够用的场景。论文自己也承认局限:没测后训练的 SWA(Yu et al., 2025 已经证明 SWA 后训练还能再涨)、没碰混合架构、没测 agentic 这类更复杂的指标。
还有一个值得警惕的点:S-NIAH 和 BABILong 说到底都是"检索型"长上下文,恰好是 SWA+sink 相对最不吃亏的类型。如果是需要对全文做稠密聚合理解的任务(比如整本书的摘要一致性),线性状态的"全局摘要"会不会反而有用?这篇论文没回答,我觉得这是后续最值得追的实验。
顺嘴提一句论文里埋的彩蛋:免训练 SWA 的强基线效应不限于文本。作者引用说 Sliding Tile Attention 在 HunyuanVideo 视频生成上,用相同采样步数恢复了 97% 的 VBench 分数、提速 3.53 倍。同一个剧本在扩散模型上又演了一遍。
🔚 收尾
这篇论文给我的最大启发是个研究方法论层面的提醒:当一个方向的所有论文都默契地回避某个简单 baseline 时,那个 baseline 往往就是这个方向的皇帝新衣。
如果你在部署 LLM,今天就可以做的事:把推理框架的注意力切成 sliding window + 4 个 sink token,KV cache 立刻从无限增长变成恒定大小,质量损失按这篇论文的数据平均只有 1 个点左右。如果你在做线性注意力研究,这篇论文是你绕不开的新 baseline——打不过 SWA(64,4) 的线性化方法,故事就得重新讲了。
觉得有启发的话,欢迎点赞、在看、转发。跟进最新AI前沿,关注我