云镜收藏

稍后阅读

清单保存在当前浏览器,方便下次回来继续阅读。

清单还是空的

在笔记卡片或正文页点击“加入稍后阅读”即可收藏。

卷2 · LLM 内功

2.1 语言模型前史:n-gram → RNN → 注意力(20 分钟走完 30 年)

约 6 分钟阅读
全书目录

展开本章目录与同卷章节1. 任务定义与它的特殊性2. n-gram 时代(1948–2000s):统计机器3. 神经语言模型(2003)与 word2vec(2013):词变成向量4. RNN/LSTM(≈2003–2017):循环与门控5. 2017–2022:五年定乾坤6. Scaling law 预告(2.4 详讲)7. 自测题8. 动手作业9. 延伸资源同卷章节2.1 语言模型前史:n-gram → RNN → 注意力(20 分钟走完 30 年)2.2 BPE tokenizer 原理与实现2.3 GPT 架构工程版:从 TinyGPT 到 nanoGPT2.4 预训练:数据、Scaling Law 与训练稳定性2.5 SFT 与指令微调实战2.6 参数高效微调:LoRA 与 QLoRA2.7 对齐技术:RLHF → DPO → GRPO2.8 推理优化与 vLLM:把模型变成服务2.9 架构前沿:MoE、长上下文与注意力变体2.10 小模型时代的科研机会:1B–7B 甜点区

本章目标:理解”预测下一个词”为什么从 1950 年的玩具问题变成今天的圣杯任务,以及 GPT 范式赢在哪几个关键决策上。学完标准:能用五分钟向别人讲清”从 n-gram 到 ChatGPT 发生了什么、每一步解决了上一个的什么死穴”。

1. 任务定义与它的特殊性

语言模型估计 P(wt∣w1,…,wt−1)P(w_t \mid w_1, \dots, w_{t-1})。用概率的链式法则,整句概率可以分解为逐词条件概率的连乘:

P(w1,…,wT)=∏t=1TP(wt∣w1,…,wt−1)P(w_1, \dots, w_T) = \prod_{t=1}^{T} P(w_t \mid w_1, \dots, w_{t-1})

这个任务看起来平淡,却同时满足三个苛刻条件:

  1. 数据无限:互联网上任何文本都是训练样本(自监督,1.5 章思想的文字版);
  2. 目标极简但要求全面:预测“‘明天开盘后,上证指数最可能’ 的下一个词”,需要语法、事实、逻辑、世界知识的全部;
  3. 评测自然:loss / 困惑度(perplexity = 2loss2^{\text{loss}},直觉是”模型眼里每个位置平均有多少个候选词在纠结”)随能力单调改善。

“压缩即智能”:预测得好 = 用模型压缩文本压得好(算术编码的联系)。这是理解”为什么一个 next-token 任务能涌现推理”的最好心智模型——也是 Hutter Prize 一直奖励压缩算法的原因。

2. n-gram 时代(1948–2000s):统计机器

Shannon 用马尔可夫假设开山:只看前 n−1 个词,数语料里下一词的频率,加平滑处理没见过的组合。问题立现:

  • 组合爆炸:n=3 时常见词组合已数不过来,n=5 时几乎所有组合都稀疏;
  • 泛化失败(根子):“the cat sat” 和 “the dog sat” 的后续统计完全隔离——明明语义相似,统计上互不相干。

但 n-gram 留下了两笔遗产:next-token 这个任务本身,和困惑度这个指标。

3. 神经语言模型(2003)与 word2vec(2013):词变成向量

Bengio 的神经 LM 给每个词一张稠密向量(embedding),用神经网络输出下一词分布。关键贡献一句话:语义相似的词向量相似 → 它们的统计自动共享——“cat” 和 “dog” 的嵌入接近,“the __ sat” 的预测互相支援,n-gram 的泛化死穴被解决。

word2vec 把嵌入训练做成独立任务并发现:向量算术 vking−vman+vwoman≈vqueenv_{king} - v_{man} + v_{woman} \approx v_{queen}。嵌入空间 = 语义几何——这个思想一路延续:CLIP 的图文对齐空间、8.2 章在嵌入空间里找”美丑方向”,都是它的后代。

4. RNN/LSTM(≈2003–2017):循环与门控

ht=f(ht−1,xt)h_t = f(h_{t-1}, x_t):理论上无限长上下文,十年统治翻译/语音。LSTM 用门控(记忆细胞 + 输入/遗忘/输出门)缓解梯度消失。但 1.2 章讲过的两大死穴没救:顺序计算不可并行(GPU 干瞪眼)+ 长程依赖衰减(信息要路过每一步)。

5. 2017–2022:五年定乾坤

年份事件一句话评语
2017Transformer注意力解决 RNN 双死穴(1.2–1.3)
2018GPT-1 / BERT路线之争开始:生成式预训练+微调 vs 双向掩码刷榜
2019GPT-2赌注升级:“语言模型是无监督多任务学习者”——翻译/摘要可以从 next-token 里涌现
2020GPT-3175B + few-shot(in-context learning);scaling law 出炉,算力换智能变成可计算的投资
2022ChatGPTGPT-3.5 + SFT + RLHF:把”能力”变成”产品”(对齐是临门一脚,2.7 详述)

理解这段历史的关键:2018 年时行业主流押的是 BERT(理解任务刷榜快、训练便宜),GPT 线是少数派押注”生成式 + 规模”。三张牌——自回归目标、规模定律、指令对齐——2020 年起逐一验证,才有 2022 的引爆。读论文时要练习识别”哪个赌注被时间验证了”,这是研究品味的原料。

6. Scaling law 预告(2.4 详讲)

Kaplan 等(2020)发现:test loss 随参数量、数据量、算力呈光滑幂律,跨 7 个数量级成立。它把”更大的模型会更好”从信仰变成工程预算表——这是资本敢投百亿建集群的数学依据。Chinchilla(2022)修正了配比(每个参数约 20 token 最优)。对你的启示:做实验先在小规模建立趋势线,再谈放大。

7. 自测题

  1. 链式法则把句子概率分解成什么?这和模型训练目标什么关系?(逐词条件概率连乘;模型逐位置优化 P(wt∣前文)P(w_t\mid \text{前文}) 即等价优化整句似然)
  2. n-gram 的根子问题是什么?谁解决的?(相似上下文统计不共享;稠密嵌入)
  3. perplexity=2^loss 的直觉含义?(模型每步平均在多少个等概率候选中犹豫)
  4. BERT 和 GPT 的路线差异各是什么?为什么 GPT 线最终通向大模型?(掩码双向刷理解榜 vs 自回归生成;生成即通用接口 + 自回归目标数据利用率高)
  5. ChatGPT 相比 GPT-3 缺哪块拼图补上了?(指令微调 + 人类偏好对齐——能力变可用)
  6. “压缩即智能”怎么理解?(预测好等价于压缩好;压缩要求抓住数据生成规律)
  7. scaling law 为什么是工业决策的定心丸?(损失可外推 → 投资回报可预算)

8. 动手作业

  1. 用 gensim 训一个 word2vec(或加载现成中文向量),复现若干组向量算术,找一个失败案例并分析为什么(词频、多义性)。
  2. 手算:模型在词表 5 万、uniform 分布下的困惑度是多少?(=词表大小 50000;这就是”模型学到任何东西”的起点线)
  3. 费曼测试:不看笔记,向同学(或录音)讲 5 分钟”n-gram→GPT”时间线,讲不清的地方回炉。

9. 延伸资源

  • 《Speech and Language Processing》(Jurafsky & Martin) 第 3、9 章——n-gram 与神经 LM 的系统版
  • 李沐《论文精读》GPT-1 / GPT-2 / GPT-3 三连——历史现场感
  • Shannon《A Mathematical Theory of Communication》(1948)——选读,感受源头