主题
JavaGuide 无对应专题。对比小林《MHA 有哪些局限?MQA、GQA、Flash Attention 怎么解决?》与二哥《DeepSeek V4 为什么用 CSA/HCA 替换 MLA?》《线性注意力 + 稀疏注意力混合架构》《CSA/HCA 与 KV Cache》。
两版对比
小林给了演进前半段的标准谱系:MHA 的三层瓶颈——KV 显存爆炸、访存慢(memory-bound,瓶颈在带宽不在算力)、注意力计算 O(N²)。解法按层分:MQA 所有头共享一份 KV(显存压到 1/H,但掉点 2-5%);GQA 分组共享,是「全共享到不共享」的光谱(G=8 时差距 <0.5%,Llama2-70B/Qwen 标配);MLA 走另一条路——低秩压缩,把每个 token 的 KV 投影到低维 latent 向量(小林特意辨析:MLA 不是「GQA 升级版」,压缩维度不同);Flash Attention 则是正交的实现层优化(分块 + online softmax,显存 O(N²)→O(N)、快 2-4 倍、数学等价),和结构层(GQA/MLA)是叠加不是替代,「只能选一个」是伪命题。
二哥给了演进后半段——百万上下文时代的新瓶颈:MLA 压的是「每份笔记的厚度」,但每个 token 还是要存一份;上下文从 128K 扩到 1M,token 数翻 8 倍,笔记再薄总量也扛不住(百万 token 的 KV Cache 能吃掉一整张顶配卡,并发上不去)。所以 V4 换思路:从压厚度变成减份数——CSA(压缩稀疏注意力)每 4 个相邻 token 合并成 1 份、再靠索引器只挑最相关的几百条精算;HCA(重度压缩)每 128 个 token 合 1 份存「大意」。比喻:CSA 是按考点翻的课堂笔记,HCA 是课程大纲——一个保细节、一个保全局,互相兜底,KV Cache 压到 V3 的 7%,一张卡能同时服务十几个长上下文请求。
线性注意力(二哥独有,GLM 路线):标准注意力的 O(N²) 卡在 QKᵀ 的 N×N 相关矩阵上(softmax 归一化要求整行算完)。线性注意力去掉 softmax,纯矩阵连乘有结合律——先算 KᵀV 得到 d×d 小矩阵(d=64/128)再乘 Q,复杂度降到 O(N),黑板比喻:每人跟其他 49 人两两聊一遍 vs 全班写一块黑板每人看一次。代价:推理时等价于固定大小状态矩阵的 RNN,越靠前的信息越被覆盖——擅长近处、记不清远处。解法是混合架构:大部分层用线性注意力管近处,每隔几层插一层稀疏注意力(带索引器,先扫目录再精读)管远距离精确检索。
最优题解
这条演进线的主题只有一个:压 KV Cache 的显存账。第一代思路是压「每份笔记的厚度」——MHA 每头一份 KV,MQA 全部头共享一份(省到极致但掉点),GQA 分组共享做折中,MLA 用低秩投影把每份压成 latent 向量;这一代撑起了长上下文。到百万级窗口,瓶颈从「厚度」变成「份数」——新一代思路是减份数:把相邻 token 合并成共享笔记,细粒度的 CSA 保细节、重度压缩的 HCA 保全局骨架,加上稀疏索引只算相关部分,KV Cache 能压到原来的百分之几。GLM 的线性注意力是更激进的第三条路:去掉 softmax 利用矩阵结合律把计算量降到 O(n),代价是等价 RNN 会忘远处,所以要混合稀疏注意力兜底。
记住两个分层的澄清:Flash Attention 和 PagedAttention 是实现层优化(怎么算、怎么存),GQA/MLA/CSA 是结构层设计(存什么),两层叠加不互斥;MLA 是低秩压缩不是 GQA 的升级版。面试里能说出「瓶颈从每份厚度变成份数」这个转折,就说明真的理解了为什么长上下文时代注意力机制要重新设计。
追问链
追问:线性注意力为什么快,代价是什么? 参考答:去掉 softmax 后 QKᵀV 可以用结合律换计算顺序,先算 KᵀV 这个 d×d 小矩阵,复杂度 O(N²) 降 O(N);代价是推理等价于固定状态的 RNN,远处信息被覆盖,所以生产上都要混合稀疏注意力补远距离检索。
追问:为什么 KV Cache 这么吃显存? 参考答:每个 token 每层都要存 K 和 V,总量 = token 数 × 层数 × 头维度的两倍,长上下文线性堆;7B 模型 32K 上下文就要十几 GB。这也是这条演进线存在的理由。展开见 KV Cache 与 Prompt Caching。
我的理解
这组题的记忆锚是「压厚度 → 减份数」的转折:MHA/MQA/GQA/MLA 都在第一代思路上,CSA/HCA 和线性注意力是第二代。小林的谱系负责答「每个缩写是什么」,二哥的「课堂笔记 vs 课程大纲」「黑板」比喻负责讲清第二代为什么出现——把两段接成一条主线,比背十个缩写高一个层次。数字(V4 压到 7%、GLM 计算量 1/3)转述自各家技术报告的二手解读,引用前核对官方文档。