GRPO 去掉 Critic Model 会带来哪些问题?

GRPO(Group Relative Policy Optimization)相比 PPO 最显眼的改动,就是去掉了 Critic Model(价值网络)。这一简化让训练流程干净了很多,但也带来了一系列不容忽视的问题。本文系统梳理这些问题,以及后续是如何应对的。


先回顾:PPO 的 Critic Model 是干什么的?

在 PPO 中,Critic(价值模型,Value Model)的职责是估计当前状态的期望回报 \(V(s)\)。它的核心作用体现在两处:

  1. 计算优势函数(Advantage)

    \[A_t = R_t - V(s_t)\]

    直接用原始奖励 \(R_t\) 作为学习信号,方差极大。Critic 提供的 \(V(s_t)\) 充当基线(baseline),将奖励”对齐到期望水平”,有效压低方差,让策略梯度信号更稳定。

  2. GAE(Generalized Advantage Estimation)

    PPO 通常配合 GAE 使用,通过 \(\lambda\)-折扣把多步奖励平滑整合成单步优势估计,进一步降低方差、减少偏差。


GRPO 怎么去掉 Critic 的?

GRPO 的做法是用组内相对排名代替价值基线

对同一个问题 \(q\),采样 \(G\) 条输出 \(\{o_1, o_2, \ldots, o_G\}\),分别打分得 \(\{r_1, r_2, \ldots, r_G\}\),然后在组内做归一化:

\[\hat{A}_i = \frac{r_i - \text{mean}(\mathbf{r})}{\text{std}(\mathbf{r})}\]

以此作为每条输出的优势估计,完全不需要独立的价值网络。

这个想法直觉上很合理:同一道题的多条回答互为参照,相对好坏就是学习信号。但”去掉 Critic”的代价,正藏在这个公式背后。


去掉 Critic 带来的问题

1. 优势估计方差大

Critic 的核心价值之一是降低方差。没有价值网络,GRPO 的优势估计完全依赖有限的 \(G\) 个样本统计量(均值和方差),这是一个高方差估计量。

\(G\) 较小(如 4 或 8)时,组内均值可能与真实期望相差甚远,优势信号噪声大,导致: - 策略梯度更新方向不稳定 - 需要更小的学习率来补偿,训练变慢

而 PPO 的 Critic 是一个单独的神经网络,可以在海量数据上拟合出相对准确的 \(V(s)\),基线质量显著更高。


2. 训练信号稀疏:难题与全对/全错问题

GRPO 的学习信号依赖组内的分差。一旦所有样本都对或都错,组内标准差趋于零,优势估计接近全零——梯度消失,模型停止学习

这在两种场景下高发: - 过于简单的题:模型已经学会,\(G\) 条输出全部正确,奖励全为 1,标准差为 0。 - 过于困难的题:模型完全不会,\(G\) 条输出全部错误,奖励全为 0,标准差为 0。

这个问题被称为 “无效样本”“训练信号塌缩”。PPO 的 Critic 则不受此限制——即使所有输出奖励相同,价值网络估计的 \(V(s)\) 也可以提供非零的优势信号(通过时序差分 TD 误差)。

DAPO 的动态采样(Dynamic Sampling)策略正是针对此问题提出的:过滤掉全对或全错的样本,只用有信息量的样本参与更新。


3. 信用分配困难(Credit Assignment)

LLM 的输出是一个长序列(几十到几百 token)。整个序列只有一个最终奖励时,哪个 token 的生成对结果好坏负责? 这就是信用分配问题。

PPO 通过 Critic 估计每一步的 \(V(s_t)\),可以沿时间步推算每个 token 位置的优势,提供细粒度的 token 级学习信号。

GRPO 的组内归一化只给出序列级别的优势,然后将其均匀广播到序列中的每个 token。这等价于假设”所有 token 对最终奖励的贡献相等”,显然是错误的:

  • 无效的 filler token 和关键推理步骤被同等对待
  • 模型无法精确知道哪一步推理出了问题
  • 长序列中的早期 token 信号更加稀疏

4. 分布偏移(Distribution Shift)加剧

PPO 训练中,Critic 可以在每次 rollout 后通过 TD 学习快速更新对当前策略分布的估计,从而提供 在线(on-policy)的价值基线

GRPO 没有这个自适应机制,当策略快速变化时,组内均值/方差可能滞后于真实奖励分布,导致优势估计出现系统性偏差。这在策略更新步数较多(即 off-policy 程度较高)时尤为明显。


5. 熵塌缩(Entropy Collapse)

没有 Critic 提供的价值约束,策略可能过早收敛到低熵的确定性输出(即总生成同一类回答)。这会进一步压缩组内样本多样性,陷入恶性循环:

  • 多样性低 → 组内奖励方差小 → 学习信号弱 → 策略停止探索 → 多样性更低

PPO 通常配合熵正则项和 Critic 一同控制策略的探索-利用平衡;GRPO 则需要额外的机制(如 DAPO 的 clip-higher、token 级 KL 约束)来对抗这一倾向。


6. 内存与计算并未显著节省

去掉 Critic 看似节省了一个模型的显存,但 GRPO 需要对每道题采样 \(G\)(通常 8~16)条输出,总计算量和内存峰值往往并不低于 PPO。更糟的是,\(G\) 越大,以上所有问题都能有所缓解(更准确的统计量),但代价是 \(G\) 倍的推理成本。

这意味着 GRPO 实际上在用更多的推理开销换取免于维护价值网络的便利,性价比不如直觉上的高。


后续工作如何应对

问题 代表性解法
训练信号稀疏 / 全对全错 DAPO 的动态采样(过滤无效组)
高方差梯度 DAPO 的 clip-higher + token 级 KL
信用分配 Dr. GRPO 的去偏(debiased)优势估计
优势估计偏差 GSPO 用序列级 KL 替代 token 级约束
熵塌缩 熵正则 / 温度退火 / 多样性采样策略

其中 Dr. GRPO(Unbiased Group Relative Policy Optimization,2025)从统计角度指出 GRPO 原始优势估计存在系统性偏差(bias),并推导出无偏版本;GSPO 则从目标函数层面重新设计,直接用序列级 KL 约束替代 PPO-clip,规避了部分信用分配问题。


总结

GRPO 去掉 Critic 是一个工程上的大胆简化,让 RL 训练流程更容易落地,也确实推动了以 DeepSeek-R1 为代表的一批成果。但这个简化并非没有代价:

高方差、信号稀疏、信用分配不精确、分布偏移、熵塌缩,这五个问题本质上都是同一件事的不同侧面——用粗粒度的组内统计代替细粒度的价值估计,必然丢失信息

理解这些问题,才能看懂后续 DAPO、GSPO、Dr. GRPO 等工作的动机和取舍,也能在自己的训练实践中更有针对性地调参和设计奖励。


GRPO 去掉 Critic Model 会带来哪些问题?
https://kissshhot.github.io/2026/01/22/grpo-no-critic-problems/
作者
丁一帆
发布于
2026年1月22日
许可协议

点赞与评论

喜欢这篇文章?点个赞,或留下你的想法。登录 GitHub 后即可参与。

如果评论无法加载,请检查网络连接后刷新页面。