写在最后
第二层:模型实现
第三层:发展脉络
第一层:训练流程
训练流程(概览)
ChatGPT模型的三层理解
[[Sources/CuboxSync/ChatGPT模型的三层理解 - 张浩在路上-2023-09-07.md]]
1.1 文字接龙(预训练)
- 目标:预测下一个词/子词
- 数据:海量未标注文本
- 输出:概率分布,多样且不稳定
- 问题:如何引导更有用的输出
1.2 SFT:人类示范微调
- 人类编写指令-答案对
- 让模型学习偏好与风格
- 输出更聚焦、更有用
模型实现(关键细节)
架构要点
- Transformer(decoder-only)
- 位置编码/注意力机制
- 大规模分布式训练
SFT 细节
- 高质量指令-响应集
- 交叉熵微调
- 提示模板化
强化学习细节
- PPO + KL 惩罚
- 探索与稳定性的权衡
- 采样-评价-更新流水线
4.1 安全
- 微软 Tay、FB 标签事故
- 语言模型灵活但风险更高
- 护栏与红队至关重要
1.4 RLHF(PPO)
- 策略:语言模型
- 奖励:RM − KL(约束偏离SFT)
- 循环:采样→打分→更新
- 目标:更对齐、更稳健
1.3 奖励模型(RM)
- 人类对多个候选排序
- 学习偏好评分函数
- 高分>低分,捕捉质量差异
写在最后
4.2 成本
- 数据:GPT‑3 级别TB量级
- 算力:数千 PF‑days
- 训练/推理成本巨大,单位交互有成本
GPT‑1(2018)
- 无监督预训练 + 监督微调
- 提出预训练迁移范式
GPT‑3(2020)
- 175B 参数
- few‑shot / In‑context
InstructGPT(2022)
- 指令学习 + 人类反馈
- 对齐至人类偏好
发展脉络(演进)
GPT‑2(2019)
- 更大规模与多任务
- 强 zero‑shot 能力
Instruction Tuning(FLAN等)
- 多任务指令微调
- zero‑shot 提升显著
ChatGPT
- 训练方式与InstructGPT一致
- 数据采集与交互形态差异
数据与分词
- Web/书籍/代码混合数据
- BPE/Tokenizer
- 清洗去噪与去重
RM 细节
- Pairwise 排序/BT模型
- 负对数似然目标
- 质量信号更稳定
安全与对齐
- 毒性/偏见过滤
- 拒答/护栏策略
- 系统提示与政策