稀疏注意力技术深度解析
自从2017年Transformer模型问世以来,基于自注意力(Self-Attention)的架构在自然语言处理、计算机视觉、多模态理解等众多领域取得了主导地位。其核心机制——缩放点积注意力(Scaled Dot-Product Attention)——允许序列中任意两个位置直接交互,从而捕获长程依赖关系。这种全局感受野是卷积神经网络(CNN)与循环神经网络(RNN)难以企及的优势。
然而,全局注意力带来了致命的平方复杂度问题。设输入序列长度为nn,则注意力矩阵A∈Rn×nA∈Rn×n,计算复杂度为O(n2⋅d)O(n2⋅d)(其中dd为隐层维度),内存占用亦为O(n2)O(n2)。当nn从常见的2k(2048)扩展至32k、128k乃至1M(百万级)时,n2n2 项急剧膨胀:32k序列的注意力矩阵包含逾10亿个元素,显存需求超过40GB(以FP32计),远超单卡A100/H100的80GB极限。更严峻的是,注意力分数的计算涉及softmax归一化,要求完整矩阵在计算图中留存,反向传播时额外内存占用翻倍,这使得标准Transformer在长文本场景下寸步难行。
稀疏注意力(Sparse Attention)的核心思想:自然语言中,任意两个token之间的语义关联强度服从长尾分布。Jurafsky等人在语言学统计中早已指出,英语中超过80%的共现关联分布在前后50个词窗内;中文同样呈现强局部性。绝大多数字词仅与邻近上下文存在语法约束(如主谓一致、动宾搭配)和局部语义完形,而长距离依赖仅集中于三类显式关系:指代消解(代词回指前文实体)、篇章逻辑连接(“然而”“因此”引导的跨段推理)以及实体共现(同一命名实体在全文中分散出现)。稀疏注意力正是利用这一结构性先验,显式约束每个token的交互子集,将冗余的O(n2)O(n2)配对截断,将复杂度拉回线性或亚线性区间,使超长序列训练与推理成为可能。
本章将沿技术路线演进与工程落地权衡两条主线,系统拆解四类主流稀疏注意力范式:滑动窗口局部注意力、块分块稀疏、全局锚点稀疏及分块循环注意力。我们将深入剖析Longformer、Mistral-7B、BigBird、Transformer-XL等标杆模型的底层逻辑,并以量化视角给出不同业务场景下的选型决策表。
标准全局注意力可视为在序列的完全图上定义注意力权重:
每个queryii需要与全部nn个key计算点积。稀疏注意力引入静态掩码矩阵M∈{0,1}n×nM∈{0,1}n×n,仅在Mij=1Mij=1的位置允许交互:
本质上,稀疏注意力是在不改变Transformer可微架构的前提下,通过掩码设计裁剪计算子图。从图论视角看,每个token是节点,注意力是边;稀疏策略致力于构造一个边数O(n)O(n)或O(nlogn)O(nlogn)的稀疏图,同时保证图的连通直径足够小,使得任意两个token之间存在较短的语义路径(通常不超过O(logn)O(logn)跳)。
根据掩码生成策略与交互模式,可将主流稀疏注意力归入四个象限(见表8.1):
表中ww为窗口长度,bb为块大小,LsegLseg为分段长度。
四类范式并非互斥,现代大模型常采用混合策略:底层使用滑动窗口捕获局部语法,顶层插入全局token捕获篇章主题,例如Qwen-72B在长上下文版本中即融合了窗口注意力与稀疏全局锚点。
滑动窗口注意力是最直观的稀疏化方案,其核心假设是:语言局部性(linguistic locality)远强于全局性。对于序列位置ii,仅允许其关注前后各ww个位置,即交互区间为[i−w,i+w][i−w,i+w]。掩码矩阵呈对称带状:
单token的交互数量恒定为2w+12w+1(边界处截断),因此整体计算复杂度从O(n2)O(n2)骤降至O(n⋅w)O(n⋅w)。当w≪nw≪n时,这是严格的线性复杂度。在具体实现中,窗口注意力通常不显式构造完整n×nn×n掩码矩阵,而是采用分块对角稀疏矩阵乘法(block-diagonal sparse matmul),利用GPU的共享内存(shared memory)加载相邻token的KV到片上缓存,大幅减少全局内存访问。
关键工程参数:窗口大小ww决定了模型的有效感受野(receptive field)。理论上,通过堆叠LL层Transformer层,感受野可扩张至L×wL×w(若各层窗口对齐)或更复杂的指数扩张(若采用膨胀窗口,见下文)。Mistral-7B采用w=8192w=8192,32层堆叠后理论感受野覆盖整个32k上下文——但需注意,这是线性扩张,而非全局注意力的全连通。
Mistral-7B是当前开源社区中滑动窗口注意力的标杆实践。其创新不仅在于将ww设为8192,更在于推理阶段的滚动KV缓存(rolling KV cache)策略。
在自回归生成中,标准Transformer需缓存所有历史token的KV以加速解码,缓存大小随序列长度线性增长。Mistral仅保留最近ww个token的KV,当新token生成时,最旧的KV被逐出缓存。这一策略使得KV缓存内存占用封顶于O(w)O(w),而非O(n)O(n)。具体数据:对于batch size=1、层数32、隐层维度4096的模型,窗口8192对应的KV缓存约占用2×32×8192×4096×2bytes≈4.3GB2×32×8192×4096×2bytes≈4.3GB(FP16),若采用标准全局缓存,32k序列将飙升至17GB以上。滚动缓存机制是Mistral能够在大规模部署中高效支持32k上下文外推的核心原因。
但滚动缓存亦带来工程挑战:因果掩码与窗口掩码的交叠。在自回归生成时,位置ii不能看到未来位置j>ij>i,同时也不能看到距离超过ww的历史位置。掩码定义为:
即仅允许关注当前及之前的ww个token。这要求注意力实现同时应用上三角因果掩码和带状掩码,在FlashAttention等高效实现中需自定义mask逻辑。
Longformer在基础滑动窗口之上引入了膨胀窗口(dilated window)机制,用以在不增大ww的前提下扩大感受野。其思想源自空洞卷积(dilated convolution):窗口内并非连续选取ww个相邻token,而是以一定步长dd间隔采样。例如,当d=2d=2时,tokenii关注的索引为i±1,i±3,i±5,…i±1,i±3,i±5,…。膨胀机制使单层感受野线性扩张至d×wd×w,同时计算量不变。
Longformer在实际部署中采用多尺寸膨胀窗口叠加:底层使用小窗口(w=256,d=1w=256,d=1)捕获细粒度局部特征,高层使用大膨胀窗口(w=256,d=8w=256,d=8)捕获中等距离依赖。这种多尺度设计在不增加算力的前提下,使模型具备了层级化的感受野,类似于卷积神经网络中的多尺度特征金字塔。
尽管滑动窗口高效,但纯窗口模型存在理论上的长程失联(long-range disconnection)问题。考虑一个跨段落的指代关系:“第三章提出的定理...(中间隔了5000个token)...这个定理的证明如下”。若w=1024w=1024,跨越5000个token的指代链接将完全被屏蔽,模型无法建立“这个定理”与“第三章提出的定理”之间的语义桥梁。
即使通过多层堆叠实现感受野扩张,但信息传递路径长度等同于层数,梯度在多层传递中面临衰减风险,且模型无法在一次前向传播中直接比较远距离token——这种直接比较在全局注意力中仅需一步。因此,纯滑动窗口不适用于篇章级语义理解任务。
补救方案是混合架构:在窗口基础上插入少量“全局特殊token”,允许这些锚点与所有token交互,由它们充当远程信息的“中继站”。
Longformer(AllenAI,2020)是针对长文档编码设计的Transformer变体,其注意力掩码由三部分复合构成:
滑动窗口注意力(占比~95%):所有普通token仅与局部窗口内交互,窗口大小w=512w=512。
全局注意力(占比~5%):预定义的全局token——包括[CLS]分类标记、每个句子的首词、以及段落分隔符——与序列中所有token进行双向注意力(即它们的query可以attend到全部位置,同时全部位置的query也可以attend到它们)。
膨胀窗口(可选项):在部分层中启用d=2d=2或d=4d=4的膨胀。
全局token的数量不随序列长度增长(例如,仅每句一个或固定数量),因此额外计算开销仅为O(g⋅n)O(g⋅n),其中gg为全局token数目(通常 < 100)。这使得Longformer在保持O(n)O(n) 复杂度的同时,具备了全局长程信息汇聚能力。实验表明,Longformer在TriviaQA(长文档问答)和Hyperpartisan(长文档分类)上相比RoBERTa-base性能分别提升3.2%和2.1%,同时支持4096长度的文档直接输入(RoBERTa-base仅支持512)。
注意:Longformer主要面向Encoder-only场景(如文档分类、问答),其全局token设计依赖于预先知道完整序列,无法直接用于因果语言模型(Decoder-only),因为自回归生成无法预知未来token。但对于BERT类模型,这是极佳的效率-性能帕累托前沿。
块稀疏注意力将序列分割为固定大小的连续块(block),每个块长度为bb(通常取b=16,32,64b=16,32,64,与GPU的warp大小或tile大小对齐)。块级注意力矩阵是粗粒度的m×mm×m矩阵(其中m=n/bm=n/b),仅允许部分块对之间存在注意力。
具体而言,对于块BiBi和BjBj,若块级掩码M~ij=1M~ij=1,则块BiBi中的所有token与块BjBj中的所有token执行完整的稠密注意力(即块内与跨块全连接)。整体复杂度为:
其中ρρ为每个块平均连接的块数量(稀疏度)。若ρρ为常数,则复杂度线性于nn。
块稀疏的最大工程优势:现代GPU(尤其是NVIDIA A100/H100)的张量核心(Tensor Core)对稠密矩阵乘法(GEMM)极度优化,但对于不规则的稀疏索引访问效率极低。块稀疏通过固定分块,将不规则索引转化为规则分块矩阵,使得注意力计算可以调用高度优化的cublasGemmEx进行批量分块矩阵乘法。此外,块级掩码可以复用Transformer引擎的稀疏性支持(如NVIDIA的2:4结构化稀疏),进一步提升吞吐。
OpenAI在2019年提出的Sparse Transformer是块稀疏的开山之作。其采用两种块间连接模式:
固定跨度(Fixed Stride):每个块仅与前序rr个块连接(rr为步长超参数)。例如,若块大小b=64,r=1b=64,r=1,则当前块仅关注前一个块。这种局部邻接结构本质上等同于滑动窗口,但以块为单位进行批量化计算。
全局块(Global Blocks):在固定跨度基础上,每隔固定间隔选取一个块作为全局块,该块与所有其他块全连接,起远程信息路由的作用。
Sparse Transformer在CIFAR-10图像生成和WikiText-103语言建模上展示了比全局Transformer更快的收敛速度(因降低计算负担,允许更大batch size),但其固定分块边界导致语义割裂问题:若句子边界与块边界不对齐,同一句子的token被分到不同块,跨块注意力的步长限制可能切断完整句法结构。
GPT-3在其最大的175B模型中,部分变体采用了块稀疏注意力以支持更长的上下文(论文中提及的稀疏版GPT-3支持4096长度)。其具体模式未完全公开,但后续的Megatron-LM(NVIDIA)开源了高效的块稀疏注意力实现,采用本地块稀疏 + 全局块稀疏的双层设计:底层64个token为块粒度,块内稠密,块间通过可学习的块级路由(learned block routing)决定哪些块对交互,该路由权重在训练中学习得到,形成数据依赖的稀疏模式。
块稀疏在预训练阶段尤其有优势:由于预训练语料通常以固定长度段落截断(如2048/4096),块稀疏能保证每个块内的完整语义,且在分布式训练中,块划分天然适配序列并行(Sequence Parallelism),可将不同块分配到不同GPU,显著降低通信开销。
块稀疏的核心短板有二:
其一,语义割裂(Boundary Fragmentation)。自然语言的语义边界(句子、段落、篇章)是软性的,而块边界是硬性的。若一个关键短语或核心实体恰好被分块切断,其跨块注意力可能因步长限制而部分丢失。虽然增大块大小(如b=128b=128)可缓解,但会提高块内稠密计算的平方项,损失效率。
其二,短序列惩罚(Short-Sequence Penalty)。当n<1024n<1024时,块稀疏的稀疏矩阵表示和块索引计算引入的额外开销超过其节省的浮点运算,导致实际推理速度慢于标准全局注意力。这是所有稀疏注意力方案的共性问题:稀疏方案仅在nn超过临界阈值(通常在2k~4k)时才有正向收益。
BigBird(Google Research, 2020)是稀疏注意力理论最完备的工作,它将注意力图构造视为随机图(random graph)问题。BigBird的掩码由三部分组合,保证最终注意力图满足扩张图(expander graph)性质,即任意节点子集的邻域扩张率有下界,从而图直径在O(logn)O(logn)级别。
BigBird掩码构成:
局部窗口(Window):每个token关注其左右各w/2w/2个邻居,复杂度O(n⋅w)O(n⋅w)。
全局token(Global):选取gg个固定位置(通常为序列开头若干个,如[CLS]及前n个token)作为全局锚点,与所有token全连接,复杂度O(g⋅n)O(g⋅n)。
随机采样(Random):每个token额外随机选取rr个token进行交互(可以是全局任意位置,不限于局部窗口),复杂度O(n⋅r)O(n⋅r)。
总复杂度为O(n⋅(w+g+r))O(n⋅(w+g+r)),若w,g,rw,g,r均设为常数,则为严格线性。BigBird论文中推荐w=64,g=2,r=32w=64,g=2,r=32,总交互数约为标准注意力的5%~10%。理论分析表明,随机采样保证了任意两个token之间存在高概率的短路径(路径长度约logrnlogrn),使得远程依赖信息可以通过随机跳转的中继传递,弥补了纯窗口丢失全局连通性的缺陷。
BigBird的O(n)O(n) 复杂度使其可以理论上处理任意长序列。Google的原始实现已成功将BigBird应用于基因组序列(长度 > 100k)和长篇书籍摘要(长度 64k)。在长文档摘要任务(arXiv摘要生成)上,BigBird在ROUGE分数上比Longformer提升约1.5个点,归因于随机跳转带来的额外信息路由能力。
然而,需注意BigBird的平方根复杂度变体:若将随机采样数量rr设置为nn,则总复杂度变为O(nn)O(nn),此时模型能力更强(随机连接更多),但仍远低于O(n2)O(n2)。该变体支持更大规模模型,但在n=1Mn=1M时,n=1000n=1000,总交互数约为109109,与标准注意力在n=31623n=31623时的计算量相当,因此在超大规模场景下仍需谨慎权衡。
ETC(Extended Transformer Construction,Google, 2020)是与BigBird同期提出的另一全局-局部混合模型,但ETC的全局token选取策略更依赖于外部先验(如段落边界、命名实体标注),而非BigBird的固定位置+随机采样。在实际工程中,BigBird因无需额外预处理、即插即用,在通用NLP任务中更受欢迎。ETC在需要结构化输入的领域(如法律文书的结构化摘要)表现更优,但其依赖领域知识限制了泛用性。
启示:全局锚点的选择是精度与工程简便性的权衡。若业务数据有明确的结构化分段(如合同中的条款章节、论文中的各节标题),则显式将这些结构锚点设为全局token可带来最佳收益;若无结构化先验,则BigBird的固定全局+随机策略是稳健的默认选择。
以上三类稀疏策略均要求在单次前向传播中处理完整序列(尽管稀疏),因此依然受限于显存能容纳的最大nn。对于无限长度流式文本(如实时对话流、持续生成的超长小说),分段截断是唯一工程可行路径。但分段截断最严重的问题是上下文断裂(context fragmentation):将一个长文档机械切分为固定长度(如512)的段落,段落之间的语义关联被完全切断,跨段落的指代、主题延续全部丢失。
分块循环注意力的核心理念是:保留上一个分段的隐层特征(hidden states),将其作为当前分段处理时的“全局记忆”注入注意力机制,以此架设段间桥梁,同时不增加当前分段内的平方复杂度。
Transformer-XL(CMU/Google, 2019)是这一范式的开山之作,其核心创新包含两部分:
(1)段级循环(Segment-Level Recurrence)。设序列被分为段Sτ=[xτL+1,…,xτL+L]Sτ=[xτL+1,…,xτL+L],其中LL为段长。在处理第τ+1τ+1段时,Transformer-XL的每一层不仅接收第τ+1τ+1段的前一层的输出hτ+1l−1hτ+1l−1,还将第ττ段对应层的输出hτl−1hτl−1沿序列维度拼接作为扩展上下文:
其中SGSG 表示停止梯度(stop-gradient),即前一段的隐层只作为上下文参考,不参与反向传播(避免历史梯度回传导致的优化不稳定和显存爆炸)。然后,当前段的KV来自这个拼接后的扩展序列,而Q仅来自当前段。这使得当前段的每个token可以attend到上一段的所有token,有效感受野翻倍,且多层堆叠后可覆盖极长历史。
(2)相对位置编码(Relative Positional Encoding)。分段循环使得绝对位置编码失效:同一位置在不同段中具有不同的绝对位置索引,若使用正弦编码或可学习绝对编码,段边界会引入突兀的位置跳变。Transformer-XL引入相对位置偏置,注意力分数计算中不加入绝对位置,而是加入相对距离偏置项Ri−jRi−j。其Key-Query点积形式变为:
其中前两项为内容-内容交互和内容-位置交互,后两项为可学习的全局偏置。该设计彻底消除了位置编码的分段边界问题,使得跨段注意力无缝平滑。
在WikiText-103(长文档语言建模)和Project Gutenberg(长篇小说)数据集上,Transformer-XL将语言模型的困惑度(Perplexity)从标准Transformer的~35.0降至~29.0,相对提升超17%。更重要的是,其支持无限长度生成:在小说续写任务中,Transformer-XL可连续生成超过10000词的文章而不出现主题漂移和句法崩溃,而标准GPT(分段截断)在超过2000词后困惑度急剧恶化。
Memformer(2021)进一步将循环记忆引入非自回归场景,并设计了可学习的记忆压缩机制(memory compaction),将长距离记忆压缩为固定数量的记忆槽,适用于检索增强生成(RAG)等场景。
循环注意力并非没有代价。停止梯度策略虽然节省显存,但也意味着第ττ段的信息无法通过反向传播为第τ+1τ+1段的训练提供监督信号,存在长期依赖截断(truncated BPTT)的固有问题——本质上,模型在训练时只能优化段内目标函数,段间依赖仅在前向传播中利用,不参与参数更新。这在理论上限制了模型学习跨段依存的能力,但工程实践证明,当段长LL足够大(如512~1024)时,段内已包含大部分局部语境,停止梯度的负面影响远小于上下文断裂的收益。
在推理阶段,状态缓存管理成为新挑战:随着生成长度趋于无限,缓存的历史隐层线性增长,最终仍会撑爆显存。实际部署中需设置最大缓存长度(如Transformer-XL原设Lmem=1600Lmem=1600),超出后丢弃最旧状态,这又回到了有限历史近似,但至少比单段窗口大了数倍。
标准Transformer的绝对位置编码(正弦或可学习)依赖于每个位置具有唯一的绝对索引。在滑动窗口、分块或循环分段中,同一token在不同上下文片段中的绝对位置是变化的(例如训练时可能位于位置1000,外推时位于位置10000),导致外推性能急剧下降。RoFormer的实验表明,使用绝对位置编码的模型在窗口外推至2倍训练长度时,性能衰减超过40%。
稀疏注意力架构对位置编码的核心诉求:
平移不变性:相对距离的重要性不随绝对位置改变。
外推能力:训练时未见过的更长距离应能平滑泛化。
分段兼容:在分块和循环结构中,位置编码不应引入跨段跳变。
最直接的改造是在注意力logit中加入可学习的相对距离偏置项β∣i−j∣β∣i−j∣,即:
其中ββ为一个长度为最大相对距离的向量,由模型学习得到。T5模型采用此方案,并在摘要任务上表现优异。但其局限性在于:最大相对距离需预先设定(T5设为128),超出该范围的相对偏置无法泛化,限制了超长上下文的扩展。
RoPE(Rotary Position Embedding)由苏剑林等人提出,已成为LLaMA、Mistral、Qwen、PaLM等绝大多数现代稀疏大模型的首选位置编码。其数学原理是在二维平面内对Q和K向量施加旋转矩阵,旋转角度与绝对位置成正比,但Q与K的点积结果只依赖于相对距离。
对于位置mm的query向量qmqm和位置nn的key向量knkn,RoPE定义为:
其中Rθ,mRθ,m为分块对角旋转矩阵(每2维一组),旋转角度为m⋅θm⋅θ,θθ为预设的基频。内积结果为:
即显式依赖于相对位移n−mn−m。RoPE的最大优势:训练时只需设定基频θθ,无需指定最大长度,理论上可外推至任意长度。Mistral-7B和LLaMA-3均采用RoPE,并配合基频缩放(如θ=500000θ=500000或10000001000000)进一步提升长上下文外推稳定性。实践中,RoPE使模型在从4k训练长度外推至32k时,性能损失仅2%~3%,远优于绝对位置编码。
ALiBi(Press et al., 2021)更进一步,彻底抛弃显式位置编码,仅依靠注意力分数上的线性距离惩罚:
其中mm为每头单独学习的衰减斜率(头部越大,mm越大,代表该头专注更近的上下文)。ALiBi在训练长度内表现出色,且外推至更长序列时困惑度上升平缓,尤其适合滑动窗口注意力,因为窗口掩码已经限定了最大相对距离。但ALiBi缺乏RoPE的复杂几何解释,在大规模多模态模型中的泛化性略逊于RoPE,目前主流大厂(Meta、DeepSeek)更倾向于RoPE。
选型建议:新模型优先选择RoPE;若追求极简工程且仅需窗口内注意力,ALiBi足够。绝对位置编码已基本退出稀疏大模型的舞台。
以n=32768,d=4096,h=32n=32768,d=4096,h=32(LLaMA-2 7B规模)为基准,定量对比各方案的FLOPs与内存占用(见表8.2):
表8.2清晰可见,稀疏注意力可将注意力计算的FLOPs降低一个数量级,且中间激活内存下降至原版的10%~15%,使得在单卡A100(80GB)上训练32k长度的batch size可从1提升至4~8,极大提高算力利用率。
然而,稀疏化并非免费午餐。我们在LongBench(长文本基准测试)上统计了各类稀疏方案相对于全局注意力的性能衰退(见表8.3):
关键结论:全局锚点方案(BigBird)在多文档问答中损失最小(-2.3%),因跨文档实体指代需要全局视野;循环方案(Transformer-XL)在摘要任务中表现接近BigBird,因其历史状态缓存了前文主题。纯窗口方案在所有长依赖任务上均表现最差,不推荐用于需跨段逻辑推理的场景。
基于业务约束和性能要求,给出四步决策框架:
步骤1:确定序列长度上限
若n≤4096n≤4096:直接使用标准全局注意力,稀疏方案的工程复杂度不带来正向收益(甚或因稀疏矩阵开销变慢)。
若4096
若n>32768n>32768:考虑BigBird全局锚点或Transformer-XL循环记忆。
步骤2:判别任务是否依赖长程指代
若任务为情感分类、短文本匹配等——窗口方案即可。
若任务为法律合同比对、跨篇章问答——必须采用全局锚点或循环方案。
步骤3:判别是Encoder-only还是Decoder-only
Encoder-only(BERT类):Longformer混合架构性价比最高。
Decoder-only(GPT类):Mistral窗口+RoPE组合当前工程最成熟;若需无限流式生成,选用Transformer-XL循环记忆。
步骤4:评估硬件约束与推理延迟
推理延迟敏感(如线上实时服务):窗口方案因KV缓存固定大小,延迟最稳定。
训练吞吐优先:块稀疏配合Tensor Core并行训练速度最快。
显存严格受限:BigBird的极低内存占用(因高稀疏度)是最优解。
稀疏注意力并未停滞,当前研究前沿聚焦于动态稀疏(dynamic sparsity):让模型根据输入内容动态决定哪些位置需要交互,而非静态掩码。例如,Routing Transformer使用在线k-means将token路由至相关聚类块;Sparse Sinkhorn Attention使用可微排序学习最优排列。此外,结合硬件感知的稀疏(如NVIDIA Transformer Engine对结构化稀疏的原生支持)将在下一代GPU上进一步放大稀疏收益。
本章以“约束交互、截断冗余”为核心线索,系统拆解了稀疏注意力的四大技术路线:
滑动窗口注意力以带状掩码实现O(n⋅w)O(n⋅w)复杂度,配合滚动KV缓存(Mistral-7B)和膨胀窗口(Longformer),在局部性强的语言任务中表现卓越,但纯窗口模式无法跨越远距离语义鸿沟,需引入全局token形成混合架构。
块稀疏注意力利用GPU矩阵分块亲和性,将稀疏索引转化为块级稠密计算,训练吞吐最优(Sparse Transformer、GPT-3稀疏版),但分块边界带来的语义割裂和短序列惩罚是其固有短板。
全局锚点稀疏(BigBird)通过固定全局token + 随机跳转构造扩张图,保证O(logn)O(logn)的图直径,是长文档理解任务中精度损失最小的稀疏方案,可扩展至百万级序列,但随机采样的硬件访存不连续性问题限制了其推理效率。
分块循环注意力(Transformer-XL)跳出单次前向的限制,以段间缓存历史状态的方式支持无限长度流式建模,相对位置编码解决了分段边界冲突,在长文本生成任务中表现卓越,但训练时的截断梯度限制了跨段监督信号的回传。
在位置编码配套层面,RoPE旋转编码已成为稀疏大模型的工业标准,其无限外推能力与窗口、分段架构天然适配,ALiBi则以极简工程实现作为轻量级备选。
本章亦以量化数据论证了稀疏方案在算力收益与长程精度之间的帕累托权衡:在n=32768n=32768尺度下,稀疏注意力可将FLOPs降低至全局的7%~13%,同时长文档QA精度损失控制在2%~9%之间。最后给出基于序列长度、任务依赖性、模型类型和硬件约束的四步选型决策树,为实际工程落地提供清晰指导。
稀疏注意力并未终结长序列建模的探索。下一章将介绍进一步消除平方复杂度的革命性方案:线性注意力(Linear Attention)将softmax点积替换为核特征映射,实现真正的O(n)O(n)复杂度;傅里叶变换注意力体系(FNet、GFNet)则利用频域变换彻底替代注意力机制,以O(nlogn)O(nlogn)的代价实现全局混合。届时我们将看到,在极致效率的追求下,Transformer的“注意力”本身可能被根本性颠覆,但这并不意味着本章的稀疏方案过时——在工程成熟度、可解释性和模型性能的综合权衡中,稀疏注意力仍将是未来3~5年内超长序列建模的主力工具箱。