总览与预训练
01
总览
学术界卷架构,但真正的胜负手是数据、评估、系统。
训练 LLM 有五大支柱:架构、训练损失、数据、评估、系统。架构(Transformer)网上资料够多,讲者整节课几乎不讲架构——因为另外三件事才是工业界的关注重点。
02
预训练
预训练的全部,就是预测下一个词。
自回归语言模型 + 交叉熵损失:把"真实下一个词"的概率抬高、其余全部压低。最小化交叉熵,等价于最大化文本的对数似然。
03
Tokenizer
Tokenizer 平均把文本切成 3-4 个字母一个 token。
用 BPE 反复合并最高频的相邻字符对。数字的切分方式让模型"看数字"和人不同,这正是它数学差的原因之一;GPT-4 的一大改进就是改了代码的 tokenize。
数据、规模与成本
04
数据
从 2500 亿网页,一路清洗到 15 万亿 token。
下载 Common Crawl → 抽正文 → 过滤不良内容 → 去重 → 启发式过滤 → 模型过滤 → 领域加权 → 高质量退火,整整 8 道工序。数据是预训练的命门,也是各家最大的秘密。
05
Scaling
Scaling Laws 让你能提前预测更大模型的表现。
算力、数据量、参数量与损失在 log-log 坐标下都呈线性,至今没有触底迹象。"它看着平平无奇,其实意味着你能预测未来。"
06
Chinchilla
Chinchilla:每个参数配 20 个 token;算上推理则约 150:1。
20:1 是"训练最优"。但小模型长期推理更省钱,把推理成本算进去后,业界实际使用的大模型约为 150 token/参数。
07
成本
训一个 LLaMA 3 405B ≈ 7500 万美元。
16000 张 H100 跑 70 天、约 2600 万 GPU 小时、4400 吨 CO₂。讲者给的直觉标尺:每一代新模型,FLOPs 大约 ×10。
08
理念
把简单的事做好,然后规模化——这就是苦涩的教训。
Richard Sutton 的 Bitter Lesson:算力越多模型越好、而算力总在增长,所以真正重要的是能吃下算力的简单架构,而非那些精巧的小改动。
后训练:让模型听话
09
SFT
SFT 只教格式,不教知识。
LIMA 证明 SFT 数据从 2000 加到 32000 几乎无提升。知识早已在预训练模型里,SFT 只是让模型多模仿"会好好回答问题"的那一类用户。
10
洞见
幻觉,可能正源于 SFT。
如果人类写的答案引用了模型在预训练时从没见过的书,从模型视角看,你是在教它"编造一个听起来合理、但自己根本不知真假的引用"。
11
RLHF
RLHF 不克隆人类,而是最大化人类偏好。
对每条指令生成两个答案,让人选更好的,再让模型多生成被选中的。奖励模型用 Bradley-Terry 把"红/绿偏好"拟合成连续分数。
12
DPO
DPO:去掉强化学习,效果却和 PPO 相当。
斯坦福提出的 PPO 简化版,直接最大化偏好答案、最小化非偏好答案的概率。实现简单得多,如今已是开源社区乃至工业界的标配。
评估与系统
13
评估
人类标注,自我一致率只有约 66%。
五位作者讨论三小时标注规范,准确率也才 67%。而 LLM 当裁判更便宜(约 50 倍)、与"人类多数意见"的一致率反而更高——因为它方差更小。
14
偏差
ChatGPT 爱长篇大论,正是 RLHF 的长度偏差。
人和模型都偏爱更长的回答,模型一旦带上这个偏差就会一路放大。提示 GPT-4"啰嗦点"自我胜率升到 64%,"简洁点"则跌到 20%。
15
系统
一行 torch.compile,通常就能提速约 2 倍。
算子融合:把 PyTorch 逐行的"搬来搬去"改成一次搬运、算完再搬回。配合 16 位低精度,让本就喂不饱的 GPU 不再空等数据。