Stanford / CS336已收录

Language Modeling from Scratch

沿着语言模型的构建流程,学习数据、模型、训练与系统的相互联系。

关于这组笔记

个人自学讲义,参考公开课程内容,并加入自行编写的端到端语言模型实验。

查看原课程资料

适合的起点

建议熟悉 Python、PyTorch、深度学习与 Transformer。

本系列为个人学习整理,非学校官方发布,不代表学校或授课教师的认可或背书。

沿着目录阅读

当前 18 篇

课程讲义

  1. Lecture 01第 1 讲:课程概述与分词(Tokenization)
  2. Lecture 02第 2 讲:PyTorch、einops 与资源核算
  3. Lecture 03第 3 讲:架构与超参数
  4. Lecture 04第 4 讲:注意力的替代方案与混合专家(MoE)
  5. Lecture 05第 5 讲:GPU 与 TPU
  6. Lecture 06第 6 讲:核函数与 Triton
  7. Lecture 07第 7 讲:并行 I —— 集合通信、数据并行与 ZeRO
  8. Lecture 08第 8 讲:并行 II —— 流水线、张量、序列、专家并行与 3D 并行
  9. Lecture 09第 9 讲:规模定律 I —— 用小实验预测大模型
  10. Lecture 10第 10 讲:推理 —— 为什么生成文本又慢又贵,怎么加速?
  11. Lecture 11第 11 讲:规模定律 II —— 超参数怎样随规模变化(案例与细节)
  12. Lecture 12第 12 讲:评估 —— 怎么判断一个模型"好不好"?
  13. Lecture 13第 13 讲:数据 I —— 训练数据从哪里来?
  14. Lecture 14第 14 讲:数据 II —— 过滤、去重、混合,以及后训练数据
  15. Lecture 15第 15 讲:中期训练与后训练 —— SFT 与 RLHF
  16. Lecture 16第 16 讲:后训练 II —— 可验证奖励的强化学习(RLVR)
  17. Lecture 17第 17 讲:多模态模型 —— 让语言模型看见图片
  18. Lecture 18第 18 讲(拓展):全流程实战 —— 从零训练一个会写故事的小模型

从讲义到代码

按课程目录整理的配套示例,保留各单元的文件结构。阅读讲义时,可以下载整套代码,在本地逐步探索。

下载 CS336 代码

请在独立虚拟环境中查看依赖后运行;未附模型权重和运行产物;示例未逐一验证。

返回全部课程