本文解读的是Long Ouyang等人于2022年发表的里程碑论文《Training language models to follow instructions with human feedback》,该论文提出了InstructGPT模型和RLHF(Reinforcement Learning from Human Feedback,人类反馈强化学习)技术,首次实现了让语言模型真正理解并遵循人类指令。InstructGPT是ChatGPT的直接技术前身——它证明了即使是参数量小得多的模型,通过RLHF对齐后也能比原始GPT-3更受用户青睐,这一发现直接催生了ChatGPT的诞生,开启了AI对话助手的新纪元。


语言模型对齐问题

问题一:GPT-3的"不听话"

尽管GPT-3展示了惊人的能力,但它存在一个根本问题:不能可靠地遵循用户指令

典型问题包括:

答非所问

用户:列出5个学习编程的建议
GPT-3:编程是一门重要的技能。很多人学习编程...(继续生成无关内容)

有害内容

用户:如何做一个好人?
GPT-3:(可能生成负面或有害建议)

胡言乱语

用户:2+2等于几?
GPT-3:2+2等于5。在某些情况下...(自信地输出错误内容)

问题二:预训练目标的错位

GPT-3的预训练目标是预测下一个token

$$ \mathcal{L}{\text{LM}} = -\sum{i} \log P(x_i | x_1, \ldots, x_{i-1}) $$

这一目标与用户的真正需求存在根本错位:

预训练目标 用户需求
预测最可能的续写 有帮助的回答
模仿训练数据分布 诚实的信息
最大化似然 安全的内容

示例

  • 训练数据:“问:今天天气怎么样?答:今天天气…”
  • 用户需求:“告诉我明天的天气预报”
  • GPT-3可能继续写"晴朗",而不是承认不知道

问题三:对齐问题的定义

AI对齐(Alignment)问题的核心是:如何让AI系统的行为符合人类意图

形式化定义:

$$ \text{对齐目标} = \max_{\theta} \mathbb{E}{x \sim \mathcal{D}{\text{user}}}[R_{\text{human}}(\text{model}_\theta(x))] $$

其中 $R_{\text{human}}$ 是人类对输出的评价,$\mathcal{D}_{\text{user}}$ 是用户查询分布。

问题是:$R_{\text{human}}$ 无法直接获得,也无法简单量化。


RLHF的三阶段方法

阶段一:监督微调(SFT)

首先,在人工标注的高质量数据上进行监督微调:

数据收集

  1. 收集用户提交的prompt(约13,000条)
  2. 雇用40名标注员编写高质量回答
  3. 质量控制:多人标注,一致性检查

微调目标

$$ \mathcal{L}{\text{SFT}} = -\sum{(x, y) \in \mathcal{D}_{\text{demo}}} \log P(y | x; \theta) $$

其中 $(x, y)$ 是prompt-回答对。

效果:SFT后的模型已经显著优于原始GPT-3,但仍有提升空间。

阶段二:奖励模型训练(RM)

接下来,训练一个奖励模型来模拟人类偏好:

比较数据收集

  1. 给定prompt,让SFT模型生成多个回答(K个,通常K=4-9)
  2. 标注员对回答进行排序
  3. 将排序转换为成对比较数据

奖励模型架构

奖励模型 $r_\phi(x, y)$ 输出一个标量分数,表示回答 $y$ 对prompt $x$ 的质量。

训练目标(Bradley-Terry模型):

$$ \mathcal{L}{\text{RM}} = -\mathbb{E}{(x, y_w, y_l) \sim \mathcal{D}{\text{comparison}}} \left[ \log \sigma(r\phi(x, y_w) - r_\phi(x, y_l)) \right] $$

其中 $y_w$ 是偏好回答(winner),$y_l$ 是非偏好回答(loser),$\sigma$ 是sigmoid函数。

直觉:最大化偏好回答与非偏好回答的分数差距。

阶段三:强化学习优化(PPO)

最后,使用强化学习优化语言模型,使其生成高奖励的回答:

目标函数

$$ \mathcal{L}{\text{RL}} = \mathbb{E}{x \sim \mathcal{D}, y \sim \pi_\theta(y|x)} \left[ r_\phi(x, y) - \beta \cdot D_{\text{KL}}(\pi_\theta(y|x) | \pi_{\text{ref}}(y|x)) \right] $$

其中:

  • $\pi_\theta$ 是当前策略(语言模型)
  • $\pi_{\text{ref}}$ 是参考策略(SFT模型)
  • $\beta$ 是KL惩罚系数
  • $D_{\text{KL}}$ 是KL散度

KL惩罚的作用:防止模型过度优化奖励函数,偏离原始语言模型太远(“reward hacking”)。

PPO算法

PPO(Proximal Policy Optimization)是一种稳定的策略梯度算法:

$$ \mathcal{L}_{\text{PPO}} = \mathbb{E}_t \left[ \min\left( r_t(\theta) \hat{A}_t, \text{clip}(r_t(\theta), 1-\epsilon, 1+\epsilon) \hat{A}_t \right) \right] $$

其中 $r_t(\theta) = \frac{\pi_\theta(a_t|s_t)}{\pi_{\theta_{\text{old}}}(a_t|s_t)}$ 是概率比,$\hat{A}_t$ 是优势估计。


训练细节与技术

数据标注指南

标注员遵循详细的指南来评估回答质量:

有帮助性(Helpfulness)

  • 是否回答了用户的问题?
  • 是否提供了有用的信息?
  • 是否简洁明了?

诚实性(Honesty)

  • 是否承认不确定性?
  • 是否避免编造信息?
  • 是否引用可靠来源?

无害性(Harmlessness)

  • 是否避免有害内容?
  • 是否拒绝不当请求?
  • 是否考虑潜在负面影响?

模型规模对比

论文训练了多个规模的InstructGPT:

模型 参数量 对比GPT-3
InstructGPT 1.3B 1.3B GPT-3 175B
InstructGPT 6B 6B GPT-3 175B
InstructGPT 175B 175B GPT-3 175B

关键发现1.3B的InstructGPT在人类评估中优于175B的GPT-3

迭代训练

InstructGPT使用迭代训练方法:

  1. 训练初始SFT模型
  2. 收集比较数据,训练RM
  3. 用RL优化,得到新模型
  4. 用新模型收集更多数据
  5. 重复步骤2-4

每次迭代都能提升模型质量。


实验结果与分析

人类评估

在人类评估中,InstructGPT显著优于GPT-3:

对比 InstructGPT胜率
InstructGPT 1.3B vs GPT-3 175B 85%
InstructGPT 6B vs GPT-3 175B 87%
InstructGPT 175B vs GPT-3 175B 92%

令人震惊的发现:仅1.3B参数的InstructGPT就能击败100倍大的GPT-3!

TruthfulQA基准

在测试诚实性的TruthfulQA基准上:

模型 真实性% 信息量%
GPT-3 175B 58.0 90.0
InstructGPT 1.3B 64.3 88.1
InstructGPT 175B 76.4 82.3

InstructGPT更诚实,更少编造内容。

安全性评估

在RealToxicityPrompts基准上:

模型 有毒输出比例
GPT-3 175B 6.48%
InstructGPT 175B 0.61%

InstructGPT生成的有害内容减少了90%以上。

能力保持

RLHF会损失一些原始能力(“对齐税”),但损失可控:

任务 GPT-3 InstructGPT 变化
HellaSwag 78.9% 77.8% -1.1%
WinoGrande 70.2% 69.7% -0.5%
ARC 51.4% 51.1% -0.3%

能力保持相当稳定。


对齐技术的理论分析

奖励模型的局限

奖励模型面临几个挑战:

分布偏移

  • 训练时:RM在SFT模型输出上训练
  • 测试时:RM评估RL优化后的模型输出
  • 分布差异导致RM可能不准确

Reward Hacking: 模型可能找到"欺骗"奖励模型的方式:

$$ y^* = \arg\max_y r_\phi(x, y) \neq \arg\max_y R_{\text{human}}(x, y) $$

KL惩罚能缓解但不能完全解决这一问题。

RLHF的理论基础

RLHF可以理解为一种偏好学习(Preference Learning):

假设:存在潜在的人类偏好函数 $R^*(x, y)$

目标:从成对比较中学习 $R^*$ 的近似

$$ P(y_w \succ y_l | x) = \frac{\exp(R^(x, y_w))}{\exp(R^(x, y_w)) + \exp(R^*(x, y_l))} $$

Bradley-Terry模型正是基于这一假设。

KL惩罚的理论解释

KL惩罚可以理解为正则化

$$ \max_\theta \mathbb{E}[r_\phi(x, y)] - \beta D_{\text{KL}}(\pi_\theta | \pi_{\text{ref}}) $$

等价于:

$$ \max_\theta \mathbb{E}{\pi\theta}[r_\phi(x, y)] + \beta \mathcal{H}(\pi_\theta) - \beta \mathbb{E}{\pi\theta}[\log \pi_{\text{ref}}(y|x)] $$

包含熵正则化项,防止模型过于确定(坍缩到单一输出)。


从InstructGPT到ChatGPT

技术演进

ChatGPT基于InstructGPT的技术框架,增加了:

特性 InstructGPT ChatGPT
基础架构 GPT-3 GPT-3.5
RLHF ✓(改进)
对话能力 单轮为主 多轮对话
安全过滤 基础 增强
用户体验 API 对话界面

对话优化

ChatGPT在对话方面的关键改进:

  1. 对话历史建模:将多轮对话作为上下文
  2. 系统提示:定义助手角色和行为
  3. 拒绝策略:对不当请求的优雅拒绝
  4. 追问能力:在信息不足时主动询问

安全增强

ChatGPT加强了安全措施:

  1. 内容过滤:输入输出双向过滤
  2. 红队测试:专门团队尝试破解安全措施
  3. 迭代改进:基于用户反馈持续更新
  4. 使用政策:明确禁止的使用场景

RLHF的影响与未来

技术影响

RLHF已成为大语言模型的标准训练流程:

模型 是否使用RLHF
ChatGPT
Claude ✓(Constitutional AI变体)
Gemini
Llama 2-Chat

研究方向

RLHF的改进方向:

  1. 直接偏好优化(DPO):无需显式奖励模型
  2. 宪法AI:用AI生成反馈,减少人工标注
  3. 迭代RLHF:持续学习用户偏好
  4. 多目标对齐:同时优化多个对齐目标

哲学思考

RLHF引发深层思考:

  • 谁的偏好?标注员偏好是否代表人类偏好?
  • 价值对齐?如何处理不同文化、价值观的差异?
  • 长期影响?对齐到当前偏好是否是正确方向?

阅读研究论文的时间线计划

本文在技术时间线中的位置

Word2Vec(2013) → Seq2Seq(2014) → Attention(2015) → Transformer(2017) 
→ GPT-1(2018) → GPT-2(2019) → Scaling Laws(2020) → GPT-3(2020) → 【当前位置】InstructGPT(2022) → ChatGPT

前置知识

在阅读本文之前,建议了解:

  • 【ChatGPT时刻09】GPT-3:理解基础模型能力
  • 强化学习基础(策略梯度、PPO)
  • Bradley-Terry模型

后续学习方向

完成ChatGPT时刻系列后,建议深入:

  1. Constitutional AI:Anthropic的对齐方法
  2. Direct Preference Optimization(DPO):简化的RLHF
  3. AI Safety:更广泛的对齐研究
  4. 多模态对齐:图像、视频的RLHF

完整技术路线图:ChatGPT的诞生

                        ChatGPT技术栈完整回顾
                                 │
   ┌─────────────────────────────┴─────────────────────────────┐
   │                                                           │
Word2Vec ─► Seq2Seq ─► Attention ─► Transformer ─► GPT-1 ─► GPT-2 ─► GPT-3 ─► InstructGPT ─► ChatGPT
 (2013)     (2014)      (2015)       (2017)       (2018)    (2019)   (2020)     (2022)        (2022)
   │          │           │            │            │          │        │          │            │
   词向量      编码器-      软对齐       自注意力       预训练+     零样本     上下文      RLHF         多轮对话
   语义空间    解码器                    并行计算       微调       规模效应   学习        人类对齐       产品化

参考文献

  • Ouyang, L., et al. (2022). Training language models to follow instructions with human feedback. NeurIPS.
  • Christiano, P., et al. (2017). Deep reinforcement learning from human preferences. NeurIPS.
  • Stiennon, N., et al. (2020). Learning to summarize from human feedback. NeurIPS.
  • Schulman, J., et al. (2017). Proximal Policy Optimization Algorithms. arXiv.
  • Bai, Y., et al. (2022). Training a Helpful and Harmless Assistant with Reinforcement Learning from Human Feedback. arXiv.
  • Rafailov, R., et al. (2023). Direct Preference Optimization: Your Language Model is Secretly a Reward Model. NeurIPS.

系列总结:从Word2Vec到ChatGPT

至此,我们完成了ChatGPT时刻系列的全部10篇文章,回顾了从2013年Word2Vec到2022年ChatGPT的完整技术演进:

年份 技术突破 核心贡献
2013 Word2Vec 词向量,语义空间
2014 Seq2Seq 编码器-解码器,端到端
2015 Attention 软对齐,动态上下文
2017 Transformer 自注意力,并行计算
2018 GPT-1 预训练+微调范式
2019 GPT-2 零样本学习,规模效应
2020 Scaling Laws 规模与性能的幂律
2020 GPT-3 上下文学习,涌现能力
2022 InstructGPT RLHF,人类对齐
2022 ChatGPT 对话优化,产品化

这十年的技术积累,最终汇聚成ChatGPT这一改变世界的产品。

感谢阅读!如有问题或建议,欢迎提交Issue讨论。