论文

通过基于一致性的强化学习增强LLM的代码推理能力

Enhancing the Code Reasoning Capabilities of LLMs via Consistency-based Reinforcement Learning

模型训练强化学习

摘要

代码推理是指在给定源代码和特定输入的情况下预测程序输出的任务。它可以衡量大语言模型(LLM)的推理能力,也有利于代码生成和数学推理等下游任务。现有的工作已经验证了强化学习对该任务的有效性。然而,这些方法仅仅基于最终输出或粗粒度信号来设计奖励,而忽略了任务中逐步推理过程的内在一致性。因此,这些方法往往会导致奖励稀疏或奖励作弊,从而限制了增强学习能力的充分发挥。为了缓解这些问题,我们提出了 CodeThinker,一种用于代码推理的一致性驱动的强化学习框架。具体来说,CodeThinker 具有三个关键组件:(1)逐步推理感知 模型训练 模块,它利用一致性跟踪范式作为模板来合成捕获逐步推理过程的训练数据; (2)动态波束采样策略,旨在在固定采样预算下提高采样输出的质量; (3)一致性奖励机制,可以有效缓解奖励作弊。对三个流行基准的实验表明,CodeThinker 在多个 LLM 上实现了最先进的性能。例如,当部署在 Qwen2.5-Coder-7B-Instruct 上时,它的准确率比最强基线高 4.3%。我们还验证了 CodeThinker 在下游任务上的有效性。结果表明,在没有额外训练的情况下,CodeThinker 在涵盖 17 种编程语言的数学推理和代码推理任务上的平均准确率分别提高了 5.33 个和 3.11 个百分点。