论文翻译 | (TAKE A STEP BACK) 后退一步:在大型语言模型中通过抽象来调用推理

摘要

        我们介绍了STEP-BACK提示,这是一种简单的提示技术,使LLM能够进行抽象,从而从包含特定细节的实例中派生高级概念和第一原则。使用概念和原则来指导推理,LLM显着提高了他们遵循正确推理路径的能力。我们使用PaLM-2L、GPT-4和Llama2-70B模型进行了STEP-BACK提示的实验,并在各种具有挑战性的推理密集型任务(包括STEM、Knowledge QA和Multi-Hop Reasoning)上观察到显著的性能提升。例如,STEP-BACK prompt将PaLM-2L在MMLU(物理和化学)上的性能分别提高了7%和11%,TimeQA提高了27%,MuSiQue提高了7%。

1 引言

        自然语言处理(NLP)领域正在经历一场突破性的革命,因为基于transformer (Vaswani等人,2017)的大型语言模型(LLM) (Devlin等人,2018;拉斐尔等人,2020;Brown et al, 2020;Anil et al, 2023)。扩大模型大小和预训练语料库(Hoffmann et al, 2022;Chowdhery等人,2022)通过对标度定律的见解,显著提高了模型能力和样本效率(Kaplan等人,2020;Hoffmann等人,2022),以及多步推理(Wei等人,2022a)等应急能力(Wei等人,2022b;Zhou et al ., 2022)和指令遵循(Mishra et al ., 2022b;Wei et al, 2021)。

        尽管取得了巨大的进步,复杂的多步骤推理仍然是一个挑战,即使是最先进的大语言模型。Lightman等人(2023)表明,逐步验证的过程监督是提高中间推理步骤正确性的一种有希望的补救措施。引入了思维链(Chain-of-Thought, Wei et al, 2022b)等技术来产生一系列连贯的中间推理步骤,以提高遵循正确解码路径的成功率。当面对具有挑战性的任务时,人们经常后退一步,进行抽象,以达到指导过程的高级原则,这一事实启发了我们,我们提出了step - back提示,以抽象为基础进行推理,以减少在中间推理步骤中犯错误的机会。

        在许多认知技能中,抽象(Lachmy et al, 2022)对于人类处理大量信息和得出一般原则的能力是无处不在的。例如,开普勒将数千个测量结果压缩成开普勒的行星运动三定律,该定律精确地描述了行星围绕太阳的轨道(罗素,1964)。在关键的决策中,人类发现抽象是有帮助的,因为它提供了一个更广泛的环境视图。这项工作探讨了LLM如何通过抽象和推理两步过程来处理涉及许多低级细节的复杂任务。第一步是向LLM展示如何通过上下文学习退后一步,促使他们为特定示例导出高级抽象,如概念和原则。第二步是利用推理能力在高级概念和原则之上进行推理。我们使用几个示例演示来执行LLM上的STEP-BACK提示。

        我们进行了一系列实验,涉及特定领域的推理任务,如物理和化学,需要事实性知识的知识密集型问答,以及多跳常识推理。我们观察到在PaLM-2L(Anil等人,2023年)上性能显著提升(高达27%),这证明了STEP-BACK PROMPTING在处理复杂任务方面的有效性,这些任务由于推理所需的细节量而具有挑战性。图1展示了本文呈现的所有关键结果的总结。其中一些任务非常具有挑战性:PaLM-2L和GPT-4在TimeQA和MuSiQue上的准确率仅达到约40%。Chain-of-Thought提示在少数任务上略有改进,而STEP-BACK PROMPTING则全面提升了PaLM-2L的性能:在MMLU物理和化学上分别提高了7%和11%,在TimeQA上提高了27%,在MuSiQue上提高了7%。

图1:退步提示的强大性能:我们提出的抽象和推理方案在STEM、知识QA和需要复杂(通常是多跳)推理的多跳推理中具有广泛挑战性的任务有了实质性的改进

        我们进行了各种分析,发现退后步提示比思维链(CoT)提示(Wei et al ., 2022b)和“深呼吸”(TDB)提示(Yang et al ., 2023)能带来更大的绩效提升(高达36%)。我们进行了定性评估,发现Step-Back修复了大部分基本模型的错误(最多~ 40%),同时引入了一小部分新错误(最大~ 12%)。我们还进行了错误分析,发现STEP-BACK prompt产生的大多数错误归因于LLM推理能力的内在局限性,而抽象技能相对容易向LLM演示,这为类似STEP-BACK prompt的方法的未来改进指明了方向。

2 STEP-BACK PROMPTING

        STEP-BACK prompt的动机是观察到许多任务包含大量细节,LLM很难检索相关事实来处理任务。如图2中的第一个例子(顶部)所示,对于“如果温度增加2倍,体积增加8倍,理想气体的压力P会发生什么变化?”的物理问题,LLM在直接对问题进行推理时可能会偏离理想气体定律的第一原理。类似地,“Estella Leopold在1954年8月至1954年11月期间就读于哪所学校?”的问题很难直接解决,因为具体的时间范围有限。在这两种情况下,提出退步问题有助于模型有效地解决问题。
        我们将退步问题定义为在更高抽象层次上从原始问题派生出来的问题。例如,不是直接问“Estella Leopold在特定时期上过哪所学校”,而是问“教育史”(图2底部),这是一个高层次的概念,包含了原来的问题。在本案例中回答“Estella Leopold的教育史”的退步问题,将为推理“Estella Leopold在特定时期就读于哪所学校”提供所有必要的信息。前提是,退后一步的问题通常要容易得多。将推理建立在这样的抽象之上,有助于避免中间步骤中的推理错误,例如图2(左)中来自Chain-of-Thought的示例。简而言之,退步提示包括两个简单的步骤:

  • 抽象:我们不是直接解决问题,而是首先提示LLM询问有关更高级别概念或原则的一般退步问题,并检索有关高级概念或原则的相关事实。为了检索最相关的事实,每个任务的退步问题都是唯一的。
  • 推理:基于有关高级概念或原则的事实,LLM可以对原始问题的解决方案进行推理。我们称之为基于抽象的推理。

图2:由概念和原则指导的抽象和推理两个步骤的STEP-BACK提示说明。上图:MMLU高中物理的一个例子(Hendrycks等人,2020),其中通过抽象检索理想气体定律的第一原理。下图:来自TimeQA的一个例子(Chen et al, 2021),其中教育史的高级概念是抽象的结果。左:PaLM-2L (Anil et al, 2023)未能回答原始问题。思维链提示(Wei et al ., 2022b;Kojima等人,2022)在中间推理步骤(以红色突出显示)中遇到错误。右图:PaLM-2L (Anil et al, 2023)通过STEP-BACK提示成功回答了问题。

        在接下来的章节中,我们将对一系列具有挑战性的任务进行退步提示的实证研究,这些任务包括STEM、知识QA和涉及复杂推理的多跳推理。

3 实验设置

        在这里,我们定义了要进行实验的任务和模型。我们还描述了我们的评估指标和我们考虑的基线。

3.1 任务

        我们实验了以下不同的任务:(a) STEM, (b)知识QA, (c)多跳推理。我们在下面描述了我们考虑的数据集(详见附录B)。

  • STEM:我们评估MMLU和GSM8K用于STEM任务。MMLU (Hendrycks等人,2020)包含一系列跨不同领域的基准,以评估模型的语言理解能力。我们考虑了MMLU的高中物理和化学部分,因为其中涉及到深刻的推理。
  • 知识QA:我们考虑TimeQA (Chen等人,2021),因为它包含复杂的查询,需要具有挑战性的时间敏感知识。我们还对情境QA进行了实验(Zhang & Choi, 2021),这是另一个具有挑战性的开放检索QA数据集,要求模型回答给定时间或地理背景的问题。
  • 多跳推理:我们对MuSiQue (Trivedi等人,2022)和StrategyQA (Geva等人,2021)进行了实验,MuSiQue (Trivedi等人,2022)是一个通过可组合的单跳问题对创建的硬多跳推理数据集,而StrategyQA (Geva等人,2021)具有需要一些策略来解决的开放域问题。

3.2 模型

        我们使用以下最先进的LLM:指令调优的PaLM-2L (Anil等人,2023),GPT4 (OpenAI, 2023)和Llama2-70B (Touvron等人,2023)。

3.3 评估

        传统的评估指标,如准确性、F1分数,对于评估几代最先进的LLM有一定的局限性,因为这些模型通常会生成难以捕捉的长格式答案。相反,我们使用PaLM-2L模型进行评估,其中我们很少提示模型识别目标答案和模型预测之间的等效性。在附录C中有一些例子、提示和其他用于评估的细节。

3.4 基线模型

  • PaLM-2L, PaLM-2L 1-shot: PaLM-2L要么直接与问题一起查询,要么在提示符中包含一个问答演示范例。
  • PaLM-2L + CoT, PaLM-2L + CoT 1-shot:查询PaLM-2L模型时使用零shot CoT提示(Kojima et al ., 2022):问题后附加“Let 's think step by step”。 对于1-shot,提示中提供了一个问答对的演示示例,其中答案采用CoT格式(Wei et al, 2022b)。
  • PaLM-2L + TDB:零射击提示“深呼吸,一步一步地解决这个问题。”(Yang et al ., 2023)为这个问题做了铺垫。
  • PaLM-2L + RAG:对于第5节和第6节,我们使用检索增强生成(RAG),其中检索的段落被LLM用作上下文。
  • GPT-4和Llama2-70B:我们在所有方法的MMLU任务上运行GPT-4和Llama2-70B。此外,我们还在所有任务的所有基线上运行GPT-4。

        我们不将RAG用于STEM任务,因为与其他事实寻求数据集相反,这些任务具有固有的推理性质。所有的推理都是使用贪婪解码完成的。

4 STEM

        我们评估了STEM任务上的退步提示(Hendrycks等人,2020),以衡量我们的方法在高度专业化领域的推理效果。我们将在下面解释在MMLU高中物理和化学以及GSM8K基准测试中应用STEP-BACK提示的实验设置、结果和分析。

4.1 STEP-BACK PROMPTING

        MMLU基准测试中的问题需要更深入的推理。此外,它们还需要理解和应用公式,这些公式通常是物理和化学原理和概念。在这种情况下,我们首先以概念和第一原理的形式向模型展示抽象技巧,如牛顿第一运动定律,多普勒效应,吉布斯自由能等。

4.2 RESULTS

        表1说明了三个模型家族(PaLM-2L、GPT-4和Llama2-70B)的不同设置下的模型性能。报告了5次评估运行的平均精度以及标准偏差(在括号中)。
        PaLM-2L在物理和化学方面的基准性能分别为66.4%和70.9%。
        我们发现,CoT和TDB零样本提示并没有显著提高模型性能,这可能是由于与这些任务相关的固有难度和深度推理。PaLM-2L 1-shot和PaLM-2L + CoT 1-shot也没有比基线提高多少,这突出了向模型演示推理步骤的挑战。相比之下,STEP-BACK提示显著提高了模型性能:与PaLM-2L相比,分别提高了7%和11%。同样,对于GPT4和Llama2-70B模型,STEP-BACK提示在我们测试的所有基线方法中非常具有竞争力,这表明STEP-BACK提示与模型无关。我们在附录A.1中给出了GSM8K的结果。

表1:跨三个模型族的MMLU任务上的STEP-BACK提示的强大性能。CoT:零点思维链提示(Kojima等人,2022),TDB:深呼吸提示(Yang等人,2023)。

这里隐含的问题是“解决这个任务所涉及的物理或化学原理和概念是什么?”我们为模型提供演示,以背诵其自身知识解决任务的相关原则(见附录D.1中的几个示例)。

4.3 消融与分析

少量样本消融研究:首先,在图3中,我们观察到STEP-BACK PROMPTING对于用作演示的(问题,原理)对的少量样本示例的数量是鲁棒的。在单个示例之外增加更多的演示示例并不会带来进一步的改进。这表明通过上下文学习和单个演示就相对容易地检索到相关原理和概念。因此,在整篇论文中,除了消融研究之外,我们使用单个示例进行少量样本提示。

图3:在MMLU高中物理中使用PaLM-2L对少量射击样本进行退步提示精度的消退研究:相对于不同的样本数,性能稳健

        误差分析:将STEP-BACK提示与基线PaLM-2L模型对MMLU高中物理的预测进行比较:我们发现STEP-BACK提示从基线修正了20.5%的错误,同时引入了11.9%的错误。

        为了进一步理解STEP-BACK prompt的错误来源,我们对测试集中所有STEP-BACK prompt的错误预测进行注释,并将其分为5类(每类示例参见附录E.1):

  • 原则错误:错误发生在抽象的步骤中,由模型生成的第一原则是错误的或不完整的。
  • 事实错误:当模型背诵自己的事实知识时,至少有一个事实错误
  • 数学错误:当数学计算涉及推导最终答案时,中间步骤中至少有一个数学错误。
  • 上下文丢失:至少有一个错误,模型回答失去了问题的上下文,偏离了对原始问题的解决。
  • 推理错误:我们将推理错误定义为模型在到达最终答案之前在中间推理步骤中至少犯一个错误。

        所有五种类型的错误都发生在推理步骤中,除了原则错误,它指向抽象步骤的失败。如图4(右)所示,原理误差仅占模型所犯错误的一小部分:90%以上的错误发生在推理步骤。在推理过程中的四种错误类型中,推理错误和数学错误是主要的错误类别。

图4:MMLU高中物理中STEP-BACK提示的错误分析:STEP-BACK提示的五类错误,以Reasoning为主导类。

        这与上面消融研究中的发现相印证,即向LLM展示抽象技能只需要很少的例子。推理步骤仍然是step - back提示执行需要复杂推理的MMLU等任务的瓶颈。特别是对于MMLU物理,推理和数学技能对于成功解决问题至关重要:即使正确检索了第一原理,也涉及深度推理和数学,通过典型的多步骤推理过程推导出正确的最终答案。

5 KNOWLEDGE QA

        我们在需要大量事实知识的问答基准上评估退步提示。知识质量保证对LLM来说是一个挑战。在本节中,我们首先描述了实验设置,然后是STEP-BACK提示的结果和分析。

5.1 STEP-BACK PROMPTING

        我们评估了知识QA类别中TimeQA (Chen et al ., 2021)和情境QA (Zhang & Choi, 2021)上的STEP-BACK提示。我们首先通过上下文演示向法学硕士展示如何进行抽象。图2中的退步问题“Estella Leopold的教育史是什么”是LLM通过几个镜头演示生成的(详见附录D.2)。

        考虑到这些查询的知识密集型性质,我们将检索增强(RAG)与STEP-BACK提示结合使用。退步问题用于检索相关事实,这些事实作为附加上下文(参见表14中的提示),为最后的推理步骤奠定基础。

5.2 结果

        我们在TimeQA的测试集上对模型进行评估。如表2所示,GPT-4和PaLM-2L的基线模型分别达到45.6%和41.5%,凸显了任务的难度。对基线模型应用CoT或TDB零次(和一次)提示没有任何改善。

        相比之下,通过常规检索增强(RAG)增强基线模型将准确率提高到57.4%,突出了任务的事实密集型性质。Step-Back + RAG的结果显示了返回到高级概念的有效性,它支持更可靠的检索增强:TimeQA上的准确性达到了68.7%。

        接下来,我们将TimeQA划分为原始数据集中提供的简单和困难难度级别。正如预期的那样,所有方法在Hard子集上的表现都更差。虽然RAG可以将Easy精度从42.6%提高到67.8%,但对Hard精度的提高要小得多,从40.4%提高到46.8%。这就是STEP-BACK提示通过检索有关高级概念的事实来为最终推理奠定基础的地方:STEP-BACK + RAG进一步将Hard准确率提高到62.3%,优于GPT-4的42.6%。我们假设有关高级概念(如教育历史)的事实比低级细节更容易理解。

        在sitatedqa基准测试中,我们观察到从54.3%到最佳的Step-Back + RAG方法(61%)的中等质量增益,与GPT-4的63.2%有很小的差距。与TimeQA类似,诸如CoT和TDB之类的提示技术对情境qa没有多大帮助。

表2:退步提示在知识QA任务上的强大表现。CoT:思维链提示,TDB:深呼吸提示,RAG:检索增强生成。退步提示可以显著提高性能。

5.3 消融与分析

        少样本消融: 我们在图5(左)中观察到,TimeQA上的STEP-BACK提示的性能对演示中使用的示例数量是稳健的,再次强调了PaLM-2L等模型的上下文学习抽象技能的示例效率。

图5:TimeQA上STEP-BACK提示的消融和误差分析。左:消融相对于少量样本的数量。右图:以推理和RAG为主要错误来源的四类错误。

        错误分析: 图5(右)显示了TimeQA上的STEPBACK提示所产生的所有剩余错误的细分。与第4.3节类似,我们将错误分为:

  • 退步:产生的退步问题对解决任务没有帮助。
  • RAG:尽管退步问题是针对目标的,但RAG无法检索相关信息。
  • 打分错误:裁判模型的评价出现了错误。
  • 推理错误:检索到的上下文是相关的,但是模型仍然无法通过上下文进行推理以得到正确的答案。

        我们发现StepBack很少失败。相比之下,我们发现超过一半的错误是由于推理错误。此外,45%的错误是由于检索正确信息的失败造成的,尽管后退提供的抽象使检索变得容易得多。这反映了TimeQA任务的难度级别。TimeQA的附加误差分析见附录A。

6 MULTI-HOP REASONING

        我们在具有挑战性的多跳推理基准MuSiQue (Trivedi等人,2022)和StrategyQA (Geva等人,2021)上评估了STEP-BACK提示。我们遵循与第5节相同的协议来实现STEP-BACK提示。

        表3显示了MuSiQue和StrategyQA开发集上各种基线的性能。

表3:多跳推理的退步提示结果。CoT:思维链提示,TDB:深呼吸提示,RAG:检索增强生成。平均精度超过5次评估运行,标准偏差包含在括号中。

        在MuSiQue中,PaLM-2L和GPT-4的基准性能较低(PaLM-2L和GPT-4分别为35.5%和38.5%),因为它是一个硬多跳推理基准。相比之下,StrategyQA具有更强的基线(PaLM-2L和GPT-4分别为82.8%和78.3%),可能是因为它是一个二元分类任务。在MuSiQue的情况下,CoT和TDB略微提高了模型性能(分别为~ 3%和3.5%),这可以归因于该任务的固有推理性质,其中这些方法被证明是有帮助的。在StrategyQA的案例中,CoT和TDB没有显著的性能提升,这可能是由于该任务的高基线性能,这些提示方法提高性能的范围有限。通常,one-shot的表现明显低于他们的零次射击方法,这可能归因于潜在的示例偏差(Zhao et al ., 2021;Parmar et al, 2023)。RAG提高了模型性能(MuSiQue和StrategyQA分别提高了4%和2%)。具有抽象能力的退步提示在所有方法中产生了最好的性能:MuSiQue的42.8%和StrategyQA的86.4%,在这两个任务上都明显优于GPT-4。我们在附录a .3中提供了对StrategyQA的详细错误分析。

7 讨论

        抽象帮助人类通过去除无关细节并提炼高水平概念和原理来指导问题解决过程,从而解决复杂任务。STEP-BACK PROMPTING将复杂的任务,如知识密集型问答、多跳推理和科学问题,分解为抽象和推理两个独立步骤。我们通过实证实验证明了抽象对于像PaLM-2L这样的语言模型来说是一项易于通过样本高效的上下文学习获得的技能。基于高水平概念和原理,语言模型可以利用其固有的推理能力来推导解决方案。这减少了在中间步骤推理失败的机会,并被证明可以提高广泛复杂推理任务的性能。尽管取得了成功,但通过错误分析,我们发现推理仍然是语言模型难以获得的技能之一:即使在STEP-BACK PROMPTING大幅减少了任务复杂度之后,它仍然是主要的失败模式。
        然而,抽象并非在所有场景中都是必要或可能的。例如,任务可能简单到如“2000年的美国总统是谁?”这样的问题,在这种情况下,没有必要退后一步并提出一个高水平的问题,因为这类问题的答案已经很容易获得。像“光速是多少?”这样的问题直接指向了第一原理本身。在这种情况下进行抽象并不会有所区别。

8 相关工作

8.1 提示

        few-shot提示(Brown et al ., 2020;Liu et al ., 2023;Mishra等人,2022a;Wei等人,2022b)在不需要更新任何模型参数的情况下,显著提高了模型在一系列任务中的性能。由于其简单性和普遍性,我们的工作退步提示与思维链提示(Wei等人,2022b)和 scratchpad(Nye等人,2021)属于同一类别。但是我们的方法集中在抽象的关键思想上,它的灵感来自于这样一个事实,即退后一步往往有助于人类执行复杂的任务。我们的工作也与背诵增强语言模型有关(Sun et al, 2022);然而,与他们的工作相反,我们显式地执行退步和抽象,并根据手头任务的性质选择使用检索增强。

8.2 分解

        将任务分解为更简单的任务,并解决这些任务来完成原任务已经是一种有效的方法(Zhou et al ., 2022;Patel et al, 2022;Khot等,2022;Press et al, 2022),以提高模型在复杂任务上的性能。在这方面,有几种提示方法取得了成功。相反,我们的STEP-BACK提示工作是使问题更加抽象和高级,这与分解不同,分解通常是原始问题的低级分解。例如,一个常见的问题是,1990年史蒂夫·乔布斯(Steve Jobs)为哪家雇主工作?可能是史蒂夫·乔布斯的工作经历虽然分解会导致一些子问题,比如史蒂夫·乔布斯在1990年在做什么?史蒂夫·乔布斯在1990年被雇佣了吗?如果史蒂夫·乔布斯被雇佣了,他的雇主是谁?此外,抽象的问题,如史蒂夫·乔布斯的工作经历是什么?通常在本质上具有多对一映射,因为许多问题(例如,史蒂夫·乔布斯在1990年为哪家雇主工作?史蒂夫·乔布斯在2000年为哪家雇主工作?)也可以有同样的抽象问题。这与分解相反,分解通常是一对多映射,因为解决给定问题需要多个分解的子问题。

9 结论

        我们介绍了退步提示作为一种简单而通用的方法,通过抽象在大型语言模型中引出深度推理。在LLM上进行的跨事实寻找、常识推理和特定领域推理基准的实验表明,STEP-BACK prompt显著提高了模型性能。我们假设,抽象有助于模型减少幻觉,更好地推理,可能反映了模型的真实本质,而模型的真实本质往往是在回答原始问题时隐藏的。我们希望我们的工作能够激发更多人类启发的方法,以激发大型语言模型的隐藏潜力。

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-10 05:10:36       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-10 05:10:36       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-10 05:10:36       57 阅读
  4. Python语言-面向对象

    2024-07-10 05:10:36       68 阅读

热门阅读

  1. 代码随想录算法训练营第7天

    2024-07-10 05:10:36       27 阅读
  2. 关于美国服务器IP的几个常见问题

    2024-07-10 05:10:36       30 阅读
  3. html&css基础

    2024-07-10 05:10:36       24 阅读
  4. 【云原生】Kubernetes部署高可用平台手册

    2024-07-10 05:10:36       21 阅读
  5. Ubuntu 20.04.6 安装 docker

    2024-07-10 05:10:36       28 阅读
  6. 数据结构第07节:队列

    2024-07-10 05:10:36       25 阅读
  7. 洛谷P2176 [USACO11DEC] RoadBlock S / [USACO14FEB]Roadblock G/S

    2024-07-10 05:10:36       26 阅读
  8. ESP8266 Soft WDT reset

    2024-07-10 05:10:36       30 阅读
  9. Python程序打包成EXE文件指南

    2024-07-10 05:10:36       25 阅读