从 Bit 到 AGI第五章:Transformer

第五章总结

从 Bit 到 AGI · 第五章:Transformer · 从 Embedding 到 Scaling Laws 的知识地图

作者 David更新于 第 85 篇(共 186 篇)

本章以 BERT-base(dmodel=768d_{\text{model}}=768,12 层,12 头,dff=3072d_{\text{ff}}=3072,110M 参数)为标尺,拆解 Transformer 的每一块积木:从 token 如何变成向量,到 Self-Attention 如何 O(n2)O(n^2) 交换信息,再到 Encoder/Decoder 如何分叉成 BERT 与 GPT,最后如何用 Scaling Laws 规划更大模型。

知识地图

图表加载中…

核心公式速查

概念公式
Self-Attentionsoftmax(QK⊤/dk)V\text{softmax}(QK^\top / \sqrt{d_k}) V
多头h=12h=12,dk=768/12=64d_k = 768/12 = 64
FFNGELU(xW1)W2\text{GELU}(x W_1) W_2,W1∈R768×3072W_1 \in \mathbb{R}^{768 \times 3072}
残差x+Sublayer(x)x + \text{Sublayer}(x)(Post-Norm 外裹 LN)
复杂度Attention O(n2d)O(n^2 d);FFN O(nd⋅dff)O(n d \cdot d_{\text{ff}})
参数量主项≈12Ld2\approx 12 L d^2(忽略 embedding)

架构对照

BERTGPTT5
栈EncoderDecoderEnc+Dec
Attention双向因果双向 + 因果 + Cross
预训练MLMCLMSpan corruption
NormPostPrePre(常见)
典型用途理解、Embedding生成、对话翻译、text2text

数量级记忆

  • 单层参数:~7.1M(Attn 2.4M + FFN 4.7M)
  • Embedding:~23M(30522×76830522 \times 768)
  • n=512n=512 单层 FLOPs:~7 GFLOPs;12 层 ~86 GFLOPs
  • Attention 内存:12n2×412 n^2 \times 4 B(fp32,12 头)
  • Chinchilla:训练 token 数 ≈20×\approx 20 \times 参数量

阅读路线回顾

  1. Embedding → 位置 → Self-Attention → QKV
  2. 训练稳定:残差 → LayerNorm → FFN → 多头
  3. 架构:Decoder / Encoder / Enc-Dec
  4. 进阶:统一性 → O(n2)O(n^2) → RoPE 等 → Pre/Post-Norm
  5. 对比与缩放:BERT vs GPT → Scaling Laws → RNN 对比 → 块解剖

下一章预告

第六章进入 Tokenizer:同样的 768 维 embedding,中文为何往往比英文消耗更多 token、BPE 如何决定词表大小 VV,以及 V×dV \times d 参数如何从分词策略长出来。

→ 第六章:Token

本页目录