论文

探索代码生成强化学习中的通过率奖励

Exploring Pass-Rate Reward in Reinforcement Learning for Code Generation

模型训练强化学习

摘要

来自单元测试反馈的强化学习 (RL) 已成为改进 大语言模型 (LLM) 代码生成的标准 后训练 配方。然而,通过所有测试的二元奖励可能很稀疏,在没有采样解决方案通过所有测试的挑战性问题上不会产生学习信号。常见的补救措施是使用测试用例通过率作为替代奖励。在这项工作中,我们研究了无评论强化学习中用于代码生成的通过率奖励(例如 GRPO 和 RLOO),并报告了基本模型和算法之间的一致模式:尽管缓解了奖励稀疏性,但在严格的受控实验中,通过率奖励并不能可靠地提高最终性能(优于二元奖励)。为了理解这种差异,我们分析了奖励密度和由此产生的梯度方向。我们发现通过率奖励更密集,但诱导的梯度更新并不能始终如一地将概率质量移向全通过解决方案。出现这种情况是因为测试用例通过率是朝着完全正确的进展的错误校准替代品,并且同一组内的部分通过解决方案可能会导致相互冲突的梯度方向相互抵消。总的来说,我们的结果表明,在无批评者的强化学习中,通过率奖励不足以改善代码生成并激励奖励设计,从而更好地使优化与完全正确的目标保持一致。