强化学习与对齐技术:RL、PPO 与 RLHF 详解
引言:强化学习概述
强化学习(Reinforcement Learning,RL)是机器学习三大范式之一,与监督学习和无监督学习并列。与其他两种范式不同,强化学习强调智能体(Agent)通过与环境互动来学习最优策略。智能体在每一步交互中根据当前状态(State)采取动作(Action),环境随后返回新的状态和奖励(Reward),智能体据此调整策略,逐步学习如何最大化累积奖励。
强化学习的核心框架可以用一个简洁的循环来描述:Agent → Action → Environment → State + Reward → Agent。这个循环不断迭代,智能体逐渐学会在不同状态下采取最优动作。
强化学习的三要素
任何强化学习系统都包含三个核心要素:
| 要素 | 描述 | 作用 |
|---|---|---|
| Agent(智能体) | 学习者和决策者 | 感知环境、选择动作、学习策略 |
| Environment(环境) | 智能体与之交互的外部系统 | 接收动作、返回状态和奖励 |
| Reward(奖励) | 环境反馈的标量信号 | 指导智能体学习方向 |
智能体的目标是学习一个策略(Policy),使得从任意初始状态出发,按照该策略行动能够获得最大的期望累积奖励。奖励信号是强化学习的关键——它定义了什么是”好”的行为,但与监督学习不同,智能体不会收到关于”正确”动作的明确指导。
强化学习与其他范式的区别
强化学习与监督学习最本质的区别在于延迟反馈和序列决策。在监督学习中,每个样本都有明确的标签;而在强化学习中,奖励往往是延迟的——一个动作的好坏可能需要在多个时间步之后才能体现。此外,强化学习中的动作往往会影响后续的状态和奖励,形成复杂的依赖关系。
PPO 算法详解
PPO 的提出与背景
PPO(Proximal Policy Optimization,近端策略优化) 由 OpenAI 于 2017 年提出,迅速成为强化学习领域最具影响力的算法之一。在 PPO 之前,策略梯度算法面临两个核心挑战:一是策略更新过大导致训练崩溃;二是样本效率低下,需要大量交互才能收敛。PPO 通过巧妙的机制设计,在很大程度上解决了这些问题。
核心思想:限制策略更新幅度
PPO 的核心思想是限制每次策略更新的幅度,确保训练过程的稳定性。这一思想通过**重要性采样(Importance Sampling)和裁剪目标函数(Clipped Objective)**来实现。
在传统的策略梯度方法中,每次更新都基于当前策略采集的样本,这导致了样本效率低下的问题。重要性采样允许我们使用旧策略采集的样本来估计新策略的梯度,从而提高样本效率。但重要性采样引入了一个问题:当新旧策略差异过大时,估计会变得不准确。PPO 通过裁剪机制来解决这个问题。
数学公式
PPO 的裁剪目标函数定义为:
其中:
- 是重要性比率
- 是优势函数(Advantage Function)
- 是裁剪超参数,通常取 0.1 或 0.2
- 将 裁剪到区间
优势函数与 GAE
优势函数 衡量在状态 下采取动作 相比平均水平的好坏程度:
其中 是状态-动作值函数, 是状态值函数。优势函数为正表示该动作优于平均,为负表示劣于平均。
在实际计算中,优势函数的估计是一个关键问题。GAE(Generalized Advantage Estimation) 提供了一种平衡偏差和方差的估计方法:
其中 是时序差分误差, 是折扣因子, 是 GAE 参数。
完整损失函数
PPO 的完整损失函数不仅包含策略损失,还包含值函数损失和熵正则化:
其中:
- 是裁剪策略损失
- 是值函数损失(通常为均方误差)
- 是策略熵(用于鼓励探索)
- 是相应的系数
RLHF 与 LLM 对齐
为什么需要 RLHF
大语言模型(LLM)在预训练阶段通过预测下一个 token 来学习语言建模能力。然而,预训练目标(最大化似然)与人类的最终期望——有帮助(Helpful)、无害(Harmless)、诚实(Honest)——之间存在显著差距。RLHF(Reinforcement Learning from Human Feedback,基于人类反馈的强化学习)正是为了弥合这一差距而提出的。
RLHF 的三阶段流程
RLHF 是一个复杂的多阶段训练流程:
| 阶段 | 输入 | 输出 | 目的 |
|---|---|---|---|
| 1. 预训练语言模型 | 互联网文本 | 基础语言模型 | 学习语言知识和世界知识 |
| 2. SFT(监督微调) | 人类标注的问答对 | 微调后的模型 | 学习格式和基本任务完成能力 |
| 3. Reward Model | 人类排序偏好数据 | 奖励模型 | 学习预测人类偏好 |
| 4. PPO 强化学习 | RM 提供的奖励信号 | 对齐后的模型 | 优化策略以最大化人类偏好 |
第一阶段是标准的语言模型预训练,模型在海量文本上学习预测下一个 token,从而掌握语言的语法、语义甚至部分世界知识。
第二阶段 SFT(Supervised Fine-Tuning) 使用人类标注的高质量问答数据对预训练模型进行微调。这一阶段让模型学会按照人类期望的格式和风格来回答问题。
第三阶段 Reward Model(奖励模型) 是 RLHF 的核心创新之一。研究者们让人类对模型产生的多个输出进行排序,然后训练一个奖励模型来学习预测这些人类偏好。这个奖励模型能够泛化到未见过的输入,模拟人类评估者的判断。
第四阶段 PPO 强化学习 使用训练好的奖励模型提供反馈信号,通过 PPO 算法优化语言模型的策略。这一阶段是 RLHF 与传统 RL 应用的主要区别所在——环境的动态特性非常复杂(几乎可以视为无限的 token 序列空间),且奖励信号来自学习到的奖励模型而非直接的环境反馈。
RLHF 面临的挑战
尽管 RLHF 取得了显著成功,但它也面临着一系列挑战:
Reward Hacking(奖励黑客):智能体学会以非预期的方式获得高奖励。在 LLM 场景下,模型可能学会生成在表面上看起来好但实际上不准确的回答,或者学会”谄媚”评估者而非提供真正有用的信息。
谄媚问题(Sycophancy):模型可能学会迎合用户的观点而非提供客观答案。当用户陈述一个观点时,模型倾向于同意而非提供建设性的反馈。
分布偏移(Distribution Shift):PPO 训练过程中,模型的输出分布会逐渐偏离奖励模型训练时所见的数据分布,可能导致奖励模型给出不准确的信号。
RLHF 的替代方案
针对 RLHF 的局限性,研究社区提出了多种替代和补充方案:
| 方法 | 提出者/时间 | 核心思想 | 优势 |
|---|---|---|---|
| DPO(Direct Preference Optimization) | 2023 | 直接优化偏好而非学习奖励模型 | 绕过 RM,简化流程 |
| Constitutional AI | Anthropic | 基于原则的自我改进 | 减少人类标注依赖 |
| RLAIF(RL from AI Feedback) | 2023 | 用 AI 反馈替代人类反馈 | 扩展性更好 |
DPO(Direct Preference Optimization) 是最具影响力的替代方案之一。它通过重新参数化策略,将奖励模型的学习间接嵌入到策略优化中,从而避免了显式训练奖励模型的需要,同时减少了训练的不稳定性。
Constitutional AI 采用不同的思路:让模型根据一组人类定义的原则来自我批评和改进,从而减少对人类反馈的依赖。
PPO 与 RLHF 的关系
算法与应用的关系
PPO 和 RLHF 之间的关系可以从两个层面来理解:
PPO 是 RLHF 的核心优化算法:在 RLHF 的第四阶段,PPO 负责根据奖励模型的信号来更新语言模型的策略。PPO 的稳定性保证和样本效率优势使其成为这一阶段的首选算法。
RLHF 是 PPO 在 LLM 对齐中的应用:PPO 作为一个通用的策略优化算法,在游戏、机器人等领域有着广泛应用。RLHF 将这一技术引入语言模型对齐,开创了将强化学习应用于生成式 AI 的先河。
可以用一个简洁的等式来概括:
协作机制
PPO 和 RLHF 的协作机制体现了强化学习在序列决策问题中的优雅性:
- 预训练阶段:语言模型学习语言的基础能力
- SFT 阶段:建立基本的任务执行能力
- 奖励建模:人类偏好被编码为可微分的奖励函数
- PPO 优化:使用信用分配机制,在长序列中有效地将最终奖励归因到每个 token 的生成决策
这种多层级的训练架构使得 PPO 能够在几乎无限的 action space(所有可能的 token 序列)中有效地搜索好的策略。
总结与展望
强化学习从最初的游戏和机器人控制,到如今成为大语言模型对齐的核心技术,经历了飞速的发展。PPO 作为稳定高效的策略优化算法,为 RLHF 提供了坚实的技术基础;而 RLHF 则将强化学习的应用边界拓展到了生成式 AI 领域,开创了人机协作的新范式。
展望未来,强化学习与语言模型的结合仍将是一个活跃的研究方向。如何进一步减少对人类反馈的依赖、提高样本效率、避免奖励黑客问题,都是亟待解决的问题。同时,随着 AI 系统变得越来越强大,确保这些系统与人类价值观对齐也将成为越来越重要的议题。
理解 RL、PPO 和 RLHF 的原理,不仅对于 AI 研究者重要,对于任何关心 AI 未来发展的人都有价值。这些技术正在塑造我们与 AI 系统交互的方式,而深入理解它们将帮助我们更好地参与这场技术变革。
参考资料:
- Schulman, J. et al. (2017). “Proximal Policy Optimization Algorithms”
- Ouyang, L. et al. (2022). “Training language models to follow instructions with human feedback”
- Rafailov, R. et al. (2023). “Direct Preference Optimization: Your Language Model is Secretly a Reward Model”