基于最优奖励基线的同策略强化学习 (OPO)

最后更新:2025年6月2日。

强化学习中宽松的同策略约束和次优基线常常导致训练不稳定,例如策略大幅度变化和熵崩溃。OPO 通过使用精确的同策略训练和理论最优的奖励基线进行优势估计来解决这些挑战。它实现了更低的策略变化和更高的输出熵,鼓励更多样化、重复性更低的回应。

OPO 使用分组采样为每个输入生成多个输出,类似于 GRPO。与通常使用组的平均奖励作为基线的基于组的算法不同,OPO 采用理论最优基线:组的长度加权奖励。它还省略了标准差归一化。通过采用这两个关键组件,OPO 能够仅以最大化期望奖励为目标来训练单一策略模型。有关更多详细信息,请参阅原始论文 基于最优奖励基线的同策略强化学习

关键组件

  • 精确的同策略训练:始终从当前策略生成回应,不使用任何预生成的数据或离策略数据。

  • 最优奖励基线:使用组的长度加权奖励作为归一化奖励的基线。

配置

要在框架内配置 OPO,请使用以下 YAML 设置。这些参数对于启用精确的同策略训练和激活最优奖励基线至关重要。

algorithm:
  adv_estimator: opo  # 使用 OPO 优化奖励基线
data:
  train_batch_size: 1024
actor_rollout_ref:
  actor:
    ppo_mini_batch_size: 1024 # ppo_mini_batch_size 应等于 train_batch_size 以启用精确的同策略训练
    entropy_coeff: 0 # 禁用熵正则化
    use_kl_loss: False # 禁用 KL 正则化
    kl_loss_coef: 0

高级扩展

OPO 还可以扩展到 RLOO 和 Reinforce++ 等其他算法。只需调整它们的配置以启用精确的同策略训练,并结合最优的长度加权奖励基线,同时对其优势估计函数进行最小的修改。