性能强劲又通用!Meta-CoT: 混合问题场景下的自适应思维链推理

2023-10-21 15:13

本文主要是介绍性能强劲又通用!Meta-CoT: 混合问题场景下的自适应思维链推理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ab1ca58e527b057b7db021c0fdcccb2f.gif

©PaperWeekly 原创 · 作者 | 邹安妮

单位 | 上海交通大学

研究方向 |NLP,大模型推理

大语言模型(LLMs)通过思维链(CoT)提示技术,生成中间推理链作为得出答案的依据。然而,当前的 CoT 方法要么采用简单的通用提示(例如“让我们一步一步思考”),要么依赖人工制定且任务特定的样本示例来获得更好的性能,从而在性能通用性之间产生了巨大的鸿沟。为了弥补这一鸿沟,本文提出了 Meta-CoT:一种在输入问题类型未知的混合任务场景中可通用的思维链提示方法。

aad1fbe06e7fd15eaf58b569c2a7e5d4.png

论文标题:

Meta-CoT: Generalizable Chain-of-Thought Prompting in Mixed-task Scenarios with Large Language Models

论文链接:

https://arxiv.org/pdf/2310.06692.pdf

代码链接:

https://github.com/Anni-Zou/Meta-CoT

4fc37540cdcce0d3d048881dfc1ef141.png


引言

大语言模型(LLMs)凭借思维链(CoT)提示在复杂推理方面表现出了优越的能力。CoT 提示需要生成中间推理链,作为得出答案之前的基本依据。目前的 CoT 提示方法主要分为两类,我们分别称为 General Zero-Shot-CoTSpecific Few-Shot-CoT。前者利用“让我们一步一步思考”等一般性提示,将其直接附加到输入问题中,旨在唤醒 LLMs 的逐步推理潜力;后者提供特定于任务的输入输出对作为样本示例,并将它们放在输入问题之前,目的是引导 LLMs 通过模仿学习样本示例来进行多步推理。

baeb73f96a9b205fc2a8d3728f6bb27f.png

然而,当前研究主要存在两个局限性:1)General Zero-Shot-CoT 由于不需要任何与任务相关的样本而具有良好的泛化能力,但与 few-shot 模式相比,它在性能方面往往相形见绌;2)Specific Few-Shot-CoT 严重依赖于任务特定的样本示例来获得优越性能,但无法提供良好的泛化能力。

在实际应用中,LLMs 通常不知道用户会输入什么样的问题(区别于现有的针对每个特定任务的测试集进行测试的情况),因而难以为每种类型的问题预先准备上下文提示。因此,研究自动适用于各种类型问题的提示技术具有重要意义。

为了弥合性能通用性之间的差距并提高 CoT 提示技术在实际场景中的应用价值,本文提出 Meta-CoT:一种在输入问题类型未知的混合任务场景中可通用的思维链提示方法。Meta-CoT 不仅在 10 项推理任务上取得出色的性能,而且具有卓越的泛化能力。其在 SVAMP(93.7%)上取得了最先进的结果,而无需任何额外的程序辅助方法。

6a08c4a56f562f3b38310522c728fa69.png


方法

Meta-CoT 由三个阶段组成:

1. 场景识别(Scenario Identification):利用现成公开的推理数据集,根据<类别,形式>的划分策略获得含多个数据组的混合问题池,随后从每个数据组中随机采样一个问题,组合之后将其作为上下文样本示例,用以辅助 LLMs 对输入问题进行自动场景分类;

2. 样例选择(Demonstration Selection):根据阶段(1)得到的场景,通过对问题进行编码和聚类的方法,从相应的场景数据池中获得最具代表性的问题,从而构建多样化样例;

3. 答案推导(Answer Derivation):使用阶段(2)获取的多样化样例对输入问题执行最终答案推导。

30e9cb5e3a772556da388d546d37f8f8.png

a0265da3e0d0f6f7881a2e76bedf5188.png


实验结果

我们对 10 个分布内推理任务进行了实验,涵盖算术推理、常识推理和符号推理。此外,我们还在 5 个分布外数据集上验证了 Meta-CoT 的稳定性和泛化性:

1. Meta-CoT 在 SVAMP 上实现了无需任何额外的程序辅助方法的最优结果 (93.7%)。 此外,即使缺乏来自 GSM8K 数据集的上下文示例,Meta-CoT 在 GSM8K 上也能达到优越的性能 (93.6%)。

ddde05e7bac909b0cb31618d21708899.png

2. Meta-CoT 在保持良好稳定性的同时,还能实现不错的性能。这些结果证明,Meta-CoT 适用于输入数据没有特定类型定义的实际情况,具备良好的实际应用价值。 

0d2ea8ec81ae8be56bd53480f0f7d74c.png

3. 为了进一步探讨在实现通用性中起着关键作用的场景识别(scenario identification)阶段的效果,我们去除了这个阶段,并采用一种理想化的策略:即假设模型被赋予了正确场景。结果表明,即使给出正确的场景,也只能实现细微的改进 (70.2% → 70.6%)。这表明 Meta-CoT 潜在激发了 LLMs 在无需人工干预下的自我决策能力。

f391e18fdcd4ba662dadfefcc1cb4cfc.png

1511d9ae69cf4f3fdfc9bdc0e9e8c89e.png


本文总结

在这项工作中,我们首先提出了一个具有重要应用价值的新场景,即输入问题类型未知的混合任务场景。在这一具有挑战性的场景下,我们提出了可通用的思维链提示方法:Meta-CoT。在 15 个分布内和分布外推理数据集上的结果表明,Meta-CoT 在达到优越性能的同时还享有良好的泛化能力。

更多阅读

6203f2666492b669661e620e53379180.png

9518f69ad55ee7a2a34b90a5df6183c6.png

23a923bd655bbbe67ce53de28c87b546.png

28f0fd72ea94c49fc3b2223a7c881b54.gif

#投 稿 通 道#

 让你的文字被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。

📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算

📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿

9fede8818bad4fae06106d67c1a254be.png

△长按添加PaperWeekly小编

🔍

现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧

·

·

d78c60a26ad986b9b5cfef66d7225c20.jpeg

这篇关于性能强劲又通用!Meta-CoT: 混合问题场景下的自适应思维链推理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/255215

相关文章

解决pandas无法读取csv文件数据的问题

《解决pandas无法读取csv文件数据的问题》本文讲述作者用Pandas读取CSV文件时因参数设置不当导致数据错位,通过调整delimiter和on_bad_lines参数最终解决问题,并强调正确参... 目录一、前言二、问题复现1. 问题2. 通过 on_bad_lines=‘warn’ 跳过异常数据3

解决RocketMQ的幂等性问题

《解决RocketMQ的幂等性问题》重复消费因调用链路长、消息发送超时或消费者故障导致,通过生产者消息查询、Redis缓存及消费者唯一主键可以确保幂等性,避免重复处理,本文主要介绍了解决RocketM... 目录造成重复消费的原因解决方法生产者端消费者端代码实现造成重复消费的原因当系统的调用链路比较长的时

Java Stream流之GroupBy的用法及应用场景

《JavaStream流之GroupBy的用法及应用场景》本教程将详细介绍如何在Java中使用Stream流的groupby方法,包括基本用法和一些常见的实际应用场景,感兴趣的朋友一起看看吧... 目录Java Stream流之GroupBy的用法1. 前言2. 基础概念什么是 GroupBy?Stream

深度解析Nginx日志分析与499状态码问题解决

《深度解析Nginx日志分析与499状态码问题解决》在Web服务器运维和性能优化过程中,Nginx日志是排查问题的重要依据,本文将围绕Nginx日志分析、499状态码的成因、排查方法及解决方案展开讨论... 目录前言1. Nginx日志基础1.1 Nginx日志存放位置1.2 Nginx日志格式2. 499

kkFileView启动报错:报错2003端口占用的问题及解决

《kkFileView启动报错:报错2003端口占用的问题及解决》kkFileView启动报错因office组件2003端口未关闭,解决:查杀占用端口的进程,终止Java进程,使用shutdown.s... 目录原因解决总结kkFileViewjavascript启动报错启动office组件失败,请检查of

java如何实现高并发场景下三级缓存的数据一致性

《java如何实现高并发场景下三级缓存的数据一致性》这篇文章主要为大家详细介绍了java如何实现高并发场景下三级缓存的数据一致性,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 下面代码是一个使用Java和Redisson实现的三级缓存服务,主要功能包括:1.缓存结构:本地缓存:使

C++中detach的作用、使用场景及注意事项

《C++中detach的作用、使用场景及注意事项》关于C++中的detach,它主要涉及多线程编程中的线程管理,理解detach的作用、使用场景以及注意事项,对于写出高效、安全的多线程程序至关重要,下... 目录一、什么是join()?它的作用是什么?类比一下:二、join()的作用总结三、join()怎么

SpringBoot 异常处理/自定义格式校验的问题实例详解

《SpringBoot异常处理/自定义格式校验的问题实例详解》文章探讨SpringBoot中自定义注解校验问题,区分参数级与类级约束触发的异常类型,建议通过@RestControllerAdvice... 目录1. 问题简要描述2. 异常触发1) 参数级别约束2) 类级别约束3. 异常处理1) 字段级别约束

在MySQL中实现冷热数据分离的方法及使用场景底层原理解析

《在MySQL中实现冷热数据分离的方法及使用场景底层原理解析》MySQL冷热数据分离通过分表/分区策略、数据归档和索引优化,将频繁访问的热数据与冷数据分开存储,提升查询效率并降低存储成本,适用于高并发... 目录实现冷热数据分离1. 分表策略2. 使用分区表3. 数据归档与迁移在mysql中实现冷热数据分

Python错误AttributeError: 'NoneType' object has no attribute问题的彻底解决方法

《Python错误AttributeError:NoneTypeobjecthasnoattribute问题的彻底解决方法》在Python项目开发和调试过程中,经常会碰到这样一个异常信息... 目录问题背景与概述错误解读:AttributeError: 'NoneType' object has no at