COTERRORSET—— LLM训练新基准让模型从自身错误中学习

news2024/12/22 23:28:18

概述

论文地址:https://arxiv.org/pdf/2403.20046.pdf
在最近的研究中,大规模语言模型因其推理能力而备受关注。这些模型在各种任务和应用中取得了令人瞩目的成果,尤其是使用思维链(CoT)提示方法的有效性已得到证实。这种方法以人类逻辑思维为模型,采用循序渐进的方式解决问题。

正如人类从过去的错误中学习一样,大规模语言模型也必须回顾过去并从错误中学习。然而,迄今为止,关于大规模语言模型如何从错误中学习的研究还很少。因此,本文将重点关注这一方面,并研究新的学习方法。

该研究建立了一个大型数据集 COTERRORSET,其中包含来自 1,060 个不同任务的 609,432 个问题。每个问题都建立在从 PaLM2 回答中收集到的人工策划的正确参考和错误理由之上。此外,用正确的参考答案和错误的答案来提示大规模语言模型,可以反映出犯错误的原因。这为分析大规模语言模型如何犯错提供了依据。此外,它还引入了两种新方法–"错误调整 "和 “自我反思”–来利用这些错误,提高大规模语言模型的能力。为了促进大规模语言模型的学习过程,它在相应的理由前加上了[CORRECTRATIONALE] 和 [INCORRECT RATIONALE] 前缀。这超越了传统的监督学习,提出了更好地利用错误的方法。

本文提出的方法有助于大规模语言模型区分正确和错误的证据,并通过对比样本的实验进一步深化其学习过程。这样,模型就能在初步回答后重新考虑并修正自己的答案。该方法还对模型"自我反思 "和"调整 "的次数设置了阈值,以管理计算资源并防止潜在的循环。

下图为管道概览。

此外,为了更深入地了解这些模型如何从错误中学习以及它们的学习能力,我们使用各种推理任务和不同规模的大型语言模型进行了实验,结果表明这些模型的性能得到了持续改善。该方法能在大规模语言模型的调整和推理阶段有效利用错误,表明其具有广泛的适用性和有效性。这进一步扩展了大规模语言模型的可用性和有效性,值得进一步研究。

COTERRORSET 概览

本文构建了一个名为 "COTERRORSET "的新基准,以研究虚假理由对大规模语言模型推理性能的影响。该数据集以 COTCOLLECTION(Kim 等人,2023 年)为基础,涵盖了多种问题领域(多选问答、提取问答、闭卷问答、形式逻辑、自然语言推理和算术推理)。

本数据集中的问题和参考资料来自多个现有数据集,包括

  • QASC(Khot 等人,2020 年)。
  • AQuA(Ling 等人,2017 年)。
  • GSM8K (Cobbe 等人,2021 年)
  • QED(Lamm 等人,2021 年)。
  • StrategyQA(Geva 等人,2021 年)。
  • SenseMaking (Wang et al., 2019)。
  • CREAK(Onoe 等人,2021 年)。
  • eSNLI(Camburu 等人,2018 年)。
  • ECQA(Aggarwal 等人,2021 年)。

这些数据经过系统整理,每个任务都包含一个演示,显示正确答案和错误答案,以及错误发生的原因。这些错误和演示都是使用 PaLM2 生成的。

与传统的 CoT 数据集不同,COTERRORSET 利用 PaLM2 收集错误及其背后的原因。对于数据集中的每个问题,PaLM2 都用来收集特别错误的证据,并将其与正确答案一起提供,以详细反映模型是如何犯错的。下图概述了这一过程。

系统地收集错误证据有可能为今后从新的角度改进工作铺平道路。具体例子见下表。

此外,对 COTERRORSET 数据集的详细分析显示,其中包含的误差类型非常复杂多样。这种复杂性给改进模型带来了挑战。为了解决这个问题,我们引入了一种无监督聚类方法,利用大规模语言模型,如下图所示。

通过这种方法,可以将不同的错误类型划分为更多的类别。首先,识别并提取造成错误的关键词。然后将这些关键词输入大规模语言模型,促使其形成涵盖整个错误的一般类别。自动聚类过程结束后,每个聚类都要经过人工检查,并根据需要进行调整,以完善匹配结果。最终,错误类型被合并为若干抽象类别,如算术推理中的 “计算错误”、"数字错误 "和 “逻辑错误”,以及常识推理中的 “逻辑错误”、“常识错误”、"语言错误 "和 “语境错误”。下表对此进行了概述。

实验结果

与标准的"思维链"(CoT)方法相比,"自我反思"在提高 GPT-4 和 PaLM2 模型的成绩方面效果显著。下表显示了使用这种方法时 PaLM2 的成绩。

下表还将其与 GPT4 的成绩进行了比较。其中,使用"自我反思"时的改进尤为突出,表明这是提高 GPT-4 性能的有效方法。

与 "自洽 "不同的是,这种方法在实现高准确度的同时,将推理次数降至最低。具体来说,它对一个问题进行两到三次推理,如果发现错误,则利用错误推导出最终答案。与 "自我一致性 "相比,这种方法能以更少的计算资源更有效地解决问题。

尤其是 GSM8K、AQuA、MathQA 和 LogiQA 这几个数据集,在计算成本相同的情况下,显示出比"自洽"更优越的结果。然而,专门针对基于运算的算术问题的 MathQA 数据集的结果并没有超过 “自我推导”,但却优于 CoT。这表明"自洽"对于某些问题类型,尤其是复杂的数学问题是有效的。

为了说明 "自我反思 "的有效性,下表显示了使用 PaLM2 模型对四项任务(GSM8K、AQuA、MathQA 和 LogiQA)进行 8 次实验的结果。

这一过程包括收集 PaLM2 生成的错误证据,并将这些证据用作学习和反思的示范。结果证实,"自我反思 "与标准的 8 发 CoT 相比具有明显优势。这种方法对于提高需要解决复杂问题的少量学习场景的准确性尤为有效。

本研究也使用了 “自我反思”,但与 "自我反思 "不同的是,它没有使用以前的错误样本。尽管如此,在大多数数据集上,"自我反思 "的效果明显优于 “自我提炼”。特别是在算术推理(MathQA)数据集上,"自我反思"的性能有所提高,但在常识推理(LogiQA)数据集上,"自我反思 "的性能则有所下降。与此相反,"自我反思 "在一系列领域中的表现始终优于 “8-shot CoT”,这表明将以前的错误纳入反思和阐述过程具有稳定作用。

一般来说,"自我反思 "使模型能够识别固定的逻辑模式,并从错误中学习,尤其是在要求逻辑严谨的情况下。这在需要较强逻辑性且容易出现小错误的任务中尤其有用。此外,该方法还有助于识别和纠正低级错误和误解,这些错误和误解属于模型的潜能范围,但往往被忽视。这种能力已被证明是提高大规模语言模型答案准确性和可靠性的重要工具,尤其是在解决复杂问题时。

下表列出了 "错误调整 "的进一步结果。该表强调了 Flan-T5 模型结合错误和正确证据的影响,并显示了不同模型规模下的性能。

其中,Flan-T5-large(780M)在 MathQA 领域的准确率为 48.95%,超过了 PaLM2 的 41.37%,证明了这种方法的有效性。这一结果提供了一个重要指示,即大规模语言模型可以通过利用不正确的推理来提高问题解决和推理性能。此外,该方法不仅增强了对正确 CoTs 的理解,还扩展了识别和学习错误证据的能力。

研究结果为推理过程的进一步发展提出了一个新方向,即不仅要加强对正确 CoTs 的理解和学习,还要提高识别错误证据并从中学习的能力。这种方法可以成为提高大规模语言模型准确性和可靠性的重要工具,尤其是在解决复杂问题时。

总结

本文研究了大规模语言模型是否能从自己的错误中学习。为了解大规模语言模型如何识别错误并从错误中学习,我们开发了一个新的基准 COTERRORSET,其中包括正确和错误的证据。该基准是通过演示错误创建过程和收集不同领域的数据而设计的。

此外,还提出了"自我反思 "和"调整 "两种方法,从不同角度评估错误的影响。这些方法都显示出明显的改进,并突出了从推理错误中学习的潜在好处。特别是,本文详细分析了大规模语言模型在算术和常识推理领域所犯的常见错误,为今后的研究方向提供了明确的指导。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2141661.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

智慧宿舍平台|基于Springboot+vue的智慧宿舍系统(源码+数据库+文档)

智慧宿舍系统 目录 基于Springbootvue的智慧宿舍系统 一、前言 二、系统设计 三、系统功能设计 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取 博主介绍:✌️大厂码农|毕设布道师,阿里云开发社区乘风者…

FPGA基本结构和简单原理

前言: FPGA全程为(Field Programmable Gate Array)现场可编程逻辑阵列,以基本的逻辑为主可以实现大多数芯片可以实现的功能,比如说:ASIC芯片等,在半导体领域有着重要的作用。 本文…

3. 轴指令(omron 机器自动化控制器)——>MC_MoveAbsolute

机器自动化控制器——第三章 轴指令 4 MC_MoveAbsolute变量▶输入变量▶输入输出变量▶输入输出变量 功能说明▶指令详情▶时序图▶重启运动指令▶多重启动运动指令▶异常 示例程序1▶参数设定▶动作示例▶梯形图▶结构文本(ST) 示例程序2▶参数设定▶动作示例▶梯形图▶结构文…

【智路】智路OS 应用开发

1 总览 1.1 功能 智路OS的应用基于框架提供的服务数据,实现场景理解、指标计算、V2X核心功能实现,应用包括但不限于: V2X应用场景实现交通事件检测交通流指标计算系统监控路径规划控制 开发者可以基于智路OS框架和数据,实现自…

【CSS in Depth 2 精译_030】5.2 Grid 网格布局中的网格结构剖析(下)

当前内容所在位置(可进入专栏查看其他译好的章节内容) 第一章 层叠、优先级与继承(已完结) 1.1 层叠1.2 继承1.3 特殊值1.4 简写属性1.5 CSS 渐进式增强技术1.6 本章小结 第二章 相对单位(已完结) 2.1 相对…

Python编程 - 线程

目录 前言 一、线程的使用 (一)基础使用 (二)等待线程完成 (三)多个线程 (四)守护线程 (五)线程同步 (六)总结 二、队列对象 …

编译成功!QT/6.7.2/Creator编译Windows64 MySQL驱动

找了很多编译博文,都错误。最后找到了正确编译办法: https://zhuanlan.zhihu.com/p/567883165 直接下载编译好的源码及dll文件 https://download.csdn.net/download/quantum7/89760587 安装VS Virsual Studio 2022 Community D:\Program Files\Micr…

Double Write

优质博文:IT-BLOG-CN 一、存在的问题 为什么需要Double Write: InnoDB的PageSize是16kb,其数据校验也是针对这16KB来计算的,将数据写入磁盘是以Page为单位的进行操作的。而计算机硬件和操作系统,写文件是以4KB作为基…

Spark Streaming基础概论

1. 简介 1.1 什么是 Spark Streaming? Spark Streaming 是 Apache Spark 的一个扩展模块,专门用于处理实时数据流。它通过将数据流切分为一系列小批次(微批次)进行处理,使得开发者能够使用与批处理相同的 API 来处理…

免费还超快,我用 Cursor 做的“汉语新解”插件开源了

前两天,你是否也被 汉语新解 卡片刷屏,却苦恼于无法快速生成? 记得当时,微信群里、朋友圈里、某书上以及公众号里,到处都在谈论这些生动有趣的“汉语新解”卡片。 这是由提示词大神 @李继刚老师 在 Claude 3.5 上开发的提示词。其辛辣的风格和全新的视角,令人耳目一新。…

SpringBoot+vue集成sm国密加密解密

文章目录 前言认识SM2后端工具类实现引入依赖代码实现工具类:SM2Util 单元测试案例1:生成服务端公钥、私钥,前端js公钥、私钥案例2:客户端加密,服务端完成解密案例3:服务端进行加密(可用于后面前…

Linux下root用户共享conda环境给其他用户

首先可以先用命令查看环境存储位置 conda env list 比如我的root用户的base环境 # conda environments: # base * /usr/local/miniconda3 在root下先给环境添文件夹加普通用户的权限 chmod -R 755 /usr/local/miniconda3 接下来新建一个用户&#xff0…

基于springboot酒店管理系统

酒店管理系统 552酒店管理系统 摘 要 21世纪的今天,随着社会的不断发展与进步,人们对于信息科学化的认识,已由低层次向高层次发展,由原来的感性认识向理性认识提高,管理工作的重要性已逐渐被人们所认识,…

【电脑组装】✈️从配置拼装到安装系统组装自己的台式电脑

目录 🍸前言 🍻一、台式电脑基本组成 🍺二、组装 🍹三、安装系统 👋四、系统设置 👀五、章末 🍸前言 小伙伴们大家好,上篇文章分享了在平时开发的时候遇到的一种项目整合情况&…

记录一题---位示图

注意题目条件:盘块号、字号、位号到底是从0开始还是从1开始 盘块号、字号、位号从0开始,若n表示字长,则: (字号,位号)(i,j)的二进制位对应的盘块号bnij b号盘块对应的字号ib/n,位号jb%n 若字号、位号从1开始,n表示字长…

纯小白安装pytorch(快速上手)

1.首先进入你的虚拟环境(不进入也没关系) 在anaconda prompt中打开,输入activate 虚拟环境2.查看自己的conda源 conda config --show channels3.清空自己的conda源 conda config --remove-key channels4.添加源 conda config --add channels https://mirrors.tu…

Matlab simulink建模与仿真 第十六章(用户定义函数库)

参考视频:simulink1.1simulink简介_哔哩哔哩_bilibili 一、用户定义函数库中的模块概览 注:MATLAB版本不同,可能有些模块也会有差异,但大体上区别是不大的。 二、Fcn/Matlab Fcn模块 1、Fcn模块 双击Fcn模块,在对话…

JavaScript 事件处理

一、简介 ​ 事件:发生在HTML元素上的事情,可以是用户的行为,也可以是浏览器的行为,如 用户点击了某个HTML元素用户将鼠标移动到某个HTML元素上用户输入数据时光标离开页面加载完成 ​ 事件源:事件触发的源头&#xf…

【课程系列12】某客时间AI大模型微调训练营

某客时间AI大模型微调训练营 链接 百度网盘地址:https://pan.baidu.com/s/1ZC-fOC_QQjNM6wyVjQcYOg 课程内容 https://u.geekbang.org/subject/finetuning?utm_sourceu_nav_web&utm_mediumu_nav_web&utm_termu_nav_web 深度解读 AI 发展四轮浪潮 技术浪…

PMP--一模--解题--111-120

文章目录 10.沟通管理111、 [单选] 干系人感觉他们收到的信息十分复杂,难以理解,因此,不能正确做出决定。若要解决这个问题,应该怎么做? 14.敏捷--角色--产品负责人PO–职责–1.创建待办列表并排序;2.确认工作优先顺序…