Chain-of-Thought Prompting Elicits Reasoning in Large Language Models导读

通过生成一系列中间推理步骤(即“思维链”)显著提高大型语言模型进行复杂推理的能力

这篇论文探讨了如何通过生成一系列中间推理步骤(即“思维链”)显著提高大型语言模型进行复杂推理的能力。研究人员使用一种简单的方法——思维链提示法——提供一些思维链示例作为提示,发现这种方法可以使足够大的语言模型自然地获得这种推理能力。实验结果表明,在三个大型语言模型上进行测试时,思维链提示法可以显著提高在算术、常识和符号推理任务上的表现。例如,仅使用八个思维链示例就可以将PaLM 540B的语言模型准确率提升到GSM8K基准测试中的最佳水平,甚至超过了经过微调的GPT-3模型。

https://damo-moshicloud-test.oss-cn-hangzhou.aliyuncs.com/document/testcase/dingding/zhiwen_cases/1188581702114963456/1188581702114963456_cut_Figure_2.png

https://damo-moshicloud-test.oss-cn-hangzhou.aliyuncs.com/document/testcase/dingding/zhiwen_cases/1188581702114963456/1188581702114963456_cut_Figure_1.png

论文方法

方法描述

该论文提出了一种名为“chain-of-thought prompting”的方法,旨在让语言模型能够生成一系列连贯的中间推理步骤,最终得出问题的答案。这种方法是通过提供一些示范性的例子来训练模型,并使用少量的提示来引导模型生成链式思维过程。例如,在数学问题中,可以将问题分解为多个子问题并逐步求解,最后给出答案。

方法改进

与传统的基于任务特定微调的方法相比,“chain-of-thought prompting”具有以下优点:

  1. 可以处理多步推理问题:通过将问题分解成多个子问题,模型可以更有效地分配计算资源来解决问题。

  2. 提供可解释性窗口:链式思维过程提供了模型如何得出某个答案的解释,可以帮助调试模型在推理路径上出错的地方。

  3. 可应用于多种任务:链式思维推理可用于解决各种人类可以通过语言解决的任务,如数学问题、常识推理和符号操作等。

  4. 易于实现:只需将一些示例性的链式思维序列作为少数样本提示输入到大型预训练的语言模型中即可实现。

解决的问题

该方法主要解决了语言模型在处理需要多步推理的问题时表现不佳的问题。通过引入链式思维推理,模型可以更好地理解和解决这些问题,从而提高其性能。此外,该方法还提供了可解释性和可扩展性,使其适用于各种不同的任务和应用场景。

https://damo-moshicloud-test.oss-cn-hangzhou.aliyuncs.com/document/testcase/dingding/zhiwen_cases/1188581702114963456/1188581702114963456_cut_Figure_1.png

论文实验

本文主要介绍了针对数学和常识推理问题的链式思维提示技术在不同规模的语言模型中的应用效果,并对其进行了多组对比实验。具体来说,本文涉及了以下四个方面的实验:

  1. 数学问题解决能力实验:本实验旨在探讨语言模型使用链式思维提示技术在解决数学问题方面的能力。实验结果表明,链式思维提示技术能够显著提高语言模型在解决复杂数学问题上的表现,尤其是在需要多个步骤才能得出答案的问题上。此外,该技术的效果随着模型规模的增加而逐渐增强。

  2. 常识推理实验:本实验旨在研究链式思维提示技术在解决常识推理问题上的效果。实验结果显示,链式思维提示技术能够显著提高语言模型在解决各种类型的常识推理问题上的表现,尤其是对于需要多个步骤才能得出答案的问题。

  3. 符号推理实验:本实验旨在探究链式思维提示技术在解决符号推理问题上的效果。实验结果表明,链式思维提示技术能够帮助语言模型更好地理解和处理符号推理问题,从而实现更好的解决方案。

  4. 鲁棒性测试实验:本实验旨在评估链式思维提示技术在面对不同标注者、不同数据集以及不同模型规模时的表现。实验结果表明,链式思维提示技术对不同的数据集和模型规模具有较好的鲁棒性,且其表现不受标注者的影响。

综上所述,本文通过多项实验证明了链式思维提示技术在解决数学、常识推理和符号推理问题上的有效性,并证明了该技术在不同数据集和模型规模下的鲁棒性。这些实验结果为将链式思维提示技术应用于实际场景提供了有力的支持。

https://damo-moshicloud-test.oss-cn-hangzhou.aliyuncs.com/document/testcase/dingding/zhiwen_cases/1188581702114963456/1188581702114963456_cut_Table_3.png

https://damo-moshicloud-test.oss-cn-hangzhou.aliyuncs.com/document/testcase/dingding/zhiwen_cases/1188581702114963456/1188581702114963456_cut_Table_7.png

https://damo-moshicloud-test.oss-cn-hangzhou.aliyuncs.com/document/testcase/dingding/zhiwen_cases/1188581702114963456/1188581702114963456_cut_Table_5.png

论文总结

文章优点

  • 论文提出了一种简单而广泛适用的方法——链式思维提示(chain-of-thought prompting),用于增强大型语言模型的推理能力。

  • 通过实验证明,链式思维提示能够显著提高大型语言模型在算术、常识和符号推理等任务上的表现,并且比传统的提示方法具有更强的泛化能力和更小的数据需求。

  • 研究结果表明,链式思维提示是一种有效的工具,可以扩展大型语言模型的能力范围,进一步激发了使用自然语言处理技术解决复杂问题的研究方向。

方法创新点

  • 提出了链式思维提示这一新的提示方式,通过生成一系列中间自然语言推理步骤来引导模型完成推理任务。

  • 在实验中,将链式思维提示与标准提示进行了比较,证明了其优越性和普适性。

  • 这一方法不需要大规模训练数据集,也不需要针对每个新任务单独微调模型,因此具有很大的应用潜力。

未来展望

  • 链式思维提示方法的成功启示我们,可以通过更加复杂的提示方式来提高大型语言模型的推理能力。

  • 可以探索如何在更小的语言模型上实现推理能力,并研究如何更好地利用合成数据或零样本推理等技术来降低注释成本。

  • 可以进一步研究如何使链式思维提示与其他提示方法相结合,以提高大型语言模型的表现。

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

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

相关文章

图算法 - 最短路径算法 (dijkstra) 迪克斯特拉算法

解决问题: 图中某个顶点到某一个顶点的最短路径 适用场景: 查找带权图的最短路径 代码设计: 首先定义一张图(邻接矩阵,二维数组方式实现) 生成一张图 迪克斯特拉算法实现 采用贪婪的方式,每次获取最短的一条路径,作为下次遍历的起点 使用visited 记录被访问过的节点避免…

水文模型SWMM与LisFlood耦合(pdf文档、软件见资源)

总技术路线图 INP生成图解 文献:面向服务的Web-SWMM构建研究 regardingINP为ArcGIS Pro项目 1.SWMM模型数据准备与参数设置 1.子汇水区 文件位于:beforeGenerateINP/generateSub.py(一级划分) 问题: 水文分析阈值划…

C#,数据检索算法之跳跃搜索(Jump Search)的源代码

数据检索算法是指从数据集合(数组、表、哈希表等)中检索指定的数据项。 数据检索算法是所有算法的基础算法之一。 本文提供跳跃搜索的源代码。 1 文本格式 using System; namespace Legalsoft.Truffer.Algorithm { public static class ArraySe…

Qt编写手机端视频播放器/推流工具/Onvif工具

一、视频播放器 同时支持多种解码内核,包括qmedia内核(Qt4/Qt5/Qt6)、ffmpeg内核(ffmpeg2/ffmpeg3/ffmpeg4/ffmpeg5/ffmpeg6)、vlc内核(vlc2/vlc3)、mpv内核(mpv1/mp2)、…

go slice 扩容实现

基于 Go 1.19。 go 的切片我们都知道可以自动地进行扩容,具体来说就是在切片的容量容纳不下新的元素的时候, 底层会帮我们为切片的底层数组分配更大的内存空间,然后把旧的切片的底层数组指针指向新的内存中: 目前网上一些关于扩容…

【DDD】学习笔记-软件开发团队的沟通与协作

领域驱动设计的核心是“领域”,因此要运用领域驱动设计,从一开始就要让团队走到正确的点儿上。当我们组建好了团队之后,应该从哪里开始?不是 UI 原型设计、不是架构设计、也不是设计数据库,这些事情虽然重要但却非最高…

Linux常见的管理命令

1. whoami 作用: 显示出当前有效的用户名称,Linux是多用户多任务 语法:whoami(选项) 选项: --help:在线帮助 --version:显示版本信息和退出 场景使用: 1. 当用户想要查看当前登录系统的用户…

时间数据前端显示格式化

背景 在实际我们通常需要在前端显示对数据操作的时间或者最近的更新时间,如果我们只是简单的使用 LocalDateTime.now()来传入数据不进行任何处理那么我们就会得到非常难看的数据 解决方式: 1). 方式一 在属性上加上注解,对日期进行格式…

【Py/Java/C++三种语言详解】LeetCode每日一题240122【贪心】LeetCode670、最大交换

文章目录 题目链接题目描述解题思路为什么是贪心一个带图的例子 代码pythonjavacpp时空复杂度 华为OD算法/大厂面试高频题算法练习冲刺训练 题目链接 LeetCode670、最大交换 题目描述 给定一个非负整数数组 nums 和一个整数 k ,你需要将这个数组分成 k 个非空的连…

深入浅出 diffusion(4):pytorch 实现简单 diffusion

1. 训练和采样流程 2. 无条件实现 import torch, time, os import numpy as np import torch.nn as nn import torch.optim as optim from torchvision.datasets import MNIST from torchvision import transforms from torch.utils.data import DataLoader from torchvision.…

智能分析网关V4智慧冶金工厂视频智能监管方案

一、背景与需求 随着工业4.0的推进,冶金行业正面临着转型升级的压力。为了提高生产效率、降低能耗、保障安全,冶金智能工厂视频监管方案应运而生。该方案通过高清摄像头、智能分析技术、大数据处理等手段,对工厂进行全方位、实时监控&#xf…

matlab appdesigner系列-图窗工具2-工具栏

工具栏,就是一般在任意软件界面上方的工具菜单栏 示例:工具菜单绘制正弦函数 操作步骤如下: 1)将坐标区和工具栏拖拽到画布上 2)点击工具栏的号,可以看到可以添加2种工具,按钮工具和切换工具&#xff0c…

Unity 代理模式(实例详解)

文章目录 实例1:资源加载代理(Asset Loading Proxy)实例2:网络请求代理(Network Request Proxy)实例3:性能优化代理(Performance Optimization Proxy)实例4:权…

LC 2846. 边权重均等查询

2846. 边权重均等查询 难度: 困难 题目大意: 现有一棵由 n 个节点组成的无向树,节点按从 0 到 n - 1 编号。给你一个整数 n 和一个长度为 n - 1 的二维整数数组 edges ,其中 edges[i] [ui, vi, wi] 表示树中存在一条位于节点 …

银行数据仓库体系实践(11)--数据仓库开发管理系统及开发流程

数据仓库管理着整个银行或公司的数据,数据结构复杂,数据量庞大,任何一个数据字段的变化或错误都会引起数据错误,影响数据应用,同时业务的发展也带来系统不断升级,数据需求的不断增加,数据仓库需…

EventSource 长链接执行

EventSource 说明文档MDN 其他参考文档 一、利用node启服务 import fs from fs import express from express const app express() // eventSource 仅支持 get 方法 // 服务器端发送的数据必须是纯文本格式,不能是二进制数据。 app.get(/api, (req, res) > …

项目性能优化之用compression-webpack-plugin插件开启gzip压缩

背景:vue项目打包发布后,部分js、css文件体积较大导致页面卡顿,于是使用webpack插件compression-webpack-plugin开启gzip压缩 前端配置vue.config.js 先通过npm下载compression-webpack-plugin包,npm i compression-webpack-plug…

Android SharedPreferences源码分析

文章目录 Android SharedPreferences源码分析概述基本使用源码分析获取SP对象初始化和读取数据写入数据MemoryCommitResultcommitToMemory()commit()apply()enqueueDiskWrite()writeToFile() 主动等待写回任务结束 总结 Android SharedPreferences源码分析 概述 SharedPrefer…

EXCEL VBA抓取网页JSON数据并解析

EXCEL VBA抓取网页JSON数据并解析 链接地址: https://api.api68.com/CQShiCai/getBaseCQShiCaiList.do?lotCode10036&date2024-01-26 Sub test() On Error Resume Next Sheet.Select Sheet1.Cells.ClearContents [a1:g1] Split("preDrawIssue|preDrawTi…

Ubuntu20.04添加桌面启动、侧边栏启动和终端启动

桌面启动 新建XX.desktop文件 在桌面新建一个XX.desktop文件,以QtCreator为例。 (注意这里不能使用sudo,因为这样会把文件的权限归为root,导致后续设置可执行程序不方便) gedit qtcreator.desktop在XX.desktop文件中…