2023-03-30 19:09:04 +00:00
|
|
|
|
# 自我一致性
|
|
|
|
|
|
|
|
|
|
也许在提示工程中更高级的技术之一是自我一致性。由[Wang等人(2022)](https://arxiv.org/pdf/2203.11171.pdf)提出,自我一致性旨在“替换链式思维提示中使用的天真贪婪解码方法”。其想法是通过少样本CoT采样多个不同的推理路径,并使用生成结果选择最一致的答案。这有助于提高CoT提示在涉及算术和常识推理的任务中的性能。
|
|
|
|
|
|
|
|
|
|
让我们尝试以下算术推理示例:
|
|
|
|
|
|
|
|
|
|
*提示:*
|
|
|
|
|
```
|
2023-04-04 04:47:56 +00:00
|
|
|
|
当我6岁时,我的妹妹是我的一半年龄。现在我70岁了,我的妹妹多大?
|
2023-03-30 19:09:04 +00:00
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
*输出:*
|
|
|
|
|
```
|
|
|
|
|
35
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
输出是错误的!我们如何通过自我一致性来改进这个问题?让我们试试。我们将使用Wang等人2022年的少量样本范例(表17):
|
|
|
|
|
|
|
|
|
|
*提示:*
|
|
|
|
|
```
|
|
|
|
|
Q:林中有15棵树。林业工人今天将在林中种树。完成后,将有21棵树。林业工人今天种了多少棵树?
|
|
|
|
|
A:我们从15棵树开始。后来我们有21棵树。差异必须是他们种树的数量。因此,他们必须种了21-15 = 6棵树。答案是6。
|
|
|
|
|
|
|
|
|
|
Q:停车场有3辆汽车,又来了2辆汽车,停车场有多少辆汽车?
|
|
|
|
|
A:停车场已经有3辆汽车。又来了2辆。现在有3 + 2 = 5辆汽车。答案是5。
|
|
|
|
|
|
|
|
|
|
Q:Leah有32块巧克力,她的姐姐有42块。如果他们吃了35块,他们总共还剩多少块?
|
|
|
|
|
A:Leah有32块巧克力,Leah的姐姐有42块。这意味着最初有32 + 42 = 74块巧克力。已经吃了35块。因此,他们总共还剩74-35 = 39块巧克力。答案是39。
|
|
|
|
|
|
|
|
|
|
Q:Jason有20个棒棒糖。他给Denny一些棒棒糖。现在Jason只有12个棒棒糖。Jason给Denny多少棒棒糖?
|
|
|
|
|
A:Jason有20个棒棒糖。因为他现在只有12个,所以他必须把剩下的给Denny。他给Denny的棒棒糖数量必须是20-12 = 8个棒棒糖。答案是8。
|
|
|
|
|
|
|
|
|
|
Q:Shawn有五个玩具。圣诞节,他从他的父母那里得到了两个玩具。他现在有多少个玩具?
|
|
|
|
|
A:他有5个玩具。他从妈妈那里得到了2个,所以在那之后他有5 + 2 = 7个玩具。然后他从爸爸那里得到了2个,所以总共他有7 + 2 = 9个玩具。答案是9。
|
|
|
|
|
|
|
|
|
|
Q:服务器房间里有9台计算机。从周一到周四,每天都会安装5台计算机。现在服务器房间里有多少台计算机?
|
|
|
|
|
A:从周一到周四有4天。每天都添加了5台计算机。这意味着总共添加了4 * 5 =
|
|
|
|
|
20台计算机。一开始有9台计算机,所以现在有9 + 20 = 29台计算机。答案是29。
|
|
|
|
|
|
|
|
|
|
Q:Michael有58个高尔夫球。星期二,他丢失了23个高尔夫球。星期三,他又丢失了2个。星期三结束时他还剩多少个高尔夫球?
|
|
|
|
|
A:Michael最初有58个球。星期二他丢失了23个,所以在那之后他有58-23 = 35个球。星期三他又丢失了2个,所以现在他有35-2 = 33个球。答案是33。
|
|
|
|
|
|
|
|
|
|
Q:Olivia有23美元。她用每个3美元的价格买了五个百吉饼。她还剩多少钱?
|
|
|
|
|
A:她用每个3美元的价格买了5个百吉饼。这意味着她花了5
|
|
|
|
|
|
2023-04-04 04:47:56 +00:00
|
|
|
|
Q:当我6岁时,我的妹妹是我的一半年龄。现在我70岁了,我的妹妹多大?
|
2023-03-30 19:09:04 +00:00
|
|
|
|
A:
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
*输出1:*
|
|
|
|
|
```
|
2023-04-04 04:47:56 +00:00
|
|
|
|
当我6岁时,我的妹妹是我的一半年龄,也就是3岁。现在我70岁了,所以她是70-3 = 67岁。答案是67。
|
2023-03-30 19:09:04 +00:00
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
*输出2:*
|
|
|
|
|
```
|
2023-04-04 04:47:56 +00:00
|
|
|
|
当叙述者6岁时,他的妹妹是他年龄的一半,也就是3岁。现在叙述者70岁了,他的妹妹应该是70-3 = 67岁。答案是67。
|
2023-03-30 19:09:04 +00:00
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
*输出3:*
|
|
|
|
|
```
|
2023-04-04 04:47:56 +00:00
|
|
|
|
当我6岁时,我的妹妹是我的一半年龄,也就是3岁。现在我70岁了,所以她是70/2 = 35岁。答案是35。
|
2023-03-30 19:09:04 +00:00
|
|
|
|
```
|
|
|
|
|
|
2023-04-04 04:47:56 +00:00
|
|
|
|
计算最终答案涉及几个步骤(详见论文),但为了简单起见,我们可以看到已经出现了大多数答案,因此这基本上将成为最终答案。
|