强化学习并非越长越好:简洁推理与更高准确率

研究揭示强化学习中,模型倾向于通过生成更长答案来应对负反馈,提出两阶段训练法,强调简洁推理更能提升准确率和效率。

原文标题:更长思维并不等于更强推理性能,强化学习可以很简洁

原文作者:机器之心

冷月清谈:

研究表明,推理模型生成较长响应并非总是提升准确度,反而可能源于强化学习的训练过程。当模型获得负奖励时,PPO算法倾向于生成较长的响应以降低损失,即使这些token对解决问题没有实际帮助。研究还发现,简洁的推理往往与更高的准确度相关。通过两阶段强化学习策略,即先用高难度问题训练,再用偶尔可解的问题训练,可以在保持甚至提高准确度的同时缩短回答时间,并提高模型对降低温度值的稳健性。即使在非常小的数据集上,强化学习的后训练阶段仍然有效。

怜星夜思:

1、文章提到强化学习的目标是获得奖励,而非解决问题本身,这是否意味着我们在设计奖励机制时需要更加谨慎,以避免模型学习到“投机取巧”的策略?你觉得有哪些方法可以改进奖励机制,让模型真正学会解决问题?
2、文章中提到了一种两阶段强化学习策略,第一阶段用高难度问题训练,第二阶段用偶尔可解的问题训练,最终实现简洁性和准确性的提升。你认为这种策略的优势和局限性分别是什么?在实际应用中,如何判断一个问题是“高难度”还是“偶尔可解”?
3、文章提到简洁性与准确度之间存在相关性,意味着在追求模型性能的同时,我们也应该关注模型的效率和可解释性。你认为在实际应用中,如何在性能、效率和可解释性之间取得平衡?

原文内容

机器之心报道

编辑:Panda


今天早些时候,著名研究者和技术作家 Sebastian Raschka 发布了一条推文,解读了一篇来自 Wand AI 的强化学习研究,其中分析了推理模型生成较长响应的原因。


他写到:「众所周知,推理模型通常会生成较长的响应,这会增加计算成本。现在,这篇新论文表明,这种行为源于强化学习的训练过程,而并非更高的准确度实际需要更长的答案。当模型获得负奖励时,强化学习损失函数就倾向于生成较长的响应,我认为这能解释纯强化学习训练为什么会导致出现顿悟时刻和更长思维链。」



也就是说,如果模型获得负奖励(即答案是错的),PPO 背后的数学原理会导致响应变长,这样平均每个 token 的损失就更小一些。因此,模型会间接地收到鼓励,从而使其响应更长。即使这些额外的 token 对解决问题没有实际帮助,也会出现这种情况。


响应长度与损失有什么关系呢?当使用负奖励时,更长的响应可以稀释每个 token 的惩罚,从而让损失值更低(即更好 —— 即使模型仍然会得出错误的答案。



因此,模型会「学习」到:即使较长的回答对正确性没有帮助,也能减少惩罚


此外,研究人员还表明,第二轮强化学习(仅使用一些有时可解的问题)可以缩短回答时间,同时保持甚至提高准确度。这对部署效率具有重大意义。


以下是该论文得到的三大关键发现:


  • 简洁性与准确度之间的相关性:该团队证明,在推理和非推理模型的推断(inference)过程中,简洁的推理往往与更高的准确度密切相关。

  • 对 PPO 损失函数的动态分析:该团队通过数学分析,建立了响应正确性与 PPO 损失函数之间的联系。具体而言,研究表明,错误的答案往往会导致响应较长,而正确的答案则倾向于简洁。

  • 有限的数据:该团队通过实验证明,即使在非常小的数据集上,强化学习的后训练阶段仍然有效,这一结果与文献中的当前趋势相悖,并且强化学习后训练在资源受限的场景下也是可行的。


有研究者认为这项研究揭示了强化学习存在的一个普遍问题:训练的目标只是为了获得奖励,而并非是解决问题。



下面我们就来具体看看这篇论文。



  • 论文标题:Concise Reasoning via Reinforcement Learning 

  • 论文地址:https://arxiv.org/abs/2504.05185


响应更长≠性能更好


下表展示了使用不同模型在不同基准测试上,答案正确或错误时的平均响应长度。蓝色小字表示用于计算所得平均值的样本数。



由此可知,更长响应不一定能带来更好的性能


于是问题来了:使用 RL 训练的 LLM 倾向于在什么时候增加响应长度?原因又是为何?


每个推理问题都是一个 MDP


从根本上讲,每个推理问题(例如,数学问题)都构成了一个马尔可夫决策过程 (MDP),而不仅仅是一个静态样本。


MDP 由状态空间 S、动作空间 A、转换函数 T、奖励函数 R、初始状态分布 P_0 和折扣因子 γ 组成。


在语言建模中,每个 token 位置 k 处的状态由直到 k 为止并包括 k 的所有 token(或其嵌入)组成,另外还包括上下文信息(例如问题陈述)。动作空间对应于可能 token 的词汇表。转换函数可确定性地将新的 token 附加到序列中。除了最后一步之外,所有步骤的奖励函数都为零。在最后一步,正确性根据最终答案和格式进行评估。初始状态取决于提示词,其中可能包含问题陈述和指令(例如,「逐步求解并将最终答案放入方框中」)。强化学习的目标是最大化预期回报,预期回报定义为根据 γ 折扣后的未来奖励之和。在 LLM 的后训练中,通常将 γ 设置为 1。


为了在仅提供最终答案的情况下解决问题,需要一个能够偶尔得出正确答案的基础模型。在对多个问题进行训练时,整体 MDP 由多个初始状态和更新的奖励函数组成。添加更多问题会修改 P_0 和 R,但会保留基本的 MDP 结构。


这会引入两个重要的考虑因素:(1) 更大的问题集会增加 MDP 的复杂性,但这可能会使所学技术具有更高的泛化能力。(2) 原理上看,即使是单个问题(或一小组问题)也足以使强化学习训练生效,尽管这可能会引发过拟合的问题。


过拟合是监督学习中的一个问题,因为模型会记住具体的例子,而不是进行泛化。相比之下,在线强化学习则不会受到这个问题的影响。与依赖静态训练数据的监督学习不同,在线强化学习会持续生成新的响应轨迹,从而使模型能够动态地改进其推理能力。此外,在线强化学习不仅仅是模仿预先定义的解答;它还会主动探索各种推理策略,并强化那些能够得出正确答案的策略。


两种关键机制促成了这种稳健性:(1) 采样技术(例如非零温度)可确保生成的响应具有变化性;(2) 训练期间持续的模型更新会随着时间的推移引入新的响应分布,从而防止训练停滞和过拟合。


这能解释在小规模问题集上进行强化学习训练会保持有效性的原因。该团队表示,之前还没有人报告过将强化学习训练应用于极小数据集的研究,这也是本研究的贡献之一。


除了数据大小的考虑之外,需要强调的是,强化学习的唯一目标是最小化损失,这也就相当于最大化预期回报。从这个角度来看,强化学习训练过程中响应长度的任何显著变化都必然是由损失最小化驱动的,而非模型进行更广泛推理的固有倾向。


为了进一步研究这一点,该团队基于 DeepSeek-R1-Distill-Qwen-1.5B 基础模型,使用近端策略优化 (PPO) 算法进行了强化学习训练。训练数据是从 OlympiadBench 数据集中选择的四个问题。


之所以特意选择这些问题,是因为即使进行了广泛的采样,基础模型也始终无法解决这些问题,导致终端奖励恒定为 -0.5。其上下文大小限制为 20K token,该团队绘制了策略损失与响应长度的关系图(参见图 1)。



结果清楚地表明,响应长度和损失之间存在很强的相关性:随着响应长度的增加,损失持续下降。这直接证明:损失最小化(而非模型产生更长响应的内在趋势)才是驱动响应长度增长的主要动力。


对于 PPO 对响应长度的影响,该团队也从数学角度进行了解释。详见原论文。


一种两阶段强化学习策略


该团队的分析突出了几个要点。


  • 当在极其困难的问题训练时,响应长度往往会增加,因为较长的响应更有可能受到 PPO 的青睐,因为模型难以获得正回报。

  • 当在偶尔可解的问题上训练时,响应长度预计会缩短。

  • 在大规模训练场景中,响应长度的动态会变得非常复杂,并会受到底层问题难度的巨大影响。


该团队认为,由于大多数问题至少偶尔可解,因此平均响应长度最终会减少。值得注意的是,该团队目前的分析不适用于 GRPO,对此类方法的精确分析还留待未来研究。尽管如此,由于简洁性与更高准确度之间的相关性,该团队推测:如果训练持续足够长的时间,这种增长最终可能会停止并开始逆转。


如果数据集包含过多无法解决的问题,那么从「鼓励响应更长」到「鼓励简洁性」的转变可能会大幅延迟且成本高昂。


为了解决这个问题,该团队提出了一种新方法:通过一个后续强化学习训练阶段来强制实现简洁性,该阶段使用了偶尔可解问题的数据集。于是,就能得到一种两阶段的强化学习训练方法:


在第一阶段,用高难度问题训练模型。此阶段的目标是增强模型解决问题的能力,由于 PPO 主要会遇到负奖励,从而促使模型产生更长的响应,因此响应长度预计会增加。值得注意的是,第一阶段也可被视为现有推理模型的强化学习训练。


在第二阶段,使用非零 p_a(偶尔可解)的问题继续训练。此阶段能在保持甚至提高准确度的同时提升简洁性。值得注意的是,正如后面将看到的,它还能显著提高模型对降低温度值的稳健性 —— 即使在有限的采样量下也能确保卓越的性能。


从 MDP 的角度,该团队得到了一个关键洞察:即使问题集很小,也可以实现有效的强化学习训练,尽管这可能会降低泛化能力。尤其要指出,在训练的第二阶段 —— 此时模型已经具备泛化能力,即使仅有只包含少量问题的极小数据集也可使用 PPO。


实验结果


该团队也通过实验检验了新提出的两阶段强化学习训练方法。


问题难度如何影响准确度-响应长度的相关性


图 2 给出了准确度和响应长度随训练步数的变化。



可以看到,在所有问题集中,准确度的提高与响应长度的缩短相一致 —— 这表明随着模型准确度的提高,其响应长度也随之缩短。此外,对于更简单的问题集,响应长度缩短得更快。最后,对于最难的数据集,由于问题很少能够解决,因此响应长度有所增加。


响应长度减少


图 3 展示了在不同的测试数据集(AIME 2024、AMC 2023 和 MATH-500)上,经过后训练的 1.5B 和 7B 模型的准确度和响应长度随训练步数的变化情况。



可以看到,新提出的两阶段强化学习训练方法会让响应长度显著下降,同时准确度会保持稳定。而右图在 MMLU_STEM 上的结果更是表明:仅使用 8 个样本,强化学习后训练也能带来准确度提升。


性能和稳健性的提升


前面的实验结果已经证明:进一步的强化学习后训练可以在保持准确度的同时缩短响应长度。该团队进一步研究发现:进一步的强化学习后训练也能提升模型的稳健性和性能。


为了评估模型的稳健性,该团队检查了它们对温度设置的敏感性。将温度设置为零会大幅降低 R1 等推理模型的准确度。然而,诸如 pass@1 之类的标准指标依赖于非零温度下的多个样本,这通常会掩盖在小型数据集上进行二次强化学习后训练的优势。


该团队使用 0 和 0.6 的温度值进行了实验,结果见表 3。



可以看到,当温度设置为 0 时,经过后训练的模型的表现显著优于基线模型,这表明经过后训练的模型与基线模型相比更加稳健。


该团队还表明,在有限数量的样本上进行进一步的强化学习训练可以显著提升准确度。这种效果取决于先前在类似(甚至相同)问题上进行过的强化学习训练程度。如果模型已经进行过大量强化学习训练,可能就更难以进一步提升准确度。


为了探究这一点,该团队基于 Qwen-Math-v2.5 使用了在线强化学习进行实验,训练样本是来自 MATH 数据集的 4 个样本。不同于 R1,该模型之前并没有经过强化学习训练,而是仅在大量数学数据上进行了 token completion 训练。结果见表 4。



可以看到,提升很惊人!在 1.5B 模型上,提升高达 30%。这表明,就算仅使用 4 个问题进行强化学习后训练,也能得到显著的准确度提升,尤其是当模型之前未进行过强化学习推理优化训练时。


参考链接

https://x.com/rasbt/status/1911494805101986135



© THE END 

转载请联系本公众号获得授权

投稿或寻求报道:[email protected]

我感觉这个两阶段训练有点像“先苦后甜”。第一阶段专门啃硬骨头,把模型逼到极限,第二阶段再用一些“甜点”来巩固学习成果。关键在于,这个“苦”要足够,才能让模型真正学到东西,这个“甜”也要适度,不然就容易懈怠。所以,问题的选择就非常重要了。

我觉得可以借鉴“奥卡姆剃刀原则”,在满足性能要求的前提下,尽量选择简单的模型。简单并不意味着性能差,相反,简单的模型往往更容易维护和理解,也更容易发现潜在的问题。而且,在数据量有限的情况下,简单的模型通常具有更好的泛化能力。

文章提出的观点很深刻,强化学习中奖励机制的确需要精心设计。为了避免模型“投机取巧”,可以考虑以下几个方面:

1. 引入中间奖励:除了最终的正确答案奖励,还可以根据解题步骤的合理性、逻辑性给予中间奖励。例如,对于数学题,每一步推导正确都可以获得奖励,这样可以引导模型学习正确的解题过程,而不是单纯追求最终答案的正确性。

2. 加入惩罚机制:对于明显错误的步骤或者冗余的推理过程,给予一定的惩罚。这样可以避免模型生成无意义的token,促使模型更加简洁高效地解决问题。

3. 设计更复杂的奖励函数:可以考虑将奖励函数设计成与问题解决的多个维度相关,例如正确率、效率、泛化能力等。这样可以引导模型在多个目标上进行优化,避免只关注单一的奖励指标。

4. 模仿学习与强化学习结合:可以先用高质量的专家数据进行模仿学习,让模型初步掌握解决问题的方法。然后再通过强化学习进行微调,优化模型的策略,提高解决问题的能力。

判断问题难度,我想到一个简单粗暴的方法:直接用一小批数据训练一个baseline模型,然后用这个模型去预测其他问题。预测效果差的,说明问题难度大;预测效果好的,说明问题相对简单。当然,这个方法可能不够精确,但可以作为一个初步的筛选标准。

这让我想起了之前AlphaGo下棋的例子,一开始也是单纯追求赢棋,后来发现有时候会走出一些“怪招”。是不是可以借鉴这种思路,加入一些“探索性奖励”,鼓励模型尝试不同的解题思路,即使这些思路一开始看起来并不那么有效?或者说,通过引入一些不确定性,让模型不容易找到“最优解”,从而避免过度拟合?

两阶段强化学习策略确实很有意思,感觉有点像循序渐进的教学方法。它的优势在于:

1. 针对性强:第一阶段提升解决问题的能力,第二阶段优化推理过程,分工明确,效果更好。
2. 避免局部最优:先解决难题可以避免一开始就陷入简单的“套路”,更容易探索到更优的解题策略。
3. 提高泛化能力:通过不同难度问题的训练,提高模型对各种问题的适应性。

局限性可能在于:

1. 难度评估:如何准确评估问题难度是一个挑战,不同的模型对问题的“高难度”和“偶尔可解”的定义可能不同。
2. 阶段切换:如何确定两个阶段的切换时机和训练比例,需要大量的实验和调参。
3. 问题选择:需要精心选择训练问题,保证问题质量,避免引入噪声。

至于如何判断问题难度,我觉得可以从以下几个方面入手:

1. 模型表现:观察模型在不同问题上的表现,例如正确率、平均响应长度等。
2. 人类评估:请专家对问题进行难度评估,给出定性的判断。
3. 结合方法:将模型表现和人类评估结合起来,综合判断问题难度。

我想到一个比喻:性能是跑得快,效率是省油,可解释性是知道为什么跑得快。如果目标是送紧急文件,那可能要牺牲一点油耗,追求速度;如果目标是长途旅行,那就要考虑省油,保证续航。关键在于,要根据不同的路况选择不同的策略。

我觉得可以从“过程可解释性”入手。与其只关注最终结果,不如让模型同时输出解决问题的步骤和依据,并针对这些步骤进行评估。这样可以更全面地了解模型的推理过程,及时发现并纠正错误策略。就好比考试的时候,不仅要看答案对不对,还要看解题过程是不是清晰合理。

这个问题问得很好!在实际应用中,性能、效率和可解释性往往是相互制约的。如何在它们之间取得平衡,需要根据具体的应用场景和需求进行权衡。

1. 明确目标:首先要明确应用场景的主要目标是什么。例如,在一些对实时性要求高的场景,效率可能比可解释性更重要;而在一些需要高度信任的场景,可解释性可能比效率更重要。

2. 选择合适的模型:不同的模型在性能、效率和可解释性方面各有优劣。例如,深度学习模型通常具有较高的性能,但可解释性较差;而一些传统的机器学习模型,例如决策树和线性模型,则具有较好的可解释性,但性能可能不如深度学习模型。

3. 采用可解释性技术:即使选择了复杂的模型,也可以通过一些可解释性技术来提高模型的可解释性,例如LIME、SHAP等。

4. 模型压缩与加速:可以通过模型剪枝、量化、知识蒸馏等技术来压缩模型大小,提高模型的推理速度。

5. 持续监控与评估:在模型部署后,需要持续监控模型的性能、效率和可解释性,并根据实际情况进行调整。