大模型核心原理 / 对齐技术(SFT / RLHF / DPO)
CHAPTER 02 · TOPIC 05

对齐技术(SFT / RLHF / DPO)

预训练赋予大模型强大的语言理解和生成能力,但预训练后的模型只会"续写文本",不会遵循指令,也不具备安全性。对齐(Alignment)是将"原始大模型"变成"有用助手"的关键步骤。本章详细剖析从 SFT 到 RLHF 再到 DPO 的完整对齐技术栈。

一句话理解

预训练赋予大模型强大的语言理解和生成能力,但预训练后的模型只会"续写文本",不会遵循指令,也不具备安全性。对齐(Alignment)是将"原始大模型"变成"有用助手"的关键步骤。本章详细剖析从 SFT 到 RLHF 再到 DPO 的完整对齐技术栈。

阅读前置

建议先阅读第 01 章

本文关注

为什么需要对齐、监督微调(SFT, Supervised Fine-Tuning)、基于人类反馈的强化学习(RLHF)

所在知识层

技术地基 · 大模型核心原理

文章导航
主教学视觉对齐技术(SFT / RLHF / DPO) · 知识结构

点击图中节点可定位到对应正文。

核心主题关系与流向

引言

预训练赋予大模型强大的语言理解和生成能力,但预训练后的模型只会"续写文本",不会遵循指令,也不具备安全性。对齐(Alignment)是将"原始大模型"变成"有用助手"的关键步骤。本章详细剖析从 SFT 到 RLHF 再到 DPO 的完整对齐技术栈。


1. 为什么需要对齐

1.1 预训练模型 vs 对齐后的模型

语义 SVG 重绘对齐技术(SFT / RLHF / DPO) · 结构 1

根据原图的箭头、并列、分层与循环关系选择对应图形;可展开核对原文结构。

输入与上下文预训练模型的行为(给定输入"什么是AI?"):系统核心可能续写:"'s influence on mod…或者续写:"Artificial Intellig…或者输出完全无关的文本工具、结果与反馈
查看原文结构
预训练模型的行为(给定输入"什么是AI?"):
  → 可能续写:"'s influence on modern society..."
  → 或者续写:"Artificial Intelligence is a term coined by..."
  → 或者输出完全无关的文本
语义 SVG 重绘对齐技术(SFT / RLHF / DPO) · 结构 2

根据原图的箭头、并列、分层与循环关系选择对应图形;可展开核对原文结构。

对齐后的模型:"人工智能(AI)是指让计算机系统模拟…结构化、有帮助、安全的回答
查看原文结构
对齐后的模型:
  → "人工智能(AI)是指让计算机系统模拟人类智能行为的技术..."
  → 结构化、有帮助、安全的回答

1.2 对齐的三个目标(HHH)

目标含义示例
Helpful(有帮助)准确理解并满足用户需求给出详细、有用的回答
Honest(诚实)不编造事实,承认不确定性"我不确定"比瞎猜更好
Harmless(无害)不生成有害、歧视、危险内容拒绝教授制作炸弹的方法

2. 监督微调(SFT, Supervised Fine-Tuning)

2.1 SFT 的核心思想

用高质量的“指令-回答”对来微调预训练模型,让它学会遵循指令:

TEXT
SFT 训练数据格式:

[指令] 请解释什么是机器学习
[回答] 机器学习是人工智能的一个分支,它使计算机系统能够从数据中学习和改进,而不需要显式编程...

[指令] 写一首关于春天的五言绝句
[回答] 春风拂柳绿,细雨润花红。燕子归来早,人间四月中。

[指令] 将以下 Python 代码转换为 JavaScript
[回答] ...

2.2 SFT 数据的特点

维度说明
数据量通常 10K-100K 条(远小于预训练的万亿 token)
质量要求极高——每条数据都由人类专家精心编写
多样性覆盖问答、创作、编程、分析等多种任务类型
来源人工编写、GPT-4 辅助生成、社区贡献

2.3 SFT 的训练过程

语义 SVG 重绘对齐技术(SFT / RLHF / DPO)

根据原图的箭头、并列、分层与循环关系选择对应图形;可展开核对原文结构。

预训练模型SFT 微调SFT 模型
查看原文结构
预训练模型 → SFT 微调 → SFT 模型

2.4 SFT 模型的能力与局限

SFT 让模型学会:

  • 遵循指令回答问题
  • 按照要求的格式输出
  • 基本的对话交互

SFT 的局限:

  • 模型学会了"好的回答"的格式,但没有学会判断回答质量的相对好坏
  • 可能仍然生成不安全内容(训练数据中有正反例)
  • 容易产生"幻觉"——看起来很自信但事实错误

→ 需要更精细的对齐方法:RLHF


3. 基于人类反馈的强化学习(RLHF)

3.1 RLHF 的完整流程

RLHF 是 OpenAI 在 InstructGPT/ChatGPT 中使用的对齐方法:

语义 SVG 重绘对齐技术(SFT / RLHF / DPO) · 结构 1

根据原图的箭头、并列、分层与循环关系选择对应图形;可展开核对原文结构。

查看原文结构
阶段 1: SFT(监督微调)
  预训练模型 → 用高质量指令数据微调 → SFT 模型
语义 SVG 重绘对齐技术(SFT / RLHF / DPO) · 结构 2

根据原图的箭头、并列、分层与循环关系选择对应图形;可展开核对原文结构。

查看原文结构
阶段 2: 奖励模型训练(Reward Model Training)
  SFT 模型 → 对同一个 prompt 生成多个回答
  人类标注者 → 对回答进行排序(A > B > C > D)
  用排序数据 → 训练奖励模型(Reward Model)
语义 SVG 重绘对齐技术(SFT / RLHF / DPO) · 结构 3

根据原图的箭头、并列、分层与循环关系选择对应图形;可展开核对原文结构。

查看原文结构
阶段 3: PPO 强化学习
  SFT 模型(策略模型)→ 生成回答
  奖励模型 → 对回答打分
  PPO 算法 → 更新策略模型以获取更高奖励

3.2 奖励模型(Reward Model)

训练数据:

TEXT
Prompt: "解释什么是区块链"
回答 A: "区块链是一种分布式账本技术..." (人类评为最好)
回答 B: "区块链就是比特币..." (人类评为中等)
回答 C: "区块链是一种数据库..." (人类评为最差)

排序:A > B > C

奖励模型的学习目标:

TEXT
给定 (prompt, response),预测一个标量奖励值

Loss = -log(σ(r_A - r_B))  // 让好的回答得分高于差的回答

其中:
  r_A = RM(prompt, response_A)  // 回答 A 的奖励分数
  r_B = RM(prompt, response_B)  // 回答 B 的奖励分数
  σ = sigmoid 函数

3.3 PPO 训练

使用 Proximal Policy Optimization(PPO)算法更新模型:

TEXT
目标函数 = 奖励分数 - KL 惩罚

奖励分数:奖励模型对模型输出的评分(越高越好)
KL 惩罚:策略模型与 SFT 模型之间的分布差异(防止偏离太远)

即:让模型生成奖励模型认为好的回答,同时不要偏离 SFT 模型太远

3.4 RLHF 的效果

能力SFT 模型RLHF 模型
遵循指令更好
安全性中等显著提升
回答质量显著更好
拒绝不当请求
承认不确定性

3.5 RLHF 的挑战

挑战说明
奖励模型质量如果奖励模型学偏了,策略模型会利用漏洞(Reward Hacking)
训练不稳定PPO 对超参数敏感,训练可能崩溃
标注成本高需要大量人类标注者进行排序
标注者偏差不同标注者的偏好可能不一致
计算成本需要同时维护 4 个模型(策略、参考、奖励、价值)

4. DPO:直接偏好优化

4.1 DPO 的核心思想

2023 年,Rafailov 等人提出了 DPO(Direct Preference Optimization),绕过奖励模型,直接从偏好数据优化策略:

TEXT
RLHF 路线:偏好数据 → 训练奖励模型 → PPO 优化
DPO 路线:偏好数据 → 直接优化策略模型

4.2 DPO 的数学推导

DPO 证明了 RLHF 的最优策略可以用奖励函数的封闭形式表达,而这个奖励函数可以用策略模型本身来表示:

TEXT
DPO 损失函数:

L_DPO = -log σ(β × (log π(y_w|x)/π_ref(y_w|x) - log π(y_l|x)/π_ref(y_l|x)))

其中:
  π = 当前策略模型
  π_ref = 参考模型(SFT 模型)
  y_w = 人类偏好的好回答
  y_l = 人类不偏好的差回答
  β = 温度参数
  x = 输入的 prompt

直觉理解: 增大好回答的相对概率,减小差回答的相对概率,同时不要偏离参考模型太远。

4.3 DPO vs RLHF

维度RLHFDPO
训练流程SFT → 奖励模型 → PPOSFT → 直接优化
需要的模型数量4 个2 个(策略 + 参考)
训练稳定性差(PPO 不稳定)好(标准交叉熵损失)
计算成本低(约 RLHF 的一半)
效果相当或略好
奖励模型需要不需要
采用情况OpenAI、AnthropicMistral、LLaMA 3、Qwen

4.4 DPO 变体

方法创新点
IPO (Identity Preference Optimization)正则化的 DPO,更稳定
KTO (Kahneman-Tversky Optimization)不需要成对偏好数据,只需"好"/"坏"标签
ORPO (Odds Ratio Preference Optimization)将 SFT 和偏好优化合并为一步
SimPO无需参考模型的 DPO 变体

5. Constitutional AI(ConAI)

5.1 Anthropic 的创新

Anthropic 提出了 Constitutional AI,减少对人类标注的依赖:

TEXT
传统 RLHF:人类标注者评估每个回答的好坏
Constitutional AI:
  1. 模型自己生成回答
  2. 模型根据一组"宪法原则"自我批评
  3. 模型根据批评修改回答
  4. 用修改后的数据训练

宪法原则示例:

  • "选择最不有害的回答"
  • "选择最诚实的回答"
  • "避免刻板印象"
  • "拒绝提供危险信息"

5.2 RLAIF(RL from AI Feedback)

TEXT
阶段 1: 模型自我批评和修正(使用宪法原则)
阶段 2: 用 AI 的评判代替人类评判来训练奖励模型
阶段 3: 使用 RLHF 的 PPO 流程进行训练

优势: 大幅降低了对人类标注者的依赖,可以规模化扩展。


6. 对齐技术的演进全景

语义 SVG 重绘对齐技术(SFT / RLHF / DPO)

根据原图的箭头、并列、分层与循环关系选择对应图形;可展开核对原文结构。

查看原文结构
2017: 预训练模型(只能续写文本)
  ↓
2020: SFT(学会遵循指令)
  ↓
2022: RLHF(InstructGPT/ChatGPT,学会HHH)
  ↓
2023: DPO(更简单高效的对齐)
  ↓
2023: Constitutional AI(减少人类标注依赖)
  ↓
2024: 推理模型的对齐(o1/o3 用 RL 训练思考过程)
  ↓
未来: 超级对齐(Superalignment,对齐超越人类的AI)

7. 本章小结

技术核心机制优势劣势
SFT高质量指令数据微调简单有效无法学习质量排序
RLHF奖励模型 + PPO效果好复杂、不稳定、昂贵
DPO直接偏好优化简单、稳定依赖高质量偏好数据
ConAI宪法原则 + 自我修正减少人工标注宪法原则设计困难

相关章节


延伸阅读

  • Ouyang, L. et al. (2022). "Training Language Models to Follow Instructions with Human Feedback". NeurIPS
  • Rafailov, R. et al. (2023). "Direct Preference Optimization: Your Language Model is Secretly a Reward Model". NeurIPS
  • Bai, Y. et al. (2022). "Constitutional AI: Harmlessness from AI Feedback". arXiv:2212.08073
  • Ethayarajh, K. et al. (2024). "KTO: Model Alignment as Prospect Theoretic Optimization". ICML