SFT、DPO、CPT 这三个概念,它们都是在大语言模型(LLM)训练和对齐过程中常见的方法,但目的和方式不一样。
⸻
- SFT(Supervised Fine-Tuning,监督式微调)
定义:
SFT 是在一个已经预训练过的大模型(通常是语言模型)上,利用人工标注的 高质量指令-回复数据集 进行监督学习的过程。
特点:
• 数据集是人工或人工审核过的,通常成对(prompt → answer)。
• 训练目标是让模型输出尽量接近人工标注的答案。
• 常用于 第一步对齐:让大模型从“通用预测下一个词” → “能回答人类指令”。
举例:
• 给模型一个问题:“如何写一封求职邮件?”
• 人类标注的高质量答案作为标签。
• 模型在训练时学习模仿人类的这种输出。
优缺点:
• 优点:效果直观,能快速把模型调整到能“像人一样回答问题”。
• 缺点:标注数据成本高,且模型只会“模仿”,没有价值偏好或对齐保证。
⸻
- DPO(Direct Preference Optimization,直接偏好优化)
定义:
DPO 是一种 基于人类偏好(Human Preference) 的对齐方法,它是 RLHF(强化学习人类反馈) 的改进。
过程:
1. 收集成对的回答:比如同一个问题,模型生成两个不同答案。
2. 人类(或偏好模型)标注:哪个答案更好。
3. DPO 通过一个数学公式,把这种“偏好”转化成模型的优化目标,直接更新参数。
特点:
• 不需要训练一个单独的奖励模型(避免了 RLHF 中 reward model 的复杂性)。
• 更稳定、更高效,训练收敛速度快。
• 本质上是让模型学会:“在相似问题下,尽量生成被人类偏好的那个答案”。
举例:
• 提问:“给我写一段儿童能懂的黑洞解释。”
• 模型 A 回答太复杂,模型 B 回答生动易懂。
• 人类选择 B,DPO 会优化模型参数,让它未来更倾向于生成类似 B 的答案。
优缺点:
• 优点:效果好,训练更简单,比 RLHF 稳定。
• 缺点:仍然依赖人工偏好数据,且需要多答案对比数据。
⸻
- CPT(Continual Pre-Training,持续预训练)
定义:
CPT 指在一个已经预训练的语言模型上,继续使用新的大规模 无监督语料 进行预训练。
特点:
• 数据集不是人工标注的,而是网络文本、垂直行业数据、领域文档等。
• 目标还是 预测下一个词(LM objective),而不是监督任务。
• 主要用于 模型的知识迁移或领域适配。
举例:
• 你有一个通用大模型,但想让它在 医学领域 更强。
• 你收集了大量医学文献、病例报告,用它们对模型做 CPT。
• 结果:模型的医学知识更丰富,但对齐(alignment)层面没变化。
优缺点:
• 优点:简单有效,可以快速给模型“加知识”。
• 缺点:不能保证模型学会更好的指令遵循或价值对齐。
⸻
🔑 总结对比
方法 数据来源 训练目标 适用场景 优点 缺点
SFT 人工标注的 prompt-答复对 模仿人类答案 指令微调、对齐基础 简单直观,能快速对齐 依赖高质量标注,覆盖有限
DPO 人类偏好(答案对比数据) 优化人类偏好概率 对齐优化(比 RLHF 更简洁) 稳定高效,效果好 需要成对偏好数据
CPT 无监督文本(行业/领域语料) 预测下一个词 知识补充,领域适配 简单有效,扩展知识 无法对齐价值观或风格
⸻
👉 可以这么理解:
• CPT = 给模型“补知识”。
• SFT = 教模型“如何听懂并回答问题”。
• DPO = 教模型“怎么回答才更符合人类偏好”。
⸻
2927

被折叠的 条评论
为什么被折叠?



