所谓“思维链提示”,是一种比较简单的操作方法。对于规模足够大的语言模型来说,只需在给模型输入提示信息的时候,把一些思维链的示例当作范例添加进去就行。打个比方,如果把语言模型想象成一个要完成各种任务的“执行者”,那这些思维链示例就像是提前给它展示的“参考答案步骤”,让模型可以参考着去模仿、学习如何进行推理,进而激发出自身的推理能力。
实验情况及效果展示
-
实验对象与范围:研究人员选择了三个大型语言模型来开展实验,并且在多个不同类型的任务上进行测试,这些任务涵盖了算术方面(比如解决数学计算相关的问题)、常识方面(运用日常生活中大家公认的知识来推理判断)以及符号推理方面(处理带有特定符号逻辑的推理任务)等不同领域,以此来全面考察思维链提示方法的有效性。
-
显著效果呈现:实验得到的结果非常可观,通过实际数据验证了思维链提示带来的积极影响。例如,在GSM8K这个专门针对数学应用题设立的基准测试中,当使用拥有5400亿参数的PaLM模型时,仅仅给它提供八个思维链示例作为提示内容,该模型就能在这个测试里达到目前最先进的准确率水平。要知道,GPT - 3也是很厉害的语言模型,而且有的经过了微调还配备了专门的验证器来提升准确性,但即便如此,采用了思维链提示的PaLM模型的表现依然超过了它,足以说明思维链提示这种方法对于提升大型语言模型推理能力的强大作用。
1 Introduction
1.1 自然语言处理领域及语言模型现状
-
领域变革与模型规模优势:自然语言处理(NLP)领域在近些年由于各类语言模型的出现经历了重大变革。像彼得斯等人在2018年、德夫林等人在2019年以及布朗等人在2020年相关研究中提出的语言模型,都对领域发展起到了推动作用。扩大语言模型的规模被发现能带来不少好处,例如模型在执行任务时的性能会变得更好,同时在利用样本数据方面也能更高效,相关研究如卡普兰等人在2020年、布朗等人在2020年所做的研究都证实了这一点。
-
规模扩大的局限:不过,仅仅依靠增大模型的规模,在面对一些有难度的任务时,像算术运算、运用常识进行推理以及符号推理这类任务,还是没办法让模型达到很高的性能水平,雷等人在2021年的研究就指出了这一情况。
1.2 解锁推理能力的探索思路及相关理念
-
思路概述:基于上述背景,这项工作尝试探索一种方法来解锁大型语言模型的推理能力,而这个方法是受到了两个理念的启发。
-
理念一:基于自然语言推理依据的算术推理:在算术推理方面,有一种思路是通过生成自然语言形式的推理依据来帮助得到最终答案,这是很有益处的。以前的研究尝试过不同方式来让模型具备生成自然语言中间步骤的能力,比如直接从头开始训练模型(像凌等人在2017年的做法),或者是对已经预训练好的模型进行微调(科布等人在2021年的做法)。除此之外,还有利用神经符号方法的,不过这些方法是使用形式语言(区别于自然语言)来进行相关操作,像罗伊和罗斯、蒋和陈、阿米尼等人以及陈等人在不同年份的相关研究中都有涉及这方面内容。
-
理念二:情境式少样本学习与提示方法:大型语言模型带来了一个很令人期待的情境式少样本学习方式,也就是通过提示来实现学习。具体来讲,以往要是有新任务,通常要针对每个新任务去单独对语言模型的某个检查点进行微调,过程比较繁琐。但现在有了新做法,只要给模型提供几个展示任务具体怎么操作的输入 - 输出示例当作提示内容,模型就能学习如何执行任务了,并且这种方式在很多简单的问答任务中已经取得了不错的效果,布朗等人在2020年的研究就证明了这一点。
1.3 两种理念各自存在的局限性
-
依据增强型训练和微调方法的局限:对于那种依靠生成推理依据来增强训练或者进行微调的方法来说,要创建大量高质量的推理依据是非常耗费成本的。因为这些推理依据可不是简单的输入 - 输出对应关系,其复杂程度远高于常规机器学习里用的普通输入 - 输出对,所以在实际操作中面临较大困难。
-
传统少样本提示方法的局限:而布朗等人在2020年采用的传统少样本提示方法,虽然在一些简单任务上能用,但要是碰到需要推理能力的任务,它的效果就不太理想了。而且即便不断增大语言模型的规模,这个方法在这些任务上也很难有实质性的性能提升,雷等人在2021年的研究也印证了这一情况。
1.4 思维链提示方法的提出与优势
-
方法介绍:面对上述两种理念的局限性,本文采取了一种新做法,把这两种理念的优势结合起来,提出了“思维链提示”这种方法。具体操作就是在给语言模型的提示内容里,采用由<输入,思维链,输出>构成的三元组形式。这里的思维链指的是一系列用自然语言表述的中间推理步骤,通过这些步骤能够一步步推导出最终的输出结果。同时还给出了一个示例提示(在图1中展示),方便理解这种形式。
-
实证评估与优势体现:为了验证这个方法的有效性,研究人员在算术、常识以及符号推理这些不同类型的基准测试上做了实际的评估实验。结果显示,思维链提示方法比以往的标准提示方法表现要好很多,有时候这种优势还特别明显。比如在GSM8K这个针对数学应用题设立的基准测试中(科布等人在2021年的相关研究涉及该测试),使用参数为540B的PaLM模型,采用思维链提示的方式,其性能远远超过了用标准提示的情况,并且达到了新的当前最佳水平。
-
仅提示方法的重要性:这种只通过提示来进行操作的方法很关键,一方面它不需要准备大规模的训练数据集,这样就节省了很多数据收集、整理等方面的成本和精力;另一方面,单个模型的检查点可以依靠这种提示方法去执行多项不同的任务,还不会失去通用性,也就是在不同任务之间切换使用时不会受到太多限制。
-
整体研究意义强调:这项工作整体上凸显了大型语言模型能够通过少量与任务相关的自然语言数据示例进行学习的特点,和以往那种依靠大量训练数据集去自动学习输入和输出背后模式的方式形成了对比,展示出了一种新的、更高效且有优势的模型学习路径。
2 Chain-of-Thought Prompting
2.1 现实思维过程与研究目标
-
现实思维示例:以解决多步骤数学应用题这类复杂推理任务为例,人们在思考时通常会按照一定的逻辑顺序,把整个大问题拆解成一个个中间的小步骤,然后逐个解决这些小步骤,最后才得出最终答案。就像文中所举的例子,先考虑简给妈妈花之后剩余的数量,再进一步考虑给爸爸花之后剩余的数量,逐步推导最终得到答案是7朵。
-
研究目标阐述:本文旨在让语言模型也具备像人类这样生成思维链的能力,也就是让语言模型能够针对一个待解决的问题,生成一组连续且有条理的中间推理步骤,而这些步骤最终能导向正确的答案。并且研究发现,只要在用于少样本提示的示例里给出思维链推理的示范内容,那些达到一定规模的大型语言模型是可以生成思维链的。
2.2 思维链示例及相关说明
-
示例展示:通过图1展示的具体例子可以看到,模型在面对一道数学应用题时,如果运用思维链来思考,就能把原本可能答错的题解出来。在这个例子里,模型生成的思维链其实和人们正常的解题思路很相似,本质上可以看作是一种解题思路。
-
名称选用原因:但之所以还是把它叫做思维链,是因为这样的称呼更能突出它模仿人类一步步推导答案的思维过程这一特点。而且以往的相关研究(纳兰格等人、威格雷夫等人、兰皮宁等人在不同年份的研究)也表明,通常解题思路或者对答案的解释往往是跟在最终答案后面呈现的,思维链着重体现的是推导过程,所以用这个名称更契合。
2.3 思维链提示的吸引人特性
-
问题分解与资源分配特性:
-
原理上,思维链对于模型处理多步骤问题很有帮助,它
-