AI技术总监级拆解大模型|第14讲
Instruction Tuning、SFT、RLHF、DPO:模型为什么开始“听懂人话”?
AI 学习系列|第14讲 / 共26讲
第13讲回答的是:
为什么模型、数据、计算要一起扩大?第14讲继续追问:
预训练模型明明只是“预测下一个 Token”,为什么最后却能按照人的要求回答问题?
关键答案是:
Pretraining ↓ Instruction Tuning ↓ SFT ↓ Preference Learning ↓ RLHF / DPO ↓ Chat Model
01|预训练模型为什么还不能直接当“聊天助手”?
第11讲已经知道,GPT 的核心预训练目标是:
[
P(x_t\mid x_{<t})
]
也就是:
给定前面的 Token,预测下一个 Token。
这个目标非常强,但它训练出来的模型首先是一个:
语言建模器。
它学会了大量:
语言结构 知识 代码模式 表达方式 世界中的统计规律但这不等于它天然知道:
用户提出任务 ↓ 应该先理解指令 ↓ 按照要求回答 ↓ 拒绝危险请求 ↓ 按规定格式输出所以:
会预测文本 ≠ 天然会按照人类意图做助手。
这就是后训练出现的原因。
02|Instruction Tuning 是什么?
最直观:
预训练: “文字通常接下来是什么?” Instruction Tuning: “用户要求我做什么?应该怎样回答?”例如训练数据:
指令: 把下面这句话翻译成英文。 输入: 我喜欢人工智能。 理想回答: I like artificial intelligence.模型开始学习:
Instruction ↓ Task ↓ Answer这就是:
Instruction Tuning(指令微调)
它的目标不是重新教模型认识整个世界,而是:
让已经具有语言能力的模型,更会按照人类指令完成任务。
03|SFT:最直接的后训练方法
SFT =Supervised Fine-Tuning,监督微调。
它的训练方式和普通监督学习非常接近:
输入 + 理想答案 ↓ 模型预测 ↓ Loss ↓ Backward ↓ 参数更新也就是前面第06讲的训练闭环又回来了。
如果训练样本是:
User: 介绍一下 TCP 三次握手。 Assistant: ……SFT 就让模型尽量学会:
看到这种指令 ↓ 生成这种高质量答案04|SFT 到底改了什么?
预训练已经让模型拥有大量基础能力。
SFT 更像是在告诉它:
你已经会很多东西了。 现在进一步学习: “面对人类指令时,应该怎样使用这些能力。”因此可以理解成:
Pretraining = 学语言 / 世界模式 SFT = 学怎么按照指令做任务这是非常重要的分工。
05|为什么仅仅 SFT 还不够?
因为:
“有答案”不代表“哪个答案更好”。
例如同一个问题,模型产生:
答案 A 答案 B两者都可能:
语法正确 内容相关但:
A 更准确 B 更啰嗦 或者: A 更安全 B 有风险 或者: A 更符合用户要求 B 虽然正确,但答非所问于是出现一个新问题:
如何把“人类更喜欢哪个回答”也告诉模型?
这就进入:
Preference Learning(偏好学习)。
06|Preference Learning:从“正确答案”走向“更好的答案”
可以构造:
Prompt ↓ Answer A Answer B ↓ 人类判断: A > B这里不是说:
A = 唯一正确答案而是说:
在当前任务下,人类更偏好 A。
这是一种“排序信息”。
它很重要,因为现实世界很多任务并不存在唯一答案。
例如:
写一封邮件 写一段代码 解释一个概念 设计一个方案可能同时存在很多正确答案。
真正需要学习的是:
更有帮助 更准确 更安全 更符合要求07|RLHF 是怎么来的?
RLHF:
Reinforcement Learning from Human Feedback
即:
从人类反馈中进行强化学习。
经典思路可以分成三步理解。
第一步:SFT
先把基础模型变得:
会听指令 会正常回答第二步:训练奖励模型
收集:
Prompt + Answer A + Answer B + 人类偏好训练一个奖励模型:
[
R(x,y)
]
让它学习:
哪个回答更符合人类偏好。
第三步:强化学习
让语言模型生成回答。
奖励模型给分:
回答 ↓ Reward然后使用强化学习方法更新模型,使:
更高奖励的回答更容易出现。
经典 RLHF 中常见:
PPO(Proximal Policy Optimization)
于是形成:
SFT ↓ Reward Model ↓ RL ↓ 更符合人类偏好的模型08|为什么 RLHF 和第04、06讲有关?
因为最终还是:
Loss / Reward ↓ Gradient ↓ Parameter Update也就是说:
后训练没有脱离前面学过的机器学习基本原理。
只是:
预训练 目标: Next Token RLHF 目标: 更高的人类偏好奖励09|DPO 为什么出现?
RLHF 的工程链条比较长:
SFT ↓ Reward Model ↓ RL ↓ PPO ↓ 训练其中:
奖励模型 + 强化学习都会增加复杂度。
于是出现:
DPO(Direct Preference Optimization)
它的核心思想可以先粗略理解成:
直接利用“偏好数据”优化模型,而不显式训练一个独立的奖励模型再跑完整 RL 流程。
10|DPO 的数据长什么样?
例如:
Prompt: 解释 TCP 三次握手。 Chosen: 清楚、准确、简洁的答案。 Rejected: 错误、啰嗦或不符合要求的答案。DPO 直接利用:
Prompt + Chosen + Rejected学习:
让模型更倾向于生成 Chosen,而不是 Rejected。
11|DPO 的核心直觉
你可以把它理解成:
给模型两个候选方向: 这个更好 这个更差 训练过程: 提高“更好”的概率 降低“更差”的概率因此:
SFT = 给示范答案 DPO = 给偏好对比这是两种非常不同的监督信号。
12|SFT、RLHF、DPO 一次分清
SFT ↓ “正确答案长这样”训练:
Instruction → Ideal AnswerRLHF ↓ “这些回答里,人更喜欢这个”典型链条:
SFT ↓ Reward Model ↓ PPO / RLDPO ↓ “这个答案优于那个答案”直接利用:
Chosen vs Rejected进行偏好优化。
13|为什么“听懂人话”不是预训练一步完成的?
现在把整条路线串起来:
Pretraining ↓ 学习语言与世界中的大量模式 ↓ SFT ↓ 学习按照指令完成任务 ↓ Preference Learning ↓ 学习什么样的回答更受偏好 ↓ RLHF / DPO ↓ 进一步对齐行为所以:
一个聊天模型不是只靠“预测下一个 Token”这一层训练出来的。
更准确:
预训练 → 建立基础能力 后训练 → 把基础能力整理成“助手行为”14|Alignment 到底是什么?
Alignment(对齐)可以先理解成:
让模型行为更符合人类期望、任务要求和安全规范。
它不是一个单一算法。
而是一整套训练与系统方法。
可以包括:
Instruction Tuning SFT Preference Data RLHF DPO Safety Training Policy System Prompt Tool Constraints所以:
“对齐”是目标/过程类别,不等于某一个具体算法。
15|一个非常重要的理解:能力和行为是两回事
假设预训练模型已经具备:
代码能力 数学能力 知识 语言能力但它回答用户时可能:
不听指令 格式混乱 过度啰嗦 不安全 不符合任务目标后训练解决的很多问题不是:
“让模型从零学会数学。”
而是:
让已有能力以更符合目标的方式被调用出来。
当然,后训练也可能进一步改变能力本身,但不要把:
能力和:
行为对齐简单等同。
16|为什么 ChatGPT 的“聊天感”很重要?
因为聊天助手不只是:
知道答案还要:
理解指令 + 保持上下文 + 遵守格式 + 符合偏好 + 控制风险 + 在不同任务之间切换因此:
预训练 ↓ 基础能力只是第一层。
后训练 ↓ 助手行为才让它真正变成一个“可用的通用助手”。
17|把训练过程完整串起来
你可以把现代 LLM 的训练粗略记成:
海量文本 ↓ Pretraining ↓ Next Token Prediction ↓ 基础模型 ↓ Instruction Data ↓ SFT ↓ Preference Data ↓ RLHF / DPO ↓ 对齐后的 Chat Model其中训练底层始终离不开:
Forward ↓ Loss / Objective ↓ Gradient ↓ Optimizer ↓ Parameter Update18|工程上为什么不能只看“模型智商”?
因为最终产品评价的是:
能力 + 指令遵循 + 可靠性 + 安全 + 格式 + 稳定性 + 成本例如:
基础能力 95分 指令遵循 60分最终产品体验可能并不好。
所以后训练实际上是在做:
把“会做题的模型”变成“会工作的助手”。
19|第14讲和第13讲怎么连接?
第13讲:
Model + Data + Compute ↓ Scaling ↓ 更强基础模型第14讲:
基础模型 ↓ SFT ↓ Preference Learning ↓ RLHF / DPO ↓ 更符合人类意图的模型所以:
第13讲解决“模型为什么越做越大”,第14讲解决“有了这么大的模型,怎样把它变成真正可用的助手”。
20|这一讲最重要的 10 个结论
1. 预训练的核心目标是 Next Token Prediction。 2. 预训练得到的是强大的基础语言模型,但不等于天然会当助手。 3. Instruction Tuning 让模型学习按照指令完成任务。 4. SFT 是利用“指令 → 理想答案”进行监督微调。 5. Preference Learning 解决“多个答案哪个更好”的问题。 6. RLHF 通过人类偏好训练奖励模型,再用强化学习优化模型行为。 7. DPO 直接利用偏好对(Chosen / Rejected)进行优化,简化了传统 RLHF 的一部分流程。 8. Alignment 是一个目标/过程类别,不是单一算法。 9. 能力和行为不是一回事;后训练重点之一是让已有能力更符合人类任务要求。 10. 现代 Chat Model 可以看成“预训练基础能力 + 后训练行为对齐”的结果。21|一句话吃透第14讲
预训练让模型“有能力”,SFT 让模型“学会按指令做事”,RLHF 和 DPO 则进一步利用人类偏好把模型行为往“更有帮助、更符合要求、更安全”的方向调整;所以一个真正好用的 Chat Model,不只是一个会预测下一个 Token 的模型,而是经过后训练对齐后的基础模型。
22|下一讲
第15讲|Reasoning、Chain-of-Thought 与 Test-Time Compute:推理能力从哪里来?
第14讲解决:
模型已经很强 ↓ 怎样让它更会按照人类要求工作?第15讲继续追问:
为什么有些模型在复杂数学、代码和推理任务上, 不是“知道答案”那么简单, 而是需要更长的思考过程?于是进入:
Reasoning ↓ Chain-of-Thought ↓ Test-Time Compute ↓ Search / Verification ↓ Reasoning Models