自洽性改善语言模型中的思维链推理

自洽性改善语言模型中的思维链推理

  • 摘要
  • 介绍
  • 对多样化路径的自洽
  • 实验
    • 实验设置
    • 主要结果
    • 当CoT影响效率时候,SC会有所帮助
    • 与现有方法进行比较
    • 附加研究
  • 相关工作
  • 总结

原文:
在这里插入图片描述

摘要

本篇论文提出了一种新的编码策略——自洽性,来替换思维链中使用的 贪婪解码(Naive greedy decoding)

Naive greedy decoding一种简单而直接的解码方式,常用于生成型任务。
在这种解码方法中,模型会根据当前的输入和已生成的部分输出,选择概率最高的下一个单词或符号作为预测结果。换句话说,它总是选择当前最可能的输出,而不考虑后续可能的选择。
虽然简单,但可能会导致生成的结果缺乏多样性,因为只关注当前可能的选项,而忽略了其他可能的选择。另外,他也无法处理一些复杂的语言结构或长期依赖关系,因为它没有考虑到全局的上下文信息。

该策略首先对一组不同的推理路径进行采样,然后通过 边缘化采样(marginalizing out the sampled reasoning paths) 的推理路径来选择最一致的答案。

marginalizing out the sampled reasoning paths
指的是采样推理路径时进行边际化处理的过程。
边际化处理指将多个推理路径的结果进行合并,得到最终的推理结果。这样可以避免对每个路径进行单独计算和评估,从而减少计算的复杂度。
具体而言,在采样推理路径的过程中,可以计算每个路径的概率,并将其乘以对应路径的结果,然后将所有路径的结果相加,并进行归一化,得到最终的推理结果。

Self-Consistency 利用 一个复杂的推理问题通常具有允许多种不同的思维方式,从而产生其独特的正确答案。
实践表明:自洽性提升了思维链提示在一系列流行的算数和常识推理基准上的表现。

介绍

本文介绍了一种新的解码方式——自洽性,来替换思维链中使用的Naive greedy decoding,以进一步完善大语言模型的推理能力。该策略首先对一组不同的推理路径进行采样,然后通过边缘化采样(marginalizing out the sampled reasoning paths)的推理路径来选择最一致的答案。问题越需要深思熟虑的思考和分析,找到答案的推理途径就越多样。

首先用CoT来提示语言模型,不采用CoT的Naive greedy decoding解码,而使用“Self-Consistency ”解码,过程如下:

首先,从语言模型的 解码器(decoder) 中采样,生成一组不同的推理路径,每条推理路径可能会产生不同的最终答案,因此需要通过边缘化采样的推理路径来确定最终答案,以在最终答案集中找到最一致的答案。

解码器(decoder)是语言模型的一部分,它负责根据语言模型的内部表示和当前的上下文生成输出文本。
解码器通常使用一种称为“生成算法”的方法,根据模型的输出概率分布选择最后可能的下一个词语或句子。这个过程可以通过不同的算法来实现,例如贪婪搜索等。解码器的目标是生成具有高度流畅和语义连贯性的句子。

这种方法类似于人类的经验,如在思考问题时,如果多种不同的思考法而得出了相同的答案,人们会更确信最终的答案是正确的。

自洽解码消除了困然贪婪解码的重复性和局部最优性,同时也减轻了单采样生成的不稳定性。

在这里插入图片描述

自洽方法比之前的方法简单得多,先前的方法要么训练额外的验证器,要么在给定额外人工注释的情况下训练(re-ranker)重新排序器以提高生成质量。

re-ranker
指对已经生成的候选列表或排序结果进行重新排序或重新打分的过程。
可以根据更多的特征或者使用更复杂的及其学习模型来重新评估和打分搜索结果,以更好满足用户需求。

相反,自洽法是一种完全无监督的,作用在现成的语言模型上,不需要额外的人工注释,避免了任何额外训练、辅助模型或微调。

自洽方法也不同于典型的集成方法(训练多个模型并聚合每个模型的输出),它的行为更像是在单个语言模型之上工作的“自集成”。

对多样化路径的自洽

人类的一个突出方面是人们思维方式的不同。人们很自然的认为,在需要深思熟虑的任务中,可能有多个方法来解决这个问题。这样一个过程可以通过语言模型解码器在语言模型中进行。

对一个数学问题来说,一个模型可以产生多种合理的反应从而都能够得到正确的答案。因为语言模型的推理并不完美,所以模型可能产生错误的推理路径或者在其中一个推理步骤中出错,但是这些解答并不太可能得到相同的答案。

所以我们假设:正确的推理过程(即使是多样的)在最终的结果中往往比不正确的过程有更大的一致性。

我们通过提出以下自洽性方法来利用这种直觉。

首先,用一组手动编写的思维链示例提示语言模型;下一步,对来自语言模型的解码器的一组候选输出进行采样,产生一套多样化的候选推理路径;最后,通过边缘化抽样推理路径和选择生成答案最一致的那个答案来聚合答案。

更具体来说:假设生成的答案ai来自固定答案集A,ai ∈A,i=1,…,m,ai即对从解码器中所采样的m个候选输出进行索引。给出一个提示和一个问题,自洽性给出了一个额外的潜在变量ri,代表在第i个输出中推理路径的记号序列,然后耦合生成(ri,ai),ri —>ai,生成的推理路径ri是可选择的,并且仅用于得到最终答案ai
在对来自模型解码器的多路采样之后,SC通过对ai进行多票通过,对ri进行边缘化,或者我们将其定义为最终答案集中最“一致”的答案。

实验

实验设置

主要结果

当CoT影响效率时候,SC会有所帮助

与现有方法进行比较

附加研究

相关工作

总结

本文采用的思想类似于,对于一个问题,人们通过不同的思考方式得到了相同的答案,这个答案往往就是正确的。

解码器通常使用一种称为“生成算法”的方法,根据模型的输出概率分布选择最后可能的下一个词语或句子。解码器的目标是生成具有高度流畅和语义连贯性的句子。

思维链中使用了贪婪解码的方法,这种方法总是选择当前概率最大的一个单词或符号作为预测结果,它总是选择当前最可能的输出,而不考虑后续可能的选择,可能会导致生成的结果缺乏多样性。

所以我们提出了更具有多样性的方法——自洽解码。

自洽解码的步骤:假设生成的答案ai来自固定答案集A,ai ∈A,i=1,…,m,ai即对从解码器中所采样的m个候选输出进行索引。给出一个提示和一个问题,SC给了一个额外的潜在变量ri,代表在第i个输出中推理路径的记号序列,然后耦合生成(ri,ai),生成的推理路径ri是可选择的,并且仅用于得到最终答案ai,在对来自模型解码器的多路采样之后,SC通过对ai进行多票通过,对ri进行边缘化,或者我们将其定义为最终答案集中最“一致”的答案。

接着文章进行了一系列实验,介绍了实验的数据集和任务、语言模型和提示以及采样的方案。并且对算数推理、常识和符号推理分别作了对照实验,对照的是使用贪婪解码的CoT。

文章又表明,当CoT性能受损时,SC会有帮助。

又将SC与现有方法进行了比较。

自洽方法不仅在四个不同规模的大型语言模型中显著提高了一系列算数和常识推理任务的准确性。除了准确性提高了之外,自洽还能用于在使用语言模型执行推理任务时收集推理依据,以及提供不准确性评估和改进语言模型输出的校准。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

对Element DatePicker时间组件的封装,时间组件开始时间和结束时间绑定

背景 我们时常有时间范围选择,需要选择一个开始时间和一个结束时间给后端,但我们给后端的是两个字段, 分别是开始时间和结束时间,现在使用element绑定的值是一个数组,我们还要来回处理,很麻烦列表也的查询…

解决appium-doctor报ffmpeg cannot be found

一、下载ffmpeg安装包 https://ffmpeg.org/download.html 找到如图所示红框位置点击下载ffmpeg安装包。 二、配置ffmpeg环境变量 三、检查ffmpeg版本信息 重新管理员打开dos系统cmd命令提示符,输入ffmpeg查看是否出现版本信息,安装完好。 ffmpeg

面试题:redis是单线程、StringBuffer是线程安全的

1、说明String 和StringBuffer的区别 类底层/ 可变?线程安全Stringfinal char[] 不可变是StringBuffer char[] 可变 是(synchronized方法)StringBuilder char[] 可变否 (4条消息) Java基础:String、StringBuffer、…

Selenium自动化之弹窗处理

1.前言 我们在使用Selenium做Web自动化测试时,页面经常出现弹窗,如果不处理后续的测试脚本就无法正常运行,今天我们就带大家一起来学习如何处理Web页面上的弹窗。 2.Web页面弹窗的分类 弹窗通常有3种:Alert类型弹框、Confirm类…

【操作系统】Liunx项目自动化构建工具-make/Makefile

Yan-英杰的主页 悟已往之不谏 知来者之可追 C程序员,2024届电子信息研究生 目录 一、背景 二、Makefile 实现 Makefile依赖 依赖关系 makefile的工作原理 项目清理 补充: .PHONY是什么? Linux如何进行多行注释: 说明&#xf…

微服务部署架起App运维的高速通道

今天来说下微服务,我们知道微服务在 App 开发中具备模块化开发、独立部署扩展、问题隔离等特点,这种微服务架构模式能够使应用程序更具弹性、可扩展和可维护,能够更好地应对快速变化的需求和规模的增长。 准备通过系统的梳理说一说微服务部署…

mongodb集群搭建

下载地址: https://www.mongodb.com/try/download/community下载mongodb-linux-x86_64-rhel70-5.0.18 搭建集群 tar -zxvf mongodb-linux-x86_64-rhel70-5.0.18.tgz mkdir -p data/dp cd mongodb-linux-x86_64-rhel70-5.0.18 mkdir -p data/db mkdir log mkdir c…

【C++】-list的具体使用

💖作者:小树苗渴望变成参天大树🎈 🎉作者宣言:认真写好每一篇博客💤 🎊作者gitee:gitee✨ 💞作者专栏:C语言,数据结构初阶,Linux,C 动态规划算法🎄 如 果 你 …

4. 设计(黑盒)测试用例 (一) 等价类 边界值 判定表

本篇文章我们将详细介绍如何来测试用例。 1. 设计测试用例的基本要素 1.1 测试用例概念 测试用例(Test Case)是为了实施测试而向被测试的系统提供的一组集合。 1.2 测试用例要素 测试环境、测试步骤、测试数据、预期结果。 1.3 测试用例的重要性 提…

未来Mac下载站怎么打不开了

重要公告: 未来软件园因业务需要现更换域名 原域名:Mac.orsoon.com 更为新域名:未来mac下载-Mac软件-mac软件下载-mac软件大全 程序已全面转移,请访问新域名

Pycharm远程服务器上运行程序报错:Can‘t get remote credentials for deployment server

一、问题描述: 二、解决方法: 1.依次选择 文件 -> 设置 -> 项目 -> Python 解释器,出现如下界面: 2. 点击python 解释器右侧的小齿轮,选择全部显示: 3. 在弹出的窗口中发现存在多个连接到同一个服务器的解释…

Linux:企业级服务器嵌入式系统优势与应用

Linux在企业级服务器领域具有广泛应用。作为一种强大的操作系统,Linux可以用于构建企业的WWW服务器、数据库服务器、负载均衡服务器、邮件服务器、DNS服务器、代理服务器、路由器等。通过采用Linux系统,企业不仅可以降低运营成本,还能获得高稳…