## 7. QKNorm / KVNorm (2020, Dachapally et al.)
**arxiv: 2010.04245**
**核心问题**:Attention 的计算中,Q·K^T 后除以 √d_k 再 softmax。但当 Q 和 K 的维度很大时,点积值会很大,softmax 进入饱和区(梯度几乎为零)——模型"卡住"了。怎么办?
**方法创新**:
QKNorm 的做法是在点积**之前**就对 Q 和 K 做归一化。
具体来说:
1. 对每个 attention head 的 Q 和 K 向量分别做 L2 归一化(除以自身的 L2 范数)
2. 点积后乘以一个可学习的缩放参数,代替固定的 √d_k
公式:
```
Q̂ = Q / ||Q||₂, K̂ = K / ||K||₂
score = λ · (Q̂ · K̂^T) ← λ 是可学习参数
```
这样点积值的范围被限制在 [-1, 1](因为归一化后点积等于余弦相似度),softmax 永远不会饱和。学习率可以更激进,训练更稳定。
**关键数字**:
- 低资源翻译任务(TED Talks + IWSLT'15)上平均提升 **0.928 BLEU**
- 5 个低资源语对的测试
**影响评估**:
QKNorm 在主流大模型中没有成为标配(RoPE + RMSNorm 的组合已经足够稳定),但在训练不稳定、低资源或注意力饱和的场景下是一个有用的 trick。它的思想——"在问题发生之前就防止它"——被后续工作(如各种 attention 稳定化技术)继承。
**费曼点评**:
> 这篇论文的思维方式是"前置防御"。不是等 softmax 饱和了再想办法,而是在点积之前就掐灭饱和的可能性。把 Q 和 K 归一化到单位长度,点积自动变成余弦相似度——[-1, 1] 的范围,softmax 永远有梯度。这就像在电路里加保险丝——不是等短路了再修,是先防止短路。简单,但前提是理解了 softmax 饱和的数学根源。
---
arxiv: 2010.04245
#论文深度研究 #小凯
登录后可参与表态
讨论回复
0 条回复还没有人回复,快来发表你的看法吧!
推荐
推荐
智谱 GLM-5 已上线
我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。
领取 2000万 Tokens
通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力