🎥
ChatGPT 读一句话时,不是只开一个摄像头盯着全场。
它会同时开出好几个镜头:一个看谁在做事,一个看动作是什么,一个看谁和谁有关
这就是 多头注意力
↓ 往下看,4 分钟搞懂
🤖 AI / Transformer

多头注意力

Multi-Head Attention

不是看得更多,而是同时从多个角度看同一件事。
🧒 极简版🧑 场景版🎓 精准版

🗺️ 概念坐标系

先知道它在 Transformer 家族里处于哪里,再理解它为什么重要。

前置概念
注意力机制
先会“按相关度分配注意力”,多头注意力才有基础。它不是推翻注意力,而是把注意力并行扩成多个视角。
同家族核心
自注意力
自注意力是“句子里的词互相看”;多头注意力则是“同一句话同时开多个观察镜头”。
下游架构
Transformer
Transformer 把多头注意力当成发动机。没有多头注意力,就没有后来的 GPT、BERT 和大模型浪潮。
常被混淆
“头越多越好”
头数不是越多越强。真正关键的是每个头是否学到了不同的模式,以及总维度是否足够支撑这些视角。

🧪 动手试试:同一句话,4 个头在看什么

这里固定看词“手机”。切换不同的头,感受“同一个词”为什么会从不同角度看上下文。

🎯 当前查询词:手机

📦 拆开看:多头注意力的 4 个关键零件

点卡片翻面,看看每一部分到底干了什么。

🔍
多组投影矩阵
点我翻转
同一个词先被映射成多组不同的 Query / Key / Value。这样每个头一开始看到的“世界”就不一样。
🧠
独立注意力头
点我翻转
每个头独立算一次 scaled dot-product attention。有人盯主谓关系,有人盯属性修饰,有人盯远距离关联。
🪢
拼接 Concat
点我翻转
各头算出的结果不是二选一,而是全部拼起来。模型等于把多个镜头拍到的信息同时保留下来。
🎛️
输出线性层
点我翻转
最后再用一层线性变换,把拼接后的多视角信息重新混合,得到新的 token 表示,交给下一层继续处理。

⚙️ 工作流程

它不是“重复看很多次”,而是“并行地看,再统一汇总”。

🆚 有它之前 vs 有它之后

多头注意力最核心的价值,不只是“更快”,而是“同一时刻保留多个关系维度”。

Before

如果只有单头注意力,模型更像只有一台摄像机。它也能拍到重要信息,但一个镜头很难同时兼顾“主语是谁”“属性是什么”“时间在哪里”“长距离指代是谁”。

After

有了多头注意力,同一句话就能被多个镜头同时拆解。一个头抓语法,一个头抓实体,一个头抓时间,一个头抓远距离关系,最后一起合成更丰富的理解。

⚠️ 常见误解

真正容易混淆的,不是公式,而是对“头”的直觉理解。

❌ 很多人以为

多个头只是把同一件事重复算很多遍。

✅ 其实是

每个头有不同的投影参数,会在不同子空间里学习不同关注模式,所以重点不一样。

❌ 很多人以为

头越多,模型一定越强。

✅ 其实是

头太多但每头维度太小,反而可能学不到有效信息。关键是“头数 × 每头维度 × 任务需求”的平衡。

🧱 类比边界

“多机位拍摄”这个类比很好懂,但也有边界。

1. 现实里的摄像机由导演手动分工;模型里的“头”是通过训练自己学出分工的。
2. 摄像机拍到的是视觉画面;注意力头处理的是向量和权重,不是真的在“看”。
3. 电影机位往往职责固定;注意力头的分工未必永远稳定,不同层、不同任务里可能学到完全不同的模式。

🔗 相关概念

有些概念你已经解锁,可以直接串着看。

✅ 秒测

答完这 3 题,基本就知道自己是不是已经吃透了。

1. 多头注意力里“多头”的核心作用是什么?
2. 为什么“头更多”不一定更好?
3. 多个头算完之后,通常会怎么做?