[论文阅读]Demystifying Prompts in Language Models via Perplexity Estimation

发布于:2025-03-15 ⋅ 阅读:(20) ⋅ 点赞:(0)

Demystifying Prompts in Language Models via Perplexity Estimation

Demystifying Prompts in Language Models via Perplexity Estimation - ACL Anthology

EMNLP 2023

存在这样一个现实:LLM的零样本或者少样本提示学习的能力强劲,但是有时候明明看起来一致的提示词却表现出了较大的输出差异。

假设,在考虑与任务相关的合理提示时,提示的困惑度越低,它在任务上的性能就越好。 这是基于这样的直觉:提示(或非常相似的短语)在训练数据中出现的频率越高,模型就越熟悉它,并且能够执行所描述的任务。 

不直接使用训练数据,专注于对提示词困惑度的考量

下面一个示例是用于新闻主题分类任务的四个提示在应用时的准确率:

自动拓展种子prompt

目的:有用更多样化的提示词;支持更好的分析以验证提示质量假设

做法:

  1. 创建手动编写的种子提示词集合
  2. 使用GPT3来对每一个手动编写的种子提示词进行释义
  3. 使用回译进行改写:把GPT3的改写结果翻译为不同的语言然后翻译回英文

释义用到的提示词:

创建的提示样本示例:

具体任务:

实验

使用的LLM:OPT(1.3b, 30b, 175b)和Bloom(176B)

词语预测任务:给定英语中的源词和目标语言,我们希望模型预测正确的翻译。

使用的数据集是NorthEuraLex,是一个词汇数据库,提供了1016个单词107种语言的翻译,对使用拉丁字母的九种语言进行了实验。对Bloom使用了另外物种不使用拉丁字母的语言

反义词预测:给定一个词,需要预测其反义词。使用Kaggle数据,随机选择了1000个词对

分类任务:

 (a) GLUE Cola (语法;Warstadt 等人 2018);(b) Newspop (新闻分类;Moniz 和 Torgo 2018);(c) AG News (新闻分类;Zhang 等人 2015);(d) IMDB (电影评论分类;Maas 等人 2011);(e) DBpedia (主题分类;Lehmann 等人 2015);(f) Emotion (情绪分类;Saravia 等人 2018);(g) Tweet Offensive (对攻击性与非攻击性推文的分类;Barbieri 等人 2020)。 我们从每个数据集中的 1000 个随机示例中使用。

分类任务是做选择题,给定选项,让模型预测答案选项。

实现细节

评估零样本性能。 为了避免计算困惑度时的噪声,我们使用数据集的 1,000 个示例来实例化提示,计算每个示例的提示困惑度,并在所有实例化提示中计算平均值。

为了评估提示的性能,我们查看了两个指标:(a) 正确标签的语言模型得分(对数概率),在 1,000 个示例中取平均值;(b) 任务的准确率,在 1,000 个示例上计算得出。 为了计算准确率,对于每个示例,我们对所有类别进行评分,并选择排名最高的类别作为模型的预测。 多个符元的标签得分定义为符元得分的总和。

对于词预测任务,我们只报告得分,因为准确率通常不太稳定,更受表面形式竞争 Holtzman 等人 (2021) 的影响,并且在我们的设置中,这些任务的准确率通常很低(模型生成与标签完全匹配的可能性很低)。 因此,正确标签的得分可以更好地估计模型的实际性能。

结果

分类任务和反义词预测:在大多数任务中,我们确实得到了提示低困惑度与任务性能更好的强相关性

词级翻译:相关性在所有语言和所有模型之间都非常一致,除了加泰隆语和日语(在 Bloom 中)之外,所有语言都具有统计学意义。

我们使用 1.3B 和 30B 的 OPT 模型重复相同的实验,以调查这些相关性在不同模型尺寸之间是否也一致,或者这是否是我们应该只在大语言模型中预期的现象。 表 5(两个较低的块)显示了所有分类任务和反义词预测的结果。 我们确实看到,总的来说,这种趋势在较小的模型中似乎也是一样的;然而,相关性似乎略弱。 我们假设这可能是由于这些较小模型的整体性能较低,导致我们用于相关性的性能结果不稳定且不可靠。 然而,对于词级翻译,所有与 30B 和 1.3B 模型的相关性与 175B 模型的相关性相似,并且在统计学上都显著(在进行 Bonferroni 多重假设校正后也是如此)。

分析

跨所有语言对,单词级翻译的图的结构非常相似,这表明提示在不同语言中获得了一致的困惑度和性能(可能在不同的规模上)。事实上,任意两种不同语言之间最低困惑度提示的交集平均为 8.6 和 8.4(分别对应 OPT 175B 和 Bloom),这非常高。 这并不令人惊讶,因为我们知道不同语言中的提示之间的唯一区别是目标语言的名称(例如,“狗”在 法语 中是“)。 此外,任意两种不同语言之间具有最高标签分数的 10 个提示的交集平均为 7 和 6.5(分别对应 OPT 175B 和 Bloom)。

在单词级翻译图中出现的一个显著发现是,包含或不包含引号的标签的提示之间存在明显的分隔(通常与提示是否对源词使用引号一致) - 图中出现了三个示例提示。 对单词使用引号的提示往往具有更低的困惑度和更好的性能,而且始终如一。 我们进一步分析了 OPT 175B 在集群(有/无引号)中的结果。 在包含引号的集群中,我们获得了负相关(范围为 -0.28 到 -0.38),对于几乎所有语言来说,这些相关性在统计学上都是显著的。 另一个集群内部的相关性较弱,意义也不大(鉴于该集群的整体性能较低,这是预料之中的)。

预计我们用于扩展提示集的自动方法也会引入一些噪声。 虽然我们关注的是困惑度较低的提示,因为我们希望从这种分析中获益,并能够设计出一种创建更好提示的方法,但我们确实希望确保这种潜在的噪声不是我们获得强相关性的原因。 换句话说,有人可能会声称一些有噪声的提示具有特别高的困惑度,并且表现也很差,因此以一种不可取且不受控制的方式支持了我们的假设。

我们转而检查不同任务中 10% 困惑度最高的提示,并主观地发现它们没有噪声,通常是针对这些任务的有效提示。 表 7 列出了 GLUE Cola 任务的 5 个困惑度最高的提示,作为示例。

为了进行健全性检查,我们选择了两个任务:词级翻译和 AG News,手动过滤掉有噪声的提示,然后再次计算相关性。 标注由外部标注者(NLP 研究人员)完成,他们被介绍了这些任务,并被要求标记提示是否适合用于该任务。 使用 OPT 175B 的新相关性在表8中报告。 我们发现,当从分析中手动去除噪声时,所有相关性仍然很强,并且在统计学上是显著的。 我们在 Bloom 中也得到了同样的趋势。

下面是反义词预测任务的五个困惑度最低的提示

仔细观察最低困惑度提示表明,在分类任务中,OPT 175B 和 Bloom 之间 10 个最低困惑度提示的交集平均为 7.1。 当观察各个模型中 10 个最高准确率的提示时,我们发现在分类任务中,它们的交集平均为 3.1。

SPELL:通过估计语言模型似然来选择提示

提出了一种新方法 SPELL,用于生成和选择始终有效的提示。

假设为给定任务找到有效提示的计算预算固定,并且搜索空间可能相当大,我们设计了以下直接过程:

  1. 为任务获得一小部分手动创建的提示。
  2. 使用语言模型(例如,GPT3)和反向翻译扩展提示集(参见 3 节)。
  3. 按困惑度对提示列表进行排序(在任务输入的代表性样本上取平均值,例如,1,000)。
  4. 选择 k(例如,3)个最低困惑度提示。

使用此算法,我们通过经验表明,最好优先考虑试验最低困惑度提示,因为它们更稳定(在性能上表现出较小的变化)并且平均比手动提示性能更好。 此方法也不需要任务的任何标签,并且适用于任何任务,即使是非专业人士,也只需给出示例输入即可。

验证

在不同任务种使用SPELL的结果:

报告了手动提示的平均准确率与 3 个最低困惑度提示的平均准确率的比较,分别针对 OPT 175B 和 Bloom。 事实上,在大多数情况下,使用 3 个最低困惑度提示的平均准确率优于手动提示的平均准确率,在 OPT 中跨任务平均提高了 1.8 个准确率点,在 Bloom 中平均提高了 2.3 个准确率点,这证明了我们方法的有效性。

3 个最低困惑度提示的准确率变异性也远低于手动创建提示的准确率变异性:对于 OPT 175B,3 个最低困惑度提示(跨任务)的平均标准差为 5.07,而手动提示的平均标准差为 6.86;对于 Bloom,差距更大,3 个最低困惑度提示的平均标准差为 2.6,而手动提示的平均标准差为 7.47。 11 这进一步表明,与使用任意一组手动创建的提示相比,SPELL 更稳定可靠。 SPELL 为这个方向的进一步发展奠定了基础,并作为最初的迹象,表明在生成有效提示的过程中加入困惑度估计的好处。

结论

研究了尽管与 LLM 的人类用户看起来相似,但一些提示比其他提示表现更好的现象。 具体来说,我们假设给定 LLM 下提示的困惑度与其任务性能密切相关。 我们在大量任务和自回归 LLM 上测试了这个理论,结果相关性研究验证了我们的假设。 对这种关系的进一步分析表明,最佳提示因模型而异,突出了特定模型分析的重要性,以及困惑度与性能之间关系的潜在结构因任务而异。

鉴于这些发现,我们提出了一种方法,SPELL,来帮助用户为新任务找到性能良好的提示。 对所提出程序的经验验证表明,SPELL 生成有效的提示,性能差异小,并且与手动提示相比,OPT (Bloom) 的准确率提高了 1.8 (2.3) 个点。 因此,我们得出结论,SPELL 为将 LLM 应用于新任务提供了一种通用且可解释的方法,同时需要最少的人工努力,并且不需要标签。