文章核心观点 - 英伟达的研究指出,在多奖励强化学习优化场景中,当前广泛采用的GRPO算法存在根本性缺陷,它会将不同的奖励信号混合归一化,导致训练信号被削弱和信息损失 [2][4] - 为解决此问题,英伟达提出了一种新的策略优化方法GDPO,该方法通过对各个奖励信号分别进行归一化,保留了奖励间的相对差异,从而实现了更准确的多奖励优化和更稳定的训练过程 [4] - 在工具调用、数学推理和代码推理等多项任务上的实验结果表明,GDPO在所有设置中均稳定地优于GRPO,能够实现更强的目标偏好对齐和更优的跨目标权衡 [7][37] GRPO算法在多奖励优化中的问题 - GRPO通常用于优化单一目标奖励,但在多奖励优化中,常见的做法是将所有奖励分量相加后直接应用GRPO,这会导致问题 [10] - GRPO会对聚合后的总奖励进行群组级归一化,这本质上压缩了奖励信号,导致优势估计中的信息损失 [10] - 具体示例显示,在涉及两个二值奖励的场景中,尽管存在六种不同的奖励组合,但GRPO归一化后只产生两个唯一的优势组,例如(0,1)、(0,2)和(1,2)会产生相同的归一化优势值,这削弱了学习信号 [11][12] - 这种局限性可能引入训练不稳定的风险,在数学推理任务中,使用GRPO训练时,正确率奖励分数在约400个训练步后开始下降,出现了部分训练坍塌 [12] - 移除标准差归一化项的GRPO变体仅能略微增加不同优势组的数量,但并未带来更好的收敛性或更优的下游评估表现,在工具调用任务中甚至导致格式奖励完全失败 [13][26] GDPO算法的核心改进 - GDPO的核心创新在于“解耦归一化”,即在聚合之前对每个奖励分别进行群组级归一化,计算各自的归一化优势,然后再求和并进行批次级优势归一化,以保持数值稳定 [17] - 这种方法避免了不同奖励信号被混合“抹平”,更真实地保留了它们的相对差异 [4] - 理论分析表明,GDPO能产生显著更多的不同优势组,随着rollout数量或奖励数量的增加,其优势粒度也逐步增大,实现了更精确的优势估计 [18] - GDPO能够持续产生更稳定的训练曲线和更好的收敛性,例如在工具调用任务中,GDPO在格式奖励和正确率奖励上都实现了更好的收敛 [19] - 论文还探讨了当不同目标重要性不相等时,如何通过调整奖励权重或修改奖励函数来优先考虑更重要的目标 [19] 工具调用任务实验结果 - 在工具调用任务上,GDPO在所有运行中都能在格式奖励和正确率奖励上收敛到比GRPO更高的值 [23] - 在BFCL-v3评估中,对于Qwen2.5-Instruct-1.5B模型,GDPO在Live任务上的整体准确率从GRPO的50.63%提升至55.36%,在Non-Live任务上从37.87%提升至40.58%,平均准确率从30.18%提升至32.81%,正确格式比例从76.33%提升至80.66% [25] - 对于Qwen2.5-Instruct-3B模型,GDPO在Live任务上的整体准确率从GRPO的69.23%提升至71.22%,平均准确率从39.20%提升至40.87% [25] - 移除标准差归一化项的GRPO变体在格式奖励上完全失败,在BFCL-v3上的正确格式比例为0% [26] 数学推理任务实验结果 - 在数学推理任务中,GDPO比GRPO更有效地恢复了正确率奖励,并且避免了GRPO在约400步后出现的训练不稳定性 [29] - 对于DeepSeek-R1-1.5B模型,GDPO在所有基准测试上都优于GRPO,在MATH、AIME和Olympiad基准上的准确率分别提升了2.6%、6.7%和2.3% [30] - 对于DeepSeek-R1-7B模型,GDPO在更具挑战性的AIME基准上将准确率从GRPO的50.2%提升至53.1%,同时将超长率从2.1%大幅降低至0.2% [30][34] - 对于Qwen3-4B-Instruct模型,GDPO在AIME基准上将准确率从GRPO的54.6%提升至56.9%,同时将超长率从2.5%大幅降低至0.1% [30][34] 代码推理任务实验结果 - 在代码推理任务的双奖励设置下,GDPO在所有任务上都提升了通过率,同时保持相似的超长比例 [35] - 例如,在Codecontests任务上,GDPO将通过率从GRPO的63.2%提升至65.8%,超长比例仅从14.2%微增至14.3% [35] - 在三奖励设置下,GDPO在所有目标上都实现了更有利的平衡,在保持与GRPO相似通过率的同时,显著降低了超长比例和bug比例 [36] - 具体在Taco任务的三奖励设置中,GDPO将超长比例从GRPO的14.7%降低至10.6%,同时将bug比例从30.0%降低至28.0% [36]
挑战GRPO,英伟达提出GDPO,专攻多奖励优化