目录
「反向推理」成版本答案?
LAMBADA中的语言模型
首页 科技周边 人工智能 不要think step by step!谷歌最新自然语言推理算法LAMBADA:「反向链推理」才是答案

不要think step by step!谷歌最新自然语言推理算法LAMBADA:「反向链推理」才是答案

Apr 12, 2023 pm 09:16 PM
算法 自然语言 推理

​自动推理绝对算是自然语言处理领域的一大难题,模型需要根据给定的前提和知识推导出有效且正确的结论。

尽管近年来NLP领域借着大规模预训练语言模型在各种「自然语言理解」如阅读理解和问答等任务中取得了极高的性能,但这些模型在逻辑推理方面的性能仍然十分滞后。

去年5月「思维链」(Chain of Thought, CoT)横空出世,有研究人员发现,只需要在prompt中加入「Let's think step by step」就能让GPT-3的推理性能大幅提升,比如在MultiArith中就将推理准确率从之前的17.7%一下提升到了78.7%

但诸如CoT和Selection Inference等方法都是以前向(forward direction)的方式从公理(axioms)中搜索证明过程(proof)以推导出最终结论(conclusion),存在搜索空间组合爆炸的问题,因此对于较长的推理链,失败率较高。

最近,Google Research开发了一种反向链(Backward Chaining)算法LAMBADA(LAnguage Model augmented BAckwarD chAining),将经典推理文献中得出的「反向推理效率明显高于前向推理」这一结论应用于语言模型(LM)中。

图片

论文链接:https://arxiv.org/abs/2212.13894

LAMBADA将推理过程分解为四个子模块,每个模块都由few-shot prompted语言模型推理实现。

最终LAMBADA相比当下sota的前向推理方法在两个逻辑推理数据集上实现了显著的性能提升,特别是在问题要求深度和准确的证明链情况下,LAMBADA的性能提升更加明显。

「反向推理」成版本答案?

逻辑推理,特别是对非结构化自然文本的逻辑推理,是构建自动知识发现的基础构件,也是未来各种科学领域进步的关键。

虽然许多NLP任务的发展都受益于预训练语言模型不断扩大的规模,但根据观察,提升模型的尺寸对解决复杂推理问题的提升十分有限。

在经典文献中,有两种主要的逻辑推理方法:

1、前向链式推理(Forward Chaining, FC),即从事实和规则出发,在做出新的推理并将其加入理论之间进行迭代,直到目标陈述可以被证明或推翻;

2、后向链式推理(Backward Chaining, BC),即从目标出发,将其递归分解为子目标,直到子目标可以根据事实被证明或推翻。

以前用语言模型进行推理的方法大多采用前向链式推理的思路,要求从整个集合中选择一个事实和规则的子集,这对LM来说可能是困难的,因为它需要在一个大的空间里进行组合搜索。

此外,决定何时停止搜索并宣布证明失败在FC中也是非常困难的,有时甚至需要一个专门对中间标签进行训练的模块。

事实上,经典的自动推理文献在很大程度上偏重于后向链式推理或目标导向的求证策略。

LAMBADA

LAMBADA意为「反向链式技术增强的语言模型」,研究人员通过实验证明了BC更适合于基于文本的演绎逻辑推理(deductive logical reasoning)。

BC不需要大量的组合搜索来选择子集,而且有更自然的停止搜索标准(halting criteria)。

LAMBADA主要专注于对事实进行自动推理,即自然语言断言,如「好人是红色的」,这些断言是连贯的(coherent),但不一定基于真实情况。

一个规则由自然语言声明编写,形式上可以改写为「如果P那么Q」,例如「粗暴的好人是红色的」(Rough, nice people are red)可以改写为「如果一个人是粗暴的好人,那么他们是红色的」(If a person is rough and nice, then they are red)。

其中P被称为规则的前项(antecedent),Q被称为规则的后项(consequent)。

一个理论theory C由事实F={f1, f2, . . , fn}和规则R={r1, r2, . . , rm}组成,G代表一个想根据事实和规则来证明或反驳的目标。

例1、一个带有虚构角色和规则的理论实例C

F={"菲奥娜是好人","菲奥娜是粗人"}

R={"如果某人很聪明,那么他就是好人","粗暴的好人是红色的","作为好人和红色意味着他是圆的"}。

基于上述理论,人们可能想证明或反驳一个目标,如「菲奥娜是红色的?」。

后向链法推理

一条规则是否适用于一个目标,是通过逻辑学中的一个叫做unification的操作来确定的。

例如,对于例1中的目标「Fiona是红色的?」,第二条规则的后果与目标相同,所以可以适用;但另外两条规则的后果不同,所以不适用。

考虑例1中的理论和目标,BC从目标「Fiona是红色的?」开始推理。

首先,BC验证该目标是否可以从任何事实中被证明或反驳。由于没有任何事实可以证明或反驳这个目标,所以接下来会验证这个目标是否与任何规则的结果相统一,结果发现它与第二条规则「粗糙的好人是红色的」相统一。

因此,该目标可以被分解成两个子目标:1)菲奥娜是粗暴的吗?和2)菲奥娜是好人吗?。

由于这两个子目标都可以从事实中得到证明,BC的结论是原始目标可以得到证明。

对于一个目标,BC的结果要么是证明,要么是否定,要么是不知道(例如目标「菲奥娜很聪明?」)。

LAMBADA中的语言模型

为了将BC用于基于文本的推理,研究人员引入了四个基于LM的模块:事实检查(Fact Check)、规则选择(Rule Selection)、目标分解(Goal Decomposition)和符号一致性(Sign Agreement)。

图片

事实检查

给出理论中的一组事实F和一个目标G,事实检查模块验证是否存在一个事实f∈F,使得f包含G(在这种情况下,目标被证明)或者f包含G的否定(在这种情况下,目标被否定)。

如果找不到这样的事实,那么G的真相仍然是未知的。

事实检查的实现包括两个子模块:第一个子模块从与目标最相关的事实集中选择一个事实,第二个子模块根据这个事实来验证目标是否可以被证明或否定。

由于事实选择子模块在第一次尝试时可能无法确定最佳的事实,如果在调用子模块一轮后,目标的真相仍然未知,可以删除所选的事实,然后再次调用子模块;这个过程可以重复多次。

规则选择

给出理论中的一组规则R和一个目标G,规则选择模块确定规则r∈R,使r的结果与G相统一,然后用这些规则将目标分解为子目标。

如果不能确定这样的规则,那么G的真相仍然是未知的。

规则选择同样包括两个子模块:第一个子模块确定每个规则的结果(与目标无关),第二个子模块将规则的结果和目标作为输入,并确定哪一个与目标相统一。

需要注意的是,由于BC的递归性质,规则选择模块在证明一个目标的过程中可能会被多次调用。由于识别每条规则的结果与目标无关,这个子模块只需要被调用一次。

目标分解

给定一个规则r和一个目标G,使r的结果与G统一,目标分解模块确定需要证明的子目标,以使G被证明或被否定。

在成功证明r的前项的情况下,目标是被证明还是被否定取决于目标的符号(sign)是否与r的结果符号一致。

例如对于目标「Fiona是红色的?」,由于目标的符号与第二条规则的结果符号一致,并且规则的前项被证明,可以得出结论,目标被证明。

符号一致性

给定一个规则r和一个目标G,符号一致模块验证r的结果符号是否与目标的符号一致或不一致。

实验部分

研究人员选择Chain of Thought(CoT)、基于显式推理的sota神经推理方法、sota模块推理方法Selection Inference(SI)作为对比基线模型。

实验的数据集采用ProofWriter和PrOntoQA,这些数据集对LM推理具有挑战性,包含需要证明链长度达5跳的例子,以及目标既不能从提供的理论中证明也不能反驳的例子。

图片

实验结果显示,LAMBADA明显优于其他两个基线,特别是在包含UNKNOWN标签的ProofWriter-PUD数据集上(与CoT相比有44%的相对改善,与SI在深度-5上相比有56%的改善),以及在PrOntoQA的较高深度上(与CoT相比有37%的相对改善,与SI在深度-5上相比有113%的改善)。

图片

这些结果显示了LAMBADA在逻辑推理方面的优点,也显示了后向链(在LAMBADA中是推理的backbone)与前向链(在SI中是backbone)相比可能是更好的选择。

这些结果还揭示了CoT方法在处理UNKNOWN标签时的一个缺陷:与标签为证明(PROVED)或否定(DISPROVED)的例子不同,对于标签为UNKNOWN的例子,没有自然的思维链。

对于更深(3+)的证明链问题上,在三个数据集上,SI产生的预测接近于多数类预测。

可以发现,在二元情况下,它倾向于过度预测DISPROVED;在三元分类情况下,倾向于过度预测UNKNOWN,这使得它在PrOntoQA的深度-5中的表现甚至比多数类更差,因为该深度的PROVED标签比DISPROVED多。

不过研究人员也惊讶地发现,CoT对于ProofWriterPD数据集的性能仍然相对较高,而且准确率没有降低。

总之,在这些数据集上,LAMBADA具有更高的推理准确性,与其他用虚假的证明痕迹找到正确结论的技术相比,LAMBADA更有可能产生有效的推理链,同时也比其他基于LM的模块化推理方法更有查询效率。

研究人员表示,该实验结果强烈地表明,未来关于用LM进行推理的工作应该包括后向链或目标导向的策略。

参考资料:​

https://arxiv.org/abs/2212.13894

以上是不要think step by step!谷歌最新自然语言推理算法LAMBADA:「反向链推理」才是答案的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
威尔R.E.P.O.有交叉游戏吗?
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

自然语言生成任务中的五种采样方法介绍和Pytorch代码实现 自然语言生成任务中的五种采样方法介绍和Pytorch代码实现 Feb 20, 2024 am 08:50 AM

在自然语言生成任务中,采样方法是从生成模型中获得文本输出的一种技术。这篇文章将讨论5种常用方法,并使用PyTorch进行实现。1、GreedyDecoding在贪婪解码中,生成模型根据输入序列逐个时间步地预测输出序列的单词。在每个时间步,模型会计算每个单词的条件概率分布,然后选择具有最高条件概率的单词作为当前时间步的输出。这个单词成为下一个时间步的输入,生成过程会持续直到满足某种终止条件,比如生成了指定长度的序列或者生成了特殊的结束标记。GreedyDecoding的特点是每次选择当前条件概率最

CLIP-BEVFormer:显式监督BEVFormer结构,提升长尾检测性能 CLIP-BEVFormer:显式监督BEVFormer结构,提升长尾检测性能 Mar 26, 2024 pm 12:41 PM

写在前面&笔者的个人理解目前,在整个自动驾驶系统当中,感知模块扮演了其中至关重要的角色,行驶在道路上的自动驾驶车辆只有通过感知模块获得到准确的感知结果后,才能让自动驾驶系统中的下游规控模块做出及时、正确的判断和行为决策。目前,具备自动驾驶功能的汽车中通常会配备包括环视相机传感器、激光雷达传感器以及毫米波雷达传感器在内的多种数据信息传感器来收集不同模态的信息,用于实现准确的感知任务。基于纯视觉的BEV感知算法因其较低的硬件成本和易于部署的特点,以及其输出结果能便捷地应用于各种下游任务,因此受到工业

使用C++实现机器学习算法:常见挑战及解决方案 使用C++实现机器学习算法:常见挑战及解决方案 Jun 03, 2024 pm 01:25 PM

C++中机器学习算法面临的常见挑战包括内存管理、多线程、性能优化和可维护性。解决方案包括使用智能指针、现代线程库、SIMD指令和第三方库,并遵循代码风格指南和使用自动化工具。实践案例展示了如何利用Eigen库实现线性回归算法,有效地管理内存和使用高性能矩阵操作。

探究C++sort函数的底层原理与算法选择 探究C++sort函数的底层原理与算法选择 Apr 02, 2024 pm 05:36 PM

C++sort函数底层采用归并排序,其复杂度为O(nlogn),并提供不同的排序算法选择,包括快速排序、堆排序和稳定排序。

人工智能可以预测犯罪吗?探索CrimeGPT的能力 人工智能可以预测犯罪吗?探索CrimeGPT的能力 Mar 22, 2024 pm 10:10 PM

人工智能(AI)与执法领域的融合为犯罪预防和侦查开辟了新的可能性。人工智能的预测能力被广泛应用于CrimeGPT(犯罪预测技术)等系统,用于预测犯罪活动。本文探讨了人工智能在犯罪预测领域的潜力、目前的应用情况、所面临的挑战以及相关技术可能带来的道德影响。人工智能和犯罪预测:基础知识CrimeGPT利用机器学习算法来分析大量数据集,识别可以预测犯罪可能发生的地点和时间的模式。这些数据集包括历史犯罪统计数据、人口统计信息、经济指标、天气模式等。通过识别人类分析师可能忽视的趋势,人工智能可以为执法机构

改进的检测算法:用于高分辨率光学遥感图像目标检测 改进的检测算法:用于高分辨率光学遥感图像目标检测 Jun 06, 2024 pm 12:33 PM

01前景概要目前,难以在检测效率和检测结果之间取得适当的平衡。我们就研究出了一种用于高分辨率光学遥感图像中目标检测的增强YOLOv5算法,利用多层特征金字塔、多检测头策略和混合注意力模块来提高光学遥感图像的目标检测网络的效果。根据SIMD数据集,新算法的mAP比YOLOv5好2.2%,比YOLOX好8.48%,在检测结果和速度之间实现了更好的平衡。02背景&动机随着远感技术的快速发展,高分辨率光学远感图像已被用于描述地球表面的许多物体,包括飞机、汽车、建筑物等。目标检测在远感图像的解释中

九章云极DataCanvas多模态大模型平台的实践和思考 九章云极DataCanvas多模态大模型平台的实践和思考 Oct 20, 2023 am 08:45 AM

一、多模态大模型的历史发展上图这张照片是1956年在美国达特茅斯学院召开的第一届人工智能workshop,这次会议也被认为拉开了人工智能的序幕,与会者主要是符号逻辑学届的前驱(除了前排中间的神经生物学家PeterMilner)。然而这套符号逻辑学理论在随后的很长一段时间内都无法实现,甚至到80年代90年代还迎来了第一次AI寒冬期。直到最近大语言模型的落地,我们才发现真正承载这个逻辑思维的是神经网络,神经生物学家PeterMilner的工作激发了后来人工神经网络的发展,也正因为此他被邀请参加了这个

流量工程将代码生成的准确率提高一倍:由19%提高至44% 流量工程将代码生成的准确率提高一倍:由19%提高至44% Feb 05, 2024 am 09:15 AM

一篇新论文的作者提出了一种“强化”代码生成的方法。代码生成是人工智能中一项日益重要的能力。它通过训练机器学习模型,根据自然语言描述自动生成计算机代码。这一技术具有广泛的应用前景,可以将软件规格转化为可用的代码,自动化后端开发,并协助人类程序员提高工作效率。然而,生成高质量代码对AI系统仍然具有挑战性,与翻译或总结等语言任务相比。代码必须准确地符合目标编程语言的语法,能够优雅地处理各种极端情况和意外输入,并精确地处理问题描述中的许多小细节。即使是其他领域看似无害的小错误也可能完全破坏程序的功能,导

See all articles