机器学习 | 组相关策略优化 (GRPO)
组相关策略优化 (Group Relative Policy Optimization, GRPO):强化学习中的一种策略优化方法,通过采样求期望节省了 PPO 中的 Value (Critic) 模型。Deepseek-R1 的训练方法。
- DeepSeekMath: Pushing the Limits of Mathematical Reasoning in Open Language Models
- DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning
1 回顾 PPO
在 PPO 中,我们需要四个模型:
- Policy (Actor) Model
- Value (Critic) Model
- Reference Model
- Reward Model
其中,参数更新的是 Policy 和 Value 模型,Reference 和 Reward 的参数是不训练的。另外,通常这 4 个模型都是相同参数规模的,也就是说我们需要目标模型四倍大小的显存来进行训练,显存和算力消耗很大。
为了降低开销,涌现出了不少策略优化算法,针对的就是怎么省去这四个模型中的其中一个模型。例如之前的笔记中,DPO 省掉了 Value 模型同时是 Off-Policy 算法,SimPO 省掉了 Value 和 Reference 模型。
而本篇笔记分享的 GRPO 方法,就是通过采样求期望节省了 PPO 中的 Value 模型,只需要加载三个模型。
2 GRPO 的差异点
要省掉 PPO 中的 Value 模型,首先得看看这个模型做了什么,有什么方法去近似它所做的工作。Value 模型的作用是评估当前 Policy 在特定 State 情况下,可以得到的 Reward 的期望值。最终基于 Value 模型给出的值,让奖励值更稳定,方差减小,从而让 RL 训练更稳定。
看到这个期望值,我们容易想到,期望可以用采样求均值的方法来近似。采样 Policy 这个过程不需要引入额外的模型,因此通过采样求均值是可以省掉 Value 模型的。这便是 GRPO 朴素简单的思想。
接下来,根据上图对比一下 PPO 和 GRPO 的差异。
首先最明显的就是上文说过的省去了 Value 模型,可以看到 GRPO 一次采样了
除此之外,还能注意到,
3 GRPO 的细节
GRPO 的目标函数是:
其中:
可以看到,GRPO 的目标函数和 PPO 的结构几乎一致,重要区别就是
另外,还需要注意 GRPO 估计
本文采用 CC BY-SA 4.0 许可,本文 Markdown 源码:Haotian-BiJi