Beyond Chain-of-Thought: A Survey of Chain-of-X Paradigms for LLMs论文阅读笔记(未完待续)

地址:https://arxiv.org/html/2404.15676v1

一些论文合集:https://github.com/atfortes/Awesome-LLM-Reasoning

背景

思维链 (Chain-of-Thought,CoT) 是一种被广泛采用的提示方法,它激发了大型语言模型 (LLMs) 令人印象深刻的推理能力。受 CoT 顺序思维结构的启发,已经开发了许多 Chain-of-X (CoX) 方法,本文是对CoX方法的系统梳理。

Chain-of-Thought 思维链

CoT 提示是一种大幅增强LLMs推理能力的方法。CoT 由 Wei et al. ( 2022) 引入,以<输入、思想、输出>的结构化格式进行提示,其中“T”包括导致最终答案的连贯和中间自然语言推理步骤。CoT 的有效性在需要复杂推理的任务中最为明显。CoT 的本质在于其通过将复杂问题分解为可管理的中间步骤来解决复杂问题的策略,增强其处理复杂问题的能力,例如涉及算术、常识和符号推理的问题 。
CoT 提示也分为few-shot和zero-shot
如:zero-shot CoT by prompting “Let’s think step by step.”

Chain-of-X X链

将 CoX 定义为 CoT 方法的泛化,用于推理之外LLM的各种任务。我们将 CoX 中的 X 称为链结构的“节点”。CoX 的理念是构建一系列与问题相关的组件,这些组件要么以组合方式为解决方案做出贡献,要么以迭代方式优化复杂任务的输出。
除了 CoT 提示中的思想之外,CoX 中的 X 还可以采用针对特定任务量身定制的各种形式,简单可以分为下图几种类型:
在这里插入图片描述
各个分类及本文脉络如下:
请添加图片描述

介绍

Chain-of-Intermediates

CoT 的自然演变涉及用其他类型的中间组件(即中间链)替换思维推理。进一步将它们分为以下亚型。

Problem Decomposition 问题分解

在问题分解中,中间步骤由从原始复杂问题派生的可管理子任务组成。这种方法以经典的思维链提示为例
Li et al. ( 2023a) 进一步扩展了这一点,引入了代码链,它将任务细分为编程子任务,通过模拟代码输出增强推理过程。
同样,Wang 等人 ( 2024) 开发了表链框架。该框架通过一系列战略操作将复杂的表格重组为特定于问题的格式,使数据更易于访问并针对查询进行定制。
此外,Servantez 等人 ( 2024) 引入的逻辑链将逻辑分解应用于基于规则的推理任务,将它们转换为一系列逻辑表达式。方法论的分解有助于更清晰的推理途径。
这些分解方法在事件链Han et al. ( 2024)中也得到了呼应,它将多文档摘要简化为离散且可管理的事件提取任务,从而显着提高了质量并减少了潜在的错误。

Knowledge Composition 知识构成

在知识构成中,中间步骤的主要目标不是简化,而是积累相关信息和证据。这种方法旨在通过深入的理解和细节来丰富解决方案。通过这些证据丰富的方法,LLMs实现对复杂场景的全面和细致入微的理解,从而获得更高质量的输出。
例如,Hu等人(2023b)提出了符号链方法,该方法在空间规划任务中精心收集空间关系,提高了模型的精度和有效性。
同样,La Malfa et al. ( 2024) 采用仿真链提示来确保代码执行的每个步骤都由程序跟踪提供信息,从而避免记忆陷阱。
Wang et al. ( 2023c) 对知识链采取了类似的方法,在每一步都提取了关键的证据,以支持更扎实和可靠的问答环节。这种技术在促进对查询材料的更深入理解方面特别有效。
在视觉任务中,Chain-of-Spot 和 Chain-of-Reasoning 等方法帮助视觉语言模型专注于特定的图像细节,这对于需要详细视觉证据的任务至关重要。

Chain-of-Augmentation

CoX 方法的一个流行变体是 Chain-of-Augmentation,其中链通过额外的知识进行增强。根据增强数据的类型,其分类如下:

Instructions 指令

指令是一种重要的增强,通过复杂的推理或任务执行过程指导LLMs。
例如,Chain-of-Instruct Editing 框架通过生成顺序指令来指导图像编辑任务来利用这一概念,说明了特定版本如何通过关注相关领域来优化输出。
此外,Zha et al. ( 2023) 引入了命令链来解决表操作用户指令中的歧义问题。根据用户说明推断,它能够LLMs采用一系列精确的预定义命令来更准确地执行表格。
在电子商务领域,Li et al. ( 2024b) 通过他们的任务链实现了类似的结构化方法,将客户交互分解为可管理的原子任务,大大简化了复杂的操作。
同样,Hayati 等人 (2024) 提出的指令链框架使用先前步骤的输出作为下一步的指令迭代求解分解的子任务。结果表明,逐步指导可以显著改善复杂问题解决任务的过程和结果。

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

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

相关文章

《HCIP-openEuler实验指导手册》2.1安装和测试Nginx

知识点 Nginx (发音为 “engine x”) 是一个开源的高性能 HTTP 和反向代理服务器&#xff0c;也是一个 IMAP/POP3/SMTP 代理服务器。由 Igor Sysoev 创建并维护&#xff0c;其设计用于处理高并发连接&#xff0c;具有高度的可扩展性和灵活性。 安装步骤 yum方式安装 dn…

读书笔记--数据管理知识体系的阅读总结感悟

最近继续研读DAMA数据管理知识体系之数据管理章节,结合自身在应用系统建设、数据治理工作实践,有所感悟并记录如下,供大家参考。数据管理工作需要技术和非技术的双重技能,由业务人员和信息技术人员相互协作,共同来承担责任,确保组织管理的数据是高质量的,主要驱动力是使…

go语言实现简单ngnix样例

目录 1、代码实现样例&#xff1a; 2、postman调用ngnix&#xff0c;转发&#xff1a; 1、代码实现样例&#xff1a; package mainimport ("bytes""encoding/json""io""log""net/http""net/http/httputil""…

Chapter 1-17. Introduction to Congestion in Storage Networks

Q: Isn’t increasing network capacity the ultimate solution to network congestion? Increasing network capacity is the solution when a lack of network capacity is the root cause of congestion. There are many more reasons for network congestion and in thos…

ruoyi-nbcio-plus基于vue3的flowable收回任务后重新进行提交表单的处理

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码&#xff1a; https://gitee.com/nbacheng/ruoyi-nbcio 演示地址&#xff1a;RuoYi-Nbcio后台管理系统 http://218.75.87.38:9666/ 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码&#xff1a; h…

双目视觉(双目相机)

1.时间同步 需要一个单独的硬件&#xff08;单片机&#xff09;单独给每一个相机发送触发信息&#xff0c;然后再接收返回。 2.相机选型&#xff1a; &#xff08;1&#xff09;相机的分辨率 根据对图像精度的要求来选择相机的分辨率。 &#xff08;2&#xff09;颜色 通…

Python AI库 Pandas的常见操作的扩展知识

Python AI库 Pandas的常见操作的扩展知识 本文默认读者具备以下技能&#xff1a; 熟悉python基础知识&#xff0c;vscode或其它编辑工具 熟悉表格文件的基本操作 具备自主扩展学习能力 前文中对Pandas的数据结构以及基础操作做了介绍,本文中会在前文的基础上,对常见的操作进…

selenium拉动滚动条

selenium拉动滚动条 # 导包 from selenium import webdriver from time import sleep # 获取浏览器驱动对象 driver webdriver.Edge() # 最大化浏览器 driver.maximize_window() # 隐式等待 driver.implicitly_wait(30) # 打开url url r"C:\Users\黄永生\Desktop\软件测…

计算机找不到vcruntime140_1.dll,无法继续执行代码快速解决方法

vcruntime140_1.dll是一个重要的Windows操作系统中的动态链接库&#xff08;DLL&#xff09;文件&#xff0c;它是微软Visual C Redistributable软件包的组成部分。以下是该文件的详细介绍&#xff1a; 名称含义&#xff1a;“vcruntime”代表Visual C Runtime&#xff0c;表明…

static page 项目

static page 项目 作者&#xff1a;不染心 博客地址&#xff1a;https://blog.csdn.net/qq_38234785 源码地址&#xff1a;https://mbd.pub/o/bread/ZpWVlJps 未经允许&#xff0c;不得转载 文档版本v1&#xff0c;还没写完持续更新 一、引言 1. 软件概述和背景 本软件是…

STM32f103 HAL库读保护以及解除

读保护 void Flash_EnableReadProtection(void) {FLASH_OBProgramInitTypeDef OBInit;__HAL_FLASH_PREFETCH_BUFFER_DISABLE();HAL_FLASHEx_OBGetConfig(&OBInit);if(OBInit.RDPLevel OB_RDP_LEVEL_0){OBInit.OptionType | OPTIONBYTE_RDP;OBInit.RDPLevel OB_RDP_LEVEL…

FIR滤波器——DSP学习笔记三(包含一个滤波器设计的简明案例)

​​​​​​ 背景知识 FIR滤波器的特性与优点 可精确地实现线性相位响应&#xff08;Linear phase response&#xff09;&#xff0c;无相位失真&#xff1b; 总是稳定的&#xff0c;所有极点都位于原点 线性相位FIR滤波器的性质、类型及零点位置 冲击响应满足&#xff1a;奇…

iframe父子页面通信

目录 一、 创建父页面和子页面 父页面&#xff08;parent.html&#xff09;&#xff1a; 子页面&#xff08;child.html&#xff09;&#xff1a; 二、 实现父子页面之间的通信 在父页面的 在子页面的 三、扩展&#xff1a;postMessage() 方法的语法&#xff1a; 一、 …

(学习日记)2024.05.03:UCOSIII第五十七节:User文件夹函数概览(uCOS-III->Source文件夹)第三部分

之前的章节都是针对某个或某些知识点进行的专项讲解,重点在功能和代码解释。 回到最初开始学μC/OS-III系统时,当时就定下了一个目标,不仅要读懂,还要读透,改造成更适合中国宝宝体质的使用方式。在学完野火的教程后,经过几经思考,最后决定自己锦上添花,再续上几章。 这…

【PyTorch】torch.gather() 用法

gather常被用于image做mask的操作中&#xff0c;对哪些地方进行赋值0/1 API&#xff1a; torch.gather — PyTorch 2.2 documentation torch.gather(input, dim, index, outNone) → Tensor gather()的意义&#xff1a; 顾名思义&#xff0c;聚集、集合&#xff1a;gather…

计算机网络组成—物理层

一、物理层基本概念 物理层解决如何在连接各种计算机的传输媒体上传输数据比特流&#xff0c;而不是指具体的传输媒体。 1物理层接口特性 机械特性&#xff1a;定义物理连接的特性&#xff0c;规定物理连接时所采用的规格、接口形状、引线数目、引脚数量和排列情况电气特性&…

VS2019配合QT5.9开发IRayAT430相机SDK

环境配置 VS2019 QT5.9 编译器版本 MSVC2017_64添加系统环境变量&#xff08;完毕后重启电脑&#xff09; 从VS2019中下载Qt插件 从VS2019中添加单个编译组件 上述操作完成后用VS打开工程文件&#xff0c;工程文件地址 &#xff1a; C:\Users\86173\Desktop\IRCNETSDK_W…

python基础知识分享

1程序结构 1.1分支结构 单分支结构: 例如 if 条件表达式: 语句块 双分支结构: 例如 if 条件表达式: 语句块1 else: 语句块2 多分支路结构: 例如: if 条件表达式: if 条件表达式1: 语句块1 elif 条件表达式2: 语句块2 elif 条件表达式3: 语句块3 ....... else: …

Debezium系列之:Debezium技术专栏第300篇系列文章之打通Debezium实时采集Oracle数据库数据到Kafka集群的技术

Debezium系列之:Debezium技术专栏第300篇系列文章之打通Debezium实时采集Oracle数据库数据到Kafka集群的技术 一、需求描述二、部署Debezium集群和Oracle连接器三、安装Oracle数据库四、设置具有采集Oracle数据库数据权限的账号1.以系统管理员的身份连接到数据库实例2.创建表空…

数据分析:生存分析原理和应用实例

介绍 生存分析的目的是分析某个时间点的“生存概率”是多少。基于这样的研究目的,需要提供生存数据,它是一种由不同的开始时间和结束时间组成的事件-时间的数据,比如在癌症研究领域,研究手术到死亡的过程、治疗到疾病进展等等。 在开展生存分析前,需要了解什么是删失(c…