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

embedded/2024/9/23 14:30:17/

地址: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.ppmy.cn/embedded/22166.html

相关文章

python使用opencv对图像的基本操作(3)

17.颜色空间的转换 17.1.rgb图像转gray图像 from skimage import io,color img io.imread(lbxx.jpg) img_gray color.rgb2gray(img) #将rgb图像转换成gray图像 io.imshow(img_gray)运行结果&#xff1a; 17.2.rgb图像转hsv图像 from skimage import io,color img io.im…

开源相机管理库Aravis例程学习(五)——camera-api

开源相机管理库Aravis例程学习&#xff08;五&#xff09;——camera-api 简介例程代码函数说明arv_camera_get_regionarv_camera_get_pixel_format_as_stringarv_camera_get_pixel_formatARV_PIXEL_FORMAT_BIT_PER_PIXEL 简介 本文针对官方例程中的&#xff1a;03-camera-api…

【网络】gateway 可以提供的一些功能之二 “ 提供Restful服务器路由转发 ”

一、提供web静态资源服务 Web静态资源服务是指通过HTTP协议提供静态文件&#xff08;如HTML、CSS、JavaScript、图片、字体等&#xff09;的服务。这些静态资源文件不经过服务器端处理&#xff0c;直接由客户端&#xff08;如浏览器&#xff09;请求并加载。提供Web静态资源服…

git常用命令大全

git init&#xff1a;初始化一个新的 Git 仓库。 git initgit clone&#xff1a;克隆远程仓库到本地。 git clone <repository_url>git add&#xff1a;将文件添加到暂存区。 git add <file_name>git commit&#xff1a;将暂存区中的文件提交到本地仓库。 git comm…

二叉树理论和题目

二叉树的种类 在我们解题过程中二叉树有两种主要的形&#xff1a;满二叉树和完全二叉树。 满二叉树 满二叉树&#xff1a;如果一棵二叉树只有度为0的结点和度为 2 的结点&#xff0c;并且度为 0 的结点在同一层上&#xff0c;则这棵二叉树为满二叉树。 这棵二叉树为满二叉树…

ROS学习笔记(14)拉普拉斯变换和PID

0.前提 近些时间在对睿抗的ROS仿真赛进行小组安排&#xff0c;对小组成员进行了一些安排&#xff0c;也要求他们以本次比赛写下自己的比赛经历博客&#xff0c;他们的培训由我来安排和负责&#xff0c;因此我得加吧油&#xff0c;起码保证我的进度得快过他们&#xff0c;才能安…

秋招后端开发面试题 - Java多线程(上)

目录 Java多线程前言面试题线程和进程&#xff1f;说说线程有几种创建方式&#xff1f;为什么调用 start() 方法时会执行 run() 方法&#xff0c;那怎么不直接调用 run() 方法&#xff1f;线程有哪些常用的调度方法&#xff1f;线程有几种状态&#xff1f;守护线程了解吗&#…

Flutter应用开发-几种保存简单配置的方式

文章目录 简单配置保存的几种方式使用 shared_preferences 插件优点缺点 使用 hive 插件优点 缺点使用文件存储&#xff1a;优点缺点 简单配置保存的几种方式 在 Flutter 开发的 Android 应用中&#xff0c;保存应用配置并下次启动时读取&#xff0c;有以下几种比较合适的方式…