M4-044M4: Sequences & TransformersAttention Variants (MHA / MQA / GQA)Hard
Mastery:
Attention Variants (MHA / MQA / GQA): 解释注意力熵崩塌(entropy collapse)与 QK-Norm 的作用。
📐 Mathematical Definition
⚡ Executive Summary
Core Concept: 训练中注意力分布趋于尖锐(熵趋 0)、注意力集中在少数位置,损害长上下文与训练稳定;QK-Norm 归一化 Q/K 抑制它。
📌 Key Takeaways
- •熵崩塌 = 注意力趋近 one-hot,丢失多位置信息
- •成因:Q/K 范数增长使 logits 变大 → softmax 饱和
- •QK-Norm 使 logits 尺度稳定,保持注意力熵
📐 Mathematical Derivations
数学机理:<strong>现象</strong>——训练过程中,注意力分布的<strong>熵</strong>(H(α_i)=−Σ_j α_ij log α_ij)会持续下降,最终趋于接近 0(即注意力趋近 one-hot、集中在极少数位置)。<strong>后果</strong>——(a) <strong>丢失多位置信息</strong>——注意力只能选一个位置,无法同时聚合多个相关信息,损害需要'多源整合'的任务(多跳推理、聚合统计);(b) <strong>长上下文退化</strong>——长序列中注意力集中在局部或 sink,远处的相关信息被忽略;(c) <strong>梯度消失</strong>——softmax 在饱和区导数极小,注意力层难以继续学习。<strong>成因</strong>——关键是 <strong>Q/K 的范数增长</strong>:随着训练,Q、K 投影的权重可能增长,使 logits=q·k/√d 的幅度变大;softmax 在大 logits 下趋于 one-hot(熵趋 0)。这与'√d_k 缩放'假设'方差为 1'的前提相冲突——训练中方差不再为 1,缩放失效。<strong>QK-Norm 的解法</strong>——在计算 QKᵀ 之前对 Q、K 施加 RMSNorm(或 LayerNorm),<strong>强制</strong>它们的尺度稳定(范数归一到固定值),从而使 logits 幅度稳定、注意力熵保持在合理水平。这是'用显式归一化替代'假设方差为 1''的更鲁棒方案,被 ViT-22B、Gemma-2、以及多个长上下文模型采用。<strong>与'注意力汇聚'的区别</strong>——汇聚(sink)指注意力集中到<strong>特定位置</strong>(序列开头);熵崩塌指注意力变得<strong>尖锐</strong>(无论集中到哪里)。两者常同时出现(sink 是熵崩塌的一种表现),但概念不同:前者描述'集中在哪里',后者描述'有多集中'。
🏭 Production Trade-offs
深度剖析与工程权衡:① <strong>监控方法</strong>——记录每层每头的注意力熵(或其均值/最小值);健康训练中熵应保持在某个区间(不过高=注意力太分散、不过低=崩塌);也可记录'最大注意力权重'的均值(趋 1 说明崩塌)。② <strong>与其他稳定手段的关系</strong>——(a) <strong>z-loss</strong> 稳定 log-sum-exp(间接影响熵);(b) <strong>注意力温度</strong>(显式调节 softmax 锐度);(c) <strong>熵正则</strong>(直接惩罚低熵);(d) <strong>QK-Norm</strong>(归一化 Q/K);(e) <strong>attention sink logit</strong>(提供'不关注'的出口)。它们作用点不同,可组合。③ <strong>与长上下文的关系</strong>——熵崩塌是长上下文能力退化的重要机制;若模型在长序列上把注意力集中在少数位置,则无法利用远距离信息。故长上下文训练需特别关注熵。④ <strong>与量化的关系</strong>——熵崩塌常伴随激活离群值(少数极大值),对量化不利;QK-Norm 可缓解离群值,故对量化推理也有益。⑤ <strong>实现代价</strong>——QK-Norm 增加对 Q/K 的归约(O(L·d)),开销很小;是'低成本高收益'的稳定性手段。⑥ <strong>面试要点</strong>——被问'大模型注意力有什么病态',应给出'<strong>熵崩塌(趋 one-hot)+ 汇聚(集中到 sink)</strong>'两个现象与'<strong>Q/K 范数增长使 logits 变大</strong>'这一成因,并列出 QK-Norm/z-loss/温度/熵正则等对策;这是'训练稳定性'方向的高分回答。
⚠️ Common Interview Pitfalls
- ✕把熵崩塌与注意力汇聚混为一谈
- ✕忽略 Q/K 范数增长使 √d_k 缩放失效
🎯 Interviewer Follow-ups
- ?如何监控注意力熵?
- ?熵崩塌与'注意力汇聚'是同一现象吗?
📚
Associated Knowledge Base Guides & Mindmaps
Explore the comprehensive technical article, exam cards, and global architecture tree.