CoT-SC论文速读

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思维链越来越多,准确率愈来愈高。 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

解决回溯算法之切割问题(leetcode--分割回文串)

文章目录 1.问题描述2.做题思路(关键是画出对于的二叉树图)3.代码实现 1.问题描述 2.做题思路(关键是画出对于的二叉树图) 1.思考从起始串的分割方案, 有a ,aa, aab三种方式 2.————————————剩余ab,b,空(接下来对ab,b同样的方式进行分割) 3.…

【Linux】centos7安装PHP7.4报错:libzip版本过低

问题描述 configure: error: Package requirements (libzip > 0.11 libzip ! 1.3.1 libzip ! 1.7.0) were not met: checking for libzip > 0.11 libzip ! 1.3.1 libzip ! 1.7.0... no configure: error: Package requirements (libzip > 0.11 libzip ! 1.3.1 libzi…

星辰计划02-独特视角的spring动态代理

承接上一文 动态代理 ,这里探究spring 动态代理 会话1:spring动态代理 quick start 👧哥哥,哥哥,spring 怎么去搞动态代理的呢👨 来来来,听我细细来说 quick start通过Spring的 ProxyFactory…

【高中数学/幂函数】比较a=2^0.3,b=3^0.2,c=7^0.1的大小

【问题】 比较a2^0.3,b3^0.2,c7^0.1的大小 【解答】 a2^0.32^3/10(2^3)^1/108^1/10 b3^0.23^2/10(3^2)^1/109^1/10 c7^0.17^1/10 由于yx^1/10在x正半轴是增函数,底数大的得数就大。 因为9>8>7,所以b>a>c 【图像】 在图像上绘出曲线yx^1/10&…

C++初阶:类和对象(二)

✨✨所属专栏:C✨✨ ✨✨作者主页:嶔某✨✨ 类的默认成员函数 默认成员函数就是用户没有显式实现,编译器会⾃动⽣成的成员函数称为默认成员函数。⼀个类,我们不写的情况下编译器会默认⽣成以下6个默认成员函数,需要注…

报文对比工具

如果有报文对比需求,可以通过以下步骤实现: ①通过在线 XML排序、压缩、格式化 网站 排序后格式化数据 http://www.bejson.com/otherformat/xmlsort/ 访问速度快,操作直观, 1.原始xml数据 2.排序 3.格式化 ②N比对数据是否一…

哥德巴赫猜想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){//…

翁恺-C语言程序设计-05-3. 求a的连续和

05-3. 求a的连续和 输入两个整数a和n&#xff0c;a的范围是[0,9]&#xff0c;n的范围是[1,8]&#xff0c;求数列之和S aaaaaa…aaa…a&#xff08;n个a&#xff09;。如a为2、n为8时输出的是222222…22222222的和。 输入格式&#xff1a; 输入在一行中给出两个整数&#xf…

Hdfs3.x新特性详解

作者&#xff1a;九月 HDFS Disk Balancer(磁盘均衡器) HDFS Disk Balancer与HDFS Balancer的区别 两者都是实现负载均衡功能。 HDFS Balancer是之前Hadoop2.x中本身存在的&#xff0c;主要是多个DataNode节点之间的数据的平衡。 HDFS Disk Balancer是Hadoop3中新出现的&…

融云:换头像=换人设?社交应用中隐秘而重要的「用户信息管理」

当代年轻人失眠三大原因&#xff0c;最近新上的《喜人奇妙夜》帮你找到了—— 基金绿了、吵架输了、前任头像换了。 当你半夜翻看前任的社交账号&#xff0c;一场盛大的失眠就开始了&#xff0c;就算古希腊掌柜睡眠的神躺你旁边也不好使。即便 Ta 没有更新内容&#xff0c;昵…

Linux RTL8111/RTL8168 不能联网 / 最新版驱动下载安装

注&#xff1a; 机翻&#xff0c;未校对。 如何让 Realtek RTL8111/RTL8168 在 Linux 下工作 这篇文章于 2016 年 8 月在我原来的博客上发布。尽管如今 Linux 下的 RTL8111/RTL8168 网络接口的情况变得越来越稳定&#xff0c;但它们仍然会导致数据包丢失或网络连接不稳定等问题…

C1W1.Assignment: Logistic Regression

理论课&#xff1a;C1W1.Sentiment Analysis with Logistic Regression 文章目录 前期准备导入包导入数据处理推文文本 Part 1: Logistic regressionPart 1.1: Sigmoid实现 sigmoid 函数Logistic regression: regression and a sigmoid Part 1.2 Cost function and GradientUp…

自动驾驶-端到端分割任务

上采样 bed of nails interpolation transposed convolutions 1. 上采样 (Upsampling) 上采样是一种技术&#xff0c;用于增加数据集中的样本数量或是提高信号的分辨率。在图像处理中&#xff0c;上采样通常指的是增加图像的像素数量&#xff0c;从而使图像变得更大。这可…

【Android安全】Ubuntu 下载、编译 、刷入Android-8.1.0_r1

0. 环境准备 Ubuntu 16.04 LTS&#xff08;预留至少95GB磁盘空间&#xff0c;实测占94.2GB&#xff09; Pixel 2 XL 要买欧版的&#xff0c;不要美版的。 欧版能解锁BootLoader、能刷机。 美版IMEI里一般带“v”或者"version"&#xff0c;这样不能解锁BootLoader、…

Android之间互传消息之ServerSocket,Android服务端接收Socket发送的TCP

Android之间在在局域网下互传消息&#xff0c;咱就不用走云服务器了吧&#xff0c;让俩安卓设备&#xff0c;自己传呗 方式1 通过在安卓设备上搭建Web服务器接收数据&#xff0c;可参考 Android使用AndServer在安卓设备上搭建服务端(Java)(Kotlin)两种写法 方式2 本文章&…

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

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

【STM32嵌入式系统设计与开发---拓展】——1_8_寄存器的理解

1、寄存器的理解 &#xff08;1&#xff09;MOS管 MOS管是一种场效应晶体管&#xff0c;通过控制栅极电压来调节漏极和源极之间的电流&#xff0c;常用于电子开关和放大器电路中。 MOS管就像是电子开关&#xff0c;可以通过控制一个小电压来打开或关闭一个大电流&#xff0c;常…

小程序-1(项目结构+代码结构+宿主环境+组件)

目录 1.小程序简介 2.小程序的项目结构 小程序的基本组成结构 小程序的页面组成部分 json配置文件的作用 app.json文件 project.config.json文件 sitemap.json文件 页面的.json文件 新建小程序页面 修改项目首页 3.小程序的代码结构 wxml和html的区别 wxss和css的…

数据结构(Java):LinkedList集合Stack集合

1、集合类LinkedList 1.1 什么是LinkedList LinkedList的底层是一个双向链表的结构&#xff08;故不支持随机访问&#xff09;&#xff1a; 在LinkedList中&#xff0c;定义了first和last&#xff0c;分别指向链表的首节点和尾结点。 每个节点中有一个成员用来存储数据&…

postgresql简单导出数据与手动本地恢复(小型数据库)

问题 需要每天手动备份postgresql。 步骤 导出数据 /opt/homebrew/opt/postgresql16/bin/pg_dump --file/Users/zhangyalin/backup_sql/<IP地址>_pg-2024_07_15_17_30_15-dump.sql --dbname<数据库名> --username<用户名> --host<IP地址> --port54…