本文由「大千AI助手」原创发布,专注用真话讲AI,回归技术本质。拒绝神话或妖魔化。搜索「大千AI助手」关注我,一起撕掉过度包装,学习真实的AI技术!
✨ 1. GRPO概述:重新定义大模型强化学习效率
GRPO(Group Relative Policy Optimization,组相对策略优化)是DeepSeek团队在2024年提出的一种创新性强化学习算法,专门针对大型语言模型的优化而设计。作为传统近端策略优化(PPO)算法的改进版本,GRPO通过消除对价值函数模型的依赖,大幅降低了训练资源需求,同时保持了优异的性能表现。
GRPO的核心思想是通过组内相对奖励比较来代替复杂的价值函数估计,使大规模语言模型的强化学习训练更加高效和实用。该算法首先在DeepSeekMath项目中得到验证,随后被应用于DeepSeek-R1模型,帮助这些模型在数学推理任务上取得了突破性性能。
本文由「大千AI助手」原创发布,专注用真话讲AI,回归技术本质。拒绝神话或妖魔化。搜索「大千AI助手」关注我,一起撕掉过度包装,学习真实的AI技术!
往期文章推荐:
- 20.接吻数问题:从球体堆叠到高维空间的数学奥秘
- 19.LDA(隐狄利克雷分配):主题模型的经典之作
- 18.InstructGPT:使用人类反馈训练语言模型以遵循指令
- 17.DQN(深度Q网络):深度强化学习的里程碑式突破
- 16.遗传算法:模拟自然选择的优化智慧
- 15.帕累托优化:多目标决策的智慧与艺术
- 14.dapo:开源大规模llm强化学习系统的突破与实现
- 13.冯·诺依曼:数字时代的天才建筑师
- 12.eniac:世界上第一台通用电子计算机的传奇
- 11.冯·诺依曼架构:现代计算机的基石与瓶颈
- 10.密码破译机bombe:二战中破解enigma的传奇设备
- 9.波兰密码破译机bomba:二战密码战的隐形功臣
- 8.注意力机制:捕获长距离依赖关系的革命性技术
- 7.康威生命游戏:零玩家游戏的元胞自动机奇迹
- 6.OpenHands:开源AI软件开发代理平台的革命性突破
- 5.NoCode-bench:自然语言驱动功能添加的评估新基准
- 4.中文房间悖论:人工智能理解力的哲学拷问
- 3.曼彻斯特Mark I:世界上第一台存储程序计算机的革命性创新
- 2.AdaCoT:基于强化学习的帕累托最优自适应思维链触发机制
- 1.GThinker多模态大模型:线索引导式反思的突破
📜 2. 历史背景与原始论文
2.1 原始论文信息
GRPO由DeepSeek团队在2024年2月的论文中首次提出:
论文标题:DeepSeekMath: Pushing the Limits of Mathematical Reasoning in Open Language Models
作者:Zhou Shou等DeepSeek团队成员
发表时间:2024年2月5日
论文地址:https://arxiv.org/abs/2402.03300
代码地址:https://github.com/deepseek-ai/DeepSeek-Math
相关项目:https://www.deepseek.com/
2.2 研发背景与动机
GRPO的提出源于大规模语言模型强化学习面临的几个关键挑战:
- 计算资源需求高:传统PPO算法需要同时训练策略模型和价值函数模型,后者通常与策略模型规模相当,显著增加了内存和计算负担。
- 训练稳定性问题:在只提供结果奖励(而非过程奖励)的环境中,价值函数的训练变得复杂且不稳定。
- 效率瓶颈:PPO中的优势函数估计需要大量交互数据,训练效率较低。
DeepSeek团队发现,在数学推理等特定领域,通过组内多次采样并计算相对奖励,可以有效替代价值函数的作用,从而简化强化学习框架并提高效率。
🔧 3. 核心算法原理
GRPO的核心创新在于它重新思考了优势函数的估计方式,通过组内相对比较取代了传统的价值函数估计。
3.1 关键概念与术语
- 策略模型(Policy Model):待训练的语言模型,负责生成回答。
- 参考模型(Reference Model):训练初期语言模型的冻结副本,用于计算KL散度惩罚项。
- 奖励模型(Reward Model):基于规则或人类偏好训练的模型,用于评估生成内容的质量。
- 组采样(Group Sampling):对同一问题生成多个(通常为64个)回答,形成组内比较。
3.2 算法工作机制
GRPO的工作流程主要包括以下几个步骤:
- 组采样:对于每个问题,使用当前策略模型生成一组(通常为64个)回答。
- 奖励计算:使用奖励模型(规则奖励或学习得到的奖励)为每个回答计算奖励值。
- 优势估计:基于组内奖励的平均值和标准差计算每个回答的相对优势,替代传统的价值函数估计。
- 策略优化:使用带裁剪机制的策略梯度更新,同时加入KL散度惩罚以防止策略偏离初始模型太远。
3.3 与PPO的关键区别
GRPO与传统PPO在几个关键方面存在显著差异:
表:GRPO与PPO的对比
特性 | 传统PPO | GRPO |
---|---|---|
价值函数 | 需要训练价值函数模型 | 无需价值函数模型 |
优势估计 | 基于价值函数估计 | 基于组内奖励比较 |
内存需求 | 高(需存储策略+价值模型) | 降低40-50% |
计算复杂度 | 高 | 显著降低 |
训练稳定性 | 需要精细调参 | 更稳定的组内归一化 |
🧮 4. 数学框架与公式
GRPO的数学框架建立在策略梯度定理的基础上,但引入了组内相对比较的创新。
4.1 优势函数计算
GRPO的优势函数计算分为两个版本,分别对应结果监督和过程监督场景:
对于结果监督(DeepSeek-R1-Zero采用的方式),优势函数计算为:
A^i,t=ri−mean(r)std(r)\hat{A}_{i,t} = \frac{r_i - \text{mean}(r)}{\text{std}(r)}A^i,t=std(r)ri−mean(r)
其中:
- rir_iri是第i个回答的奖励
- mean(r)\text{mean}(r)mean(r)是组内所有回答的平均奖励
- std(r)\text{std}(r)std(r)是组内奖励的标准差
- 所有token共享相同的优势值
4.2 目标函数
GRPO的目标函数结合了策略改进和约束项:
JGRPO(θ)=E[1∣o∣∑t=1∣o∣min(πθ(ot)πθold(ot)A^i,t,clip(πθ(ot)πθold(ot),1−ϵ,1+ϵ)A^i,t)]−βE[KL(πθ∣∣πref)]J_{\text{GRPO}}(\theta) = \mathbb{E} \left[ \frac{1}{|o|} \sum_{t=1}^{|o|} \min\left( \frac{\pi_{\theta}(o_t)}{\pi_{\theta_{\text{old}}}(o_t)} \hat{A}_{i,t}, \text{clip}\left( \frac{\pi_{\theta}(o_t)}{\pi_{\theta_{\text{old}}}(o_t)}, 1-\epsilon, 1+\epsilon \right) \hat{A}_{i,t} \right) \right] - \beta \mathbb{E} [\text{KL}(\pi_{\theta} || \pi_{\text{ref}})]JGRPO(θ)=E∣o∣1t=1∑∣o∣min(πθold(ot)πθ(ot)A^i,t,clip(πθold(ot)πθ(ot),1−ϵ,1+ϵ)A^i,t)−βE[KL(πθ∣∣πref)]
其中:
- πθ(ot)πθold(ot)\frac{\pi_{\theta}(o_t)}{\pi_{\theta_{\text{old}}}(o_t)}πθold(ot)πθ(ot)是新旧策略的概率比
- clip\text{clip}clip函数限制更新幅度,确保训练稳定性
- β\betaβ控制KL惩罚项的强度
- πref\pi_{\text{ref}}πref是参考策略(通常为SFT模型)
🚀 5. 应用实践:DeepSeekMath与DeepSeek-R1
GRPO算法在DeepSeekMath和DeepSeek-R1项目中得到了成功应用,显著提升了模型在数学推理任务上的性能。
5.1 DeepSeekMath项目
DeepSeekMath是一个专注于数学推理的大型语言模型项目,其训练过程包含三个阶段:
- 预训练阶段:使用120B数学token的大规模高质量语料库训练基础模型。
- 监督微调:使用776K数学指令数据对模型进行微调。
- 强化学习优化:使用GRPO算法进一步优化模型性能。
通过GRPO优化,DeepSeekMath 7B模型在MATH基准测试上达到了51.7%的准确率,首次让开源模型在此基准上突破50%大关。
5.2 DeepSeek-R1项目
DeepSeek-R1是基于GRPO训练的推理模型,其训练流程包括:
- 冷启动:使用数千条人工标注的高质量思维链数据微调基础模型。
- GRPO训练:使用规则奖励(准确性奖励和格式奖励)进行GRPO训练。
- 拒绝采样与SFT:收集高质量数据并进行监督微调。
- 全场景RL:结合推理奖励和人类偏好奖励进行最终优化。
DeepSeek-R1仅使用规则奖励就取得了令人瞩目的成果,打破了先前认为过程奖励优于结果奖励的共识。
💡 6. 优势与创新点
GRPO相比传统强化学习算法具有多个显著优势:
6.1 资源效率提升
- 内存使用降低:去除价值模型后,训练内存需求降低40-50%。
- 计算成本减少:无需训练价值函数,显著减少计算开销。
- 适配消费级硬件:结合LoRA等参数高效微调方法,可在16GB显存的消费级GPU上训练10B参数模型。
6.2 训练稳定性改进
- 组内归一化:通过组内奖励的均值和标准差归一化,提高训练稳定性。
- 简化奖励设计:可直接使用规则奖励,避免奖励模型的过度优化问题。
- 减少超参数:简化了优势估计过程,减少需要调优的超参数。
6.3 性能提升
- 数学推理突破:在MATH基准上实现开源模型首次突破50%准确率。
- 小模型高效优化:7B参数模型在工具集成推理场景下超过670B参数模型表现。
- 多语言能力:中英双语数学任务表现优异,中文数学基准CMATH准确率达41.5%。
⚠️ 7. 局限性与发展方向
尽管GRPO取得了显著成功,但仍存在一些局限性和改进空间:
7.1 当前局限性
- 采样效率:需要生成多个回答(通常64个)才能准确估计优势,增加了采样成本。
- 长文本稳定性:在生成长序列时,token级重要性采样可能导致方差积累和训练不稳定。
- 探索效率:依赖于初始策略的多样性,如果初始策略无法生成正奖励样本,训练进度会受阻。
7.2 后续发展
针对GRPO的局限性,研究人员提出了多种改进方案:
- GSPO(Group Sequence Policy Optimization):Qwen团队提出将token级重要性采样改为序列级,减少长序列训练中的方差积累问题。
- 离线GRPO:探索在离线设置中使用GRPO,进一步提高样本效率。
- 混合方法:结合在线和离线GRPO优势,平衡探索效率和训练稳定性。
🌐 8. 影响与意义
GRPO对大规模语言模型的强化学习训练产生了重要影响:
- 降低技术门槛:使资源有限的研究团队和个人开发者也能参与高性能推理模型的训练。
- 提供新范式:证明了无需价值函数的强化学习在大语言模型训练中的可行性。
- 推动开源发展:为开源社区提供了高效训练高质量推理模型的技术路径。
- 启发后续研究:激发了关于策略优化算法改进的一系列研究,如GSPO等。
🔮 9. 实践建议
对于想要实践GRPO的研究人员和工程师,以下建议可能有所帮助:
- 硬件资源评估:GRPO大幅降低内存需求,但生成多个回答仍需充足计算资源。
- 奖励设计:从简单规则奖励开始,逐步引入复杂奖励信号。
- 组大小选择:平衡估计准确性和计算成本,选择适当的组大小(通常16-64)。
- KL系数调优:仔细调整KL惩罚系数,平衡性能提升和能力保持。
- 收敛监控:监控奖励趋势和KL散度,及时调整超参数防止训练发散。
💎 10. 结论
GRPO是大语言模型强化学习领域的一项重要创新,它通过组内相对比较的简单而有效的思路,解决了传统PPO算法资源需求高和训练复杂的问题。在DeepSeekMath和DeepSeek-R1项目中的成功应用,证明了GRPO在提升模型推理能力方面的有效性。
尽管GRPO仍有改进空间,但其开源开放的特性和卓越的性能已经对研究社区产生了积极影响,推动了高效强化学习算法的发展。随着GSPO等改进算法的出现,GRPO的思想将继续演化,为大规模语言模型的优化提供更多可能性。
正如深度学习领域的许多重要进展一样,GRPO的价值不仅在于其技术创新,更在于它降低了技术门槛,使更多研究者能够参与前沿模型训练,从而推动整个领域的进步。
本文由「大千AI助手」原创发布,专注用真话讲AI,回归技术本质。拒绝神话或妖魔化。搜索「大千AI助手」关注我,一起撕掉过度包装,学习真实的AI技术!