跳到主要内容

总览

本章节范围:从 04 章的 attention 子层出发,把它跟另一个核心子层 FFN 用归一化 + 残差包起来,组装成 Transformer block,然后堆叠成完整模型。读完 04 + 05 章就是 GPT 主干。 目标读者:工程师 / 研究者;假设已读 04-注意力机制 完整 5 篇。

范围与边界

  • 包含:FFN 三步 (上投影 / 激活 / 下投影) 与 GELU / SwiGLU 演化 / LayerNorm vs RMSNorm / pre-norm vs post-norm / 残差连接 + residual stream 概念 / 完整 block 顺序 / N 层堆叠的参数分布与计算开销。
  • 不包含 (各项外链)

名词定义

本章节子文档默认这些名词已定义,不再重复;父总览 1 总览 已定义的 (FFN / MLP / Transformer block) 在此不重列。

名词定义
FFN intermediate ($h_{\text{ffn}}$)FFN 中间维度,典型 $\sim 4h$ (Vaswani / GPT 系);SwiGLU 下因为有 gate 通常取 $\sim \frac{8}{3} h$ 以保持总参数与 4× 配置相近
GELU (Gaussian Error Linear Unit)用高斯 CDF 加权输入的激活,GPT 系经典选择,$\mathrm{GELU}(x) = x \cdot \Phi(x)$
SiLU / Swish$\mathrm{SiLU}(x) = x \cdot \sigma(x)$, sigmoid 加权输入,SwiGLU 的基础激活
SwiGLUSwiGLU FFN = $W_{\text{down}}(\mathrm{SiLU}(W_{\text{gate}} \mathbf{x}) \odot W_{\text{up}} \mathbf{x})$, Llama 系标配,引入 gating 机制
LayerNorm对每个样本的 hidden 维度做均值 0 方差 1 归一化,含两个可学习参数 (gain $\gamma$, bias $\beta$)
RMSNorm只做 root-mean-square 归一化,去掉均值减法和 bias,比 LayerNorm 快约 7-64%, Llama / Qwen / DeepSeek 全用
Pre-norm归一化在子层$\mathbf{x} + \text{Sublayer}(\text{Norm}(\mathbf{x}))$,训练稳定,现代主流
Post-norm归一化在子层$\text{Norm}(\mathbf{x} + \text{Sublayer}(\mathbf{x}))$, Vaswani 原版,深层训练不稳
Residual streamAnthropic Transformer Circuits 视角下,残差连接构成的"主干带";每个 block 从中读取信息又向其中写入
Transformer blockattention 子层 + FFN 子层 + 各自的归一化与残差;堆叠 $L$ 次构成完整模型骨架

@tbl-block-glossary 本章共享名词

子文档索引

按"局部 → 全局" 顺序排列,每篇配独占技术内核 + 负边界 (脑暴契约,各篇不重新讨论):

一句话独占技术内核 (写到深)负边界 (不展开)
02-激活与FFNFFN 三步 + GELU/SwiGLU 演化FFN 占 ~2/3 模型参数 → 上投影 + 激活 + 下投影 三步语义 → GELU 数学 + GPT 系沿用 → SwiGLU 引入 gating + $h_{\text{ffn}} = \frac{8}{3} h$ 系数来源 → Llama 全线 SwiGLU 实证 → 单 FFN 计算 vs attention 计算占比MoE expert 路由仅点到指向专家并行章 / Flash 等 kernel 优化不展开 / activation function 全谱系 (ReLU / Mish 等) 不展开
03-归一化与残差LayerNorm vs RMSNorm / pre-norm vs post-norm / 残差几何LayerNorm 数学与可学习参数 → RMSNorm 去掉均值减法的工程动机 → 实测 RMSNorm 提速 7-64% → post-norm (Vaswani) 训练不稳的具体表现 → pre-norm 解掉训练稳定性 (Xiong 2020 理论 + 实证) → residual 几何意义 (Anthropic residual stream) → DeepNorm 等深层稳定方案点到为止完整梯度消失理论 / BatchNorm / GroupNorm 等不在本章 / 完整正则化方案 (Dropout / DropPath) 不展开
04-block 与堆叠完整 block 顺序 + N 层选择 + 参数与计算分布Vaswani 原版 vs Llama 现代 block 顺序对比 → attention + FFN + 2 个 norm + 2 个残差的完整顺序 → 层数 $L$ 与模型大小的关系 → 单 block 参数分布 (attention 约 1/3, FFN 约 2/3) → 计算 FLOPs 分布 (FFN 约 2/3) → 加深 vs 加宽的 scaling 实证scaling laws 完整内容归 06-预训练/04-scaling-laws / 推理时 block 串行 vs 训练时全并行 见 02-大模型是什么 / KV cache 见 08-推理

@tbl-block-index 子文档索引 (含边界契约)

章节定位:把局部组装成全局

本章承担"把零件组装成发动机" 的角色:

04-注意力机制05-组装GPT (本章)06-预训练
Attention 子层的内部机制Attention + FFN + 归一化 + 残差 → block → 堆叠 → 完整模型骨架在堆叠好的模型上跑 next-token prediction 训练

读完本章,读者拿到的是 GPT 模型的结构图:知道每个 block 长什么样,模型由几个 block 组成,各部分占多少参数和计算。具体训练目标 / 训练循环 / scaling laws 归下一章。

与外部专题的接缝

外链主题在本章哪里引目标
MoE 路由与 expert02-激活与FFN 末尾interconnect/05-LLM并行通信/08-专家并行
训练目标 (CLM loss)04-block 与堆叠 末尾06-预训练/02-语言建模目标
Scaling laws04-block 与堆叠 末尾06-预训练/04-scaling-laws
Flash Attention04-注意力机制 末尾 (本章不重复)外部专题,未覆盖
量化 (INT8 / FP8)不在本章08-推理/05-量化简介

@tbl-block-external 与外部专题的外链对照

参考资料

教学蓝本:

  • Sebastian Raschka. Build a Large Language Model (From Scratch). Manning, 2024. Chapter 4.

关键论文:

章内交叉引用:父总览 1 总览 给全章节地图与共享名词 / 形状约定。