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)框架包含三个核心组件:
监督微调(SFT):在人类标注的提示-响应数据集上对预训练语言模型进行微调,建立基线策略(
)。该阶段旨在确保模型具备基本的指令遵循能力。 奖励建模:通过收集人类对模型输出的排序数据(例如对同一提示的不同响应进行偏好排序),训练奖励模型
来量化生成内容的质量。奖励模型需满足以下特性: - 对高质量输出的高奖励预测
- 对有害/低质量输出的低奖励预测
- 对语义相似输出的奖励平滑性
策略优化:使用强化学习算法优化语言模型策略
,使其最大化奖励模型的预测值。优化目标可形式化为: 其中
为 KL 散度惩罚系数,用于约束策略更新幅度。
2.2 REINFORCE 算法
作为策略梯度方法的奠基性算法, REINFORCE 通过以下四步实现优化:
- 轨迹采样:从当前策略
生成完整响应序列 - 回报计算:通过奖励模型评估生成序列的累积回报
- 策略梯度估计:使用蒙特卡洛方法估计梯度:
其中 表示时间步 的折扣累积回报 - 参数更新:沿梯度方向更新策略参数
尽管算法结构简单,但 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:
其中:
是指示函数,表示 是否为最终 Token,仅在序列结束符位置生效 计算当前策略与 SFT 模型的 Token 级分布差异 为动态调整的惩罚系数
该设计实现两个关键优势:
- 细粒度控制:在生成过程中实时约束策略偏移
- 训练稳定性:避免序列后期 KL 散度突然激增
3.2 PPO-Clip 集成
借鉴 PPO 的 clip 机制,我们将其核心思想融入 REINFORCE 框架:
其中:
是在新策略与旧策略下,在状态 下采取动作 的概率比。 是 Token 的估计优势。 将概率比限制在 范围内,其中 是一个小的超参数(通常设置为 0.2 左右)。
3.3 小批量更新
为了提高训练效率,我们实现了具有以下特点的小批量更新:
- 批量处理:将完整轨迹数据划分块处理 , 小批量(mini-batch)
- 多次更新:每个小批量允许多次参数更新 ,显著提升样本利用率
- 随机优化:通过随机排列小批量顺序,注入有益噪声以增强泛化能力
3.4 奖励归一化与截断
实施奖励处理三原则:
- 标准化: 使用 z-score 消除异常值
- 截断:限制奖励值范围
- 缩放:应用适当缩放因子
3.5 优势归一化
我们重新定义优势函数并实施标准化:
标准化流程:
- 计算当前批次优势值的均值
和标准差 - 应用 z-score 变换:
- 最终梯度估计量:
该设计有效解决梯度幅度波动问题,同时保持策略更新的方向准确性。
4. 实验设置
4.1 实验设计
使用 Llama 3.1-8B-SFT 和 Qwen2.5-7B-Instruct 作为基础模型,在通用领域和数学领域数据集进行评估。
4.2 超参数配置
| Parameter | Value |
|---|---|
| KL Penalty Coefficient (β) | 0.01 (General), 0.001 (Mathematics) |
| Maximum Samples | 25,000 |
| Samples per Prompt | 4 |
| Rollout Batch Size | 256 |
| Training Batch Size | 128 |
| Actor Learning Rate | |
| Critic Learning Rate | |
| 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 上的对比:
| 方法 | 训练时间 |
|---|---|
| PPO | 60 小时 |
| 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.