AB
AiBoss站
百科

什么是思维链自一致性(Self-Consistency)?

思维链自一致性是一种替换思维链提示中贪心解码的解码策略:先对多条推理路径采样,再对采样路径做边缘化,选出最一致的答案。该策略由 arXiv 论文《Self-Consistency Improves Chain of Thought Reasoning in Language Models》提出,论文报告其在多个算术与常识推理基准上提升了思维链提示的表现。

思维链自一致性(Self-Consistency)是一种用于语言模型复杂推理的解码策略,它替换思维链提示(chain-of-thought prompting)中原本使用的朴素贪心解码(greedy decoding)。它的核心做法是:先采样出一组多样化的推理路径,而不是只取贪心得到的那一条,然后通过对这些采样路径做边缘化(marginalizing out the sampled reasoning paths),选出其中最为一致的答案。它要解决的问题是:单一贪心解码只走一条推理路径,一旦这条路径在某一步出错,最终答案就会随之出错;而复杂推理问题通常存在多种不同的思考方式,它们最终会指向同一个唯一正确答案,自一致性正是利用这一直觉来提升答案的可靠性。

为什么重要

在自一致性出现之前,让语言模型做复杂推理的主流做法是思维链提示:在提示中给出若干带有中间推理步骤的示例,引导模型在给出答案前先写出推理过程。论文指出,思维链提示结合预训练大语言模型,已经在复杂推理任务上取得了令人鼓舞的结果。但这类做法在解码阶段通常采用贪心解码,也就是每一步都取概率最高的词,最终只产生一条推理路径。

贪心解码的问题在于它把全部赌注压在单条路径上。推理是一个逐步展开的过程,前面某一步的措辞或中间结论出现偏差,后续步骤会沿着这条已经偏离的路径继续推进,错误被不断放大,最后得到一个错误答案。由于只采样一次,模型内部其实具备的其他解题思路完全没有被利用起来。

自一致性提出的动机正来自一个观察:一个复杂的推理问题往往不止一种解法,多种不同的思考路径可以各自独立地走到同一个正确答案。如果只取其中一条路径,就等于放弃了这种「多路径汇聚」所提供的冗余信息。把多条路径都采样出来,再看它们最终答案是否一致,就能在一定程度上把偶然走偏的路径过滤掉。论文称,这种解码策略在一系列流行的算术与常识推理基准上,以相当明显的幅度提升了思维链提示的表现。

工作机制

按照论文的描述,自一致性的流程可以拆成两个阶段:采样与聚合。

  1. 替换解码方式。把思维链提示中原本的贪心解码换成采样解码。贪心解码是确定性的,同一个提示只会得到一条路径;采样解码则带有随机性,同一个提示重复运行会得到不同的推理路径。
  2. 采样一组多样化的推理路径。对同一个问题多次运行模型,每次得到一条包含中间推理步骤和最终答案的路径。论文强调采样出的路径应当是「多样化的」,也就是说这些路径在推理方式上彼此不同,而不是几乎相同的复述。多样性是后续聚合能起作用的前提。
  3. 对采样路径做边缘化。把每条采样路径看作对答案的一个投票,统计各个最终答案出现的频次,把推理路径本身边缘化掉,只保留答案层面的分布。
  4. 选出最一致的答案。在聚合后的答案分布中取出现次数最多的那个答案作为最终输出。这里的「一致」指的是多条独立采样路径在最终答案上达成一致,而不是要求推理过程本身一致。

这一机制的关键假设是:正确的答案更容易被多条不同的推理路径同时得到,而错误的答案往往只在少数路径上偶然出现。因此,答案层面的多数投票可以起到类似集成(ensemble)的作用,把单条路径的随机错误平滑掉。需要注意的是,聚合发生在最终答案上,中间推理步骤并不需要彼此相同,甚至可能互相矛盾,只要它们指向同一个答案即可。

与贪心解码相比,自一致性付出的代价是计算量:要得到 N 条路径,就需要运行 N 次前向推理,成本大致随采样数量线性增长。论文并未在摘要中给出关于采样数量的具体建议,因此具体的采样条数取舍需要参考论文正文。

典型例子

论文在摘要中列出了用于评估自一致性的若干基准,并给出了相对思维链提示的提升幅度。这些基准覆盖算术推理与常识推理两类任务:

基准论文报告的自一致性带来的提升
GSM8K+17.9%
SVAMP+11.0%
AQuA+12.2%
StrategyQA+6.4%
ARC-challenge+3.9%

论文摘要将这些结果描述为「以相当明显的幅度」提升思维链提示的表现。这些数字来自该论文自身的实验设置,属于论文作者报告的结果,并不构成对任意模型、任意任务都成立的普遍结论。

从论文的提交历史可以看到该工作的演进过程:论文于 2022 年 3 月 21 日首次提交(v1),此后在 2022 年 4 月 6 日的 v2 版本中补充了 PaLM 的结果,在 2022 年 10 月 4 日的 v3 版本中补充了 UL2 的结果,2023 年 3 月 7 日的 v4 为 ICLR 2023 的定稿版本。论文作者为 Xuezhi Wang、Jason Wei、Dale Schuurmans、Quoc Le、Ed Chi、Sharan Narang、Aakanksha Chowdhery 与 Denny Zhou,发表于 ICLR 2023,学科分类为计算与语言(cs.CL)与人工智能(cs.AI)。

边界与常见误解

第一,自一致性不是一种新的提示格式,也不是对模型本身的改动。论文把它定位为一种解码策略,用来替换思维链提示中的贪心解码。它依赖思维链提示已经能产生带推理步骤的输出,如果模型本身不产生中间推理步骤,或者任务不需要多步推理,这套机制的前提就不成立。

第二,「一致」指的是答案层面的一致,不是推理过程的一致。多条采样路径的中间步骤可以完全不同,甚至互相冲突,只要最终答案相同就会被计入同一个答案的票数。把它误解为「要求模型给出前后一致的推理过程」是对该方法的常见误读。

第三,它并不能保证选出正确答案。多数投票只是一种聚合规则,如果错误答案在采样路径中恰好占多数,聚合结果仍会是错的。论文的直觉是正确答案更容易被多条不同路径得到,但这是一个经验性的倾向,而非逻辑上的保证。

第四,它带来额外的推理成本。要获得多条路径就必须多次运行模型,采样数量越多,计算开销越大。论文摘要没有给出关于成本与收益权衡的具体结论,实际使用中的采样数量需要结合具体场景判断。

第五,论文报告的各项提升幅度是在特定基准与特定实验设置下测得的,属于该论文的实验结论。不同模型规模、不同提示写法、不同任务下是否仍能获得同等幅度的提升,不能直接从这些数字外推。

参考资料