1. 强化学习中的罕见解遗忘问题剖析
在强化学习领域,策略优化过程中存在一个普遍但常被忽视的现象:模型会逐渐遗忘那些正确但罕见的解决方案路径。这种现象在数学推理、代码生成等需要创造性解决问题的场景中尤为明显。传统RLVR(可验证奖励的强化学习)方法通过组相对优势估计来稳定策略更新,但其核心机制存在固有缺陷。
1.1 组采样机制的局限性
当前主流的GRPO(组相对策略优化)及其变体(如DAPO、CISPO)都依赖于组采样来估计优势函数。具体实现方式是:对于每个提示x,从当前策略πθ中采样N个独立 rollout {oi},计算每个rollout的二元奖励Ri ∈ {Rc, Rw}(正确为Rc,错误为Rw),然后通过组内相对比较得到优势估计:
bAGRPO_i = (Ri - R̄) / (σR + ε)其中R̄是组内平均奖励,σR是组内奖励标准差。这种估计方式在实践中有两个关键限制:
- 计算效率约束:大组规模(如N>32)在LLM训练中几乎不可行,因为每个rollout都需要完整的前向生成
- 采样偏差问题:小组(如N=8)可能完全错过那些概率较低但正确的解,同时仍包含混合奖励的样本
1.2 非单调的遗忘概率曲线
通过理论推导(见Lemma 3.1),我们发现罕见解被忽略的概率Pr(Bτ)与组大小N呈现非单调关系:
Pr(Bτ) = (1-τ)^N - (μpos-τ)^N - (1-μpos)^N其中τ是罕见解的概率质量,μpos是总正确解概率。这个函数在中等N值时达到峰值,形成三个典型区域:
- 小N区(N=2):更新大多不活跃(组内奖励全同),策略变化缓慢,保留基础模型的多样性
- 中N区(N=8-32):更新活跃但常错过罕见解,导致最大锐化风险
- 大N区(N>64):覆盖充分,罕见解被采样的概率提高
实际训练中,计算成本限制我们通常使用中N区(如N=8),这恰好处于遗忘概率最高的危险区间。例如在Qwen2.5-7B上的实验显示,N=8时pass@256比N=2下降约10%,验证了该理论预测。
2. F-GRPO的核心算法设计
2.1 概率质量重分配分析
通过分类策略框架(Hu et al., 2025)可以精确描述RL更新如何重分配概率质量。定义:
- Qpos = Σ_{i∈P} pi:总正确质量
- Qu,pos = Qpos - Ppos:未采样正确质量
关键发现是:∆Qpos > 0 时,Qu,pos仍可能减小。这意味着即使总正确概率增加,质量也可能从罕见解转移到常见解。这种重分配通过两个机制发生:
- 直接漂移项:-SR·Upos,2(当SR>0时向下推动未采样解)
- 归一化耦合项:与采样解的概率增益成反比
∆Qu,pos = η/N [-SR·Upos,2 - Qu,pos((Rc-SR)A2 + (Rw-SR)B2 - SR·U2)]2.2 难度感知的优势缩放
受Focal Loss启发,我们提出难度感知的权重系数:
g(x) = (1 - bμpos(x))^γ其中bμpos(x) = (R̄ - Rw)/(Rc - Rw)是提示x的实证成功率估计。该系数具有以下特性:
- γ=0时退化为标准GRPO
- γ>0时抑制高成功率提示的更新强度
- 动态保持对低成功率提示的关注
实现上仅需对现有组相对优势进行缩放:
bAF-GRPO_i = g(x) · bAGRPO_i2.3 算法集成方案
F-GRPO设计为可插拔模块,与主流组相对方法兼容:
- F-DAPO:与不对称裁剪策略协同
- F-CISPO:与重要性采样裁剪结合
- 标准GRPO:直接应用系数缩放
实际部署时只需添加一行代码计算g(x),几乎零额外计算成本。超参数γ通常取0.5-1.0,我们在不同模型上的实验表明:
| 模型 | 最优γ |
|---|---|
| Qwen2.5-7B | 0.5 |
| Qwen2.5-1.5B-Math | 0.5 |
| Llama-3.2-3B-Instruct | 1.0 |
3. 实验验证与效果分析
3.1 分类策略模拟验证
在128,000个动作的分类策略空间中(10,000正确),我们追踪了两个关键指标:
- 总正确质量Qpos:随训练步骤增长
- 保留正质量Mret:初始正确动作中保持或增加概率的比例
结果显示:
- N=131,072(Pr(Bτ)<0.001)能保持Mret≈1
- N=8时Mret降至0.2-0.4,证实中间区域的锐化效应
- F-GRPO(γ=1)在N=8时显著提升Mret
3.2 大语言模型实验结果
在三个模型系列上的统一测试表明:
3.2.1 Qwen2.5-7B性能提升
| 方法 | pass@1 | pass@256 | ∆NLLrare |
|---|---|---|---|
| GRPO(N=8) | 37.3 | 64.1 | 0.68 |
| F-GRPO | 38.6 | 70.3 | 0.46 |
关键发现:
- 数学推理:AIME25上pass@256从40.8→52.6(+28.9%)
- OOD泛化:IFEval上pass@1从32.1→34.0,pass@256从70.3→75.7
- 质量保留:∆NLLrare降低32%,说明更好地保留了基础模型的罕见解
3.2.2 多算法兼容性
在N=8固定时,Focal加权对各类算法的提升:
| 基线方法 | pass@256提升 | 计算成本 |
|---|---|---|
| GRPO | +6.2 | 1× |
| DAPO | +3.2 | 1× |
| CISPO | +3.6 | 1× |
特别值得注意的是,F-GRPO在N=8时能达到甚至超过原始算法在N=32的表现,节省4倍计算资源。
3.3 与传统正则化方法对比
与常见多样性保持技术相比:
| 方法 | pass@1 | pass@256 | 内存开销 |
|---|---|---|---|
| F-GRPO | 38.6 | 70.3 | 低 |
| 熵奖励 | 37.8 | 69.5 | 低 |
| KL惩罚 | 37.2 | 72.0 | 高 |
F-GRPO在pass@1和OOD泛化上表现最优,且无需维护参考模型(KL惩罚需要),体现了其工程实用性。
4. 实施细节与注意事项
4.1 训练配置建议
基于我们的实验,推荐以下最佳实践:
组大小选择:
- 计算受限时:N=8 + F-GRPO
- 资源充足时:N=16-32 + F-GRPO
学习率设置:
optimizer = AdamW(model.parameters(), lr=1e-6, weight_decay=0.01)关键超参数:
batch_size: 256 mini_batch_size: 64 clipping: ε_low=0.2, ε_high=0.2 (GRPO) γ: 0.5-1.0 (从小开始网格搜索)
4.2 实际部署技巧
动态γ调整:
if current_epoch > warmup_epochs: γ = min(1.0, γ + 0.1) # 渐进增加奖励标准化:
- 对非二元奖励,建议先标准化到[0,1]区间
- 保持Rw ≤ 0以确保理论性质
混合训练策略:
- 前期:标准GRPO(γ=0)建立基础
- 后期:引入F-GRPO保持多样性
4.3 常见问题排查
问题1:pass@1下降明显
- 检查γ是否过大,尝试减小0.2-0.5
- 验证奖励信号是否准确,错误标签会导致g(x)计算偏差
问题2:pass@256提升有限
- 增大组大小到16-32,即使部分增加也有帮助
- 检查初始τ/μpos比率,极低概率解可能需要特别处理
问题3:训练不稳定
- 添加优势归一化:bA' = bA / (std(bA) + ε)
- 尝试较小的学习率(如5e-7)
5. 扩展应用与未来方向
5.1 多模态任务适配
在视觉-语言任务中,F-GRPO可缓解"描述单一化"问题。调整要点:
- 将正确解扩展为"多样化正确"(如不同描述角度)
- 定义部分奖励(如R∈[0,1])反映创意质量
5.2 在线课程学习
结合课程学习动态调整γ:
def get_gamma(current_step): base = 0.5 if current_step > 1000: return min(1.5, base + (current_step-1000)/2000) return base5.3 理论扩展方向
- 非二元奖励扩展:分析连续奖励下的质量重分配
- 非平稳τ分析:考虑训练过程中τ(x)自身的变化
- 多模态策略空间:研究高维动作空间的覆盖特性
在实际部署F-GRPO时,我们发现一个有趣的现象:当应用于代码生成任务时,该方法不仅能提高多样化解决方案的产生,还能意外地增强代码的可读性。这可能是因为"罕见但正确"的解法往往包含更清晰的代码结构,而F-GRPO机制恰好保护了这类解不被过度优化掉。