PPO:为什么语言模型对齐要限制每次更新

从策略梯度、概率比值和裁剪目标入手,理解 PPO 如何在语言模型对齐中限制策略漂移,以及它为什么需要 reward、critic 和 reference policy。

PPO:为什么语言模型对齐要限制每次更新

PPO 是 Proximal Policy Optimization,近端策略优化。它是强化学习里非常经典的一种策略梯度方法,也曾经是语言模型 RLHF 流程中的重要组成部分。

我理解 PPO 的关键,不是“让模型尽可能快地变好”,而是限制每次更新不要离当前策略太远。

从策略梯度开始

在强化学习中,策略可以理解成:给定当前状态,模型选择某个动作的概率分布。

对于语言模型来说,一次生成过程可以看成连续选择 token:

prompt -> token 1 -> token 2 -> token 3 -> ... -> response

奖励模型或环境会给这条生成结果一个分数。策略梯度希望提高高奖励序列的概率,降低低奖励序列的概率。

最直接的更新很容易走得太猛:一次更新之后,模型可能突然改变大量行为,甚至忘记原本已经学会的能力。

PPO 的核心:概率比值和裁剪

PPO 会比较新旧策略对同一动作的概率:

r(theta) = pi_theta(action | state) / pi_old(action | state)

如果新策略把某个动作的概率提高太多,或者降低太多,PPO 会把这个比值裁剪到一个有限区间。常见的目标形式可以写成:

L_clip = min(r(theta) * A, clip(r(theta), 1-epsilon, 1+epsilon) * A)

这里的 A 是 advantage,表示这次动作比基准好多少;epsilon 控制单次策略更新的幅度。

裁剪带来的直觉是:

有利的方向可以继续更新,但不能一步跨太远

LLM 对齐里的 PPO 需要哪些角色

传统的语言模型 PPO 流程通常包含:

SFT policy
   -> 生成回答
   -> Reward Model 打分
   -> Value Model 估计状态价值
   -> 计算 advantage
   -> PPO 更新 policy

实际系统往往还会保留一个 reference policy,用 KL 惩罚约束当前策略不要偏离 SFT 模型太多。

因此一次 PPO 更新不只需要策略模型,还会牵涉:

  • 当前 policy
  • reference policy
  • reward model
  • value model 或 critic
  • rollout 生成
  • advantage 估计

这也是语言模型 PPO 训练显存和工程复杂度都比较高的原因。

为什么不能只看 reward

如果系统只追求 reward,模型可能找到评分器的漏洞,而不是学会真正有用的行为。

例如一个回答可能:

  • 反复使用评分器偏好的词
  • 通过格式技巧获得高分
  • 变得极其冗长
  • 回避真正困难的部分
  • 在训练分布内高分,换任务后失效

因此 PPO 训练常常需要同时观察 reward、KL、长度、拒答率、任务成功率和独立评估集。

PPO 的工程难点

PPO 公式并不长,但完整训练链路有很多容易出问题的地方:

  1. rollout 的生成策略和训练策略不同步
  2. reward model 的分数尺度不稳定
  3. value model 估计偏差导致 advantage 噪声变大
  4. KL 惩罚过弱时策略漂移,过强时模型学不动
  5. 生成长度变化会影响 reward 的表面比较
  6. batch 太小会让更新方差明显增加

所以 PPO 更像一套系统工程,而不是把一个 loss 函数接到模型后面就结束。

PPO 和 SFT 的关系

SFT 通过正确示范告诉模型“应该怎么回答”;PPO 通过奖励信号告诉模型“哪些回答相对更好”。

没有 SFT 的合理初始化,PPO 需要在更大的搜索空间里探索;没有独立评估和约束,PPO 又可能把模型推向奖励投机。

一个更完整的抽象是:

预训练:学习语言能力
SFT:学习任务示范
PPO:根据奖励调整行为

为什么后来会出现 GRPO

PPO 依赖 value model 或 critic 来估计 advantage。对于大语言模型,这个额外模型会占用显存,也会增加训练链路。

GRPO 的思路是:对同一个 prompt 采样一组回答,直接在组内比较它们的 reward,用组内相对表现构造 advantage,从而减少对 critic 的依赖。

它不是把 PPO 的问题全部消除,而是换了一种更适合某些可验证任务的相对基线。

参考:PPO 原论文Hugging Face TRL PPO 文档