理解 GRPO 的 7 个元维度#
核心模型如下:
GRPO = 在同一个 prompt 下采样多条回答,用组内相对奖励替代 PPO 中的 value / critic baseline,再通过 PPO-style clipping 和 KL 正则约束 policy 更新。
DeepSeekMath 系统提出 Group Relative Policy Optimization(GRPO),并将其描述为 PPO 的变体。GRPO 不训练单独的 critic model,而从同一 prompt 下多条回答的 reward 中构造相对 advantage,从而降低大模型 RL 阶段的训练资源消耗。DeepSeek-R1 / R1-Zero 后续也将 GRPO 用在大规模 reasoning RL 中。
GRPO 可以从 7 个元维度理解:
| 维度 | 核心问题 |
|---|
| Background | GRPO 位于 LLM post-training 的哪个阶段? |
| Motivation | PPO 的 critic 成本为什么会成为瓶颈? |
| Objective | GRPO 的优化目标从何而来? |
| Baseline | 组内平均 reward 如何替代 value baseline? |
| Stability | clipping 与 KL 如何限制 policy 漂移? |
| Applicability | 哪类任务最适合 GRPO? |
| System cost | 去掉 critic 带来哪些工程收益? |
1. Background:GRPO 的位置#
GRPO 的背景是 LLM post-training 中的 RL 阶段。
常见的 RLHF / RLAIF 流程可以写成:
Base Model→SFT→Reward Model / Verifier→RL Optimization
在 InstructGPT 以来的许多对齐流程中,RL 阶段常使用 PPO。PPO 的核心思想是:policy 向高 reward 方向更新,同时通过 clipped surrogate objective 限制新旧 policy 的概率比,避免一次更新幅度过大。
放到 LLM 场景中,PPO 系统通常包含:
policy model+reference model+reward model+value / critic model
其中,value / critic model 用来估计某个状态、token 或 response 的未来价值。该估计进入 advantage:
At=Q(st,at)−V(st)
在实践中,PPO 常用 Generalized Advantage Estimation(GAE)构造 At:
δt=rt+γVϕ(st+1)−Vϕ(st)
AtGAE(γ,λ)=l=0∑∞(γλ)lδt+l
这要求训练一个额外的 Vϕ。对 LLM 而言,critic 往往也是大模型级别网络,显存、计算和稳定性成本都很高。长 CoT reasoning 还会进一步放大 value learning 的困难:最终 reward 可能只在答案末尾出现,但 value model 需要在中间 token 上估计未来收益。
GRPO 的入口正是 critic 的替代问题:
critic baseline⟹group reward baseline
2. Motivation:PPO 的瓶颈#
GRPO 的 motivation 可以压缩成三点。
2.1 PPO 的 critic 成本高#
标准 policy gradient 的目标是最大化期望回报:
J(θ)=Eq∼P(Q),o∼πθ(⋅∣q)[R(q,o)]
LLM 的 completion o 是一个 token 序列:
o=(y1,y2,…,yT)
自回归 policy 为:
πθ(o∣q)=t=1∏Tπθ(yt∣q,y<t)
因此 log probability 可以展开为:
logπθ(o∣q)=t=1∑Tlogπθ(yt∣q,y<t)
由 score function identity 得到 policy gradient:
∇θJ(θ)=Eq,o[R(q,o)∇θlogπθ(o∣q)]
如果直接使用 R(q,o) 作为梯度系数,方差通常较大。引入 baseline b(q) 后:
∇θJ(θ)=Eq,o[(R(q,o)−b(q))∇θlogπθ(o∣q)]
只要 b(q) 不依赖当前采样动作 o,该 baseline 不改变梯度期望。证明如下:
Eo∼πθ[b(q)∇θlogπθ(o∣q)]=b(q)o∑πθ(o∣q)∇θlogπθ(o∣q)
因为:
πθ(o∣q)∇θlogπθ(o∣q)=∇θπθ(o∣q)
所以:
b(q)o∑∇θπθ(o∣q)=b(q)∇θo∑πθ(o∣q)=b(q)∇θ1=0
PPO 中的 critic 本质上就是学习一个低方差 baseline:
b(q,o≤t)≈Vϕ(q,o≤t)
GRPO 的关键取舍是:放弃学习式 critic,改用同一 prompt 下多条采样回答的相对 reward 构造 baseline。
2.2 Reasoning 任务适合组内比较#
数学、代码、逻辑题通常存在 verifier:
answer correctnessformat correctnessunit-test result
对于同一个 prompt q,旧 policy 采样 G 条回答:
o1,o2,…,oG∼πθold(⋅∣q)
每条回答得到 reward:
ri=R(q,oi)
组内比较关注的是:
ri−G1j=1∑Grj
该量衡量第 i 条回答相对于同题候选集合的表现,能部分抵消题目难度差异。简单题整体 reward 偏高,难题整体 reward 偏低;组内中心化后,训练信号更强调同题内的相对质量。
2.3 Reasoning RL 更接近轨迹搜索#
reasoning RL 训练的对象是一整条 reasoning trajectory:
q→y1,y2,…,yT→r
最终 reward 可能来自答案正确性,也可能来自格式约束、测试结果或 reward model。GRPO 将整条回答视为采样轨迹,并把 response-level reward 传播到这条轨迹的 token logprob 上:
∇θlogπθ(oi∣q)=t=1∑Ti∇θlogπθ(yi,t∣q,yi,<t)
因此,正 advantage 的回答会提高整条轨迹中 token 的联合概率;负 advantage 的回答会降低对应轨迹的联合概率。
3. 从 Policy Gradient 到 GRPO#
GRPO 的公式可以从 policy gradient、importance sampling 和 PPO clipping 逐步得到。
3.1 原始 policy gradient#
目标函数为:
J(θ)=Eq∼P(Q)Eo∼πθ(⋅∣q)[R(q,o)]
梯度为:
∇θJ(θ)=Eq,o∼πθ[R(q,o)∇θlogπθ(o∣q)]
加入 baseline 后:
∇θJ(θ)=Eq,o∼πθ[A(q,o)∇θlogπθ(o∣q)]
其中:
A(q,o)=R(q,o)−b(q)
3.2 用旧 policy 采样时的 importance ratio#
实际训练中,样本来自旧 policy:
o∼πθold(⋅∣q)
为了优化当前 policy πθ,需要 importance ratio:
ρθ(q,o)=πθold(o∣q)πθ(o∣q)
于是 surrogate objective 可以写成:
LPG(θ)=Eq,o∼πθold[ρθ(q,o)A(q,o)]
对自回归 LLM:
ρθ(q,o)=t=1∏Tπθold(yt∣q,y<t)πθ(yt∣q,y<t)
实际实现中也常使用 token-level ratio:
ρi,t(θ)=πθold(yi,t∣q,yi,<t)πθ(yi,t∣q,yi,<t)
再对 token 级 loss 求平均。DeepSeek-R1 论文中的展示公式使用 response-level 写法;工程实现通常会落到 token logprob 上。
3.3 PPO clipping#
PPO 对 ratio 做裁剪:
LCLIP(θ)=E[min(ρθA,clip(ρθ,1−ϵ,1+ϵ)A)]
clipping 的作用可按 advantage 符号理解。
当 A>0 时,增大 ρθ 会提高目标值,但超过 1+ϵ 后被截断:
ρθA≤(1+ϵ)A(A>0)
当 A<0 时,过度降低 ρθ 会带来不稳定更新,clip 下界限制为 1−ϵ:
clip(ρθ,1−ϵ,1+ϵ)A≤(1−ϵ)A(A<0)
因此 clipping 的理论角色是限制新旧 policy 的局部概率比,减少大步 policy update 导致的性能崩塌。
3.4 GRPO 的组内 advantage#
GRPO 对每个 prompt 采样一组回答:
{oi}i=1G∼πθold(⋅∣q)
reward 记为:
ri=R(q,oi)
组内均值和标准差为:
μG=G1j=1∑Grj
σG=G1j=1∑G(rj−μG)2
GRPO 使用标准化后的组内相对 advantage:
Ai=σGri−μG
如果 σG=0,组内所有回答 reward 相同,当前 prompt 对该组样本不提供区分信号。实现中通常需要加入数值稳定项:
Ai=σG+εnumri−μG
3.5 组内均值为什么能当 baseline#
理想的 baseline 需要不依赖当前 action。对第 i 个样本,严格的 leave-one-out baseline 可以写成:
b−i=G−11j=i∑rj
由于 b−i 不依赖 oi,它满足 baseline 不改变梯度期望的条件。
GRPO 中常用的组均值:
μG=G1j=1∑Grj
包含 ri 本身。忽略标准差缩放时,中心化梯度项为:
G1i=1∑G(ri−μG)∇θlogπθ(oi∣q)
考虑同一 prompt 下 G 个独立样本,记:
gi=∇θlogπθ(oi∣q)
则:
E[i=1∑G(ri−μG)gi]=E[i=1∑Grigi−G1i=1∑Gj=1∑Grjgi]
当 j=i 时,rj 与 gi 独立,且:
E[gi]=Eoi∼πθ[∇θlogπθ(oi∣q)]=0
因此交叉项期望为 0。保留下来的同索引项给出:
E[i=1∑G(ri−μG)gi]=(1−G1)E[i=1∑Grigi]
这说明,在不考虑标准差缩放时,组均值中心化得到的期望方向与原始 policy gradient 同向,只差一个常数因子 1−G1。标准差归一化会进一步引入自适应缩放,通常降低不同 prompt、不同 reward 尺度带来的训练不稳定,但也会使估计器带有更复杂的样本依赖。
4. GRPO Objective#
DeepSeek-R1 中给出的 GRPO objective 可以写成:
JGRPO(θ)=E[G1i=1∑G(min(ρi(θ)Ai,clip(ρi(θ),1−ϵ,1+ϵ)Ai)−βDKL(πθ∥πref))]
其中:
ρi(θ)=πθold(oi∣q)πθ(oi∣q)
Ai=std({r1,…,rG})ri−mean({r1,…,rG})
ϵ 控制 PPO-style clipping 范围,β 控制 KL 正则强度,πref 通常是 SFT model 或某个冻结参考模型。
4.1 KL 项的估计形式#
DeepSeek-R1 中使用的 KL 估计器形式为:
DKL(πθ∥πref)≈πθ(oi∣q)πref(oi∣q)−logπθ(oi∣q)πref(oi∣q)−1
令:
x=πθ(oi∣q)πref(oi∣q)
则该项为:
x−logx−1
由不等式:
logx≤x−1(x>0)
可得:
x−logx−1≥0
当 x=1 时取等号,对应当前 policy 与 reference policy 在该样本上的概率一致。KL 项的作用是抑制 policy 过度偏离 reference,降低 reward hacking 和语言质量退化风险。
4.2 Token-level objective#
如果把 response-level ratio 展开到 token 级,单条回答 oi 的 token-level surrogate 可写成:
Li(θ)=Ti1t=1∑Timin(ρi,t(θ)Ai,clip(ρi,t(θ),1−ϵ,1+ϵ)Ai)
其中:
ρi,t(θ)=πθold(yi,t∣q,yi,<t)πθ(yi,t∣q,yi,<t)
outcome supervision 下,同一条回答的所有 token 通常共享同一个 response-level advantage:
Ai,t=Ai
这对应“整条回答得到一个最终 reward,再把该 reward 信号分配给整条轨迹”的训练方式。
4.3 Process supervision 版本#
如果 reward model 或 verifier 能给每个 reasoning step 打分,则可以得到 step-level reward:
ri,kk=1,…,Ki
设第 k 个 step 覆盖 token 区间:
t∈[ei,k−1+1,ei,k]
对同一 prompt 下所有样本、所有 step reward 做归一化:
Ai,k=σstep+εnumri,k−μstep
该 step 内的 token 使用同一个 advantage:
Ai,t=Ai,k,t∈[ei,k−1+1,ei,k]
process supervision 的优势是 credit assignment 更细;成本是需要更强的过程奖励模型或更可靠的 step verifier。
5. Algorithm:一轮 GRPO#
一轮 GRPO 可以写成 5 个步骤。
Step 1:采样 prompt#
从任务分布采样 prompt:
q∼P(Q)
Step 2:旧 policy 采样一组回答#
使用旧 policy 生成 G 条回答:
{o1,o2,…,oG}∼πθold(⋅∣q)
Step 3:计算 reward#
对每条回答打分:
ri=R(q,oi)
reward 可以来自:
rule-based verifier
unit tests
reward model
format checker
Step 4:计算 group-relative advantage#
计算组内均值和标准差:
μG=G1j=1∑Grj
σG=G1j=1∑G(rj−μG)2
得到:
Ai=σG+εnumri−μG
Step 5:clipped update + KL regularization#
优化:
G1i=1∑Gmin(ρiAi,clip(ρi,1−ϵ,1+ϵ)Ai)−βDKL(πθ∥πref)
其中:
Ai>0⇒increase probability of oi
Ai<0⇒decrease probability of oi
clip 和 KL 共同限制 update step size。
6. 和 PPO、DPO 的关系#
| 方法 | 优化信号 | 数据来源 | 需要在线 reward? | 需要 critic? | 适合场景 |
|---|
| PPO | At=Rt−Vϕ(st) | 在线采样 | 需要 | 通常需要 | 通用 RLHF |
| GRPO | Ai=(ri−μG)/σG | 在线组内采样 | 需要 | 不需要 | 数学、代码、可验证 reasoning |
| DPO | chosen / rejected 偏好对 | 离线偏好数据 | 不需要 | 不需要 | 离线偏好对齐 |
PPO 的 advantage 依赖 value model:
AtPPO≈Rt−Vϕ(st)
GRPO 的 advantage 依赖同题样本组:
AiGRPO=σGri−μG
DPO 从偏好对出发,典型训练样本为:
(q,o+,o−)
其中 o+ 是 chosen response,o− 是 rejected response。DPO 目标直接提高 chosen 相对 rejected 的 log-odds:
logπref(o+∣q)πθ(o+∣q)−logπref(o−∣q)πθ(o−∣q)
GRPO 更接近在线采样版的相对优化:每轮由当前或旧 policy 生成候选答案,再通过 reward / verifier 转成组内相对 advantage。DPO 更接近离线 preference classification-style objective。
7. 七个元维度#
维度 1:优化对象#
LLM completion 是 trajectory:
o=(y1,y2,…,yT)
policy 为:
πθ(o∣q)=t=1∏Tπθ(yt∣q,y<t)
GRPO 的 reward 通常在 response-level 给出,但梯度落到 token-level logprob:
∇θlogπθ(o∣q)=t=1∑T∇θlogπθ(yt∣q,y<t)
因此,优化对象可以理解为 response-level trajectory,参数更新作用在 token-level policy 上。
维度 2:reward 来源#
GRPO 不限定 reward 形式。常见 reward 包括:
accuracy reward
format reward
unit-test reward
reward-model score
可验证任务中,rule-based reward 通常更稳定;开放式任务中,reward model 更常见,但也更容易出现 reward hacking。
维度 3:baseline 构造#
PPO baseline:
Vϕ(q,o≤t)
GRPO baseline:
μG=G1j=1∑Grj
关键假设为:
same prompt⇒same difficulty context
在同一 prompt 内比较,题目难度作为共享因素被部分抵消。
维度 4:方差与偏差#
group size G 决定组内 baseline 的稳定性。
当 G 较小时:
μG has high variance
当 reward 全部相同时:
r1=r2=⋯=rG⇒σG=0
此时 group-relative advantage 无法提供排序信号。
标准差归一化的作用是尺度控制:
ri−μG⟹σG+εnumri−μG
尺度控制能缓解不同 prompt 的 reward scale 差异,但样本标准差本身也依赖当前组样本,因此会引入额外估计噪声。
维度 5:policy update 稳定性#
稳定性由三个量控制:
ρθ=πθoldπθ
ϵfor clipping
βfor KL regularization
ϵ 控制局部更新半径;β 控制 reference policy 对当前 policy 的牵引强度。ϵ 或 β 过松,reward hacking 风险上升;过紧则 policy 学习信号不足。
维度 6:任务适配性#
GRPO 特别适合 reward 清晰、可验证的任务:
mathcodelogicstructured output
这些任务具备明确的 verifier 或近似 verifier。开放式写作、审美判断、复杂人类偏好任务中的 reward 更难稳定定义,GRPO 的效果更依赖 reward model 质量。
维度 7:系统成本#
GRPO 的工程收益来自 critic 的移除:
PPO=policy+reference+reward+critic
GRPO=policy+reference+reward / verifier
对应收益包括:
less model memory
no value training
simpler RL pipeline
better scalability for reasoning RL
8. 最小理解骨架#
GRPO 的最小公式骨架为:
q→{o1,…,oG}
oi→ri
ri→Ai=σG+εnumri−μG
Ai>0⇒↑logπθ(oi∣q)
Ai<0⇒↓logπθ(oi∣q)
clipping+KL⇒stable update
压缩成一句:
GRPO 用同题多答案的组内相对好坏替代 PPO 的 critic baseline,使 LLM reasoning RL 在保留在线 policy optimization 的同时降低系统成本。
References#
下载 GRPO 教材 PDF