随着大型语言模型(LLMs)在处理复杂任务方面的能力不断增强,它们在首次尝试中往往无法提供准确的答案。这引发了人们对提升语言模型识别和纠正错误能力的兴趣,这一过程被称为“自我纠正”。然而,目前的自我纠正方法仍然有限,常常无法满足实际应用的需求。
在一项开创性的研究中,谷歌DeepMind的研究人员提出了基于强化学习的自我纠正方法(SCoRe),这一新方法能显著提升LLMs的自我纠正能力,且仅依赖自生成的数据。SCoRe有望提高LLMs的可靠性和稳健性,为改善它们的推理与问题解决能力开辟新的途径。
谷歌DeepMind的研究科学家阿维拉尔·库马尔(Aviral Kumar)表示:“自我纠正极大增强了人类思维。人们常常会花时间考虑多个想法并纠正自己的错误,最终得出正确的解决方案。我们希望LLMs也能做到这一点。”具备强大自我纠正能力的理想LLM应该能够评估和修正自己的回答,直到得出正确答案。这一点至关重要,因为虽然LLMs通常具备解决问题所需的知识,但它们在初次回答时可能无法有效利用这些知识。
库马尔解释道:“从基础的机器学习角度看,我们不期望LLMs能在一次尝试中解决复杂问题。因此,我们希望LLMs能投入更多的计算资源进行思考和自我纠正,以便应对困难的问题。”
以往在LLMs中启用自我纠正的尝试依赖于提示工程或模型微调,通常需要来自“神谕者”的外部反馈或指导。这些现有技术往往忽视了模型内在的自我纠正能力。例如,监督微调(SFT)方法重度依赖人工注释者或更强模型的反馈,这限制了其在实际场景中的适用性。此外,SFT方法有时在推理过程中需要多个模型进行验证,增加了部署的复杂性。
DeepMind的研究表明,尽管SFT可以提高模型的初步输出,但当模型需要在多个步骤中修正答案时,它常常表现不佳,这是复杂问题的常见要求。“到训练结束时,模型可能学会纠正基础模型的错误,但仍然缺乏检测自身错误的能力,”库马尔指出。
SFT的另一个缺点是可能导致意外行为,模型学习在首次尝试中提供最佳答案,而不进行调整,即便答案是错误的。“经过SFT训练的模型往往倾向于采取‘直接’策略,而不是学习自我纠正的过程,”他补充道。
通过强化学习的进展
为了解决这些局限性,DeepMind的研究人员转向了强化学习(RL)。库马尔表示:“目前的LLMs并没有有效执行自我纠正。它们没有接受反思过去错误的训练,而是旨在提供最佳的回答。因此,我们开发了自我纠正的方法。”
SCoRe训练单一模型独立生成回答并纠正自身错误,无需外部反馈。这一过程完全依赖自生成的数据,从而消除了对外部信息的依赖。
以往的自我纠正强化学习方法主要依赖单次交互,导致行为崩溃,即模型忽视自我纠正指令,直接从记忆中给出最佳猜测答案。库马尔表示:“幼稚的强化学习方法导致模型忽视自我纠正提示,专注于生成零-shot响应。”
为了解决行为崩溃问题,SCoRe采用了增强正则化技术的两阶段训练过程。第一阶段优化纠正性能,同时确保模型的初步响应与基础模型的输出一致。第二阶段利用多轮强化学习提高首次和后续尝试的表现,通过奖励系统激励模型在多个迭代中提升答案。
“这种双重方法确保模型不仅仅学习到提供最佳的首次回答,并对其做出最小调整,”研究人员解释道。“总体而言,SCoRe有效利用基础模型的知识,实现积极的自我纠正。”
SCoRe的实际应用
DeepMind的研究人员使用自生成的数据评估SCoRe,相较于现有的自我纠正方法,重点关注数学和编码任务,采用了MATH、MBPP和HumanEval等基准测试。
SCoRe在Gemini 1.0 Pro和1.5 Flash模型的自我纠正能力上表现出显著改善,在MATH基准上取得了15.6%的绝对提升,在HumanEval上相比基础模型提升9.1%,超过了其他自我纠正技术。
最显著的提升是模型在第一次和第二次尝试中对错误的修正能力,并且在修正答案时最小化错误更改的次数。SCoRe在结合推理时刻的扩展策略时表现出高效性,进一步通过将相同的推理预算分配到多个纠正轮次中提升性能。
尽管该研究主要关注编码和推理任务,但团队相信SCoRe可以广泛应用。“想象一下,模型能够识别潜在的危险输出并在用户看到之前独立改善它们,”库马尔建议。
这项工作强调了教会LLMs如何推理和自我纠正的重要性,而不仅仅是将输入映射到输出,从而为更强大、可靠的人工智能系统铺平了道路。