AI个人学习
和实操指南

CoT(Chain-of-Thought) 链式思维

又称:思维链

Chain-of-Thought的定义和原理

"Chain-of-Thought"(简称CoT)是一种思维方法,其原理是建立一个由一系列关联的思考步骤组成的思考链。该方法通过将思考过程分解成一系列有序的步骤,帮助人们更系统地思考问题和产生创造性的想法。该方法适用于各种思考场景,如创新、决策、问题解决等。CoT方法的核心思想是:将一个大的问题分解成若干个小问题,然后将每个小问题再分解成更小的问题,直到每个问题都可以得到简单、明确的答案。这样一来,人们可以更加清晰地理解问题,并找到更优的解决方案。

我们可以将Chain-of-Thought比作拼图,每一块拼图代表问题的一个方面,只有将这些拼图连接起来,才能获得完整的答案。例如,当我们在学习一门新知识时,可以通过Chain-of-Thought来建立起各个知识点之间的关系,从而更好地理解和记忆这门知识;当我们在解决问题时,可以运用Chain-of-Thought的思维方式,将问题拆解成多个子问题,然后逐步解决,最终得到一个完整的解决方案。

 

大数据领域的解释

思维链(CoT)提示过程是一种最近开发的提示方法,它鼓励大语言模型解释其推理过程。下图显示了 few shot standard prompt(左)与链式思维提示过程(右)的比较。

CoT(Chain-of-Thought) 链式思维-1

出一个新问题,如何让大模型计算这道题绝对正确:
一只鸡每天下六个蛋,我今天收了一次鸡蛋,吃掉了其中一半。第二天我又收了一次鸡蛋,吃了其中两个,第三天又收了一次鸡蛋,请问现在我还剩下多少鸡蛋?

Wei等人(2022)(opens in a new tab中引入的链式思考(CoT)提示通过中间推理步骤实现了复杂的推理能力。您可以将其与少样本提示相结合,以获得更好的结果,以便在回答之前进行推理的更复杂的任务。

思维链的主要思想是通过向大语言模型展示一些少量的 exemplars,在样例中解释推理过程,大语言模型在回答提示时也会显示推理过程。这种推理的解释往往会引导出更准确的结果。

 

现实生活中的例子

在日常生活中,CoT 链式思维也随处可见。比如,我们在做菜的时候,需要先准备材料,然后进行烹饪,最后盛出来。这就是一个典型的 CoT 链式思维的过程。再比如,我们在学习一个新知识点的时候,需要先了解基础知识,然后再学习进阶内容

我们可以将Chain-of-Thought比作拼图,每一块拼图代表问题的一个方面,只有将这些拼图连接起来,才能获得完整的答案。例如,当我们在学习一门新知识时,可以通过Chain-of-Thought来建立起各个知识点之间的关系,从而更好地理解和记忆这门知识;当我们在解决问题时,可以运用Chain-of-Thought的思维方式,将问题拆解成多个子问题,然后逐步解决,最终得到一个完整的解决方案。

 

优缺点

hain-of-Thought(CoT)是一种思维方法,它通过将思考的过程分解成一系列有机链接的步骤来提高思考的效率和质量。它的优点包括:

1. 帮助人们更好地组织和控制思想流程,从而更好地解决问题。
2. 支持连续思考,促进创造性思维。
3. 通过追踪思考过程,可以更好地检查和优化思考质量。
4. 可以被用来解决各种复杂问题,从组织到创新等。

CoT的缺点:

1. CoT需要大量知识储备和分析能力,不适合初学者
2. CoT需要耗费时间和思考精力,在紧迫的时间限制下难以使用
3. 每个人的思考模式可能不同,因此对于不同人来说CoT可能不是最好的思考方法。

 

 

COT方法分类

 

Least-to-Most(少到多提示)

CoT 在容易的问题上效果很好,但在难的问题上效果不显著。而 Least-to-Most Prompting 主要是用来解决难的问题。

 

Least-to-Most Prompting

Least-to-Most Prompting 思路也很简单,就是先把问题分解成更简单的多个子问题,然后再逐个回答子问题,最终获得原始问题的答案:

CoT(Chain-of-Thought) 链式思维-1

 

除了上面的技巧,另一个技巧是在prompt中加入了少量样例(few-shot),这样可以显著提升效果。这个技巧在CoT中也有,是个提升效果很通用的方法。

论文中在具体实现时,针对不同的任务,主要设计了以下两种prompt结构(省略了prompt中的少量样例):

 

1.Let's break down this problem:

这种方式是调用一次LLM,让它先生成子问题,再生成每个子问题的答案,以及最终答案。所以主要靠样例来规范LLM的输出。

CoT(Chain-of-Thought) 链式思维-1

 

2.To solve “**<problem>**”, we need to first solve: “**<subproblem1>**”, “**<subproblem2>**”, “**<subproblem3>**”, …

这种方式是迭代生成子问题的答案,汇总所有信息后再生成最终答案。

CoT(Chain-of-Thought) 链式思维-1

 

我理解prompt使用的具体提示词(**break down** or **first solve**)不重要,重要的是先分解成子任务,再逐个解答的思路。

效果:

CoT(Chain-of-Thought) 链式思维-1

 

CoT(Chain-of-Thought) 链式思维-1

 

CoT(Chain-of-Thought) 链式思维-1

AI轻松学

普通人的AI入门指南

帮助你以低成本、零基础学会如何利用AI工具。AI就像办公软件一样,是每个人的必备技能。 掌握AI会让你在求职中占据优势,在未来的工作和学习中事半功倍。

查看详情>
未经允许不得转载:首席AI分享圈 » CoT(Chain-of-Thought) 链式思维
分享到

首席AI分享圈

首席AI分享圈专注于人工智能学习,提供全面的AI学习内容、AI工具和实操指导。我们的目标是通过高质量的内容和实践经验分享,帮助用户掌握AI技术,一起挖掘AI的无限潜能。无论您是AI初学者还是资深专家,这里都是您获取知识、提升技能、实现创新的理想之地。

联系我们