Skip to content

REINFORCE++:简单高效的大型语言模型对齐方法

摘要

基于人类反馈的强化学习(RLHF)已成为对齐大型语言模型与人类偏好的关键方法,通过近端策略优化(PPO)、直接偏好优化(DPO)、REINFORCE 留一法(RLOO)、ReMax 和组相对策略优化(GRPO)等方法实现了快速算法演进。我们提出 REINFORCE++,这是经典 REINFORCE 算法的增强变体,融合了 PPO 的关键优化技术同时消除了 Critic 网络的需求。REINFORCE++实现了三个主要目标:

(1)简洁性

(2)增强的训练稳定性

(3)降低计算开销。

通过大量实证评估,我们证明 REINFORCE++相比 GRPO 具有更优的稳定性,相比 PPO 具有更高的计算效率,同时保持可比性能。实现代码已开源: https://github.com/OpenRLHF/OpenRLHF。

1. 引言

大型语言模型(LLMs)的快速发展显著提升了其生成连贯、上下文相关且类人文本的能力。然而,将这些模型与人类偏好对齐仍然面临关键挑战,因为模型可能生成与用户意图或伦理准则不符的输出。基于人类反馈的强化学习(RLHF)通过将人类偏好纳入训练过程,已成为解决这一挑战的主要方法。

该领域经历了显著的算法创新,从基础性的近端策略优化(PPO)到最近的直接偏好优化(DPO)、REINFORCE 留一法(RLOO)、ReMax 和组相对策略优化(GRPO)。PPO 虽然有效,但需要 Critic 网络从而引入额外计算开销。而 GRPO 等新方法虽然解决了特定优化挑战,但可能引入复杂性和不稳定性。

本文提出 REINFORCE++,这是经典 REINFORCE 算法的新变体,集成了 PPO 的关键优化技术同时无需 Critic 网络。我们的方法围绕三个主要目标设计:

● 简洁性:基于简单的 REINFORCE 框架,最小化实现复杂度

● 训练稳定性:通过 Token 级 KL 惩罚、PPO-Clip 损失和标准化优势更新确保鲁棒训练动态

● 效率:移除 Critic 网络降低计算开销,适合大规模应用

通过大量实证评估,我们证明 REINFORCE++在显著降低计算需求的同时实现了具有竞争力的对齐性能。主要贡献包括:

● 将 PPO 启发技术创新性地集成到 REINFORCE 框架

● 在通用和领域专用数据集上的全面评估

● 开源实现以促进研究和应用

2. 背景

2.1 基于人类反馈的强化学习

基于人类反馈的强化学习(RLHF)框架包含三个核心组件:

  1. 监督微调(SFT):在人类标注的提示-响应数据集上对预训练语言模型进行微调,建立基线策略(πSFT)。该阶段旨在确保模型具备基本的指令遵循能力。

  2. 奖励建模:通过收集人类对模型输出的排序数据(例如对同一提示的不同响应进行偏好排序),训练奖励模型 rϕ(x,y) 来量化生成内容的质量。奖励模型需满足以下特性:

    • 对高质量输出的高奖励预测
    • 对有害/低质量输出的低奖励预测
    • 对语义相似输出的奖励平滑性
  3. 策略优化:使用强化学习算法优化语言模型策略 πθ,使其最大化奖励模型的预测值。优化目标可形式化为:

    maxθExD,yπθ(|x)[rϕ(x,y)]βDKL(πθ(y|x)πSFT(y|x))

    其中 β 为 KL 散度惩罚系数,用于约束策略更新幅度。

2.2 REINFORCE 算法

作为策略梯度方法的奠基性算法, REINFORCE 通过以下四步实现优化:

  1. 轨迹采样:从当前策略 πθ 生成完整响应序列
  2. 回报计算:通过奖励模型评估生成序列的累积回报
  3. 策略梯度估计:使用蒙特卡洛方法估计梯度:θJ(θ)=Eπ[Gtθlogπθ(at|st)]其中 Gt 表示时间步t 的折扣累积回报
  4. 参数更新:沿梯度方向更新策略参数 θ

尽管算法结构简单,但 REINFORCE 存在两个主要缺陷:

  • 高方差:蒙特卡洛估计导致梯度方差较大
  • 样本效率低:需要完整轨迹才能进行参数更新

2.3 RLHF 的挑战

当前 RLHF 方法面临三大核心挑战:

● 计算开销:以 PPO 为代表的 Actor-Critic 架构需要同时维护策略网络(actor)和价值网络(critic),显著增加显存占用和计算复杂度。例如在 Llama 3-70B 模型训练中, critic 网络会使显存需求增加约 40% 。

● 训练不稳定性:策略网络和价值网络的相互依赖容易导致训练动态失衡,具体表现为:

  • 策略网络过度优化奖励导致模式崩溃
  • 价值网络预测误差累积引发策略震荡
  • KL 散度失控导致生成质量下降

● 可扩展性瓶颈:新兴方法(如 GRPO 的组标准化机制)虽然提升了特定场景的性能,但引入的额外超参数和组件增加了系统复杂度,不利于大规模部署。

3. REINFORCE++ 改进

REINFORCE++整合了几个关键优化,以增强训练稳定性和效率:

3.1 Token 级 KL 惩罚

在传统 RLHF 方法中, KL 散度惩罚通常作用于完整序列层面。我们提出 Token 级 KL 惩罚机制,将 KL 约束细化到每个生成 Token:

r(st,at)=I(st=[EOS])r(x,y)βKL(t)KL(t)=log(πRLθ(at|st)πSFT(at|st)),

其中:

  • I(st=[EOS]) 是指示函数,表示t 是否为最终 Token,仅在序列结束符位置生效
  • KL(t)=DKL(πθ(at|st)πSFT(at|st)) 计算当前策略与 SFT 模型的 Token 级分布差异
  • β 为动态调整的惩罚系数

该设计实现两个关键优势:

  1. 细粒度控制:在生成过程中实时约束策略偏移
  2. 训练稳定性:避免序列后期 KL 散度突然激增

3.2 PPO-Clip 集成

借鉴 PPO 的 clip 机制,我们将其核心思想融入 REINFORCE 框架:

LCLIP(θ)=Et[min(rt(θ)A^t, clip(rt(θ),1ϵ,1+ϵ)A^t)]

其中:

  • rt(θ)=πθ(at|st)πold(at|st)是在新策略与旧策略下,在状态st下采取动作at的概率比。
  • A^t 是 Tokent 的估计优势。
  • clip(rt(θ),1ϵ,1+ϵ) 将概率比限制在[1ϵ,1+ϵ] 范围内,其中ϵ 是一个小的超参数(通常设置为 0.2 左右)。

3.3 小批量更新

为了提高训练效率,我们实现了具有以下特点的小批量更新:

  1. 批量处理:将完整轨迹数据划分块处理 , 小批量(mini-batch)
  2. 多次更新:每个小批量允许多次参数更新 ,显著提升样本利用率
  3. 随机优化:通过随机排列小批量顺序,注入有益噪声以增强泛化能力

3.4 奖励归一化与截断

实施奖励处理三原则:

  1. 标准化: 使用 z-score 消除异常值
  2. 截断:限制奖励值范围
  3. 缩放:应用适当缩放因子

3.5 优势归一化

我们重新定义优势函数并实施标准化:

At=r(x,y)βi=tTKL(i)

标准化流程:

  1. 计算当前批次优势值的均值 μA 和标准差σA
  2. 应用 z-score 变换:Anormalized=AμAσA+108
  3. 最终梯度估计量:θJ(θ)=E[Anormalizedθlogπθ(at|st)]

该设计有效解决梯度幅度波动问题,同时保持策略更新的方向准确性。

4. 实验设置

4.1 实验设计

使用 Llama 3.1-8B-SFT 和 Qwen2.5-7B-Instruct 作为基础模型,在通用领域和数学领域数据集进行评估。

4.2 超参数配置

ParameterValue
KL Penalty Coefficient (β)0.01 (General), 0.001 (Mathematics)
Maximum Samples25,000
Samples per Prompt4
Rollout Batch Size256
Training Batch Size128
Actor Learning Rate5×107
Critic Learning Rate9×106
Discount Factor (γ)1.0
Clip ϵ0.2

4.3 数据集详情

我们使用了两个不同的数据集进行评估:

  • 一般领域:涵盖一般知识和对话主题的多样化提示集合和偏好数据集。
  • 数学领域:一个专门的数据集和一个闭源数学奖励模型,旨在测试模型在数学情境中的推理和解决问题能力。

5. 结果分析

5.1 训练稳定性

我们的实验结果表明了几个关键发现:

  • 一般场景下的 Bradley-Terry 奖励模型: REINFORCE++在防止奖励和输出长度操纵方面表现出比 GRPO 更好的稳定性(图 1)。
  • 基于规则的奖励模型:在基于规则的奖励场景下, REINFORCE++实现了与 GRPO (组归一化)相当的性能(图 2)。
  • 数学奖励模型:在数学问题解决场景下, REINFORCE++在每个单位 KL 散度下实现了比 GRPO 更好的奖励增加(图 3)。

5.2 计算效率

在 H100 GPU 上的对比:

方法训练时间
PPO60 小时
REINFORCE++42 小时

结论

REINFORCE++作为 PPO 和 GRPO 的简单高效替代方案,在保持性能的同时显著降低计算需求。未来工作将探索更大规模数据集和复杂对齐场景的应用。

参考文献

[1] Jian Hu, Xibin Wu, Zilin Zhu, Xianyu, Weixun Wang, Dehao Zhang, and Yu Cao. Openrlhf: An easy-to-use, scalable and high-performance RLHF framework. arXiv preprint arXiv:2405.11143, 2024.

[2] Ziniu Li, Tian Xu, Yushun Zhang, Yang Yu, Ruoyu Sun, and Zhi-Quan Luo. Remax: A simple, effective, and efficient method for aligning large language models. arXiv preprint arXiv:2310.10505, 2023.

Maintained by Robin