Fantastically Ordered Prompts and Where to Find Them: Overcoming Few-Shot Prompt Order Sensitivity

【2022 ACL outstanding】Fantastically Ordered Prompts and Where to Find Them: Overcoming Few-Shot Prompt Order Sensitivity

文章主要工作大概是:通过自行构建Prompt的数据集,选取性能较好的Prompt,用于few-shot learning的文本分类任务中,改进分类效果。【从Prompt入手】
行文思路大概是:(1)先发现prompt order对于few-shot 分类任务的影响;(2)然后提出寻找有效Prompt order的方法(基于熵)

前置概念:

构建Prompt的过程:
在这里插入图片描述
(1)Prompt Order是什么? Table1中的Concatenation展示几个例子的连接顺序
(2)SST-2 dataset是什么? 情感分析数据集(英语)https://huggingface.co/datasets/sst2/viewer/default/train?row=0

相关工作:

Prompt Design for PLMs
提示性设计的核心挑战是将训练数据(如果存在的话)转换为文本序列。
自动生成template的方法:(1)当做cloze-style 任务(2)使用外部语言模型来生成模板;(3)梯度引导的搜索,以找到使性能最大化的模板;(4)使用基于挖掘的方法自动创建多个不同的模板
Order Sensitivity of Prompt Design
基于微调的方法不像上下文学习那样对顺序敏感。

发现问题的过程和实验:

实验:
在这里插入图片描述
横坐标:N个Examples,纵坐标:准确度。
衡量不同大小模型在不同的few-shot数量下准确度的方差变化。
发现的问题:
● 添加训练样本并不会显著减少方差(没有太大用处)
● 有效提示不能在各个模型之间迁移
● 有效标签排序在不同模型之间并不一致
● 不良提示的退化行为

要解决的问题——“我们如何自动生成一个‘探测集’来找到有效提示排序?”

具体方法

三步 (i)对于随机选择的训练样本集,我们使用该集合的所有可能的排序排列作为候选样本;
(ii)通过使用所有候选提示作为context查询语言模型来构建一个探测集(也就是候选提示经过LM生成的);
(iii)使用这个探测集,通过使用探测度量(probing metric)对它们进行排序来确定最佳排序。

(1)构建探测集probe set

大概流程如下:
在这里插入图片描述
原始数据(比如SST-2数据集)通过构建Prompt,输入到PLM中生成新的句子,作为probing set,生成一个与训练样本共享相似分布的探测集。

(2)探测指标

选取最合适的【Prompt permutation】
全局熵(GlobalE)和局部熵(LocalE)【两种标准】。——找到最优的permution
熵越大,样本质量越高
GlobalE:
如果是情感分析,0和1,熵(不是交叉熵)
在这里插入图片描述

LocalE:
在这里插入图片描述
在这里插入图片描述
对Probing set中数据计算熵,从而衡量对应Prompt的性能。

结束语:

一开始读完,其实觉得原理不是很难。但由于能力有限,没有太多深入的理解,参考别人的一些读后感,觉得很有道理,摘过来:
本论文的亮点可以参考(1)作者通过非常完善的实验,揭露出这种随顺序变化的不稳定性普遍存在于多种任务,不随模型规模与标注样本规模而变动。
(2)作者又从变化中寻找不变,发现了不同prompt顺序导致的预测结果标签分布上的规律,据此提出了基于熵的prompt筛选方法,并验证了效果。这就使得这篇工作变得有意思了起来。
论文可以探究的问题:
除此之外,这篇文章还有一些问题可以继续深究。比如,这种不稳定性只在GPT系列的自回归语言模型中出现么?对于T5、BART一类的语言模型,是否依然存在这种问题?主实验测试集只采用256个样本是否会过少,从而增加不稳定性?如果使用大规模的测试集会观察到什么变化么?前面在SST-2上做的实验,放到所有11个任务上,结果是一致的么?作者提到,基于熵的方法对句对匹配任务的提升相对较低。那对于GPT-3试过的那些非分类任务,比如完形填空之类的,本文发现的规律是否还存在?不探究这些问题,也不会影响到这篇论文的完整性。但这些问题的答案,的确很令人好奇。

参考:https://zhuanlan.zhihu.com/p/539893362

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值