引入
今天来看一篇关于 CoT(Chain-of-Thought) 的综述。
近年来,多种不同的提示策略(prompting strategies)已经让大模型在很多传统 NLP benchmarks 上取得了显著的性能提升。然而,一些常规的提示策略难以提高大模型在多步推理任务(step-by-step)上的表现。
比如数学推理任务,假设有这样一个多步数学推理问题:小王有32块巧克力,他姐姐有42块。如果他们一起吃掉了35块,现在他们一共剩下多少块巧克力?
这个时候,如果采用常规的直接提示策略的话,模型可能会直接尝试猜测或给出一个模糊的答案,而不会正确地进行多步骤计算。也就是说常规提示策略通常不会包含如何逐步解决问题的细节信息,因此模型就很可能会忽略中间步骤,直接给出错误或不完整的答案。
例如,模型可能会输出错误的结果,如“74”或“35”,因为它没有清晰地分解和处理问题的各个部分。
所以,对于这种需要多步骤计算的任务,我们希望模型能够具备和人类一样的逐步推理的自然思维和能力。
由此,CoT 被提出,它旨在帮助大模型解决多步推理的问题。
简单来讲,CoT 是一种逐步的、连贯的思维链条,通过 CoT Prompts 策略,能够很好的提升大模型的回答效果。这是因为 CoT 通过引导模型处理中间步骤,逐步地将复杂问题分解为更小的子问题,最终推导出正确答案。采用这种方法,大模型不仅在多步骤推理任务中的表现得到了显著改善,还在其它推理基准测试上取得了惊人的提升。
回到上面的例子,模型需要先计算出总数(32 + 42 = 74),然后再从中减去35,最终得到答案39。所以 CoT Prompt 注重强调的是一步步推理的思维过程。
这篇综述全面的分析了 CoT Prompt 的效果,感觉作者的写作思路挺好的,除了对 CoT 进行形式化的定义外,还总结了其使用流程,为后续的分析和讨论奠定了基础。作者团队总结了四个显著影响 CoT 效果的关键因素:任务类型、提示设计、扩展策略和模型。最后,作者还讨论了 CoT 当前面临的挑战以及未来的方向。
CoT 的定义和流程
原文对 CoT 的定义描述如下:
CoT prompts are special designed input sequences to instruct the model to generate co-herent series of intermediate reasoning steps.
即:CoT Prompts 是专门设计的输入序列,用于指导模型生成连贯的一系列中间推理步骤。
进一步拆开解释:
- “专门设计的输入序列”:
- 这里的“输入序列”指的就是提示词,通过专门的精心设计,以确保它们能够有效地引导模型在回答复杂问题时,按照预定的逻辑进行思考。
- 例如,在解决一个数学问题时,输入序列可能会包含详细的步骤提示,从问题理解到每个计算步骤,最终得出答案。
- “指导模型生成连贯的中间推理步骤”:
- CoT 的核心思想就是逐步推理,它与直接给出答案不同,CoT Prompts 通过引导模型生成一系列有逻辑联系的中间步骤,使模型能够“思考”并推导出最终的答案。
- 这些中间步骤是连贯的,也就是说,每一个步骤都与前一步骤紧密相关,形成一个清晰的推理链条。通过这种方式,模型不仅能回答最终问题,还能展示出完整的推理过程,从而提高复杂任务的准确性。
CoT Prompts 工作原理如下图所示:
图1:利用推理链(Chain-of-Thought, CoT) 提示策略的通用流程示意图。
总的来说,就是针对一个特定任务,设计相关的 CoT Prompts,CoT Prompts 的关键在于它不只是让模型输出答案,而是通过分步推理的方式,生成一个完整的、连贯的推理过程。并且在可选的扩展策略(Extension Strategies)的帮助下,使得模型根据输入的提示来预测答案(通常是预测带有CoT 的推理过程),这不仅可以提高复杂问题的解决准确性,还可以让人类理解模型是如何得出这个答案的。
其中,四个影响 CoT 的关键因素分别为:
- Tasks
- 不同类型的推理任务包括数学推理、日期推理和常识推理等。每种任务都对应着一个问题,这些问题通过 CoT Prompts 被分解为多个步骤来解决。
- CoT Prompts
- CoT Prompts 通过分步骤的方式引导模型逐步解决问题。这个过程可以让模型更好地理解和处理复杂的推理任务。
- Extension Strategies
- 包括子问题划分、预测集成和外部搜索引擎。
- 子问题划分就是将复杂的任务分解为更小的子任务,以便逐步解决,这一策略在数学推理等任务中尤为重要。
- 预测集成则用于将多个模型或多次推理的结果组合在一起,生成最终的答案,如日期推理中得到的日期结果。
- 外部搜索引擎用于在模型之外获取额外的信息支持,如在常识推理中寻找相关人物的生卒年。
- Models
下图是各种 CoT 策略的分类:
图 2:思维链提示策略分类法