M4-038M4: Sequences & TransformersAttention Variants (MHA / MQA / GQA)Medium
Mastery:

Attention Variants (MHA / MQA / GQA): 解释线性注意力与核方法的关系。

📐 Mathematical Definition
Attn=ϕ(Q)(ϕ(K)⊤V)ϕ(Q)∑iϕ(K)i;cost=O(Ld2) vs O(L2d)\text{Attn}=\frac{\phi(Q)(\phi(K)^{\top}V)}{\phi(Q)\sum_i\phi(K)_i};\qquad \text{cost}=O(Ld^2)\ \text{vs}\ O(L^2d)
⚡ Executive Summary
Core Concept: 把 softmax 写成核函数 φ(q)·φ(k),则注意力可重排为'先算 KᵀV 再乘 Q',复杂度降为 O(Ld²)。

📌 Key Takeaways

  • •
    softmax 注意力可写成核函数形式(φ 为特征映射)
  • •
    利用结合律交换乘法顺序,避免构造 L×L 矩阵
  • •
    代价:φ 的表达力有限,质量常不如 softmax

📐 Mathematical Derivations

数学机理:<strong>核视角</strong>——注意力可写成 Attn_i=Σ_j κ(q_i,k_j)v_j/Σ_j κ(q_i,k_j),其中 κ(q,k)=exp(qᵀk/√d) 是一个<strong>核函数</strong>。若 κ 可分解为 κ(q,k)=φ(q)ᵀφ(k)(φ 为特征映射),则注意力可重排:Attn=φ(Q)(φ(K)ᵀV)/(φ(Q)Σφ(K))。<strong>关键</strong>——φ(K)ᵀV 的形状是 d_φ×d_v,与序列长度 L <strong>无关</strong>;故可先算它(O(L·d_φ·d_v))、再用 Q 乘(O(L·d_φ·d_v)),总复杂度 <strong>O(L·d_φ·d_v)</strong>——<strong>线性于长度</strong>,而非 O(L²)。<strong>问题</strong>——softmax 核 exp(qᵀk) 需要<strong>无限维</strong>的特征映射(其泰勒展开有无穷多项),无法精确分解;故线性注意力用<strong>有限维的 φ 近似</strong>:(a) <strong>线性注意力</strong>(Katharopoulos 等 2020)用 φ(x)=elu(x)+1(简单非线性);(b) <strong>Performer</strong>(Choromanski 等 2021)用<strong>随机特征</strong>(FAVOR+,基于随机傅里叶特征)近似 softmax 核,有理论保证;(c) <strong>cosFormer</strong> 用 cos 重加权增强局部性。<strong>代价</strong>——有限维 φ 的表达力弱于 softmax,故质量常下降;且<strong>因果版本</strong>需用'前缀和'(cumulative sum)实现(因为要保证只看左侧),这引入了额外的序列依赖。<strong>现代复兴</strong>——Mamba/SSM 与线性注意力在数学上有联系(都是'可结合的线性递归');近期的'线性注意力 + 门控/选择性'(如 GLA、DeltaNet)在部分任务上已接近 softmax 注意力。

🏭 Production Trade-offs

深度剖析与工程权衡:① <strong>'线性'的双重含义</strong>——(a) 复杂度线性于序列长度 L;(b) 注意力是'线性'的(无 softmax 的非线性归一化)。这两点共同导致'可交换乘法顺序'。② <strong>为什么质量下降</strong>——softmax 的'锐化'(指数放大高分)使注意力能高度聚焦,而有限维 φ 的核较'平坦',难以实现同样的选择性;故线性注意力在'需要精确检索'的任务上明显弱于 softmax。③ <strong>因果实现的细节</strong>——因果线性注意力需用'分块前缀和'(chunked cumulative sum)在训练时并行、推理时递推;这与 SSM 的并行扫描高度相似,说明两者是同一谱系。④ <strong>推理优势</strong>——线性注意力的推理状态是固定的 d_φ×d_v 矩阵(不随长度增长),故 KV cache 是 <strong>O(1)</strong>;这对超长上下文与流式推理极具吸引力。⑤ <strong>混合架构</strong>——实践中常'线性层 + softmax 层交替'(如 Jamba、Zamba、以及混合 SSM-Attention 模型),用少量 softmax 层保证检索精度、用大量线性层保证效率。⑥ <strong>面试要点</strong>——被问'线性注意力',应给出'<strong>核分解 + 交换乘法顺序 → O(Ld²)</strong>'的推导,并诚实指出'<strong>有限维 φ 表达力不足导致质量下降</strong>'与'<strong>推理状态 O(1)</strong>'这两面;能联系到 SSM 与混合架构是明显加分。
⚠️ Common Interview Pitfalls
  • ✕
    以为线性注意力质量与 softmax 相当(通常有差距)
  • ✕
    忽略因果版本需要前缀和/分块递推
🎯 Interviewer Follow-ups
  • ?
    为什么 softmax 需要无限维特征映射?
  • ?
    线性注意力的'因果'版本如何实现?
📚

Associated Knowledge Base Guides & Mindmaps

Explore the comprehensive technical article, exam cards, and global architecture tree.

← PreviousM4-037: Attention Variants (MHA / MQA / GQA): 解释稀疏注意力与滑动窗口注意力。📋Back to BankNext →M4-039: Attention Variants (MHA / MQA / GQA): 解释差分注意力(Differential Attention)的动机。