第 4 章 · 全书重头戏(建议拆两次读)

Transformer 架构详解:核心机制

这一章把 Transformer 这台机器彻底拆开,逐件讲清:词嵌入、位置编码、Q/K/V 自注意力、多头注意力、前馈网络、残差连接与归一化——最后串起来看一个词"从输入到输出"的完整旅程,并解释"预测下一个词"如何训练出 ChatGPT。读完本章,你对"大模型底层是什么"将拥有 80% 的理解。

4.1 总览:先看整台机器的流水线

Transformer 有两个原始版本:Encoder(编码器)负责"读",Decoder(解码器)负责"写"。2017 年论文里的机器翻译模型两者都用。但今天的大语言模型(GPT 系、Claude、DeepSeek 等)绝大多数是Decoder-only(只有解码器)——因为它天生适合"接龙"。为了贴合现实,本书以 Decoder-only 为主来讲解(这也正是"大模型"的真身)。

图 4-1 GPT 家族的整体流水线:嵌入 → 位置 → 反复经过 N 个 Transformer 块 → 输出概率。4.2–4.7 逐件讲解 ①–③,4.8 走一遍全程

先把 ③ 里的"Transformer 块"的内部结构立起来(下面 4.4–4.7 逐一拆解):

图 4-2 一个 Transformer 块的内部:注意力负责"词与词之间交流",前馈负责"每个词自我加工",两者交替并各配一条残差"捷径"

4.2 词嵌入:给每个词发"经纬度坐标"

第 3 章介绍过:机器只认数字,所以每个词先映射成一个向量。这个映射表叫词嵌入矩阵(embedding matrix),它本身也是训练出来的参数。

比喻:词嵌入 = 公司员工花名册上的"技能坐标"

公司给每个员工填一份多维档案(会登高、会带电作业、会开票、熟悉光伏……每项打个分)。"带电作业班班长"和"线路检修工"档案相似(坐标近);和"财务出纳"差别大(坐标远)。
机器拿到这份档案,就能判断"谁和谁工作内容相关"——注意力机制就是靠这个"相关"来做加权汇总的。

4.3 位置编码:给每个词发"座位号"

注意力机制有个隐患:它把句子当"一袋子词"来算相关——"猫追狗"和"狗追猫"在注意力眼里(不看顺序的话)完全一样!所以必须显式地把"位置信息"喂进去。做法:给每个位置生成一个"位置向量",加在词向量上

比喻:座位号与电影票

每个词像观众,词向量是"长相",位置编码是"座位号"。入场时给每位观众贴一张写有"第 3 排 5 座"的贴纸(位置向量叠加到词向量上)。这样注意力在开会时,既知道"这个人是谁",也知道"他坐在哪"——顺序信息就保住了。
原始论文用 sin/cos 函数生成座位号(附录 B.5 解释为什么是周期函数——因为要像时钟一样区分"第几圈"和"几点")。现代模型也用"可学习的位置参数",原理相同:让模型知道每个词在第几个位置

4.4 自注意力:Q/K/V 三种角色的会议

核心中的核心。自注意力(self-attention)要完成第 3 章说的那件事:每个词看全场,按相关度加权汇总。Transformer 的实现给它配了三个角色:查询 Q(Query)、键 K(Key)、值 V(Value)。名字玄乎,本质很朴素:

比喻:图书馆查书

你想在图书馆找"电力系统稳定性"的资料:
Q(查询)= 你脑子里要找的主题("电力系统稳定性");
K(键)= 每本书脊上的标签("继电保护""潮流计算""稳定性分析"……);
V(值)= 书里的实际内容。
你的动作:拿 Q 去和所有书的 K 对一下标签,匹配度高的书(相关度高),你读它的 V(内容)就读得越仔细。
在句子里的对应:处理"存"这个词时,Q 由"存"生成(我在找什么相关词),K、V 由句子中每个词各生成一份(每本书的标签和内容)。"银行""现金"的 K 和 Q 匹配度高 → 它们的 V 被高权重地混进"存"的新表示。

机制拆成四步(并排画出来):

图 4-3 自注意力四步:造角色 → 算匹配 → 归一化 → 加权汇总。公式:Attention(Q,K,V) = softmax(QKᵀ/√d)·V(附录 B.2 有逐项推导)

三个直觉要点:

来看一张真实的"注意力热力图"(示意数值):处理"深"字时,模型把注意力主要分给了谁:

图 4-4 处理"深"时,注意力权重(和为 1):"井"拿到 0.76——模型因此知道这里是"深井"的深,而非"深夜/深奥"。颜色越深权重越大

一个容易困惑的点:为什么叫"自"注意力?

因为 Q、K、V 都来自同一句话自己(每个词都和句子里的其他词算关系)。对比之下,机器翻译的 Encoder-Decoder 里,解码时 Q 来自目标语言,K、V 来自源语言——那叫"交叉注意力"。本书主线(Decoder-only 大模型)里几乎全是自注意力。

4.5 多头注意力:多个专家并行开会

单个注意力机制只有一套 Q/K/V 投影,视角单一。多头注意力(multi-head attention)把它复制成 h 份(GPT 常见 12–96 个头),每份用自己的一套投影矩阵,并行开会,最后把结果拼起来再投影

比喻:一个委员会 vs 多个委员会

一个注意力头 = 一组"专家"只盯着一种关系。比如:
头 1 盯"语法搭配"(动词的主语是谁);头 2 盯"指代关系"("它"指什么);头 3 盯"语义关联"("银行"和"现金");……
多个头并行开会,各自汇报自己发现的线索,最后汇总成一份全面报告。模型不用我们指定每个头盯什么——训练中它们自动分化出不同的分工(研究者可视化注意力头时发现过这种分化)。

为什么有效?直觉:多种关系同时存在(语法、语义、指代、逻辑),单靠一组 Q/K/V 表达力不够;多头等于给模型配了多副"不同角度的眼镜",各看各的,互补。

4.6 前馈网络:每个词单独"深加工"

注意力做的是"词与词之间"的信息交换。之后每个词还要经过一层前馈网络(FFN,Feed-Forward Network)——就是第 1 章那种经典的全连接小网络,两层,中间维度放大好几倍(如 768 → 3072 → 768)。

4.7 残差连接 + 层归一化:深而不塌的秘诀

大模型动辄几十上百层。层数一深,训练就会退化(梯度消失/爆炸,附录 B.4 有说明)。Transformer 靠两个"加固件"解决:

残差连接(Residual / 捷径)

每一块的输出 = 处理结果 + 原始输入("x' = x + 注意力(x)")。相当于给深层网络修了一条高速公路匝道:梯度可以沿匝道直接回流,信息不经过层层衰减也能直达深层。这是 ResNet(2015)发明的招,Transformer 全盘借用。

层归一化(LayerNorm)

对每个词的向量做一次"标准化":减去均值、除以标准差,再乘可学习的缩放。效果类似把每个班的成绩折算成标准分——各层数据量级统一,训练才稳。现代模型大多改成"先归一化再计算"(Pre-Norm),细节不影响直觉。

比喻:工地运输

残差连接 = 给每层楼之间修电梯直达(不用爬楼梯一层层传材料,不怕中途丢);层归一化 = 每层楼验收时统一质检标准(数值尺度一致,不会有的层数值超大有的层超小导致失控)。两个加固件让"盖 100 层楼"成为可能。

4.8 数据流走查:一个词在机器里的完整旅程

把前面所有零件串起来,走一遍极简版实例(数字纯示意)。输入句子:"猫 追 狗",要预测下一个词。

  1. 嵌入:三个词各变成一个向量:猫→e₁, 追→e₂, 狗→e₃(比如都是 4 维,示意值)。
  2. 加位置:叠上位置向量 p₁, p₂, p₃ → x₁, x₂, x₃。
  3. 进第 1 个 Transformer 块
    • 多头注意力:x₁ 生成 q₁、k₁、v₁(x₂、x₃ 同理)。q₁ 与 k₁、k₂、k₃ 算点积 → 权重 [0.6, 0.1, 0.3]("猫"最关注自己,其次"狗")→ 加权求和得新 x₁'。
    • 残差 + 归一化:x₁' + x₁,再标准化。
    • 前馈网络:x₁ 单独过两层小网络,输出再残差 + 归一化。
  4. 进第 2、第 3……第 N 个块:同样的流程,但每块的参数不同。经过几十层后,x₁ 的向量里已经浓缩了整句话的信息。
  5. 输出层:把最后一个位置的向量乘一个"词表投影矩阵",得到 5 万个词的"候选分数",再过 softmax 变成概率。假如结果是:"追" 35%、"咬" 25%、"叫" 10%、"跑" 8%……——模型最倾向输出"追"。

图 4-5 一个 token 的完整旅程。全程只有一个动作:"看全场 → 更新自己 → 深加工",重复 N 个块

现在,一个词(token)的完整身份

一个词进入大模型时,是一个"坐标向量";每经过一层,它都被全体词的信息更新一次;N 层之后,它变成了"浓缩了整句话上下文"的高级向量;最后被翻译成"下一个词的概率"。所谓"理解",在这个架构里就是"向量被上下文改写的过程"——这就是 Transformer 的全部秘密。

4.9 训练目标:预测下一个词 → 对齐

架构讲完了,怎么"教"它?三步走(现代大模型的通用配方):

图 4-6 大模型训练三阶段:先读遍天下书(猜词),再学礼貌问答(SFT),最后按人类偏好打磨(RLHF)

电力场景对照:三步走的工程类比

预训练 ≈ 新员工先通读单位全部规程、报表、案例(大量吸收,无标准考试);SFT ≈ 老带新,教他怎么回答具体问题;RLHF ≈ 试用期考核,按领导/客户反馈调整行为。三步缺一不可——只做第一步的是"会接话的复读机",三步全做完才是"可用的员工"。

4.10 推理生成:温度、采样、接龙循环

模型训练好之后怎么"说话"?回忆 0.3 节:接龙循环。每次选下一个词时,模型给出的是概率分布,而"选哪个"有两种策略,中间隔着一个叫温度(temperature)的旋钮:

比喻:选词 = 选菜,温度 = 敢不敢尝新

模型每次"点菜":低温度 = 永远点最常点的招牌菜(稳但单调);高温度 = 经常试试小众菜(新鲜但偶尔踩雷)。同一个模型,温度一变,性格就变——这是你调网页版大模型"创造力"滑杆的底层原理。

另外两个常见旋钮:Top-k / Top-p 采样——先砍掉概率太低的候选(只从最可能的前 k 个里选),防止"离谱选项";max_tokens——最多生成多少个词。这些在第 5 章"对话底层机制"还会提到。

4.11 本章小结

读完本章,问大模型(复制可用)
我刚学完 Transformer 架构,请用费曼法:
1. 用"值班交接班会议"当比喻,重新讲一遍 Q/K/V 自注意力;
2. 解释为什么 QKᵀ 要除以 √d;
3. 用"光伏出力预测"当例子,说说如果让 Transformer 做时序预测,输入应该怎么组织;
4. 出 3 道题考我:一道考注意力权重,一道考残差连接的作用,一道考温度参数,先别给答案。

自测题:配套《自测题与思考题》第 4 章 Q4.1–Q4.7(重点章,务必完成)。接着看 B 站 C4(李沐论文精读)和 D1(3Blue1Brown GPT 动画),把这一章的画面固化下来。

4.12 本节配套视频(B 站,已验证)

以下是第 0 章视频清单中与本章直接对应的部分(2026-09 已验证可访问)。建议按顺序:先 C1 建立画面 → 读本章 → 再 C3 深化 → 学有余力看 C4、D1

C1

10 分钟,让你彻底理解 Transformer

最短的入门动画讲解,读本章之前花 10 分钟看一遍,建立整体画面。

UP 主:交叉科学 | 约 11 分钟 | 入门

C3

李宏毅:自注意力机制和 Transformer 详细解析

台湾大学明星老师李宏毅的完整课程切片,公认"最适合新手"的 Transformer 讲解,配合本章 4.4–4.7 服用。

UP 主:李宏毅深度学习课堂 | 约 3 小时 | 入门→进阶

C4

Transformer 论文逐段精读

李沐的经典论文精读(181 万播放),带你把《Attention is All You Need》逐段读懂。读完本章后看,是最强"加固"。

UP 主:跟李沐学AI | 1 小时 27 分 | 进阶 经典必看

D1

3Blue1Brown:GPT 是什么?直观解释 Transformer(官方双语)

3Blue1Brown 官方动画,把"预测下一个词"、温度采样讲得极美。读完本章必看,打通所有直觉。

3Blue1Brown 官方 | 约 24 分钟 | 入门 强烈推荐