MiniMind — 亲手从头到尾训练一个小型语言模型
用两颗 CPU 从分词器到 DPO 烤出一个小模型
고급 · 课时 30 · 实验 10
课程大纲
分词器
- 借来的分词器把韩文切成字节 reading
- 用 MiniMind 分词器测量韩语,并亲手训练小词表 lab
- 测验:分词器 quiz
数据准备 — 填充与打包
- 填充浪费计算,打包模糊文档边界 reading
- 测量填充浪费的计算并打包语料 lab
- 测验:填充与打包 quiz
模型结构
- MiniMind 的一层由六个决定构成 reading
- 缩小 MiniMind 配置构建模型,用数字验证每层的设计 lab
- 测验:MiniMind 的结构 quiz
预训练与损失曲线
- 损失曲线揭示模型先学会什么 reading
- 用 MiniMind 的训练循环预训练 300 步并读懂损失曲线 lab
- 测验:预训练与损失曲线 quiz
检查点与续训
- 续训文件里除了权重还有三样东西 reading
- 中断续训也与一次跑完相同 — 续训文件里放什么 lab
- 测验:检查点与续训 quiz
SFT 与损失掩码
- SFT 只教回答 — 损失掩码划出这条界线 reading
- 以聊天格式做 SFT,测量损失掩码改变了什么 lab
- 测验:SFT 与损失掩码 quiz
LoRA
- LoRA 不动权重,只加一条旁路 reading
- 用 MiniMind 的 LoRA 只改风格,并确认基座权重未变 lab
- 测验:LoRA quiz
DPO — 偏好学习
- DPO 无需奖励模型就能教会“这个更好” reading
- 用 DPO 改变风格,并检查内容是否保持 lab
- 测验:DPO quiz
推理 — KV 缓存与采样
- KV 缓存就是记住无需重算的东西 reading
- 用 MiniMind 的 generate 测量 KV 缓存与采样 lab
- 测验:KV 缓存与采样 quiz
评估与局限
- 小模型里,记住与学会的界线格外清晰 reading
- 用数字区分小模型能做与不能做的事 lab
- 测验:评估与局限 quiz