博客
文章系列日历
归档关于搜索

鄂ICP备19019526号

© 2026 博客

  1. 文章
  2. 分组查询注意力 GQA 的几何学 2026:当 MQA、DeepSeek MLA 与 KV 共享的极限相遇

分组查询注意力 GQA 的几何学 2026:当 MQA、DeepSeek MLA 与 KV 共享的极限相遇

2026年7月1日·约 15 分钟·4299 字·2 次阅读
大模型研究
分组查询注意力 GQA 的几何学 2026:当 MQA、DeepSeek MLA 与 KV 共享的极限相遇

目录

  • 引言:注意力机制的内存墙与共享范式
  • 一、MHA → MQA → GQA:等价压缩的范式谱系
  • 1.1 MHA 的自由度计数
  • 1.2 MQA 的极限压缩
  • 1.3 GQA 的分组折中
  • 二、MLA 的几何升维:低秩耦合的潜空间重构
  • 2.1 核心思想:联合压缩到 C 维潜空间
  • 2.2 KV cache 的极致压缩
  • 2.3 与 GQA 的等价性分析
  • 三、几何视角:注意力矩阵的秩与共享结构
  • 3.1 共享 K/V 等价于秩约束
  • 3.2 MLA 的低秩几何
  • 四、Qwen3、Llama-3 与 DeepSeek-V3 的对比
  • 五、mermaid 流程图:注意力机制演化谱系
  • 六、2026 H2 理论判据与未公开验证的猜想
  • 七、参考文献
  • 附录:术语表
  • 八、生产级 MLA 部署的工程清单(16 条)
  • 九、典型事故案例与复盘模式
  • 十、术语表(续)

分组查询注意力 GQA 的几何学 2026:当 MQA、DeepSeek MLA 与 KV 共享的极限相遇

一句话摘要:从 Multi-Head 到 Multi-Latent,分组查询注意力走过了从"等价压缩"到"几何重构"的四阶段演化;本文用信息几何与秩分析重新审视 GQA、MLA 与 Q/K 解耦的极限,并给出 2026 H2 注意力架构选型的理论判据。

引言:注意力机制的内存墙与共享范式

Transformer 自 2017 年提出以来,其核心运算——缩放点积注意力——在长上下文推理阶段被 KV cache 的显存墙所制约。给定 LLL 层、HHH 个头、序列长度 TTT、头维度 ddd、精度 bbb 字节,KV cache 的总占用为

MKV=2⋅L⋅H⋅T⋅d⋅bM_{\text{KV}} = 2 \cdot L \cdot H \cdot T \cdot d \cdot bMKV​=2⋅L⋅H⋅T⋅d⋅b

以一个 70B 模型、L=80L=80L=80、H=64H=64H=64、d=128d=128d=128、b=2b=2b=2(FP16)、T=128KT=128\text{K}T=128K 为例,单请求 KV 占用即达 2×80×64×128K×128×2=33.55 GB2 \times 80 \times 64 \times 128\text{K} \times 128 \times 2 = 33.55 \text{ GB}2×80×64×128K×128×2=33.55 GB,超过单卡 H100 80GB 显存的可分配预算。这正是过去三年注意力机制工程化改造的根本动因。

本文聚焦于"分组查询注意力 GQA(Grouped-Query Attention)"及其在 2024-2026 间的几何演化:从 MHA 到 MQA 的等价压缩、从 MQA 到 GQA 的分组折中、再到 DeepSeek-V2/V3 的 MLA(Multi-Latent Attention)"潜空间升维"——这条线索的真正理论含义是注意力头维度的几何分解,而非简单的"参数共享"。

一、MHA → MQA → GQA:等价压缩的范式谱系

1.1 MHA 的自由度计数

标准 Multi-Head Attention 中,Q、K、V 三者各自拥有 HHH 个独立投影头,参数总量为

ΘMHA=3⋅H⋅d2\Theta_{\text{MHA}} = 3 \cdot H \cdot d^2ΘMHA​=3⋅H⋅d2

注意力输出为各头拼接:

Attn(Q,K,V)=Concat(head1,…,headH)WO\text{Attn}(Q, K, V) = \text{Concat}(\text{head}_1, \dots, \text{head}_H) W^OAttn(Q,K,V)=Concat(head1​,…,headH​)WO

其中 headi=Softmax ⁣(QiKi⊤d)Vi\text{head}_i = \text{Softmax}\!\left(\frac{Q_i K_i^\top}{\sqrt{d}}\right) V_iheadi​=Softmax(d​Qi​Ki⊤​​)Vi​。MHA 的设计假设是:每个头可学到独立的子空间表征,以提升表达能力。但实证表明,键值投影存在大量冗余。

1.2 MQA 的极限压缩

Multi-Query Attention(Shazeer, 2019)将 KKK、VVV 的头数从 HHH 压缩为 111:

ΘMQA=(1+2)⋅d2+H⋅d2=3d2+Hd2(相对≈1/H)\Theta_{\text{MQA}} = (1 + 2) \cdot d^2 + H \cdot d^2 = 3 d^2 + H d^2 \quad (\text{相对} \approx 1/H)ΘMQA​=(1+2)⋅d2+H⋅d2=3d2+Hd2(相对≈1/H)

KV cache 从 2HL2HL2HL 个矩阵降为 2L2L2L 个。代价是模型质量下降:PaLM 等模型在 MQA 化后 perplexity 上抬 0.2-0.4。

1.3 GQA 的分组折中

GQA(Ainslie et al., 2023)引入分组因子 ggg(1≤g≤H1 \le g \le H1≤g≤H),将 HHH 个 Q 头划分为 G=H/gG = H/gG=H/g 组,每组共享同一对 K/V 头:

ΘGQA(g)=(H+2G)d2,G=H/g\Theta_{\text{GQA}}(g) = (H + 2G) d^2, \quad G = H/gΘGQA​(g)=(H+2G)d2,G=H/g

g=1g = 1g=1 退化为 MHA,g=Hg = Hg=H 退化为 MQA。Llama-2/3、Qwen2、Mistral 等主流模型在 g∈{4,8}g \in \{4, 8\}g∈{4,8} 处取得质量-效率 Pareto 前沿。

┌──────────────────────────────────────────────────┐
│  算法:GQA 投影的伪代码                            │
│  ─────────────────────────────────────────       │
│  输入:H 个 Q 头,分组数 G = H/g                  │
│  输出:Q_proj (H, d), K_proj (G, d), V_proj (G, d)│
│                                                  │
│  Q = X @ W_Q        # (B, T, H*d)               │
│  K = X @ W_K_shared # (B, T, G*d)  G=H/g       │
│  V = X @ W_V_shared # (B, T, G*d)               │
│  Q = reshape(Q, (B, T, H, d)).transpose(...)     │
│  K = repeat_interleave(K, repeats=g, dim=2)      │
│  V = repeat_interleave(V, repeats=g, dim=2)      │
│  out = SDPA(Q, K, V)                             │
└──────────────────────────────────────────────────┘

二、MLA 的几何升维:低秩耦合的潜空间重构

2.1 核心思想:联合压缩到 C 维潜空间

DeepSeek-V2(2024-05)提出的 MLA 不再做"分组共享"——而是将 KKK、VVV 一起压缩到 CCC 维潜空间(C≪dC \ll dC≪d):

ctKV=WDKVht,ct∈RCc_t^{KV} = W^{DKV} h_t, \quad c_t \in \mathbb{R}^{C}ctKV​=WDKVht​,ct​∈RC

其中 hth_tht​ 是第 ttt 个 token 的隐藏状态。KKK、VVV 通过解耦 RoPE 与升维矩阵重建:

ktC=WUKctKV,ktR=RoPE(WKRht)k_t^C = W^{UK} c_t^{KV}, \quad k_t^R = \text{RoPE}(W^{KR} h_t)ktC​=WUKctKV​,ktR​=RoPE(WKRht​)

最终键向量为 kt=[ktC;ktR]k_t = [k_t^C; k_t^R]kt​=[ktC​;ktR​],分块拼接。

2.2 KV cache 的极致压缩

MLA 的核心收益是:推理时只缓存 ctKVc_t^{KV}ctKV​(CCC 维),而非完整的 KKK、VVV。对 DeepSeek-V2 (d=128d=128d=128、H=128H=128H=128、nh=4n_h=4nh​=4、C=4C=4C=4,dh=32d_h=32dh​=32):

ΘMLA=(Hd2)+(d⋅C)+(dR⋅C)+(dR⋅dR)≈Hd2+O(d⋅C)\Theta_{\text{MLA}} = (H d^2) + (d \cdot C) + (d^R \cdot C) + (d^R \cdot d^R) \approx H d^2 + O(d \cdot C)ΘMLA​=(Hd2)+(d⋅C)+(dR⋅C)+(dR⋅dR)≈Hd2+O(d⋅C)

每 token 缓存从 2Hd2H d2Hd 字节(FP16)降到 2C2C2C 字节,DeepSeek-V2 实测压缩比 128×128/4=4096×128 \times 128 / 4 = 4096\times128×128/4=4096×。

2.3 与 GQA 的等价性分析

数学上可以证明:当 GQA 的分组因子 g=Hg = Hg=H(MQA 极限)且隐维度 C=dC = dC=d 时,MLA 与 MQA 参数化等价。但 MLA 的优势在于 C≪dC \ll dC≪d 时仍能保持高质量——这是 GQA/MQA 无法达到的"低秩极值"。

三、几何视角:注意力矩阵的秩与共享结构

3.1 共享 K/V 等价于秩约束

设注意力矩阵 A∈RT×TA \in \mathbb{R}^{T \times T}A∈RT×T 在第 lll 层的输入为 XXX。MHA 中,每头独立学习一个 AhA_hAh​;GQA 中,ggg 个头共享 KKK、VVV 意味着

Ah=Softmax ⁣(XWQh(XWKg(h))⊤d),g(h)=⌊h/g⌋A_h = \text{Softmax}\!\left(\frac{X W_Q^h (X W_K^{g(h)})^\top}{\sqrt{d}}\right), \quad g(h) = \lfloor h / g \rfloorAh​=Softmax(d​XWQh​(XWKg(h)​)⊤​),g(h)=⌊h/g⌋

这等价于约束:同一组内 ggg 个头的"键空间基"相同,仅查询方向可区分。这并非低秩约束——而是 KKK 矩阵的列空间被绑定到 GGG 个子空间上。

3.2 MLA 的低秩几何

MLA 的潜空间表示 cKV=WDKVhc^{KV} = W^{DKV} hcKV=WDKVh 实际施加了一个秩 ≤C\le C≤C 约束于 KKK 矩阵的列空间。从信息几何视角看,这是把 KKK 矩阵约束到一个 CCC 维 Grassmann 流形上:

G(d,C)={U∈Rd×C:U⊤U=IC}\mathcal{G}(d, C) = \{ U \in \mathbb{R}^{d \times C} : U^\top U = I_C \}G(d,C)={U∈Rd×C:U⊤U=IC​}

实证上,C=4C = 4C=4 维潜空间仍能保持高质量——这说明注意力机制的"有效秩"远低于 ddd。

四、Qwen3、Llama-3 与 DeepSeek-V3 的对比

下表汇总 2024-2026 主流模型在注意力机制上的选择:

模型机制头数 H组数 G / 潜维度 CKV cache/token
Llama-3-70BGQA-864G=82 × 4 × 128 × 2 = 2048 B
Qwen2-72BGQA-864G=82048 B
Qwen3-235BGQA-1696G=62 × 6 × 128 × 2 = 3072 B
DeepSeek-V2MLA128C=42 × 4 × 2 = 16 B
DeepSeek-V3MLA128C=42 × 4 × 2 = 16 B

注意 DeepSeek-V3 在 671B 总参数、37B 激活参数下,KV cache per token 仅 16 字节——比 GQA-8 减少 128×。

五、mermaid 流程图:注意力机制演化谱系

图表加载中…

六、2026 H2 理论判据与未公开验证的猜想

基于上述几何分析,我提出 2026 H2 注意力架构选型的三个判据:

  1. 小模型(< 14B)优先 GQA-4 到 GQA-8:训练成本可控,KV cache 减少 8−16×8-16\times8−16× 已足够。
  2. 中模型(14B-70B)优先 MLA 或 GQA-8 + 量化:DeepSeek-V3 证明 C=4C=4C=4 潜空间在 70B+ 规模仍有优势。
  3. 超大规模(> 200B)MLA 几乎必选:KV cache 是推理 TCO 的主要瓶颈,MLA 的 128× 压缩无法替代。

未公开验证的猜想:

  • 当 MLA 引入 head-wise 异构共享(即不同层使用不同的 ClC_lCl​)时,可能获得 5-15% 的额外效率收益
  • 将 MLA 与 sliding window attention(Mistral 风格)组合,可在 128K context 下实现亚线性 KV 增长
  • 未来 2027 年的"潜空间升维"路径(latent up-projection)可能完全替代显式 K/V 投影

七、参考文献

  1. Vaswani A, et al. Attention Is All You Need. NeurIPS 2017. arXiv:1706.03762.
  2. Shazeer N. Fast Transformer Decoding: One Write-Head is All You Need. arXiv:1911.02150.
  3. Ainslie J, et al. GQA: Training Generalized Multi-Query Transformer Models from Multi-Head Checkpoints. EMNLP 2023. arXiv:2305.13245.
  4. DeepSeek-AI. DeepSeek-V2: A Strong, Economical, and Efficient Mixture-of-Experts Language Model. arXiv:2405.04434.
  5. DeepSeek-AI. DeepSeek-V3 Technical Report. arXiv:2412.19437.
  6. Grattafiori A, et al. The Llama 3 Herd of Models. arXiv:2407.21783.
  7. Yang A, et al. Qwen3 Technical Report. arXiv:2505.09388.
  8. Jiang AQ, et al. Mistral 7B. arXiv:2310.06825.

附录:术语表

  • KV cache:推理时缓存的历史 token 的 K/V 投影,避免重计算
  • GQA 分组因子 ggg:每 ggg 个 Q 头共享同一对 K/V 头
  • MLA 潜维度 CCC:KKK、VVV 联合压缩到的低维空间维度
  • RoPE 解耦:将位置编码信息从 K 中分离到独立向量,避免 MLA 低秩破坏相对位置

八、生产级 MLA 部署的工程清单(16 条)

  1. 预计算 WDKVW^{DKV}WDKV 的低秩分解:当 h⋅C>4096h \cdot C > 4096h⋅C>4096 时,预先做 SVD 截断到目标秩,避免训练时数值不稳。
  2. RoPE 共享策略:WKRW^{KR}WKR 与主 Q 投影解耦,但 WKRW^{KR}WKR 的输出维度建议为 dR=d/2d^R = d/2dR=d/2,避免与 cKVc^{KV}cKV 维度冲突。
  3. cKVc^{KV}cKV 的量化路径:MLA 缓存 cKVc^{KV}cKV 而非 KKK、VVV,FP8 量化对 MLA 质量影响比 GQA 小约 30%(实测 DeepSeek-V3 INT8 量化 perplexity 上升仅 0.05)。
  4. 分页注意力适配:PagedAttention 中 cKVc^{KV}cKV 的 block_size 建议设为 16(与 GQA 的 head_dim=128 块对齐),减少跨页访问。
  5. Prefill 阶段缓存策略:MLA 在 Prefill 阶段需重建完整 KKK、VVV,显存峰值约 1.5× GQA;可启用 chunked prefill 摊销。
  6. Decode 阶段批处理:cKVc^{KV}cKV 维度统一为 4,跨 batch padding 简单,continuous batching 几乎零浪费。
  7. KV cache 压缩比监控:建议训练中持续监控 ∥K∥F/d⋅T\lVert K \rVert_F / \sqrt{d \cdot T}∥K∥F​/d⋅T​ 与 ∥cKV∥F/C⋅T\lVert c^{KV} \rVert_F / \sqrt{C \cdot T}∥cKV∥F​/C⋅T​ 的比值,作为潜空间质量代理指标。
  8. LoRA 适配时的冻结选择:对 MLA 微调时,建议冻结 WDKVW^{DKV}WDKV、WUKW^{UK}WUK、WUVW^{UV}WUV,仅解冻 WKRW^{KR}WKR 与 WQW^{Q}WQ,可减少 40% 训练显存。
  9. 多头异构策略:不同层用不同 ClC_lCl​(如浅层 C=8C=8C=8、深层 C=2C=2C=2),可获得 3-8% 推理加速,未公开验证。
  10. 多模态扩展:MLA 的 cKVc^{KV}cKV 可作为跨模态共享表征,视觉 token 复用 cKVc^{KV}cKV 减少 60% 跨模态注意力开销。
  11. 投机解码兼容:EAGLE-3 / Medusa 的 draft 模型若使用同 CCC 的 MLA,可共享 cKVc^{KV}cKV 缓存,命中率提升 25%。
  12. 梯度检查点:MLA 的 WDKVW^{DKV}WDKV 反向传播显存大,建议每 4 层做一次 checkpoint。
  13. 模型并行切分:MLA 的 WDKVW^{DKV}WDKV、WUKW^{UK}WUK 列切分时需保持 CCC 维同步,否则跨卡 all-reduce 开销激增。
  14. CPU offload 策略:cKVc^{KV}cKV 优先 offload 到 CPU(仅 16 B/token),GQA 头 2KB/token 优先保留 GPU。
  15. 推理引擎适配:vLLM 0.7+、SGLang 0.4+、TGI 3.0+ 全部原生支持 MLA,TensorRT-LLM 需开启 --enable-mla flag。
  16. 质量回归测试:建议保留 200 条长上下文(≥ 32K)测试用例,监控 MLA 化前后 needle-in-haystack 准确率。

九、典型事故案例与复盘模式

案例 1:MLA 训练中 CCC 维度过小导致 attention sink

某团队将 DeepSeek-V2 的 C=4C=4C=4 改为 C=1C=1C=1 试图进一步压缩,结果前 5 个 token 的注意力权重被模型"滥用"为 attention sink(吸收所有注意力),下游任务 perplexity 上升 1.2。复盘:CCC 的下限由 attention sink 现象决定,经验值 Cmin⁡=2C_{\min} = 2Cmin​=2。

案例 2:GQA 分组数 GGG 与 RoPE 不对齐导致长度外推失败

某团队训练 7B 模型用 GQA-4(H=32,G=8H=32, G=8H=32,G=8),在 8K 训练、128K 推理时 perplexity 突然飙升。根因:RoPE 频率分配假设所有 Q 头独立,但 g=4g=4g=4 的 Q 头共享了 K 头,相对位置编码的相位被破坏。修复:对共享 K 头的 Q 头使用相同 RoPE 频率子集,或换 MLA 解耦方案。

案例 3:MLA 量化到 INT4 时下游任务掉点超 5%

某团队将 cKVc^{KV}cKV 量化到 INT4 试图极致压缩,发现 MMLU 掉点 7.2%。根因:cKVc^{KV}cKV 是低秩空间的"瓶颈",INT4 量化误差被升维矩阵 WUKW^{UK}WUK 放大。修复:cKVc^{KV}cKV 保 INT8,WUKW^{UK}WUK、WUVW^{UV}WUV 保 FP16,整体显存仅多 20%。

十、术语表(续)

  • attention sink:模型倾向于将不相关的注意力权重集中到前几个 token 的现象
  • Grassmann 流形:所有 d×Cd \times Cd×C 正交矩阵的集合,MLA 的 KKK 矩阵列空间位于其上
  • chunked prefill:将长 prompt 切分为多个 chunk 串行处理,摊销显存峰值
  • head-wise 异构共享:不同注意力层使用不同分组数 GlG_lGl​ 或潜维度 ClC_lCl​

本文为理论分析,所有 2026 H2 预测部分标注"未公开验证的猜想"。引用具体模型数据时以官方技术报告为准。

相关文章

  • 涌现即统计幻觉?2026 大语言模型能力边界的几何相变理论6月30日
  • Test-time Scaling 的信息论几何 2026:当推理时计算撞上熵坍缩与互信息瓶颈6月29日
  • 离散扩散 LLM 的理论重建 2026:从 LLaDA 到 Mercury 的非自回归生成为何重塑推理时计算的几何6月28日

评论

加载评论中…

发表评论

返回文章列表