ToT: 利用大语言模型进行有意识的问题解决(上)

ToT

  • 摘要
  • 介绍
  • 利用大语言模型进行有意识的问题解决
    • 1. 思维分解
    • 2. 思维产生 G(p,s,k)
    • 3. 状态评估V(p,S)
    • 4. 搜索算法
  • 实验
  • 相关工作
  • 讨论

原文:

ToT: 利用大语言模型进行有意识的问题解决(上)_第1张图片

摘要

语言模型正在迅速成为一般问题解决的部署,但在推理过程中仍然局限于 标记级别(token-level) ,在推理中从左到右做出决定的过程。这意味着语言模型有许多缺陷,在需要探究的任务,需要战略展望的任务,或者初始决定有着重要意义的任务。

token-Level是指以token为单位进行处理和分析的级别。
一个token可以是一个单词,一个字符,一个标点符号或者是一个子词,具体取决于所使用的tokenization方法和任务的要求。
在文本处理过程中,首先需要将原始文本分割成token,这个过程称为tokenization。然后,可以在token-Level上进行各种操作,例如 词性标注、命名实体识别、情感分析、机器翻译等。在这些任务中,模型会对每个token进行处理,而不是整个文本。

left-to-right decision-making 从左到右决策
在这种决策中,决策者会按照一定的顺序或步骤逐一考虑和做出决策。这种顺序可能是基于时间、优先级、逻辑顺序或者其他因素。从左到右的决策过程通常是线性的,即每个决策点都依赖于前一个决策点的结果。

为了克服这种情况,引入了一个新的语言模型推理框架——TOT,它概括了传统的“思维链”方法来提示语言模型,并实现了对 连贯的文本单元 作为解决问题的中间步骤的探索。

ToT允许LM通过考虑多种不同的推理路径来执行需要深思熟虑的任务,还会通过值评估来选择下一步该怎么做,当需要作出整体决策时,还需要进行前瞻和回溯。

该文实验表明,ToT在三个新型任务上明显提高了语言模型解决问题的能力。

介绍

目前一些语言模型如GPT、PaLM在处理推理任务的性能越来越好。但是这些进步的基础仍然是产生文本的原始的自回归机制(autoregressive mechanism),它通过从左到右的方式逐一做出标记级别的决策。那么这样一个简单的机制足以让LM朝着产生解决问题的方向构建吗?如果不的话,什么问题将挑战当前的模式,已经应该有什么替代机制?

本文从“双过程”(dual automatic)模式研究入手回答上述问题。双过程模式认为,人类有两种产生决策的方式:

  1. 一种快的,自动的,无意识的模型
  2. 一种慢的,深思熟虑的,有意识的模型

LM简单的关联标记级别选择类似于1,因此可能受益于深思熟虑的2的规划过程的增强:(1)对当前选择进行维护和探索不同的选择,而不是只考虑一个;(2)评估这个选择当前的状态,并积极展望未来或回溯,以做出更全局性的决策。

从探索规划过程获得灵感,Newell将问题解决描述为通过组合问题空间(表示为树)进行搜索。为此我们提出使用语言模型解决一般问题的思维树。

当现有方法为解决问题提供连续的语言序列样本时,TOT主动维护一个思维树,其中每个思想都是一个连贯的语言序列,作为解决问题的中间步骤。它允许LM通过深思熟虑的推理过程来自我评估这些不同中间思维过程来解决问题,而这些深思熟虑的推理过程也就是实例化的语言。这种通过LM自我评估和审议实现搜索启发式新颖的,因为以前的搜索启发式要么是编程要么是学习。最后我们将这种基于语言的生成和评估不同思想的能力与搜索算法相结合,如广度优先搜索和深度优先搜索,这允许通过前瞻或回溯来系统地探索思维树。

利用大语言模型进行有意识的问题解决

树的节点代表部分解,分支对应于修改它们的操作(即每个节点代表一个思维状态或想法,边表示不同思维状态之间的关系和转换)。选择哪一个分支由启发式决定的,这些启发式有助于导向问题空间并引导问题解决者找到解决方案。
这一观点强调了使用LM解决一半问题的现有方法的两个关键缺点:

  1. 在局部上,它们没有探索思维过程中的不同延续——树的分支。
  2. 在整体上,它们不包含任何类型的规划,前瞻或回溯来帮助评估这些差异——这种启发式引导的搜索似乎是人类解决问题的特征。

为了解决这些缺陷,我们介绍了TOT,一种允许LMs在思维之上探究多条推理路径的范式。

TOT把任何问题都框定为对一课树的搜索,每一个节点是一个状态
s=[x,z1…i],代表一个部分输入和思想序列非常丰富解决方案。
TOT的一个具体实例化涉及回答四个问题:

  1. 如何将中间过程分解为思维步骤;
  2. 如何在每个状态中产生潜在的思维;
  3. 如何启发式的评估状态;
  4. 使用什么搜索算法
    ToT: 利用大语言模型进行有意识的问题解决(上)_第2张图片

1. 思维分解

虽然CoT在没有明显的分解的情况下连贯地对思想进行采样,但ToT利用了问题的属性去设计和分解中间的思维步骤。
一个想法可以是几个单词(交叉词)、一行方程式(24游戏)或一整段写作计划(创意写作)。一般来说,一个思维应该足够“小”,以便LMs可以产生有希望的和多样化的样本(例如,生成一本书通常太“大”而不连贯b),但又应该“足够大”,使得LMs可以评估她对于问题解决的前景(例如,生成一个令牌通常太“小”而无法评估)。

2. 思维产生 G(p,s,k)

给定一个树的状态,我们思考两个策略来为下一个思考步骤生成k个候选:

  1. 从COT提示中抽取 i.i.d 思维样本(创意写作):
    思维空间(thought space) 丰富时(例如,每个思维都是一个段落),按照这种方法效果较好,并且i.i.d.样本导致多样性,;

i.i.d独立同分布
指在思维空间中的独立且同分布的思维状态或想法
这意味着在思维空间中,每个思维状态或想法是相互独立的,一个状态或想法的出现不会影响其他状态或想法的出现。同时,这些思维状态或想法也具有相同的分布,即它们在思维空间中以相同的频率或概率出现。

思维空间thought space
即所有可能的思维状态或思考路径的集合。它代表了一个人或系统在思考问题、生成想法或进行推理时可以进入的各种可能性。思维空间可以是非常广阔的,包含了各种不同概念、关系和推断。
在ToT中,通过构建一个树状结构来表示思维空间,每个节点代表一个思维状态或想法,边表示不同思维状态之间的关系和转换。通过遍历这个树状结构,可以探索和展开不同的思维路径,从而生成新的想法或解决问题。

  1. 使用 “建议提示” 按顺序提出想法(24游戏,交叉词):
    当思维空间更加受限制时(例如:每个想法只是一个单词或一行),这种方法更好,因此在同一上下文中提出不同的想法可以避免重复。

propose prompt建议提示
指的是在思维空间中提出一个思考路径或想法的提示。在ToT框架中,propose prompt用于在树的某个节点处生成一个新的子节点,以扩展思维空间并引导后续的思考。
propose prompt 可以是一个问题、主题、假设或任何其他形式的提示,它会激发模型在当前思维状态下产生新的想法或展开更深层次的思考。通过不断提出粗新的提示,ToT可以模拟出更加复杂和丰富的思考过程,从而生成更多多样化和有深度的回答或内容。

3. 状态评估V(p,S)

给出不同状态的边界,状态评估器评估它们做出的解决问题的过程,作为搜索算法的启发式算法,以确定要继续探索哪些状态以及以何种顺序进行探索。尽管启发式是一个解决搜索问题的标准的方法,但它们通常是编程的或学习的。我们提出第三种选择: 通过使用LM来有意识地对不同的思维状态进行推理和思考。在合适的时候,这种故意的启发式可以比编程规则更灵活,也比学习的模型更具样本效率。与思维生成器类似,我们考虑两种策略来独立或一起评估状态:

  1. 独立地评估每一个状态:
    在这里插入图片描述
    其中值提示导致状态s生成标量值w或者分类(例如确定/可能/不可能),该分类可以启发式的转化为值。这种评价推理的原因可能因问题和思维步骤而异。在这项工作中,我们发现通过少量前瞻模拟(例如,通过5+5+14快速确认5、5、14可以达到24,或者)加上常识(例如,123太小而无法达到24,或没有单词可以以“tzxc”开头)来探索评估。尽管前者可能提示“好的”状态,但是后者可以帮忙排除“不好的”状态。这种评估不需要完美,仅需要大概。
  2. 跨状态投票:
    在这里插入图片描述
    根据在投票提示中有意比较s中的不同状态,选出“好”状态 s*~pvote(s* |S),当问题的成功很难直接评估时(例如,段落的连贯性),很自然地会比较不同的部分解决方案,并投票选出最有希望的解决方案。这类似于 step-wise self-consistency思维过程中逐步确保自洽性过程的思想,即将“探索哪个状态”作为最终选择QA,并使用LM样本进行投票。

对于这两种策略,我们可以多次提示LM聚合评或投票结果,以换取时间,资源,成本,从而获得更忠实或稳健的启发式方法。

step-wise self-consistency
指的是在思维过程中逐步确保自洽性的过程。在思考问题或解决复杂任务时,人们经常会分解步骤进行推理和思考,以确保每一步都是相互一致和合理的。
在ToT中,step-wise self-consistency是指在思维模型中逐步推进,确保每一个状态和节点都是与前一步的状态想一致和合理。

4. 搜索算法

最后,在TOT框架内,可以依赖树形结构即插即用不同的搜索算法。我们探索了两种相对简单的搜索算法,并为未来的工作保留了更先进的算法。
(a)广度优先搜索算法(BFS):
(b)深度优先搜索算法(DFS):

从概念上来看,TOT作为一种使用LM来解决问题的方法,有许多好处:
1.生成能力。IO,COT,COT- SC和自我增强,可以作为TOT的特殊案例(例如,有限深度和广度的树)。
2.模块化。基于LM,也是基于思维分解,产生,评估和搜索过程都可以独立的变化。
3.适应性。可以适应不同问题属性,LM的功能和资源约束。
4.方便。不需要额外的训练,只需要一个预训练的LM就可以满足。
另一个模块将展示这些概念的好处如何转换成在不同问题上的强大经验表现。

实验

相关工作

讨论

你可能感兴趣的:(论文,语言模型,人工智能,自然语言处理)