SCoRe: 通过强化学习教导大语言模型进行自我纠错

简介: 谷歌研究人员提出了一种名为自我纠错强化学习(SCoRe)的新方法,旨在使大型语言模型(LLMs)能够在无需外部反馈的情况下即时纠正自己的错误。SCoRe通过在线多轮强化学习训练模型,解决了传统自我纠错方法的局限性。实验结果显示,SCoRe在数学问题求解和代码生成任务上显著提升了模型的自我纠错能力,相较于基准模型和其他方法表现出色。此外,SCoRe还可与其他推理优化技术结合,进一步提升模型性能。尽管存在迭代次数限制和计算成本等局限性,SCoRe为未来研究提供了新的方向,有望推动AI系统的自主性和适应性发展。

大语言模型(LLMs)在推理任务中,如数学问题求解和编程,已经展现出了优秀的性能。尽管它们能力强大,但在实现能够通过计算和交互来改进其回答的算法方面仍然面临挑战。现有的自我纠错方法要么依赖于提示工程,要么需要使用额外的模型进行微调,但这些方法都有局限性,往往无法产生有意义的自我纠错。

这是谷歌9月发布在arxiv上的论文,研究者们提出了一种新方法自我纠错强化学习(SCoRe),旨在使大语言模型能够在没有任何外部反馈或评判的情况下"即时"纠正自己的错误。SCoRe通过在线多轮强化学习,使用自生成的数据来训练单一模型。这种方法解决了监督式微调中的一些挑战,如模型倾向于进行微小编辑而不做实质性改进,以及训练数据与推理数据之间分布差异所带来的问题。

方法详细描述

SCoRe的工作原理分为两个阶段:

  1. 初始化阶段:- 训练模型优化纠错性能,同时保持其初始回答接近基础模型的回答。- 这可以防止模型在第一次尝试时偏离太远。
  2. 强化学习阶段:- 模型进行多轮强化学习,以最大化初始回答和纠正后回答的奖励。- 包含一个奖励加成,以鼓励从第一次到第二次尝试有显著改进。

通过这种训练结构,SCoRe确保模型不仅仅是产生最佳的初始回答并进行最小化纠正,而是学会对其初始答案进行有意义的改进。

如图所示,SCoRe的方法概述包括了初始化阶段和强化学习阶段,展示了如何通过这两个阶段来优化模型的自我纠错能力。

改进指标介绍

实验结果表明,SCoRe显著提高了大语言模型的内在自我纠错能力。研究者们使用了以下指标来评估模型的性能:

  1. Accuracy@t1: 模型在第一次尝试时的准确率
  2. Accuracy@t2: 模型在第二次尝试时的准确率
  3. Δ(t1, t2): 模型在第一次和第二次尝试之间准确率的净改善,衡量了自我纠错的有效性
  4. Δi→c(t1, t2): 在第一次尝试中错误但在第二次尝试中变正确的问题比例,衡量了自我纠错能解决多少新问题
  5. Δc→i(t1, t2): 在第一次尝试中正确但在第二次尝试中变错误的问题比例,衡量了模型对什么使回答正确的理解程度

如图所示,SCoRe在这些指标上相比基准模型和其他方法都取得了显著的改进。

实验结果与方法比较

基准任务

研究者们在两个代表性的推理任务上进行了实验,这些任务中错误纠正至关重要:

  1. 数学问题求解:使用MATH数据集(Hendrycks et al., 2021)
  2. 代码生成:使用MBPP(Austin et al., 2021)和HumanEval(Chen et al., 2021)数据集

MATH数据集结果

在MATH数据集上,SCoRe展现出了显著的性能提升:

SCoRe不仅在两次尝试中都达到了更高的准确率,还提供了最积极的自我纠错性能Δ(t1, t2)。它提高了从错误到正确的问题数量,同时大幅减少了从正确变为错误的问题数量。

代码生成任务结果

在代码生成任务上,SCoRe同样展现出了强大的性能:

SCoRe在HumanEval上实现了12.2%的内在自我纠错增益,比基础模型高出9%。在MBPP-R(一个离线修复任务)上,SCoRe将基础模型的性能从47.3%提升到60.6%,这个差距相当于GPT-3.5和GPT-4之间的差距。

与其他方法的比较

  1. Self-Refine:这是一种基于提示的方法,旨在引出模型的自我纠错行为。然而,在没有外部输入的情况下,它难以实现有效的内在自我纠错。
  2. Pair-SFT:这种方法基于Welleck等人(2023)的工作,在合成配对的修复轨迹上进行监督微调。虽然在静态修复任务MBPP-R上表现不错,但在自我纠错设置中实际上降低了基础模型的性能。
  3. STaR:这种方法在成功的修复轨迹上进行监督微调。虽然它在某些情况下可以改善性能,但仍然无法达到SCoRe的水平。

SCoRe的优势在于它通过在线多轮强化学习来训练模型,使用完全自生成的数据。这使得模型能够在没有任何外部反馈或评判的情况下学习有效的自我纠错策略。

推理计算扩展性

研究者们还调查了SCoRe是否可以与推理时计算扩展策略结合使用。他们评估了自洽解码(Wang et al., 2022),也称为多数投票,其中采样多样化的解决方案集,然后选择这些解决方案中最一致的答案。

如图1所示(第一张图),研究者们发现,与其并行采样2K个解决方案,不如并行采样K个解决方案,然后对每个解决方案进行一轮自我纠错。在每个问题32个解决方案的预算下,并行采样显示7.4%的准确率增益,而结合顺序采样的自我纠错产生10.5%的改进。

这一结果表明,SCoRe不仅能提高模型的自我纠错能力,还能有效地与其他推理优化技术结合,进一步提升模型性能。

讨论、局限性

讨论

SCoRe方法在为大语言模型注入自我纠错能力方面取得了显著的成功。研究者们通过广泛的评估证明,SCoRe是第一个能够实现显著正面内在自我纠错性能的方法。为了解释SCoRe的设计原理,研究者们严格分析了各种微调基线的行为,并确定了在这些方法下模型学习非纠错策略(例如,学习不进行编辑)的失败模式。

SCoRe的设计旨在通过利用两阶段结构和奖励塑造来引导出自我纠错策略,这两个特性都有助于防止模型崩溃为不学习有效的自我改进行为。这种方法的成功表明,学习元策略(如本文中的自我纠错)可能需要超越标准的监督微调范式,后者通常由单轮强化学习(RL)跟随。

局限性

尽管SCoRe取得了显著的成果,但研究者们也指出了一些局限性:

  1. 迭代次数限制:在本研究中,SCoRe仅训练了一轮迭代自我纠错,这意味着后续的纠错轮次可能不如第一轮有效。
  2. 计算成本:SCoRe的两阶段训练过程可能比单一阶段的方法需要更多的计算资源。
  3. 奖励函数设计:虽然SCoRe使用了简单的奖励函数,但设计更复杂、更有效的奖励函数可能会进一步提高性能。
  4. 泛化能力:虽然SCoRe在测试集上表现良好,但在更广泛的、可能未见过的任务上的泛化能力还需要进一步研究。

未来研究方向

基于这些局限性,研究者们提出了几个潜在的未来研究方向:

  1. 多轮迭代训练:通过RL训练更多轮次的自我纠错,这已经是使用监督微调(SFT)获得有效自我纠错行为超过两轮的常见和有效做法。
  2. 统一SCoRe的两个阶段:研究如何将SCoRe的初始化阶段和强化学习阶段统一起来,这可能会缓解运行多个步骤的限制,并有助于设计更强大的方法。
  3. 细粒度反馈:在生成多轮RL的策略路径时使用更详细或更细粒度的监督可能会进一步提高模型实现复杂策略的能力。
  4. 探索其他任务:将SCoRe应用于更广泛的任务,如自然语言生成、对话系统等,以测试其泛化能力。

总结

SCoRe代表了大语言模型自我纠错能力研究的重要进展。通过创新的两阶段强化学习方法,SCoRe成功地教会了模型如何识别和纠正自己的错误,而无需任何外部反馈。这项研究不仅提高了模型的性能,还为理解和改进AI系统的自我改进能力提供了宝贵的见解。

研究结果表明,SCoRe在数学推理和代码生成等任务中显著优于现有方法,展示了其在提高大语言模型自我纠错能力方面的潜力。这项工作为未来的研究开辟了新的道路,特别是在探索如何使AI系统更加自主和适应性强方面。

总的来说,SCoRe的成功凸显了在大语言模型训练中采用更复杂的学习策略的重要性,尤其是当目标是培养高级认知能力如自我纠错时。随着这一领域的不断发展,我们可以期待看到更多创新方法的出现,进一步推动AI系统的能力界限。

https://avoid.overfit.cn/post/84d1cd5034a94a7bb51dfbe951b30ed2

目录
相关文章
|
4月前
|
人工智能 前端开发 数据可视化
前端组件库——shadcn/ui知识点大全(二)
教程来源 http://vbzcj.cn/ shadcn/ui核心组件深度解析:Form(集成React Hook Form+Zod,类型安全表单)、DataTable(基于TanStack Table,支持排序/过滤/分页)、Button/Dialog等可定制原子组件;主题通过CSS变量实现运行时切换与暗色模式,支持可视化编辑与AI生成,真正“代码即所有权”。
|
4月前
|
数据采集 缓存 人工智能
Agno框架学习笔记
这是一份面向小白的Agno框架学习笔记,以轻松易懂的方式讲解Agent核心概念:状态管理、工具调用、动态加载(callable factories)、缓存机制与运行流程。通过真实代码示例,手把手带你构建可对话、能执行Excel处理等任务的智能体,助你入门AI Agent开发。(239字)
883 0
|
机器学习/深度学习 人工智能 自然语言处理
Logic-RL: 小模型也能强推理,通过基于规则的强化学习提升大语言模型结构化推理能力
这篇论文探讨了基于规则的强化学习(RL)如何提升大型语言模型(LLM)的高级推理能力。通过在程序生成的逻辑谜题上训练并强制执行结构化思考,即使是较小的模型也能开发出可转移的问题解决策略。研究引入了多层次奖励系统,包括格式、答案、推理一致性和反思奖励,以引导模型形成严谨的推理过程。实验结果表明,这种方法不仅提高了模型在逻辑任务上的性能,还在数学问题解决、代码调试等领域展现出显著的泛化能力。此外,该方法在较小模型上实现了与大模型相当甚至更优的推理表现,为资源受限环境下的高效推理提供了新途径。
1449 0
Logic-RL: 小模型也能强推理,通过基于规则的强化学习提升大语言模型结构化推理能力
|
12月前
|
人工智能 JSON 前端开发
告别无效调参!ReAct代理设计:让LLM精准执行复杂任务的终极方案
ReAct模式通过“推理+行动”循环,使大语言模型能自主调用工具、获取实时信息并执行多步骤任务,有效突破LLM固有局限,提升任务准确性和智能化水平。
1578 0
|
索引
如何理解openfoam案例里面的blockMesh文件里面的simpleGrading
在OpenFOAM的blockMesh文件中,`simpleGrading`参数用于控制网格的非均匀分布,通过调整x、y、z方向的拉伸系数,可以精确地控制网格的密集和稀疏程度。这对于模拟中需要高精度的区域提供了灵活性。在实际应用中,合理设置 `simpleGrading`参数,可以优化计算资源,提高模拟精度。
747 20
|
数据采集 敏捷开发 存储
腾讯出品!这款Markdown神器让你码字效率翻倍,双模式编辑太香了!
由腾讯开源的CherryMarkdown编辑器,集思维导图式大纲写作与专业分屏模式于一身,支持实时预览、流程图绘制、多主题切换等硬核功能,助你轻松驾驭技术文档、博客写作、会议纪要等多种场景!
784 6
|
设计模式 算法
探索编程的本质:从代码到哲学的奇妙旅程
在这篇文章中,我们将深入探讨编程的本质,揭示它不仅仅是一门技术学科,更是一种思维方式和解决问题的策略。通过个人的技术感悟,我们会看到编程如何与哲学、逻辑以及人类思考方式紧密相连,进而理解编程的真正内涵和其在现代社会中的重要性。
408 3
|
人工智能 前端开发 Java
Java开发工程师转哪个行业比较好?
Java开发工程师转哪个行业比较好?
1251 2
|
存储 人工智能 自然语言处理
人工智能----RAG Workflow工作流详解
【11月更文挑战第20天】随着人工智能技术的飞速发展,自然语言处理(NLP)领域也迎来了革命性的变革。其中,检索增强生成(Retrieval-Augmented Generation,简称RAG)技术作为一种结合了信息检索与生成模型的技术,在提高生成式模型的准确性和实用性方面展现出了巨大潜力。本文将深入探讨RAG Workflow工作流的历史、背景、功能点、优缺点及其底层原理,并通过Java代码演示其主要功能点。
1730 6
|
存储 监控 Ubuntu
Linux的几种备份、恢复系统方式
Linux的几种备份、恢复系统方式