从数学原理理解 LLaMA3 训练全过程
这是一本帮助读者了解大模型数学原理的书籍,涉及到大量的数学的公式。
别再用 PyTorch「调包」了。 这本书以 Meta 开源的大模型 LLaMA3 为唯一解剖对象, 把每一个 token 从向量到概率分布的每一步矩阵运算、每一处梯度流动,都摊开在公式里讲给你看。 看懂
loss.backward()背后,那一整条数学的河流。
一、这是一本什么样的书?
很多人在用 PyTorch 训练大模型时,能熟练写下 model()、loss.backward()、optimizer.step(),
却并不清楚这三行代码背后到底发生了什么数学。
这本书填平的,正是这个「会用」与「懂原理」之间的认知缺口。
它不做泛泛的 Transformer 综述,而是锁定一个真实、开源、当下最具代表性的模型 —— LLaMA3, 从数学基础出发,一步不落地推导出它完整训练全过程:
数学基础 → LLM 概率建模 → 网络结构 → Forward 前向传播 → Cross Entropy 损失 → Backward 反向传播 → AdamW 参数更新 → PyTorch 实现 → 工程落地
读完它,一个 7B / 70B 大模型在训练中经历的每一个矩阵、每一条梯度,你都能亲手推出来,并和代码一一对上。
二、为什么值得读?
1. 一本书,拆透一条完整的训练流水线
不把注意力机制讲完就收工,而是从第一个 token 到最后一层梯度走完全程: 前向每一层的精确计算、损失如何产生、梯度如何沿计算图反传、AdamW 如何更新千亿参数, 最后落在 PyTorch 代码与工程优化上 —— 环环相扣,自洽成体系。
2. 紧跟现代大模型架构,不讲「过时」的 Transformer
市面上多数资料还停留在「绝对位置编码 + 标准 MLP」的老式 Transformer, 而本书逐一手撕 LLaMA3 六大现代组件:
| 组件 | 作用 | 本书讲透的程度 |
|---|---|---|
| RMSNorm | 归一化 | Forward / Backward 完整推导 |
| RoPE | 旋转位置编码 | 旋转矩阵数学、高维推广、为什么内积不变、反向传播 |
| GQA | 分组查询注意力 | 与标准 MHA 的差别与降本原理 |
| SwiGLU | 门控前馈 | SiLU、门控融合的 Forward / Backward |
| CrossEntropy | 损失 | 完整推导 + 著名的 Softmax+CE 联合梯度 |
| AdamW | 优化器 | 从 SGD 一路演进推导到解耦权重衰减 |
3. 每一个公式,都配有 PyTorch 代码
坚持「从公式到代码」:数学推导与 nn.Embedding、q @ Wq、loss.backward() 等实现逐一对应。
公式 = 代码,代码 = 公式,学完就能照着搭出属于自己的训练脚本。
4. 推导到矩阵级,细节不留死角
不只给结论,连 Attention 的 8 步反向传播、SwiGLU、RMSNorm 的矩阵级梯度都逐步推演, 并配计算图视角与 Gradient Check 验证方法 —— 基础薄弱也能跟上。
5. 从数学无缝衔接到工程
最后一程直击真实训练的工程挑战:FlashAttention、激活检查点(Activation Checkpointing)、BF16/FP32 混合精度、以及 DP / TP / PP / ZeRO 分布式训练,讲透「省显存」「跑得动」背后的原理。
三、读完你将会……
- 清楚一个 token 如何经过 LLaMA3,变成一个个词的概率分布;
- 能亲手算出 Forward 传播中每一个矩阵的精确值;
- 理解 Cross Entropy Loss 从何而来、为何如此定义;
- 掌握梯度如何沿计算图反向传播,每层参数梯度如何求得;
- 弄懂 AdamW 是如何更新 7B / 70B 参数的(含 Bias Correction、解耦权重衰减);
- 能把每一段 PyTorch 训练代码,对应回它背后的数学公式。
四、读者对象与前置要求
- 适合人群: 大模型算法工程师、AI 方向研究生与高年级学生、想从「调包」进阶到「懂原理」的一切学习者;
- 前置要求: 只需基本线性代数与微积分 —— 第一章会做必要回顾,基础薄弱的读者可以从容跟上。
五、全书目录
第一部分 数学基础与建模
- 第一章 数学基础准备 —— 标量 / 向量 / 矩阵乘法、矩阵求导、链式法则与计算图视角,为整本书铺好「数学弹药」(有基础可快速浏览)。
- 第二章 LLaMA3 训练目标数学建模 —— 自回归语言模型;由最大似然估计 MLE 完整推导 Cross Entropy Loss,一睹「梯度 = 预测 − 标签」的简洁之美,理解困惑度 Perplexity。
- 第三章 LLaMA3 整体架构数学表示 —— 一张图看懂整体结构:六大组件概览、7B/70B 参数量手工估算、32 层堆叠。
第二部分 前向传播数学推导
- 第四章 Embedding 层 —— 从 One-Hot 到连续向量;序列 Embedding 的矩阵形式、稀疏梯度与 Weight Tying 共享技巧。
- 第五章 RMSNorm 数学原理 —— 为什么需要归一化、RMSNorm 与 LayerNorm 的差异,Forward / Backward 从标量到矩阵逐层推导。
- 第六章 RoPE 旋转位置编码 —— 旋转矩阵数学基础、高维分块推广与角度设计、为何旋转不破坏 Q·K 注意力内积(含证明)、以及 Q/K 的逐元素反向传播。
- 第七章 Multi-Head Attention 前向传播 —— 直观理解 + GQA 分组查询注意力;从 QKV 投影 → 应用 RoPE → 注意力得分 → Causal Mask → Softmax → 加权求和,六步拆解 + PyTorch 对应。
- 第八章 SwiGLU FFN 数学推导 —— 传统 FFN 的局限、SiLU 激活,门控融合结构的 Forward 与 Backward 完整推导。
- 第九章 LM Head 与 Loss 层 —— logits → Softmax → 概率分布 → CE 损失;Softmax+CrossEntropy 的**联合反向传播(整条反传的源头)**与完整计算流程。
第三部分 反向传播数学推导
- 第十章 Attention 反向传播 —— 八步矩阵级推导:Output 投影、V / A / S 的梯度、Softmax 的 Jacobian、Q / K / RoPE / 权重矩阵的梯度,给出完整算法。
- 第十一章 LLaMA3 完整 Backward 计算图 —— 从 Loss 出发,沿计算图把梯度一路传回 Embedding;画出整张梯度流动图、逐 Block 梯度累积,并用 Gradient Check 验证。
第四部分 参数优化
- 第十二章 AdamW 优化器数学原理 —— 沿 SGD → Momentum → AdaGrad → RMSProp → Adam → AdamW 的演进脉络,逐级推导自适应学习率、Bias Correction 与解耦权重衰减,并覆盖学习率调度与梯度裁剪。
第五部分 工程实践
- 第十三章 完整 PyTorch 训练对应 —— 训练循环的「数学 ↔ 代码」逐行对应、一份可直接跑通的完整训练脚本、显存占用估算。
- 第十四章 LLaMA3 训练工程优化 —— FlashAttention(不存储完整注意力矩阵)、激活检查点、BF16 + FP32 混合精度,以及 DP / TP / PP / ZeRO 分布式训练全览。
附录
- 附录 A LLaMA3 关键超参数(以 8B 为例:128K 词表、32 层、GQA 8 个 KV 头、RoPE 基频 500,000……)
- 附录 B 常用矩阵求导公式速查表(推导时可随时翻阅)
六、本书的写作原则
- 从具体到抽象 —— 不做泛泛的 Transformer 介绍,聚焦 LLaMA3 的真实实现细节;
- 从公式到代码 —— 每个数学推导尽量配上对应 PyTorch 实现;
- 循序渐进 —— 从最简单的矩阵乘法开始,逐步构建出完整的计算图;
- 读者友好 —— 推导步骤详细,让基础薄弱的读者也能跟上。
建议阅读方式: 按章节顺序阅读。第一章可快速浏览;第二、三章建立整体认知; 第四至第十二章是全书核心,建议备好纸笔,亲手把公式推一遍; 第十三、十四章属于工程实践,重在对照代码理解。
七、关于作者
作者 陈杰 长期讲授大模型课程。本书源自课堂讲义,伴随课程一次次讲授逐步打磨成形, 其中不少推导正是在与学生反复推敲之后才逐渐清晰——这本讲义因而既是严谨的教材, 也带着一线课堂的温度。教学相长,读罢如有疏漏或疑问,欢迎批评指正。
获取本书
本书以 PDF 电子书形式发布:下载《大模型核心原理介绍》PDF
「深入理解数学原理,是成为优秀算法工程师的必经之路。」 —— 愿这本书陪你走完这条路。