语言模型与架构模块三 · 注意力机制公式约 15 分钟
注意力机制:Query-Key-Value 与 softmax
整个大模型最核心的一步,先把角色分清楚
学完这节你能:
- 说清 Q、K、V 各自的角色
- 背下并理解注意力公式每一项的作用
- 解释 √dₖ 缩放为什么必要
一句话概括注意力:每个词都在问「我该关注句子里的谁」。它带着自己的 Query 去和每个词的 Key 比相似度,得到分数;分数用 softmax 变成比例;再拿比例去加权每个词的 Value,汇总成新表示。
| 角色 | 含义 | 类比 |
|---|---|---|
| Query 查询 | 我想找什么 | 去图书馆时你脑子里的问题 |
| Key 键 | 我能匹配什么 | 每本书的标签/目录 |
| Value 值 | 我实际携带的信息 | 书里真正的内容 |
- 打分:Q 与每个 K 做点积,得原始相似度(越大越相关)。
- 缩放:除以 √dₖ,防止维度一大点积过大、softmax 进入饱和区导致梯度消失。
- 归一化:对分数做 softmax,得到加起来为 1 的注意力权重(概率分布)。
- 加权求和:用权重乘各词的 V 再求和,即该位置的输出。
自测关于注意力机制,正确的是:
// 带走一句话
注意力=用 Query 和各 Key 打分→√dₖ 缩放→softmax 成权重→加权求和 Value;权重由 Q·K 决定,V 只被加权。
独立练习
做到这些,才算完成本节
- 给定 3 个二维 Q/K/V,逐项写出打分、缩放、softmax 和加权求和,并核对每一步 shape。
- 构造一个极端大点积输入,解释为什么缩放项能减轻 softmax 饱和。
- 不看正文重写公式,并逐项说明符号、形状和单位。
- 改变一个条件,判断公式结果应增大、减小还是不变。
学习记录
记录本节阅读进度
建议先独立回答自测。读完记录不等于已经掌握。