1. GRPO算法概述

背景与动机:传统PPO算法在大规模语言模型(LLM)微调中面临计算开销大、策略更新不稳定等问题。GRPO旨在减少对价值网络的依赖,提高训练效率和稳定性。
核心思想:通过组内相对奖励优化策略模型,而不是依赖传统的批评模型(critic model)。GRPO通过采样一组动作并比较它们的相对表现来调整策略,避免了维护价值网络的开销。

2. GRPO算法原理

采样动作组:从当前策略中采样一组动作。
奖励评估:对每个动作进行奖励评估。
计算相对优势:通过归一化奖励值计算相对优势。
策略更新:根据相对优势更新策略模型的参数,并引入KL散度约束以防止策略更新过于剧烈。

3. GRPO与PPO对比

在这里插入图片描述

价值网络的使用:PPO依赖价值网络,GRPO则完全摒弃价值网络。
奖励计算方式:PPO使用广义优势估计(GAE),GRPO通过组内相对奖励计算优势。
策略更新机制:PPO通过裁剪概率比,GRPO通过KL散度约束。
计算效率:GRPO显著提高计算效率,降低内存占用。

算法结构
价值网络的使用:
PPO:依赖于一个与策略模型大小相当的价值网络来估计优势函数,需要在每个时间步对状态进行评估,计算复杂度高,内存占用大。
GRPO:完全摒弃了价值网络,通过组内相对奖励来估计优势函数,比较同一状态下的多个动作的奖励值来计算相对优势,显著减少了计算和存储需求。
奖励计算方式:
PPO:使用广义优势估计(GAE)来计算优势函数,需要对每个动作的即时奖励和未来奖励的折扣总和进行估计。
GRPO:通过采样一组动作并计算它们的奖励值,然后对这些奖励值进行归一化处理,得到相对优势,更直接,减少了对复杂奖励模型的依赖。
策略更新机制:
PPO:通过裁剪概率比(clip operation)来限制策略更新的幅度,确保策略分布的变化在可控范围内。
GRPO:引入了KL散度约束,直接在损失函数中加入KL散度项,从而更精细地控制策略更新的幅度。
计算效率:
PPO:由于需要维护和更新价值网络,计算效率较低,尤其是在大规模语言模型中,训练过程可能变得非常缓慢。
GRPO:通过避免价值网络的使用,显著提高了计算效率,降低了内存占用,更适合大规模语言模型的微调。
优势与局限性
PPO的优势:
稳定性:通过裁剪概率比,能够有效防止策略更新过于剧烈,从而保持训练过程的稳定性。
广泛适用性:在多种强化学习任务中表现出色,适用于多种类型的环境和任务。
PPO的局限性:
计算负担:在大规模语言模型中,需要维护一个与策略模型大小相当的价值网络,导致显著的内存占用和计算代价。
更新方差:策略更新依赖于单个动作的奖励值,可能导致较高的方差,影响训练的稳定性。
GRPO的优势:
计算效率:通过避免价值网络的使用,显著降低了计算和存储需求,提高了训练效率。
稳定性:通过组内相对奖励的计算,减少了策略更新的方差,确保了更稳定的学习过程。
可控性:引入了KL散度约束,能够更精细地控制策略更新的幅度,保持策略分布的稳定性。
GRPO的局限性:
采样成本:需要对每个状态采样一组动作,这在某些情况下可能会增加采样成本。
适用范围:在某些任务中可能不如PPO表现稳定,尤其是在奖励信号稀疏的情况下。
实验表现
收敛速度:GRPO由于没有Value网络,收敛速度非常快,但结果可能不稳定;PPO由于有Value网络,收敛过程虽然有点慢但很稳定,最终效果也比较好。
适用场景:对于整个系统中间过程和信息比较清晰的问题,如控制系统,PPO出效果更好;对于像数学推理这种中间过程没法很好描述和计算中间过程价值的任务,GRPO更快更方便。

5. GRPO在DeepSeek-R1中的应用

训练流程:包括监督微调(SFT)、强化学习(RL)阶段、拒绝采样(RS)阶段和最终强化学习阶段。
实验结果:GRPO显著提升了DeepSeek-R1模型在数学推理和代码生成任务中的性能,同时提高了训练效率。

6. GRPO与OpenAI RLHF对比

算法原理:GRPO通过组内相对奖励机制估计优势函数,RLHF基于人类反馈优化模型输出。
训练效率:GRPO简化训练流程,RLHF训练过程复杂。
策略更新稳定性:GRPO策略更新稳定,RLHF依赖奖励模型准确性。
应用场景:GRPO适用于需要推理能力的任务,RLHF适用于优化模型输出以符合人类偏好的任务。
资源需求:GRPO资源需求低,RLHF资源需求高。
模型性能:GRPO在特定任务上性能优异,RLHF在通用应用中性能出色。

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐