跳到主要内容

模型架构 — Transformer 的零件清单与三年共识收敛史

这一章讲三件事: Transformer 这台机器内部怎么转(每个 token 怎么被其他 token 的信息「掺」一遍); 它的四个可换零件各有什么选型、为什么全行业收敛到同一套配置; 以及两件前沿事——上下文窗口怎么从 4K 扩到 100K+,挑战者 SSM 系架构凭什么号称更快。 主走查: 拿「那只猫没过马路,因为它太累了」这句,看「它」字的注意力怎么一路查回「猫」。

1. 顶层全景:一个 token 的三段旅程

第 01 章说过,Transformer 的核心是让句中任意两个词直接连线。这一章把这句话拆开。 一个 token 从进来到出去,走三段1:

① 输入表示 ② 堆叠 L 层加工 ③ 输出映射
token ──→ 词向量 ┌─────────────────────┐ 末层向量 ──→ 词表上
+ (查表) │ 注意力:词与词互掺信息 │ 的概率分布
位置向量 ──→ 相加 │ 前馈网络:每个词独自加工 │ (哪个词最该接在后面)
(报座位号) │ 残差+归一化:稳住训练 │
└──────┬──────────────┘
│ 重复 L 次(GPT-3 是 96 层)
图说:②是机身的主体。每一层都是同样的三件套,只是参数不同;
层数 L、每层的宽度 H 就是「这个模型多大」的主要来源(第 06 章拿它们算参数账)。

第一段先交代一个词。嵌入(embedding)就是把 token 变成一串数的过程—— 产物就是第 01 章讲过的词向量;每个 token 查表得到自己那串数, 再加上一个「位置向量」报出自己在第几个座位,两者直接相加,就是这个 token 的初始表示2。 这个「加位置」的动作不能省:注意力本身分不清词的先后顺序(见 §2), 没有位置向量,「猫追狗」和「狗追猫」在它眼里是同一袋词3

2. 注意力:每个词按「相关度」互相掺信息

注意力(attention)是 Transformer 的发动机。用一句话讲: 处理到某个词时,让它给前面的每个词打一个「跟我有多大关系」的分, 再按分数把别人的信息掺一份进自己这里。

2.1 它修好老网络的两个死结

它解决的是老网络的两个死结: 循环神经网络(RNN):一个词一个词顺序处理、把历史压缩在一个「状态」里往后传的老网络,传得慢还传丢;

卷积(拿一个小窗口在序列上滑动着看局部的老办法)网络只看小窗口里的邻居, 隔得远的词够不着——注意力让任意两个词直接连线,而且所有词对可以同时算,正好喂饱显卡4

2.2 打分与混合的四步

这个「打分的分」怎么算出来?每个词先被三个不同的变换各映射(把一串数整体扭成另一串数)一遍, 得到三份拷贝: 一份叫 query(它去提问),一份叫 key(它被检索),一份叫 value(它真正携带的信息)。 变换的工具是矩阵——一张填满数的表,向量左乘一张矩阵,就被整体扭成另一个向量; 这三张表是训练出来的,全模型每人一套5

打分与混合分四步:query 和每个 key 做点积(两串数对应位置相乘再相加, 越相似乘出来越大)得到原始分;除以键向量维度压住量级;

过一道 softmax(把一组分数按比例变成总和为 1 的权重,分数高的占大头); 最后按权重把所有词的 value 加权求和,混成这个词的新表示6

而且这样的事一层里不是做一遍,是多头:GPT-3 一层有 96 个头(表 5.1), 每个头各学各的映射表,各看各的关系——有的头盯语法(词与词的搭配规则),有的头盯指代,最后把 96 份结果拼接起来7

3. 主走查:「它」字一路查回「猫」

拿这句话走完上面四步:「那只猫没过马路,因为它太累了。」 处理到「它」的时候,模型要决定「它」指谁。下面每个分数都是为演示编的,不是真实数值, 但走法严格按原书式 5.2~5.56:

第 ① 步 取表示:「它」「猫」「马路」……每个词 = 词向量 + 位置向量。
第 ② 步 三份拷贝:「它」的 query 去提问;每个词的 key 等着被检索;每个词的 value 装着信息。
第 ③ 步 点积打分(演示值):「它」的 query 对「猫」的 key 得 8.2,
对「过马路」得 3.1,对「因为」得 1.0,对「。」得 0.2……
第 ④ 步 softmax 成权重(演示值):猫 0.62、过马路 0.21、因为 0.08、其余分剩下的 0.09。
第 ⑤ 步 加权求和:「它」的新表示 = 0.62×「猫」的 value + 0.21×「过马路」的 value + …
——「它」这份向量里,六成以上是「猫」的信息。
第 ⑥ 步 96 个头各干一遍:另一个头可能给「累」打高分(盯状态),
还有一个头可能给「没过」打高分(盯否定),拼起来才是完整的「它」。

图说:四步之后,「它」这个词的新表示里掺进了「猫」——
所以模型后面接话时才像在说猫,而不是在说马路。

注意第 ④ 步权重 0.62/0.21 是怎么从第 ③ 步的 8.2/3.1 变来的:softmax 把分差指数化放大, 8.2 比 3.1 高 5.1,权重就差出三倍——原始分差一点,权重差很多,这正是注意力能「聚焦」的原因。 除以维度的那一步(式 5.5 里的 ÷√D)则是防止维度高了点积天然变大、softmax 被顶到饱和8

4. 另外两个零件:FFN 与两条稳定措施

每一层里,注意力之后还有两个零件。前馈(FFN,信息只朝前流、不绕圈的小网络): 对每个词单独做两层变换(先撑大再压回)。

两层变换中间过一道激活函数——给数字加一道「弯」,让模型能表达「不是简单比例关系」的复杂规律。

这种「弯」就叫非线性——模型因此能学的不只是直线关系。

注意力管「词与词之间」,FFN 管「每个词自己」——原书的类比是, 前者做信息混合,后者做非线性加工,增强模型表达复杂关系的能力9

残差(residual)连接:把这一层的输入直接加回到输出上(输出 = 加工结果 + 原始输入)。 它让信息能抄近道穿层而过,几十上百层叠起来训练信号也不会半路消失10

层归一化:把每一层输出的那串数重新拉回标准的量级(先算这串数的均值和波动,再平移缩放到标准范围)。 大模型训练时损失忽大忽小是常见病,归一化就是最常用的稳定剂11

5. 三种架构:为什么 decoder-only 胜出

三件套怎么组装,历史上有三种摆法12:

架构摆法谁在用现状
编码器-解码器输入部分双向互看(编码),输出部分从左到右生成,两部分靠交叉注意力接通T5早期辉煌,现在只剩 FLAN-T5 等少数13
因果解码器不分输入输出,一律从左到右单向看,生成也在这条流上GPT 系、BLOOM、LLaMA、Mistral绝对主流14
前缀解码器输入(前缀)部分双向互看,输出部分单向GLM-130B、U-PaLM折中少数派15

因果解码器赢在哪?原书给的解释很实在:它把训练和使用统一了—— 预训练是「给上文续写」,使用时「给提示生成回答」,对它是同一个动作; 而且结构最简单(去掉了交叉注意力模块,注意力输出直接喂 FFN)。 GPT-3 用它做成之后,全行业跟进14。「decoder-only」这个词在文献里默认就指它12。 「从左到右生成」这个动作有个专门名字:自回归——每生成一个词, 都要把它接回输入再算下一个词,一个词都不能跳。这个词在第 10、11 章会变成主角: 解码策略和推理加速,全都是围着「自回归太贵」展开的。

6. 四个模块的选型:表 5.1 里的三年收敛史

同一副骨架,零件可以换。原书把四个模块的可选项逐一讲过,而表 5.1 记录了 2020(GPT-3)到 2023(LLaMA-2)各家的实际选择——对着看,能看到一场清晰的共识收敛16:

模型(年份)归一化位置编码激活函数
GPT-3(2020)Pre-LayerNorm可学习绝对位置GELU
BLOOM(2022)Pre-LayerNormALiBiGELU
PaLM(2022)Pre-LayerNormRoPESwiGLU
LLaMA-2(2023)Pre-RMSNormRoPESwiGLU

逐模块说清每个选项解决什么问题:

归一化。 原版 LayerNorm 要算均值和方差(这串数波动多大的度量)两步;

RMSNorm 只算均方根(平方、取平均、再开根——一种不看正负的大小度量)一步, 省一点算力还略稳,Gopher/Chinchilla/LLaMA 都用它17;归一化放在哪也有讲究—— 放在子层之后(Post-Norm)收敛快但深层容易不稳,放在子层之前(Pre-Norm)更稳, 主流大模型几乎全用 Pre-Norm;前后各放一次的「三明治」摆法理论上更全, 实际可能直接把训练搞崩18

激活函数。 就是 FFN 中间那道「非线性弯」。最早的 ReLU 简单(负数归零), 但归零的神经元可能就此「失活」学不到东西;GELU、Swish 更平滑; 现在主流是 GLU 家族(SwiGLU/GeGLU)——加一道门控(用一个阀门式的乘项 决定多少信息放行),PaLM、LLaMA 实测更好19

位置编码。 这是选项最多、对长文本最关键的模块,单立一段。 最初是绝对位置编码:每个座位算一个固定的向量加进去(BERT 用的是可学习版), 毛病是训练时没见过的座位就没有向量可用20。后来改相对位置编码: 不给座位号,给「两个词隔多远」——T5 的做法是按距离往注意力分上加一个可学习的数21。 收敛到今天的冠军是 RoPE(旋转位置编码):把 query/key 向量按每两个维度一组, 按「位置序号 × 各组转速」整体旋转一个角度;妙处是数学上保证 两个位置转完再相乘,结果只取决于它们的距离——绝对位置输入,相对位置效果, 还自带「距离越远、注意力天然衰减」的性质,PaLM 和 LLaMA 都用它22。 另一派 ALiBi 更省事:直接在注意力分上减去「距离 × 一个预设系数」, 不用训练任何新参数,扩窗表现好,BLOOM 用的就是它23

注意力变体。 全注意力每个词看所有前面的词,计算量随长度平方涨; 滑窗注意力只看附近 w 个词(成本降到与长度成正比,层数多了信息照样能传远)24; 省显存的一路是共享:MQA 让所有头共用一份 key/value,GQA 折中成分组共享—— 分组查询(96 个头分成几组,组内共用 key/value 的映射表)注意力(GQA); LLaMA-2 用的就是它,第 11 章会看到它省的就是解码时那份键值缓存 (把之前算过的 key/value 存起来复用的那块显存,推理章的主角)25

最后,原书给出的推荐配置就是 LLaMA 那套:Pre-RMSNorm + SwiGLU/GeGLU + RoPE/ALiBi26。 表 5.1 里 GPT-3 的 GELU+可学习位置,到 LLaMA-2 全换了一遍——三年,四个模块换了四个。

7. 长上下文:4K 的窗口怎么扩到 100K+

LLaMA-2 出厂窗口 4096 个 token;GPT-4 Turbo 做到了 128K(31 倍),Claude-2.1 做到 200K(49 倍)27。 窗口怎么扩?先搞清病根:RoPE 按位置旋转,训练时只见过 4096 以内的角度, 硬塞更长的文本,有些子空间的转角从没被训练过,注意力分就出怪值—— 所以 RoPE 原生不具备长度外推能力(在比训练更长的文本上仍然管用)28

原书把扩窗方法统一成一个公式:转角 = 距离项 g(t) × 转速项 h(i), 改前者或改后者,各是一路29。其中最常用的一路先说掉:位置插值(PI)——把所有位置序号乘上「原窗/新窗」的系数,把转角压回训练过的范围。

路线做法代价
直接微调什么都不改,拿长文本继续训转角越界→注意力异常,收敛慢、吃数据30
位置插值(PI)把所有位置序号乘上「原窗/新窗」的系数,转角压回训练过的范围LLaMA-33B 从 2K 扩到 8K 只需几千步;短文本性能略损31
位置截断(ReRoPE)近距离保留原序号,远距离截断或线性压缩免训练可用,但要多算一遍注意力32
改旋转基(NTK 系)把 RoPE 的基 b 调大,整体放慢转速微调时换用极大的基(原书给到 10⁸)效果更好33

另一条路不动位置编码,改注意力的窗口形状:并行窗口把长文切段各自编码 (毛病:分不清段的先后顺序);「Λ 形」窗口只看开头几个词和附近词 (依据是模型天然对开头和近邻分配高注意力;毛病:中间全扔); 最精细的是 token 选择——用检索的方式挑出最相关的一批 token 来算注意力, 其余的留在缓存里不取34。扩窗还需要配套的长文本数据:好消息是几百步、 几十亿 token 的续训就能把 7B/13B 模型扩到 100K+(参照:预训练是万亿 token 级); 坏消息是数据构成有讲究——LongWanjuan 数据集的研究把长文本分三类, 「完整长文」和「相关文本聚合」有用,「杂乱拼凑」的要删掉,删了明显提升35

8. 挑战者:SSM 系凭什么号称更快

Transformer 的软肋写在它的算式里:注意力要让每个词看所有词, 解码时每吐一个词都要翻一遍历史状态空间(压缩历史的那块固定大小存储) 模型(SSM)是近年最强的一路挑战者, 思路是从两位老祖宗各借一半:像循环神经网络(RNN,一个词一个词顺序处理、 把历史压缩在一个「状态」里往后传的老网络)那样,用一个固定大小的状态存历史; 又像卷积(拿一个小窗口在序列上滑动着看局部的老办法)那样,训练时可以整段并行36

它递推的形式是:新状态 = A×旧状态 + B×当前输入,输出 = C×新状态—— A、B、C 是学出来的变换(线性变换:用矩阵把向量整体扭成另一个向量,是这里全部计算的动词)。妙处在于这条递推可以数学展开成一个大卷积, 所以训练时用卷积整段并行,解码时只带上一步的状态往前滚—— 两头的好处都占了37。代价是这个状态空间是有损的: 历史全压在一个固定大小的状态里,远期细节必然模糊。

四个代表变体,各补了一块短板38:

变体补的什么
MambaA/B/C 不再是固定参数,改成由当前输入决定——能挑着记、挑着忘;代价是不能再用快速傅里叶变换加速
RWKV用「相邻词插值」代替位置嵌入(把位置信息编成向量的做法),目标:Transformer 的效果、RNN 的成本
RetNet用「保持机制」替注意力,解码成本(复杂度:计算量随输入规模涨多快的度量)与序列长度完全无关
Hyena用长卷积替注意力,靠快速傅里叶变换加速

原书用复杂度(计算量随输入规模涨多快的度量)对照表 5.2 把这笔账写清: Transformer 解码成本随序列长度 T 线性涨(O(TH+H²)),而 RWKV/RetNet 是 O(H²)—— 式子里没有 T,长文本解码成本与长度无关39。 这是挑战者的全部卖点;但原书也明说,SSM 系的整体性能目前还落后于 Transformer38

判断(我们的,不是书里的): 表 5.1 真正讲的不是「配置清单」,而是 一部共识收敛史:2020→2023 三年,四个模块全换了一遍,但「注意力+FFN」的骨架纹丝不动。 架构创新的主战场不在骨架,在零件——每个被换掉的零件都对应一个具体的工程痛点 (训练不稳、位置不外推、显存太贵)。第 16 章会看到,原书作者把「架构多样性不足」 列为整个领域的隐忧,和这里的观察正好互证。 如果错,会错在: 如果 Mamba 系或更新的架构在长序列任务上全面超过 Transformer, 「骨架不变」就只是一段中场休息——目前(本书成书时)证据不支持,SSM 性能仍落后。

9. 作者的判断与证据

  • 可核对的工程事实: 表 5.1 各模型配置来自各自论文与技术报告16; RoPE 的旋转性质(R_i·R_jᵀ=R_{i-j})、位置插值的几千步扩窗、 LongWanjuan 的三分类实验,都有原论文223135
  • 作者的选型建议: 「Pre-RMSNorm+SwiGLU/GeGLU+RoPE/ALiBi」是原书基于文献趋势的推荐26, 不是某一组对照实验的结论——它同时就是 LLaMA 的配置,可以理解为「跟着赢家庄」。
  • 作者的坦白: SSM 系「性能仍落后于 Transformer」是原书明写的38; 长度外推的模型「能生成流利长文本,但理解长文本的能力未必同步」也是原书的警告40

10. 边界与局限

  • 本章全部配置讨论都在 Transformer 家族内部;SSM 系是否服从第 02 章的缩放法则,书里没有数据。
  • 位置编码的公式(正弦、RoPE 旋转矩阵)在转码中部分丢失,我们保留了文字机理与关键性质; 需要逐式推导的读者应查原书式 5.26~5.43。
  • 表 5.1 止于 2023 年前后的模型;其后(如 LLaMA-3、DeepSeek-V3)的配置新花样 (比如第 03 章提到的多头潜在注意力)不在本书范围。
  • 长上下文一节的方法论以「扩窗口」为主,「有了窗口但用不好窗口内的信息」 是另一件事——那是第 13 章 RAG 部分的「lost in the middle」问题,原书自己也把它留到了后面。

11. 可带走的

  1. 一个 token 的三段旅程:词向量+位置向量 → L 层「注意力+FFN+残差归一化」→ 映射回词表;
  2. 注意力四步:query 提问、key 被检、点积打分、softmax 成权重、按权掺 value;多头 = 同一层里多套关系各看各的;
  3. FFN 管每个词自己,注意力管词与词;残差让信息抄近道,归一化稳住训练;
  4. 三种架构里因果解码器胜出,因为它把训练(续写)与使用(生成回答)统一成一个动作;
  5. 三年收敛:GPT-3 的 GELU+可学习位置 → LLaMA-2 的 Pre-RMSNorm+SwiGLU+RoPE;选型照 LLaMA 抄;
  6. RoPE:绝对位置输入、相对位置效果、自带距离衰减;它原生不会外推,因为大转角训练时没见过;
  7. 扩窗两条路:改位置编码(PI 几千步就能把 2K 扩到 8K)/ 改窗口形状(Λ 形、token 选择);
  8. 长文本数据要挑:完整长文与聚合文有用,杂乱拼凑要删;
  9. SSM 系 = RNN 的状态 + 卷积的并行;解码成本与序列长度无关,但性能尚落后;
  10. 自回归 = 一个词一个词挨着生成——第 10、11 章的所有解码与加速话题都从它开始。

12. 原文地图

主题原书章原文位置
输入表示 x=v+p 与位置向量5.1.1text/24-ch05-01-5-1-transformer-models.txt:7(搜「directly added」)
绝对位置编码的局限5.1.1text/24-ch05-01-5-1-transformer-models.txt:11(搜「cannot represent positions not encountered」)
注意力对 RNN/CNN 的对比5.1.2text/24-ch05-01-5-1-transformer-models.txt:15(搜「recurrent neural network」)
Q/K/V 与 softmax 四步5.1.2text/24-ch05-01-5-1-transformer-models.txt:17(搜「Q=XWQ」) · text/24-ch05-01-5-1-transformer-models.txt:33(搜「dividing D」)
多头与并行友好5.1.2text/24-ch05-01-5-1-transformer-models.txt:35(搜「attention heads」) · text/24-ch05-01-5-1-transformer-models.txt:43(搜「parallel computing」)
FFN 两层变换5.1.3text/24-ch05-01-5-1-transformer-models.txt:47(搜「two linear transformations」)
编码器双向+残差归一化5.1.4text/24-ch05-01-5-1-transformer-models.txt:55(搜「residual connection adds the input」) · text/24-ch05-01-5-1-transformer-models.txt:59(搜「bidirectional attention」)
解码器 mask/自回归/输出层5.1.5text/24-ch05-01-5-1-transformer-models.txt:67(搜「masking mechanism」;同段搜「autoregressive manner」)
归一化三法与三摆位5.2.1-5.2.2text/25-ch05-02-5-2-detailed-configuration.txt:17(搜「RMSNorm」) · text/25-ch05-02-5-2-detailed-configuration.txt:49(搜「most mainstream LLMs use Pre-Norm」) · text/25-ch05-02-5-2-detailed-configuration.txt:55(搜「training collapse」)
激活函数与 GLU 门控5.2.3text/25-ch05-02-5-2-detailed-configuration.txt:63(搜「inactive neurons」) · text/25-ch05-02-5-2-detailed-configuration.txt:71(搜「Gated Linear Unit」)
位置编码四派5.2.4text/25-ch05-02-5-2-detailed-configuration.txt:103(搜「learnable scalars」) · text/25-ch05-02-5-2-detailed-configuration.txt:113(搜「relative distance i − j」) · text/25-ch05-02-5-2-detailed-configuration.txt:127(搜「penalty factor proportional」)
注意力变体与 GQA5.2.5text/25-ch05-02-5-2-detailed-configuration.txt:139(搜「sliding window attention」) · text/25-ch05-02-5-2-detailed-configuration.txt:143(搜「grouped-query attention」)
MoE 路由与 Mixtral5.2.6text/25-ch05-02-5-2-detailed-configuration.txt:155(搜「routing network」) · text/25-ch05-02-5-2-detailed-configuration.txt:163(搜「selecting two experts」)
推荐配置(LLaMA 配置)5.2.7text/25-ch05-02-5-2-detailed-configuration.txt:167(搜「pre-layer RMSNorm」)
表 5.1 各模型配置表 5.1text/23-fm-abstract.txt:11(搜「Table 5.1」) · text/23-fm-abstract.txt:47(搜「12288」) · text/23-fm-abstract.txt:93(搜「RoPE」) · text/23-fm-abstract.txt:229(搜「LLaMA-2」)
三种架构与 decoder-only 口径5.3text/26-ch05-03-5-3-mainstream-architectures.txt:3(搜「decoder-only architecture generally refers」) · text/26-ch05-03-5-3-mainstream-architectures.txt:13(搜「removes the cross-attention module」) · text/26-ch05-03-5-3-mainstream-architectures.txt:9(搜「FLAN-T5」)
窗口 4096/128K/200K 与两方向5.4text/27-ch05-04-5-4-long-context-models.txt:3(搜「scaling positional encodings and adapting context window」)
RoPE 不外推的原因5.4.1text/27-ch05-04-5-4-long-context-models.txt:11(搜「exceed the range of angles」)
PI/ReRoPE/NTK 各法5.4.1text/27-ch05-04-5-4-long-context-models.txt:33(搜「several thousand training steps」) · text/27-ch05-04-5-4-long-context-models.txt:35(搜「ReRoPE」) · text/27-ch05-04-5-4-long-context-models.txt:53(搜「NTK-RoPE」)
窗口形状三法5.4.2text/27-ch05-04-5-4-long-context-models.txt:71(搜「StreamingLLM」) · text/27-ch05-04-5-4-long-context-models.txt:77(搜「Faiss」)
长文本数据量与 LongWanjuan5.4.3text/27-ch05-04-5-4-long-context-models.txt:85(搜「several hundred steps」) · text/27-ch05-04-5-4-long-context-models.txt:87(搜「holistic」)
SSM 原理与卷积展开5.5.1text/28-ch05-05-5-5-alternative-model-architecture.txt:49(搜「integration of recurrent neural networks」) · text/28-ch05-05-5-5-alternative-model-architecture.txt:59(搜「convolution kernel K」)
Mamba/RWKV/RetNet/Hyena5.5.2text/28-ch05-05-5-5-alternative-model-architecture.txt:71(搜「information selection mechanism」) · text/28-ch05-05-5-5-alternative-model-architecture.txt:73(搜「token shift」) · text/28-ch05-05-5-5-alternative-model-architecture.txt:75(搜「multi-scale retention」)
复杂度对照表 5.2表 5.2text/28-ch05-05-5-5-alternative-model-architecture.txt:3(搜「Table 5.2」)

Footnotes

  1. 出处:「5.1 Transformer Models」第 3 段(text/24-ch05-01-5-1-transformer-models.txt:3,搜「stacked sub-modules」)。三段划分是我们对原书 5.1.1~5.1.5 的归纳。

  2. 出处:「5.1.1 Input Encoding Layer」第 7 段(text/24-ch05-01-5-1-transformer-models.txt:7,搜「directly added」)。原书式 5.1:x_t = v_t + p_t。

  3. 出处:「5.2.4 Position Encoding」第 81 段(text/25-ch05-02-5-2-detailed-configuration.txt:81,搜「permutation invariance」)。原书:注意力机制具有排列不变性,单靠它无法捕获序列顺序。

  4. 出处:「5.1.2 Multi-Head Attention Layer」第 15 段(text/24-ch05-01-5-1-transformer-models.txt:15,搜「recurrent neural network」)与第 43 段(text/24-ch05-01-5-1-transformer-models.txt:43,搜「parallel computing」)。

  5. 出处:「5.1.2 Multi-Head Attention Layer」第 17 段(text/24-ch05-01-5-1-transformer-models.txt:17,搜「Q=XWQ」)。W_Q、W_K、W_V 为映射矩阵,即原书式 5.2~5.4。

  6. 出处:「5.1.2 Multi-Head Attention Layer」第 17-33 段(text/24-ch05-01-5-1-transformer-models.txt:29,搜「Attention(Q,K,V)=softmax」)。四步流程对应原书式 5.5。 2

  7. 出处:「5.1.2 Multi-Head Attention Layer」第 35 段(text/24-ch05-01-5-1-transformer-models.txt:35,搜「attention heads」);GPT-3 的 96 头见表 5.1(text/23-fm-abstract.txt:31,搜「GPT-3」)。「有的头盯语法、有的盯指代」是机制解读,原书未逐头标注功能。

  8. 出处:「5.1.2 Multi-Head Attention Layer」第 33 段(text/24-ch05-01-5-1-transformer-models.txt:33,搜「dividing D」)。原书式 5.5 按键向量维度 D 做数值缩放;转码文本丢失了根号符号,完整形式为 ÷√D。

  9. 出处:「5.1.3 Feed-Forward Network Layer」第 47 段(text/24-ch05-01-5-1-transformer-models.txt:47,搜「two linear transformations」)。

  10. 出处:「5.1.4 Encoder」第 55 段(text/24-ch05-01-5-1-transformer-models.txt:55,搜「residual connection adds the input」)。

  11. 出处:「5.2.1 Normalization Methods」第 7 段(text/25-ch05-02-5-2-detailed-configuration.txt:7,搜「unstable training loss」)与第 9 段(text/25-ch05-02-5-2-detailed-configuration.txt:9,搜「mean μ and variance」)。

  12. 出处:「5.3 Mainstream Architectures」第 3 段(text/26-ch05-03-5-3-mainstream-architectures.txt:3,搜「decoder-only architecture generally refers」)。 2

  13. 出处:「5.3.1 Encoder–Decoder Architecture」第 9 段(text/26-ch05-03-5-3-mainstream-architectures.txt:9,搜「FLAN-T5」)。

  14. 出处:「5.3.2 Causal Decoder Architecture」第 13 段(text/26-ch05-03-5-3-mainstream-architectures.txt:13,搜「removes the cross-attention module」)。「训练与使用统一」是原书对因果解码器简洁性的论证要点。 2

  15. 出处:「5.3.3 Prefix Decoder Architecture」第 17 段(text/26-ch05-03-5-3-mainstream-architectures.txt:17,搜「U-PaLM」)。U-PaLM 可从因果解码器继续预训练改造而来。

  16. 出处:表 5.1(text/23-fm-abstract.txt:11,搜「Table 5.1」)。GPT-3 行(text/23-fm-abstract.txt:47,搜「12288」)、PaLM 行(text/23-fm-abstract.txt:93,搜「RoPE」)、BLOOM 行(text/23-fm-abstract.txt:111,搜「ALiBi」)、LLaMA-2 行(text/23-fm-abstract.txt:229,搜「LLaMA-2」)。 2

  17. 出处:「5.2.1 Normalization Methods」第 17 段(text/25-ch05-02-5-2-detailed-configuration.txt:17,搜「RMSNorm」)。

  18. 出处:「5.2.2 Normalization Position」第 43 段(text/25-ch05-02-5-2-detailed-configuration.txt:43,搜「training instability」)、第 49 段(text/25-ch05-02-5-2-detailed-configuration.txt:49,搜「most mainstream LLMs use Pre-Norm」)、第 55 段(text/25-ch05-02-5-2-detailed-configuration.txt:55,搜「training collapse」)。

  19. 出处:「5.2.3 Activation Function」第 63 段(text/25-ch05-02-5-2-detailed-configuration.txt:63,搜「inactive neurons」)与第 71 段(text/25-ch05-02-5-2-detailed-configuration.txt:71,搜「Gated Linear Unit」)。

  20. 出处:「5.2.4 Position Encoding」第 91 段(text/25-ch05-02-5-2-detailed-configuration.txt:91,搜「learnable embedding」)与「5.1.1」第 11 段(text/24-ch05-01-5-1-transformer-models.txt:11,搜「cannot represent positions not encountered」)。

  21. 出处:「5.2.4 Position Encoding」第 103 段(text/25-ch05-02-5-2-detailed-configuration.txt:103,搜「learnable scalars」)。

  22. 出处:「5.2.4 Position Encoding」第 113 段(text/25-ch05-02-5-2-detailed-configuration.txt:113,搜「relative distance i − j」)与第 125 段(text/25-ch05-02-5-2-detailed-configuration.txt:125,搜「long-term decay」)。旋转基默认 b=10000、H/2 个子空间见第 117 段。 2

  23. 出处:「5.2.4 Position Encoding」第 127 段(text/25-ch05-02-5-2-detailed-configuration.txt:127,搜「penalty factor proportional」)与第 131 段(text/25-ch05-02-5-2-detailed-configuration.txt:131,搜「preset」)。

  24. 出处:「5.2.5 Attention Mechanism」第 139 段(text/25-ch05-02-5-2-detailed-configuration.txt:139,搜「sliding window attention」)。

  25. 出处:「5.2.5 Attention Mechanism」第 143 段(text/25-ch05-02-5-2-detailed-configuration.txt:143,搜「grouped-query attention」)。MQA 用于 PaLM/StarCoder,GQA 用于 LLaMA-2。

  26. 出处:「5.2.7 Detailed Configuration of LLaMA」第 167 段(text/25-ch05-02-5-2-detailed-configuration.txt:167,搜「pre-layer RMSNorm」)。 2

  27. 出处:「5.4 Long Context Models」第 3 段(text/27-ch05-04-5-4-long-context-models.txt:3,搜「128K context window」)。

  28. 出处:「5.4.1 Scaling Positional Encodings」第 11 段(text/27-ch05-04-5-4-long-context-models.txt:11,搜「exceed the range of angles」)。

  29. 出处:「5.4.1 Scaling Positional Encodings」第 17 段(text/27-ch05-04-5-4-long-context-models.txt:17,搜「distance modification function」)。

  30. 出处:「5.4.1 Direct Fine-Tuning」第 23 段(text/27-ch05-04-5-4-long-context-models.txt:23,搜「slow convergence」)。

  31. 出处:「5.4.1 Position Index Modification」第 33 段(text/27-ch05-04-5-4-long-context-models.txt:33,搜「several thousand training steps」)。 2

  32. 出处:「5.4.1 Position Index Modification」第 35 段(text/27-ch05-04-5-4-long-context-models.txt:35,搜「ReRoPE」)与第 39 段(text/27-ch05-04-5-4-long-context-models.txt:39,搜「additional calculation of the attention matrix」)。

  33. 出处:「5.4.1 Rotation Base Modification」第 53 段(text/27-ch05-04-5-4-long-context-models.txt:53,搜「NTK-RoPE」)。原文给出微调时可用的大基数值(转码文本中作 b=108,即 10⁸);关键子空间(波长大于训练窗口)的机理见第 43 段。

  34. 出处:「5.4.2 Adapting Context Window」第 67 段(text/27-ch05-04-5-4-long-context-models.txt:67,搜「cannot effectively distinguish the sequential relationships」)、第 71 段(text/27-ch05-04-5-4-long-context-models.txt:71,搜「StreamingLLM」)、第 77 段(text/27-ch05-04-5-4-long-context-models.txt:77,搜「Faiss」)。

  35. 出处:「5.4.3 Long Text Data」第 85 段(text/27-ch05-04-5-4-long-context-models.txt:85,搜「several hundred steps」)与第 87 段(text/27-ch05-04-5-4-long-context-models.txt:87,搜「holistic」)。 2

  36. 出处:「5.5.1 Parameterized State Space Model」第 49 段(text/28-ch05-05-5-5-alternative-model-architecture.txt:49,搜「integration of recurrent neural networks」)。

  37. 出处:「5.5.1 Parameterized State Space Model」第 51 段(text/28-ch05-05-5-5-alternative-model-architecture.txt:51,搜「state from the previous time step」)与第 59 段(text/28-ch05-05-5-5-alternative-model-architecture.txt:59,搜「convolution kernel K」)。

  38. 出处:「5.5.2 Variants of the State Space Model」第 69-77 段(text/28-ch05-05-5-5-alternative-model-architecture.txt:69,搜「still lags behind Transformer」)。 2 3

  39. 出处:表 5.2(text/28-ch05-05-5-5-alternative-model-architecture.txt:3,搜「Table 5.2」)。Transformer 解码 O(TH+H²)、RWKV/RetNet 解码 O(H²)。

  40. 出处:「5.4.1 Scaling Positional Encodings」第 9 段(text/27-ch05-04-5-4-long-context-models.txt:9,搜「may not be at the same level」)。