近端策略优化算法(PPO)

核心思想

近端策略优化算法(Proximal Policy Optimization, PPO)是由 OpenAI 提出的一种强化学习算法,旨在解决传统策略梯度方法中更新步长难以控制的问题。PPO 通过引入裁剪机制(Clipping),限制了每次策略更新的幅度,从而保证训练的稳定性。

PPO 是 RLHF 流程中最常用的强化学习算法。

裁剪的替代目标函数(Clipped Surrogate Objective)

PPO 的核心创新在于其裁剪的替代目标函数:

其中 是新旧策略的概率比。

  • 当新旧策略差异过大时,通过裁剪限制更新幅度
  • 当优势函数为正时,限制增加该动作概率的幅度
  • 当优势函数为负时,限制降低该动作概率的幅度

信任区域(Trust Region)

PPO 通过裁剪机制隐式地构建了一个信任区域,确保每次更新不会偏离当前策略太远,这与 TRPO(Trust Region Policy Optimization)的目标相同,但实现更简单、计算更高效。

PPO 在 LLM 中的应用

在大语言模型的后训练对齐中,PPO 的使用方式如下:

  1. 策略模型:待优化的大语言模型(生成回复)
  2. 奖励模型:提供对生成回复的评分
  3. KL 惩罚项:为防止策略模型偏离 SFT 模型太远,通常添加 KL 散度惩罚

PPO 的优势

  • 训练稳定:裁剪机制防止策略突变
  • 实现简单:相比 TRPO 更容易实现和调参
  • 样本高效:支持多 epoch 使用同一批数据
  • 广泛适用:从游戏控制到 LLM 对齐均表现优异

链接到