少数样本提示
虽然大型语言模型展现出卓越的零样本能力,但在零样本设置下处理更复杂的任务时仍然力有不逮。少数样本提示可以作为一种技术,通过在提示中提供示例来引导模型,使其获得更好的表现。这些示例作为后续模型生成响应时的条件。
根据 Touvron 等人 (2023) (在新标签页中打开) 的研究,少数样本特性首次出现在模型扩展到足够大小时 (Kaplan 等人,2020) (在新标签页页中打开)。
让我们通过 Brown 等人 (2020) (在新标签页页中打开) 提出的一个示例来演示少数样本提示。在该示例中,任务是正确地在一个句子中使用一个新词。
提示
A "whatpu" is a small, furry animal native to Tanzania. An example of a sentence that uses the word whatpu is:
We were traveling in Africa and we saw these very cute whatpus.
To do a "farduddle" means to jump up and down really fast. An example of a sentence that uses the word farduddle is:
输出
When we won the game, we all started to farduddle in celebration.
我们可以观察到,模型通过仅提供一个示例(即 1 样本)就学会在某种程度上执行了任务。对于更困难的任务,我们可以尝试增加示例数量(例如,3 样本、5 样本、10 样本等)。
遵循 Min 等人 (2022) (在新标签页页中打开) 的发现,以下是关于进行少数样本提示时,关于示例/例子的更多技巧:
- "标签空间和由示例指定的输入文本的分布都很重要 (无论标签对于单个输入是否正确)"
- 你使用的格式也对性能起着关键作用,即使你只使用随机标签,这也比完全没有标签要好得多。
- 额外结果表明,从真实标签分布(而不是均匀分布)中选择随机标签也有帮助。
让我们尝试几个示例。首先让我们尝试一个带有随机标签的示例(这意味着标签“Negative”和“Positive”被随机分配给输入)。
提示
This is awesome! // Negative
This is bad! // Positive
Wow that movie was rad! // Positive
What a horrible show! //
输出
Negative
即使标签是随机的,我们仍然得到了正确的答案。请注意,我们也保留了格式,这也有帮助。事实上,经过进一步实验,似乎我们正在测试的更新的 GPT 模型对随机格式也变得更加鲁棒。示例
提示
Positive This is awesome!
This is bad! Negative
Wow that movie was rad!
Positive
What a horrible show! --
输出
Negative
上述格式没有一致性,但模型仍然预测出了正确的标签。我们需要进行更彻底的分析,以确认这是否适用于不同且更复杂的任务,包括不同变体的提示。
在我们的新 AI 课程中了解更多关于少数样本提示和高级提示方法。 立即加入! (在新标签页中打开) 使用代码 PROMPTING20 额外享受 8 折优惠。
少数样本提示的局限性
标准的少数样本提示对许多任务有效,但仍然不是一种完美的技术,尤其是在处理更复杂的推理任务时。让我们演示一下原因。您还记得之前我们提供以下任务的示例吗?
The odd numbers in this group add up to an even number: 15, 32, 5, 13, 82, 7, 1.
A:
如果我们再次尝试,模型输出如下:
Yes, the odd numbers in this group add up to 107, which is an even number.
这不是正确的响应,这不仅突出了这些系统的局限性,也表明需要更高级的提示工程技术。
让我们尝试添加一些示例,看看少数样本提示是否能改善结果。
提示
The odd numbers in this group add up to an even number: 4, 8, 9, 15, 12, 2, 1.
A: The answer is False.
The odd numbers in this group add up to an even number: 17, 10, 19, 4, 8, 12, 24.
A: The answer is True.
The odd numbers in this group add up to an even number: 16, 11, 14, 4, 8, 13, 24.
A: The answer is True.
The odd numbers in this group add up to an even number: 17, 9, 10, 12, 13, 4, 2.
A: The answer is False.
The odd numbers in this group add up to an even number: 15, 32, 5, 13, 82, 7, 1.
A:
输出
The answer is True.
这没有奏效。看来少数样本提示不足以获得针对这类推理问题的可靠响应。上面的示例提供了关于任务的基本信息。如果您仔细观察,我们引入的任务类型涉及更多的推理步骤。换句话说,如果我们将问题分解成多个步骤并向模型展示,可能会有所帮助。最近,思维链(CoT)提示 (在新标签页中打开) 已被推广,用于解决更复杂的算术、常识和符号推理任务。
总的来说,提供示例似乎有助于解决某些任务。当零样本提示和少数样本提示不足时,这可能意味着模型所学到的东西不足以很好地完成任务。此时建议开始考虑微调模型或尝试更高级的提示技术。接下来我们将讨论一种非常流行的提示技术——思维链提示。