Skip to content

RLHF / InstructGPT — 基于人类反馈的强化学习 ​

原标题: Training Language Models to Follow Instructions with Human Feedback 中文标题: 用人类反馈训练语言模型遵循指令 —— 从"文本补全机器"到"AI 助手"的关键一步 原始论文: Ouyang et al., OpenAI, 2022 (NeurIPS)


一句话摘要 ​

InstructGPT 通过三阶段训练流程(监督微调 → 奖励模型训练 → PPO 强化学习),使得仅 13 亿参数的小模型在人类评估中优于 1750 亿参数的 GPT-3,证明了人类反馈是让大语言模型从"能力强"变为"有用且安全"的关键桥梁。


核心内容 ​

1. 问题:为什么需要 RLHF? ​

预训练的语言模型(如 GPT-3)本质上是"文本补全机器" —— 它们被训练来预测下一个 token,而不是来帮助人类。这导致了一个根本性的对齐问题:

  • 模型可能生成有害、有偏见或不真实的内容
  • 模型可能"正确地补全文本"但不是用户想要的回答
  • 模型不理解"按照指令行事"意味着什么

RLHF 的核心洞察是:与其试图定义"好回答"的精确规则,不如直接让人类告诉模型什么是好的。

2. 三阶段训练流程 ​

第一阶段:监督微调(Supervised Fine-Tuning, SFT) ​

目标:将通用的文本补全模型转变为能够响应指令的模型。

方法:

  • 雇佣约 40 名高素质标注人员(超过 90% 拥有大学学历)
  • 标注人员为各类提示(prompt)编写高质量的示范回答
  • 使用约 13,000 个(提示,回答)对进行有监督微调
  • 损失函数仍为交叉熵损失,但仅计算回答部分的 token,不计算提示部分

关键发现:即使是 InstructGPT 最小的 13 亿参数版本,在人类评估中也优于原始 GPT-3 的 1750 亿参数版本。这证明了微调数据的质量比模型规模更重要。

数据规模参考:

  • InstructGPT: ~13,000 对
  • Stanford Alpaca: 52,000 对
  • 典型 SFT 数据集: 10,000 - 100,000 对

第二阶段:奖励模型训练(Reward Model, RM) ​

核心挑战:如何将人类对回答质量的判断转化为可优化的数学信号?

为什么不用直接评分? 实践中发现,让标注人员对回答打 1-7 分是极不可靠的 —— 不同人的评分标准差异巨大,且同一个人在不同时间的评分也不一致。相比之下,比较两个回答哪个更好是更自然、更一致的判断。

数据收集方法:

  1. 对同一个提示,让 SFT 模型生成多个不同的回答
  2. 标注人员对这些回答进行排序(而非评分)
  3. 一次排序 4 个回答(A > B > C > D)可以通过组合产生 6 个比较对:(A>B), (A>C), (A>D), (B>C), (B>D), (C>D)
  4. InstructGPT 从约 50,000 个提示中生成了 300K 到 180 万个比较对

标注一致性:标注人员之间的一致率约为 73%,即每 10 个标注人员中大约 7 个会在偏好排序上达成一致。

奖励模型的训练:

损失函数:

L = -log(σ(s_w - s_l))

其中 s_w 是被偏好回答的分数,s_l 是被淘汰回答的分数,σ 是 sigmoid 函数。这个公式惩罚"好回答得分低于差回答"的情况。

初始化策略:从 SFT 模型初始化奖励模型(而非从头训练),效果显著更好。这确保奖励模型对语言有足够的理解能力来评判回答质量。

第三阶段:PPO 强化学习微调 ​

目标:优化 SFT 模型,使其生成的回答能获得更高的奖励模型分数,同时保持行为的稳定性。

算法:近端策略优化(Proximal Policy Optimization, PPO),由 OpenAI 于 2017 年提出。

训练流程:

  1. 从分布中随机采样提示
  2. 用当前 LLM 生成回答
  3. 用奖励模型为回答打分
  4. 计算梯度,优化模型以生成更高分的回答

关键约束 —— KL 散度惩罚:

这是整个 RLHF 流程中最关键的技术细节。优化目标包含一个正则化项,防止 RL 模型偏离 SFT 基线模型太远:

objective₁ = RM(x, y) - β · log(LLM_RL(y|x) / LLM_SFT(y|x))

为什么需要这个约束? 如果没有 KL 散度惩罚,RL 模型可能会发现奖励模型的"漏洞" —— 生成一些奇怪但能骗到奖励模型给出高分的回答("奖励黑客攻击")。KL 约束确保优化后的模型不会偏离 SFT 模型太远。

预训练保持目标:

objective₂ = γ · log(LLM_RL(x))

在预训练分布上也保持性能,防止模型忘记基础的语言能力。

超参数:

  • β:控制 KL 散度约束的强度
  • γ:预训练保持目标的权重
  • InstructGPT RL 训练使用了约 40,000 个提示

3. 一个反直觉的发现:RLHF 增加了幻觉 ​

InstructGPT 的 RLHF 训练实际上增加了幻觉率(相比仅做 SFT 的版本),尽管整体回答质量提高了。

可能的解释:RLHF 训练模型生成"人类偏好的"回答,而人类偏好自信、详尽的回答 —— 这可能无意中鼓励模型编造听起来合理但无事实依据的信息。

John Schulman 的建议:

  • 要求模型引用来源
  • 设计专门惩罚编造内容的奖励函数

4. 资源分配 ​

训练资源分配极度不均衡:

  • 预训练:占总计算和数据资源的 ~98%
  • SFT + RLHF:仅占 ~2%

这意味着对齐训练(SFT + RLHF)以极小的边际成本,就能带来模型行为的巨大改变。


技术要点 ​

  1. 比较优于评分:让人类比较两个回答比让人类打分更可靠、更一致。这一设计选择是 RLHF 实际可行的关键。

  2. 小模型 + 好对齐 > 大模型 + 无对齐:InstructGPT 1.3B 优于 GPT-3 175B 的事实表明,模型行为的"对齐"可能比模型规模更重要。

  3. KL 散度约束的必要性:没有正则化的 RL 优化会导致奖励黑客攻击,KL 惩罚是防止模型行为退化的安全阀。

  4. RLHF 的幻觉悖论:优化人类偏好可能无意中增加幻觉,提示我们"人类喜欢的"和"事实正确的"之间存在张力。

  5. 2% 的杠杆效应:仅用总训练成本 2% 的资源进行对齐,就能从根本上改变模型的行为模式,这是一个惊人的效率比。


深度解读 ​

RLHF/InstructGPT 的发表是 AI 发展史上的一个转折点:

ChatGPT 的秘密武器。ChatGPT 的成功不仅在于 GPT-3.5 的基础能力,更在于 RLHF 让模型学会了"像助手一样说话"。没有 RLHF,ChatGPT 可能只是一个更大的文本补全器,而不是一个能够理解用户意图并有条理地回答问题的 AI 助手。

对齐税 vs 对齐红利。传统观点认为安全对齐会降低模型性能("对齐税")。InstructGPT 颠覆了这一观点 —— 对齐后的模型不仅更安全,而且对用户更有用。这表明对齐和性能不一定是零和博弈。

人类偏好的局限性。RLHF 的基本假设是"人类知道什么是好的回答"。但标注人员的判断受到自身知识、偏见和注意力限制。当模型在某些领域的知识超越标注人员时,人类反馈可能反而误导模型。

从 RLHF 到 RLAIF。Anthropic 的 Constitutional AI(宪法 AI)方法部分用 AI 生成的比较数据替代人类标注(183K AI 生成 vs 135K 人类生成),预示了更可扩展的对齐方法。

PPO 的替代者。PPO 虽然有效但训练不稳定且复杂。后续出现了 DPO(Direct Preference Optimization)等更简单的替代方案,直接从偏好数据优化模型,跳过了显式的奖励模型训练。


延伸思考 ​

  1. 谁的偏好? RLHF 训练的模型反映的是标注人员群体的偏好。不同文化、不同背景的人对"好回答"的定义可能截然不同。如何让模型服务于多元化的用户群体,是一个开放性挑战。

  2. 超人类对齐:当 AI 模型在某些任务上超越人类时,如何继续用人类反馈来对齐它?这是"可扩展监督"(scalable oversight)问题的核心。

  3. DPO 与在线 RLHF:DPO 等离线方法虽然简单,但可能不如在线 RLHF 那样能持续探索新的行为空间。两种方法的优劣权衡仍在研究中。

  4. 过程奖励 vs 结果奖励:InstructGPT 的奖励模型评估的是最终回答的质量(结果奖励)。最新研究开始探索"过程奖励模型"(PRM),对推理的每一步进行评估,可能带来更好的推理对齐。


原文链接 ​


翻译整理日期: 2026-03-21

全球顶尖 AI 实验室博客的中文翻译与深度解读 · 210+ 篇文章 · 15+ 实验室