论文浅尝 | 基于对多条思维链的元推理实现智能问答

news2024/11/24 19:21:41

67fbea780c838704ab497ebc455db490.png

笔记整理:屠铭尘,浙江大学硕士,研究方向为知识图谱

链接:https://arxiv.org/abs/2304.13007

1. 动机

1.1 Chain of Thought的诞生

  • 尽管大语言模型在许多自然语言处理任务上表现出色,但由于其本质是token by token的类似“词语接龙”的生成方式,并不能理解词句的语义,就导致其在推理相关任务上有所限制,且有研究表明这种缺陷难以通过语言模型规模的扩大得到解决。

  • 因此,Jason Wei等人在2022年发表了Chain-of-Thought Prompting Elicits Reasoning in Large Language Models这篇论文,首次提出了用“Chain of Thought(CoT)”(推理链)这种方法来对ChatGPT等模型进行提示,结果表明此方法可以显著提升模型应对推理任务的能力,这篇论文被称为Chain of Thought的开山之作。

1.2 Chain of Thought的发展

自从Chain of Thought这种推理链提示方法被提出,不断有研究者对这种方法进行了进一步改进。

58e39068eee3ddf176240e65dc76773e.png

(1)Chain of Thought 推理链提示(Jason Wei, et.al 2022)

75301e953104b86726089102700f6a10.png

即在原先Prompting(输入首先给一个示例问题和对应答案,再给一个相似问题,如上图左)的基础上,在给出示例答案的时候同时给出得到答案的推理过程。

研究显示这种方法能提升大语言模型在推理问题上的正确率。

(2)推理链+在线信息检索 (Harsh Trivedi, et.al 2022)

8837022d27726efd0d91bc6ebb047eab.png

允许大语言模型在推理过程中加入对在线信息的检索,研究显示此方法也会提升大语言模型的正确率。

(3)Self-Ask(SA) (Harsh Trivedi, et.al 2023)

9dacb9f068db47bbefe08fdc9c6b26de.png

引导大语言模型将原问题分解成许多小问题,通过逐步解决小问题最终解决原问题。

(4)Self-Consistency(SC)

69ea19e7a663624a118cb05053d31ae7.png

让语言模型多次对同一个问题进行回答,将出现次数最多的那个答案作为最终答案。

(5)本文提出的Multiple Chains Reasoning (MCR)方法

2598f31c85e3229ae0dc56f08f743fb3.png

本篇作者认为,尽管Self-Consistency(SC)方法能显著提升大语言模型应对推理问题的能力,但仍具有以下局限性:

  • 如果某个问题的产出空间很大,那么可能不会得到占多数的答案;

  • 每一次大语言模型对问题进行推理时可能会抓住不同的关键要点,但并不是所有关键信息都会体现在答案中;

  • 答案没有很好的可解释性。

与此同时,MCR具有这些相应的优势:

  • MCR能够结合每条推理链中的重要信息,因此有望实现答案的正确率提高;

  • 答案具有更好的可解释性。

2. 方法

59d5bf3ed4d819a48b2b206e2af8db27.png

MCR方法主要由三大模块:Decomposition、Retrieval、Meta-Reason构成,其中,Decomposition和Retrieval方法类似于之前方法提出的的原问题进行分解、检索等,而本文提出方法的核心则在于第三个模块,也就是元推理模块。

如何实现元推理模块?本文引入了另一个LLM,预先对其进行few-shot prompting。即将多条链的上下文和原始问题给LLM,训练其从多条链上下文中获取有价值信息、产生最终答案的能力。

a6b949435352901470715b7ff20541a9.png

3. 实验

3.1 Setting

(1)数据集

258cf85753691979f663c2f78b23cd6d.png

注:此实验将推理类型分为implicit和explicit两种类型

48950c2a69c39e03c7b3151fce7b8895.png

(2)语言模型

main: GPT-3, code-davinci-002

also: Vicuna-13B

(3)元推理模块 Meta-Reasoner

  • MCR

966bb613ee0f87f779987fd51a601893.png

  • SCR

8519850fe179efcd13a59310b8db9ff5.png

(4)基线Baselines

41b353263cf569f39b46ff65f9d690eb.png

(5)检索器 Retrieval

Google-WIKIPEDIA

3.2 Results

f2b5ad75a78c9cf9d7f5095610ccc155.png

607ff32bcf7ab40438a6d0b10e7e4754.png

3.3 Analysis

(1)MCR在什么情况下胜过SCR?

bc7f05cbe8aa572473837ea5f7537ace.png

当MCR用到了除了greedy链之外的其他链提供的信息时。

(2)是否真的结合了多条链信息

判断产出的句子中是否有一句来自于某一条链,而另一句来自于另一条链(这可以证明元推理模块至少用到了两条链的信息)结果显示,结合链之间的信息可能至少平均对2%-2.5%的例子起到了积极作用。

(3)答案可解释性的质量

通过人工衡量explanation和答案是否相关,以及如果只给问题和语言模型的explanation,看语言模型是否会生成同样答案,来判断explanation的有效性、可重复性。

(4)错误分析

d5c076a73862338b733b7164ff0f9e3c.png

对不同类型的错误进行分类,并分析语言模型面对不同数据集(不同类型推理问题)时在不同类型错误上的正确率。分析得出在面对implicit类型的问题时,语言模型在解析问题(即问题拆分)上可能表现就相对不佳。

4. 总结

(1)结论

  • introduce the MCR method for metareasoning on multiple chains-of-thought. 引入MCR模型对多条链进行元推理。

  • show that MCR outperforms all baselines, including self-consistency, on all 7 multi-hop open-domain QA benchmarks. 证实MCR在所有多跳开放问题标准测试上,表现得比包括SC在内的所有基线方法都要好。

  • analyze MCR for its explanation quality and its multi-chain reasoning capabilities.对MCR的解释能力和多链推理能力进行了分析。

(2)不足

  • opt for a prompted LLM as our meta-reasoner, we do not experiment with a fine-tuned meta-reasoning model. 没有用微调的元推理模型,而只是进行了prompting。

  • For the meta-reasoner context, we experiment with variants which include either generated QA pairs of retrieved evidence sentences. We leave further improvements to the meta-reasoner context as future work.只是给元推理模块QA pairs,未来或许有更好的信息组织形式。

  • extend the open-source model results to include additional datasets besides STRATEGYQA and HOTPOTQA.以后的实验应在更多测试集上进行。


OpenKG

OpenKG(中文开放知识图谱)旨在推动以中文为核心的知识图谱数据的开放、互联及众包,并促进知识图谱算法、工具及平台的开源开放。

db93a56c0e856b774638895d23da7b29.png

点击阅读原文,进入 OpenKG 网站。

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

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

相关文章

深度学习环境搭建入门环境搭建(pytorch版本)

从Python安装到深度学习环境搭建 1. Anaconda安装 python可以通过官网下载exe,这里提供的是使用anaconda创建多个虚拟 的python环境,使用Anaconda Prompt管理虚拟环境更方便。 官网地址:Free Download|Anaconda 下载到本地后双击此文…

Mall4cloud 微服务商城系统 2.0 发布

导读现在 jdk17 和 spring boot 以及 spring cloud alibaba 2022 的第三方依赖已经趋于成熟,所以 mall4cloud 也一把梭哈做了升级嗷。 本次更新重点: 系统由 jdk8 最低要求升级到 jdk17spring boot 由 2.7.x 升级到 3.1.xjavax 升级到 jakartaspring-cl…

Flink--简介

1、Apache Flink 是一个实时计算的框架和分布式处理引擎,用于在无边界喝有边界数据流上进行有状态的计算,并且能够在常见的集群上运行,并能以内存速度和任意规模进行计算。 有边界数据流:指的是有开始,也有结束&…

CCF ChinaSoft 2023 论坛巡礼 | NASAC青年软件创新奖论坛

2023年CCF中国软件大会(CCF ChinaSoft 2023)由CCF主办,CCF系统软件专委会、形式化方法专委会、软件工程专委会以及复旦大学联合承办,将于2023年12月1-3日在上海国际会议中心举行。 本次大会主题是“智能化软件创新推动数字经济与社…

gdal3.5.0升级及安装cmake

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、pandas是什么?二、使用步骤 1.引入库2.读入数据总结 前言 本文主要是将gdal旧版本v3.2.1升级到v3.5.0,解决升级过程中的问题。 一、…

智慧社区大屏:连接社区生活的数字桥梁

随着科技的不断发展,智慧社区已经不再只是未来的概念,它已经在我们的眼前悄然崭露头角。智慧社区是一种基于数字技术的社区管理和生活方式,旨在提高社区的安全性、便利性和生活质量。而在这个数字化的社区中,智慧社区大屏起到了连…

竞赛 深度学习疲劳检测 驾驶行为检测 - python opencv cnn

文章目录 0 前言1 课题背景2 相关技术2.1 Dlib人脸识别库2.2 疲劳检测算法2.3 YOLOV5算法 3 效果展示3.1 眨眼3.2 打哈欠3.3 使用手机检测3.4 抽烟检测3.5 喝水检测 4 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 **基于深度学习加…

VMware17安装教程

1、双击安装包 2、等待进度条走满 3、点击下一步 4、点击我接受 下一步 5、修改安装目录 添加path路径 下一步 6、取消用户体验设置 下一步 7、点击下一步 8、 点击安装 9、等待进度条走满 10、点击许可证 输入秘钥 11、 点击输入秘钥 12、 点击完成 完成安装 此时已经完成了安…

Nat. Med. | 基于遗传学原发部位未知癌症的分类和治疗反应预测

今天为大家介绍的是来自Alexander Gusev团队的一篇论文。原发部位未知癌症(Cancer of unknown primary,CUP)是一种无法追溯到其原发部位的癌症,占所有癌症的3-5%。CUP缺乏已建立的靶向治疗方法,导致普遍预后…

【C语言】函数的系统化精讲(三)

文章目录 一、递归举例二、递归举例2.1求n的阶乘2.2 顺序打印⼀个整数的每⼀位 三、递归与迭代3.1递归的思考3.2求第n个斐波那契数 总结 一、递归举例 .通过上回(【C语言】函数的系统化精讲(二))我们了解到递归的限制条件&#x…

企业如何落地搭建商业智能BI系统

随着新一代信息化、数字化技术的应用,引发了新一轮的科技革命,现代化社会和数字化的联系越来越紧密,数据也变成继土地、劳动力、资本、技术之后的第五大生产要素,这一切都表明世界已经找准未来方向,前沿科技也与落地并…

Confluence 恢复的时候数据版本问题

如果 Confluence 恢复的时候提示数据库的版本不正确或者有问题。 如下图所示: 只要版本差不太多,你可以通过数据库来自动调整版本信息。 有关 Confluence 安装的数据库表位置在:CONFVERSION 这个表。 把这个表中的数据更新下就可以了。 当…

网络安全深入学习第八课——反向代理(工具:frp)

文章目录 一、实验环境二、实验要求三、开始模拟1、攻击机配置frp文件2、攻击拿下跳板机,并且上传frpc.ini、frpc.exe、frpc_full.ini文件3、把frps.ini、、frps.exe、frps_full.ini文件放到VPS主机上4、VPS机开启frp5、跳板机开启frp6、验证 一、实验环境 攻击机&…

C++:STL第一篇vector

目录 1.vector 的介绍及使用 1.1 vector的介绍 1.2 vector的使用 1.2.1 vector的定义 1.2.2 vector iterator (迭代器)的使用 1.2.3 vector空间增长问题 1.2.4 vector的增删改查 1.2.5 vector 迭代器失效问题。(重点) 2.vector 深度刨析及模拟实…

git增加右键菜单

有次不小心清理系统垃圾,把git右击菜单搞没了,下面是恢复方法 将下面代码存为.reg文件,双击后导出生效,注意,你安装的git必须是默认C盘的,如果换了地方要改下面注册表文件中相关的位置 Windows Registry …

elform-item动态prop

先来看看我这个变态而又复杂的需求! 目前自定义表单的前端开发越来越热,开发人员封装好成熟的组件,用户直接拖动生成自己的页面!这样的特点就是: 页面中显示的东西,完全是自定义组合的而不是固定的&#…

在 “219.**** 找不到用于监控项 key“agent.hostname“ 的主机接口.

细节 无法添加主机 在 "219.151" 找不到用于监控项 key"agent.hostname" 的主机接口.z 这个时候要改一下 方式:

区块链导论:数字经济需要培养多学科交叉综合人才

日前,在第三届“一带一路”国际合作高峰论坛数字经济高级别论坛上,香港科技大学校长叶玉如提出了一个引人深思的观点:“数字经济是多个学科领域交叉融合,我们需要的人才既要懂得经济学,也要理解人工智能、大数据、区块…

STM32Cube +VSCode开发环境搭建

STM32Cube VSCode开发环境搭建 0.前言一、各种方式对比1.STM32CubeMX CLion2.STM32CubeIDE VSCode STM32 VSCode Extension3.VSCode EIDE插件 二、STM32CubeIDE VSCode STM32 VSCode Extension环境搭建1.需要安装的软件2.相关配置3.编译测试 三、总结 0.前言 工欲善其事&…

视频批量剪辑技巧:AI智剪,智能技术让视频剪辑更简单

在视频制作过程中,剪辑是一项必不可少的任务。然而,对于许多非专业人士来说,视频剪辑却是一项令人望而生畏的任务。需要耗费大量的时间和精力,而且还需要一定的技术和经验。但是,随着人工智能技术的不断发展&#xff0…