引言:模型变大 ≠ 更懂你
2020 年 GPT-3 以 175B 参数震惊世界,但用户很快发现一个尴尬的事实:这个怪兽经常「好心办坏事」。你让它写一段代码注释,它给你生成一篇技术博客;你问它事实性问题,它一本正经地编造;你让它拒绝不当请求,它被诱导几句就说出有害内容。
换句话说,GPT-3 没对齐(misaligned)——它的语言建模目标(预测下一个 token)和用户的使用意图之间存在鸿沟。
2022 年 3 月,OpenAI 发表了一篇后来改变了整个行业走向的论文:Training Language Models to Follow Instructions with Human Feedback。这篇论文提出了一种叫 RLHF(Reinforcement Learning from Human Feedback,人类反馈强化学习) 的方法,分三步把 GPT-3 改造成了能更好理解用户意图的 InstructGPT。而 ChatGPT 的诞生,正是沿着这条路线走下去的结果。
本文将拆解 InstructGPT 的三个训练阶段、关键超参、定量效果,以及它留下的「对齐税」问题。
Step 1:监督微调(SFT)—— 让模型先学「好答案」
RLHF 的第一步是最直观的:找人来写好答案,然后让模型照猫画虎。
OpenAI 雇佣了标注员,针对从 API 收集的 prompt(用户提问)写出高质量的回答。这些 prompt 覆盖了生成、问答、写作、总结、代码等九大类任务。标注员写的回答不追求完美,但要「有用」——回答 prompt 所问、不编造事实、不给有害建议。
最终收集了约 13k 条标注员演示数据(train 12,725 + valid 1,653),再加上一小部分(约 1.4k)真实用户提交的 prompt 作为补充。
在这些数据上,用监督学习微调 GPT-3 的预训练权重。1.3B 和 6B 模型训练 16 个 epoch,更大 batch size(32),学习率 9.65e-6;175B 用 batch size 8 和学习率 5.03e-6。所有模型使用 residual dropout 0.2 和余弦衰减学习率。对每个模型规模,选择验证集上 RM 分数最高的 checkpoint。
图 1:InstructGPT 的 RLHF 三步流程——SFT 学习人类的示范回答,奖励模型学习人类的偏好排序,PPO 用奖励信号优化策略
这一步产出一个「会回答」但还不极致对齐的模型 π_SFT。
Step 2:奖励模型(Reward Model)—— 让模型学会分辨好坏
SFT 只能让模型「会写」,但无法教它「哪种写法更好」。第二步要做的就是训练一个打分器,让它学会预测人类更喜欢哪个回答。
具体做法:对一批 prompt,用 SFT 模型采样 K = 4~9 个不同回答(不同的 temperature),然后标注员对这些回答排序(从最好到最差)。每个 prompt 的排序产生 C(K, 2) 个比较对(两个回答中哪个更好)。
这里有一个精妙的设计:用排序而非打分。让两个标注员各自给同一个回答打 1-5 分,一致性很差——每个人对「3 分」的标准不同。但如果只让他们比较「A 还是 B」更好,一致性就高得多。这也是 RLHF 方法论的基石思想之一。
奖励模型用这些对比数据训练。约 33k 个 prompt(训练集),每个产生多次采样。关键发现:只用 6B 参数做奖励模型——尝试 175B 会导致训练极不稳定。训练 1 个 epoch,学习率 9e-6,batch size 64(每 batch 可含 2,304 个比较对)。
损失函数很直觉:给定两个回答 y_w(更好)和 y_l(更差),最大化打分差异:
$$L(θ) = -log(σ(r_θ(x, y_w) - r_θ(x, y_l)))$$这里的 σ 是 sigmoid。两个回答间奖励差越大,模型越有信心区分。最终奖励会加归一化 bias,使来自标注员的示范回答得分为 0——这样就为 PPO 阶段建立了参照系。
Step 3:PPO 强化学习 —— 用奖励信号驱动对齐
有了奖励模型,第三步就是用它来优化语言模型策略。
PPO(Proximal Policy Optimization)是一种可以稳定训练的策略优化算法。OpenAI 的 RLHF 实现直接使用了 Schulman et al. (2017) 的原始 PPO 算法。
每个 episode,从 prompt 集合中采样一个 prompt,用当前策略生成回答 y,然后:
- 正向信号:奖励模型打分 r_θ(x, y),越高越好
- 负向约束:KL 散度惩罚,如果策略偏离 SFT 模型太远
后者至关重要。没有 KL 惩罚,模型会迅速学会「取悦奖励模型」——它可能生成一些语法不通但你发现奖励模型给高分的话术(这叫 reward hacking)。KL 散度把策略锚定在 SFT 的分布附近,防止这种退化。
目标函数:
$$max_φ E[r_θ(x, y)] - β · KL(π_φ ‖ π_{SFT})$$其中 KL 惩罚系数 β = 0.02。OpenAI 还实验了 PPO-ptx 变体——在 RL 目标中加入预训练梯度(系数 γ = 27.8),混合 10% 预训练数据。PPO-ptx 版本的「对齐税」更低:在保持对齐效果的同时,对 NLP benchmark 性能的负面影响更小。
关键超参:batch size 512、minibatch 64(只有 1 个 inner epoch)、PPO clip ratio 0.2、常数学习率、采样温度 1(无衰减)、权重 EMA 衰减率 0.992。value function 从奖励模型初始化,6B 参数。总计 256k 个 episode(约 31k 去重 prompt)。
惊人的效果对比
InstructGPT 最震撼的结果是在人工评估中:
| 对比 | 胜率 |
|---|---|
| 175B InstructGPT vs 175B GPT-3 | 85% ± 3% 用户更喜欢 InstructGPT |
| 175B InstructGPT vs few-shot 175B GPT-3 | 71% ± 4% |
| 1.3B InstructGPT vs 175B GPT-3 | 胜出(参数不到对方 1%) |
最后一条特别说明问题:用户宁愿用一个 1.3B 的对齐模型,也不用 175B 的未对齐模型。对齐的价值大于规模。
在具体维度上:
- 指令遵循:InstructGPT 更擅长完成用户的请求(「不忽略约束」「不说废话」)
- 真实性:TruthfulQA 上 InstructGPT 产生真实答案的概率比 GPT-3 高约 1 倍;封闭域幻觉率从 GPT-3 的 41% 降至 21%
- 有害性:当提示「保持礼貌」时,InstructGPT 的有害输出比 GPT-3 少约 25%
- 偏见:Winogender 和 CrowS-Pairs 数据集上没有明显改善
但要注意,这些有害性改善是 modest 的——论文作者自己也坦诚地说,RLHF 不是安全的银弹。
对齐税:模型变得更聪明,但也在某些地方变慢了
RLHF 引入了「对齐税(alignment tax)」:对齐后模型在部分标准 NLP benchmark 上出现性能退化(如 DROP 问答集和翻译任务)。PPO-ptx 变体大大缓解了这个问题。
更重要的发现是:InstructGPT 能泛化到未见过的标注员偏好。训练数据之外的标注员同样更喜欢 InstructGPT 的输出,说明模型学到的不是迎合特定标注员,而是学到了更普遍的「有用性」标准。这种泛化也延伸到代码任务和非英文指令上。
图 2:InstructGPT vs GPT-3 关键指标对比——人类偏好胜率 85%、幻觉率从 41% 降至 21%、有害输出减少 25%
护栏视角
作为一名关注 AI 安全的工作者,我认为 InstructGPT 的技术路线在安全方面有两个重要启示:
正面:
- 人类的排序比打分更可靠。排序方案让标注员之间的一致性大幅提升,减少了训练数据中的噪声和歧义
- KL 惩罚是一道天然的开发护栏。它让模型不会为了取悦奖励模型而放弃语言能力,这在架构层面防止了一种 reward hacking
- PPO-ptx 证明了对齐和安全可以和解。混入预训练目标后,能力退化(alignment tax)大幅降低,说明安全优化不必然以牺牲性能为代价
挑战:
- 有害性改善有限。论文坦诚指出有害内容只减少了约 25%,在恶意 prompt 下模型仍可能越狱
- 奖励模型自身的安全盲区。奖励模型只在「两段回答哪个更好」的数据上训练,它无法评估一段回答中的微妙歧视或间接有害性
- 标注员偏见进入对齐目标。如果标注员群体本身存在文化偏见,排序数据就无法具有普适性。论文作者也承认这是他们面临的主要限制之一
我的判断:InstructGPT 定义了一个技术路线图,但它把一个关键问题留给了后来者——谁来定义「好」? RLHF 把这个问题外包给了标注员,而标注员的偏好并不是普遍价值的代理。这解释了为什么后来的 Anthropic Constitutional AI 和 DeepSeek-R1 的规则奖励都在试图回答同一个问题:对齐目标不应该是纯粹的统计偏好聚合。
总结
InstructGPT 的贡献不在于算法创新(PPO 和 RLHF 都出自更早的工作),而在于它第一次证明了:对齐比规模更重要。
| 维度 | 核心发现 |
|---|---|
| 方法论 | SFT → Reward Model → PPO 三步流水线,每步数据规模和超参都经过精心设计 |
| 关键取舍 | KL 惩罚 β=0.02 平衡对齐与能力;PPO-ptx 降低对齐税 |
| 效果 | 1.3B 对齐模型优于 175B 原始模型,幻觉率减半 |
| 局限 | 有害性改善有限,偏见无显著改善,对齐受限于标注员偏好 |
回头看,这篇论文是 ChatGPT 和整个对齐 / 后训练时代的技术基石。后来的 RLHF 变体——InstructGPT → ChatGPT → Constitutional AI → DPO → R1 的 GRPO——都是在它开辟的框架内扩展。但它的核心洞察至今未变:把模型做小不难,把模型做对才是最值得做的事。
参考资料
- 原论文:Ouyang, L., Wu, J., Jiang, X. et al. Training Language Models to Follow Instructions with Human Feedback. NeurIPS 2022. https://arxiv.org/abs/2203.02155
- OpenAI 官方博客:Aligning Language Models to Follow Instructions. https://openai.com/index/instruction-following/
- 技术解读:ArthurChiao. InstructGPT 论文精读. http://arthurchiao.art/blog/instructgpt-paper-zh/
- PPO 算法原论文:Schulman, J. et al. Proximal Policy Optimization Algorithms. 2017. https://arxiv.org/abs/1707.06347
- RLHF 基础:Christiano, P. et al. Deep Reinforcement Learning from Human Preferences. NeurIPS 2017. https://arxiv.org/abs/1706.03741
- 对齐框架:Askell, A. et al. A General Language Assistant as a Laboratory for Alignment. 2021. https://arxiv.org/abs/2112.00861