MLA(多头潜在注意力)
DeepSeek-V2 提出的一种注意力机制创新,对 Key 和 Value 做低秩联合压缩到潜空间,将 KV 缓存减少 93.3% 的同时性能优于标准多头注意力(MHA)。
是什么
MLA 的核心思想:将 K 和 V 联合压缩到一个低维潜向量 c_KV,大幅减少需要缓存的 KV 对。
- 标准 MHA 需要缓存
2 × n_h × d_h个元素/token/layer - MLA 压缩到
d_c + d_R_h维(DeepSeek-V2 中 d_c=512, d_R_h=64 → 仅 576 维 vs 32,768)
解耦 RoPE 设计:压缩部分不加 RoPE(避免位置信息破坏低秩结构),分离出小维度 RoPE 分量单独处理。
为什么重要
- KV 缓存瓶颈:长上下文推理时 KV 缓存是主要内存瓶颈。MLA 将缓存减少 ~57×
- 性能优于 MHA:实验表明 MLA 不仅没有损失质量,反而略优于标准 MHA
- 推理速度提升:上投影片 W_UK、W_UV 可吸收进 W_Q、W_O,推理时无需显式计算 K/V
- 推动 DeepSeek 系列成功:MLA 后来用于 DeepSeek-V3 和 DeepSeek-R1
工作原理
c_KV = x · W_DKV # 压缩到 d_c 维潜向量
k = c_KV · W_UK # 从潜向量恢复 K
v = c_KV · W_UV # 从潜向量恢复 V
# RoPE 解耦:压缩部分不加 RoPE,RoPE 仅应用于 d_R_h 维分离分量
推理优化:W_UK 吸收进 W_Q,W_UV 吸收进 W_O → 无需显式生成 K、V → 只要缓存 c_KV
与相邻概念的区别
| 方法 | KV 缓存大小 | 方案 | 代表 |
|---|---|---|---|
| MHA | 2 × n_h × d_h | 每头独立 KV | 原始 Transformer |
| MQA | 2 × d_h | 所有头共享 KV | PaLM |
| GQA | 2 × G × d_h | 分 G 组共享 KV | Llama 2/3 |
| MLA | d_c + d_R_h | 低秩联合压缩 | DeepSeek-V2/V3/R1 |
- MLA 与 GQA 可以共存(MLA 是压缩方式,GQA 是共享方式)
- MLA 的压缩是联合的(K 和 V 共享潜空间),而非独立压缩