CoT-SC论文速读

news2024/11/14 3:38:29

1.论文速读

本文提出了一个重要的Decoder策略为:“Self-Consistency”,并将其用在CoT的Prompt工作中。

该策略作用:让LLM在处理复杂问题时,让他尝试多个推理路径,每一个推理路径都是一次CoT(Chain of Thought)的过程,每个可以得到一个Answer,并将所有Answers进行统计,进而得到投票次数最高的的Answer作为最终答案。

self-consistency

 原文部分内容:人类的一个显著方面是,人们的思维方式会有所不同。我们很自然地认为,在需要深思熟虑的思考的任务中,可能有几种方法来解决这个问题。我们建议 在这样的过程中,可以通过从语言模型的解码器中采样【Sample生成多条思维链】,在语言模型中进行模拟。例如,如图1所示,一个模型可以对一个数学question生成几种可信的响应 它们都得到相同的正确答案(输出1和3)。由于语言模型不是完美的推理者,模型也可能产生不正确的推理路径或在一个错误 f的推理步骤(例如,在输出2中),但这样的解决方案不太可能得到相同的答案。也就是说,我们假设正确的推理过程,即使它们是多样化的,也会倾向于 在最终的答案中比错误的过程更一致。我们利用这种直觉,提出了以下的自一致性方法(Self-Consisency)。首先,用一组 手工编写的思维链样本(Wei et al.,2022)。

 SC与CoT的区别:

CoT-SC:解码器(Decoder)采用的策略是采样和边缘化(Sample and Marginalize),Sample的主要作用是让LLM的decoder生成多条推理路径,而Marginalize Out的作用在于:将生成的推理路径所得到的答案【final answer set】进行汇总确定唯一一个最终答案【the most consistent answer】

CoT:采用的就是Greedy Decoding(贪婪策略),类似于贪心算法,在推理步骤中每一步选择都选择当前概率最高的词or标记。【这保证了生成的推理路径是单一的,每一步都是current下最优的一步】

问题:贪婪编码(Greedy Decoder)在文本生成过程中,每一步只会选择概率最高的词【即局部最优解】,忽略了长远的结果【全局结果】。

CoT对比self-consistency

在方法上,除了多数投票(MV),还对比了不同答案聚合策略对推理任务的准确率,比如:归一化加权求和 【Weighted sum(normalized)】等。对比之下,发现加权求和归一化的效果和多数投票差不多:

具体是对答案标记为ai,过程即推理路径标记为ri,作者将(ri,ai)的生成联系起来,其中ri——>ai。比如: 考虑图 1 中的输出 3:前几句“她早餐吃 3 个……所以她有 9 个蛋 * $2 = $18.”构成 ri,而最后一句“答案是 $18”中的答案 18 被解析为 ai​。

2.实验证明

同时论文指出,有时候 CoT 的使用让 LLM 的表现可能还不如标准的 prompt,这时候引入 Self-consistency 可以提升 CoT 的表现。如下是实验证明: 在这里插入图片描述

另外,Self-Consistency跟很多算法都兼容:比如,temperature sampling、top-k sampling、nusleus-sampling。

we sample a set of candidate outputs from the language model’s decoder, generating a diverse set of candidate reasoning paths. Self-consistency is compatible with most existing sampling algorithms, including temperature sampling ( Ackley et al. , 1985 ; Ficler & Goldberg , 2017 ), top- k sampling ( Fan et al. , 2018 ; Holtzman et al. , 2018 ; Radford et al. , 2019 ), and nucleus sampling ( Holtzman et al. , 2020 ). Finally, we aggregate the answers by marginalizing out the sampled reasoning paths and choosing the answer that is the most consistent among the generated answers.

 评价数据集(数学):

  1. Math Word Problem Repository
  2. AddSub
  3. MultiArith
  4. ASDiv
  5. AQUA-RAT
  6. GSM8K(小学数学问题)
Commonsense reasoning:
  1. CommonsenseQA
  2. StrategyQA
  3. AI2 Reasoning Challenge (ARC)
Prompt工作在附录A中

实验证明在MultiArith和CommonsenseQA等数据集中,CoT-SC比CoT的表现更加优异,尤其是path思维链越来越多,准确率愈来愈高。 

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

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

相关文章

构建实用的NLP应用程序:重塑人类与计算机的协同工作方式

文章目录 一、NLP技术的核心价值二、构建实用NLP应用程序的关键步骤三、NLP应用程序在协同工作中的创新应用《赠ChatGPT中文范例的自然语言处理入门书》编辑推荐内容简介作者简介精彩书评目录前言/序言获取方式 在数字化时代,自然语言处理(NLP&#xff0…

哥德巴赫猜想c++

方法一 #include<bits/stdc.h> using namespace std; //定义函数&#xff0c;判断素数 bool sushu(int n){bool rtrue;//先假设是素数&#xff0c;即真//循环因子范围&#xff0c;找到一个因子就不是素数for(int i2;i<sqrt(n);i){//判断2~n的根号是否素数if(n%i0){//…

码住!热门且创新idea:GNN+强化学习!

如何提高学习效率、优化策略&#xff0c;并解决复杂的图结构相关问题&#xff1f;或许你可以考虑&#xff1a;GNN强化学习。 GNN结合强化学习是当前的热门创新方向&#xff0c;它通过利用GNN在图形数据上的强大表示能力与强化学习在决策制定中的优势&#xff0c;不仅能够有效处…

鸿蒙语言基础类库:【@ohos.uitest (UiTest)】 测试

UiTest UiTest提供模拟UI操作的能力&#xff0c;供开发者在测试场景使用&#xff0c;主要支持如点击、双击、长按、滑动等UI操作能力。 该模块提供以下功能&#xff1a; [By]&#xff1a;提供控件特征描述能力&#xff0c;用于控件筛选匹配查找。[UiComponent]&#xff1a;代…

中电金信:成功的智慧运营转型,重点是把握“一个基本点和两大主线”

“运营”是银行不可或缺的基础职能&#xff0c;负责产品的服务交付过程和业务的落地处理&#xff0c;解决商业模式下“怎么做”的问题。纵观全球领先银行的运营转型历程&#xff0c;已从传统分散运营逐步转向集中运营、共享运营&#xff0c;乃至价值创造。从国内银行运营转型发…

微信小程序毕业设计-青少年科普教学系统项目开发实战(附源码+论文)

大家好&#xff01;我是程序猿老A&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;微信小程序毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设计…

基于SpringBoot协同过滤算法商品推荐系统(源码+lw+部署文档+讲解等)

前言&#xff1a; 博主介绍&#xff1a;✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流✌ 技术范围&#xff1a;SpringBo…

C++面试问题

C基础 什么是野指针&#xff1f; 指向未分配或已释放内存的指针。比如未初始化、delete后未指向空、保存了局部变量的地址 怎么解决野指针问题&#xff1f; 使用智能指针释放后置空指针初始化避免返回局部变量的地址 C空类会创造那些函数&#xff1f; 默认构造析构函数拷…

【qt】TCP客户端如何断开连接?

disconnectFromHost() 来关闭套接字,断开连接. 当我们关闭窗口时,也需要断开连接. 需要重写关闭事件 如果当前的套接字状态是连接上的,我们就可以来断开连接. 运行结果:

空安全编程的典范:Java 8中的安全应用指南

文章目录 一、Base64 编码解码1.1 基本的编码和解码1.2 URL 和文件名安全的编码解码器1.3 MIME Base64编码和解码 二、Optional类三、Nashorn JavaScript 一、Base64 编码解码 1.1 基本的编码和解码 Base64 编码&#xff1a; 使用 Base64.getEncoder().encodeToString(origin…

vue3 快速入门 (一) : 环境配置与搭建

1. 本文环境 Vue版本 : 3.4.29Node.js版本 : v20.15.0系统 : Windows11 64位IDE : VsCode 2. 安装Node.Js 首先&#xff0c;我们需要安装Node.Js。Node.js提供了运行 JavaScript 代码的环境。并且Node.js 带来了 npm&#xff0c;它是JavaScript世界的包管理工具。开发vue时&…

苹果手机相册图片怎么转换成jpg而不会降低质量

在苹果设备的世界里&#xff0c;随着 iOS 11 的推出&#xff0c;苹果引入了一种新的图像格式 - 高效图像编码&#xff08;High Efficiency Image Format, HEIF&#xff09;。当用户在 iPhone 或 iPad 上拍摄照片时&#xff0c;默认情况下&#xff0c;这些设备会保存图片为 HEIC…

软件测试——web单功能测试

工作职责&#xff1a; 1.负责产品系统测试&#xff0c;包括功能测试、性能测试、稳定性测试、用户场景测试、可靠性测试等。 2.负责测试相关文档的编写&#xff0c;包括测试计划、测试用例、测试报告等。 3.负责自动化测试框架、用例的维护。 岗位要求&#xff1a; 1.熟练…

达梦数据库系列—28. 主备集群高可用测试

目录 监视器关闭 监视器启动&#xff0c;Detach备库 主备正常&#xff0c;手动switchover 主库故障&#xff0c;自动switchover 主库故障&#xff0c;手动Takeover 主库故障&#xff0c;备库强制takeover 主库重启 备库故障 公网连接异常 主库私网异常 备库私网异常…

uniapp打包成Android时,使用uni.chooseLocation在App端显示的地址列表是空白?一直转圈的解决办法

问题描述&#xff1a; uniapp打包后的测试版app在ios里可以显示高德地图的定位列表&#xff0c;但是安卓手机却不显示定位列表&#xff0c;一直在转圈圈&#xff0c;怎么回事&#xff1f;之前的功能在正式版都能用&#xff0c;真机运行也能用&#xff0c;为什么测试版的安卓手…

【数智化案例展】某省会城市——轨道交通线网云平台建设

‍ 逸迅科技案例 本项目案例由逸迅科技投递并参与数据猿与上海大数据联盟联合推出的《2024中国数智化转型升级创新服务企业》榜单/奖项”评选。 大数据产业创新服务媒体 ——聚焦数据 改变商业 本项目将打造一个先进的线网指挥中心大数据平台&#xff0c;它将作为这座城市轨道…

Kafka基本原理|特性

Kafka是什么 Kafka是最初由Linkedin公司开发&#xff0c;是一个分布式、支持分区的&#xff08;partition&#xff09;、多副本的&#xff08;replica&#xff09;&#xff0c;基于zookeeper协调的分布式消息系统 它的最大的特性就是可以实时的处理大量数据以满足各种需求场景…

线程安全(五)volatile 修饰共享变量(JIT即时编译器、指令重排序)

目录 一、volatile 简介1.1 定义1.2 volatile 的两个特性二、特性1:保证线程间的可见性示例1:普通场景1)代码示例:2)执行结果:3)总结:示例2:被 JIT 即时编译器优化1)代码示例:2)执行结果:3)原因分析:4)什么是 JIT 即时编译器?4)解决方案一:5)解决方案二:三…

如何用STM32实现modbus-RTU?

Modbus RTU是一种广泛应用于工业自动化领域的通信协议,基于主从架构,通过串行通信进行数据传输。本文将详细介绍Modbus RTU协议的基本原理,并提供在STM32微控制器上实现Modbus RTU通信的完整代码示例。 1. Modbus RTU协议概述 Modbus RTU的定义和特点 Modbus RTU(Remote Te…