【NLP论文分享 && 含源码】基于Prompting Seq2Seq的自动标签序列生成(清华AI研究院)
点击下方链接🔗关注我们
引言
Prompting将下游应用看作语言建模任务,与使用预先训练的模型相比其样本效率更高。然而,Prompting的一个缺陷是需要手动设计模式,其结果可能不直观并且需要大量验证集进行调整。那么就让我们看看今天的这篇文章是怎么解决这个问题的吧?
背景介绍
在将预训练语言模型应用于下游应用的方法中,使用自然语言prompt将任务重新表述为完形填空问题的prompt已被证明特别有效。例如,在情感分类中,prompt在原始输入中附加一个模板“It was [MASK]”,并将“great”和“terrible”定义为标签词,其在[MASK]处的概率表示正面和负面情绪标签。prompt 具有更好的样本效率,在资源不足的情况下表现明显优于标准微调的预训练模型。但是,「prompting性能对prompt的选择高度敏感,其有效性需要大量验证数据来评估,并且难以凭直觉预测。尽管存在探索自动提示搜索的方法,但它们仍然需要大量的人力,因为算法从手动模板或标签词开始」。
模型方法介绍
为此,本文提出了AutoSeq,一种基于Prompting Seq2Seq的自动标签序列生成方法:
(1) 首先:在sequence-to-sequence模型上采用自然语言提示,实现自由形式的生成和更大的标签搜索空间;
(2) 然后,提出了标签序列——用不定长度的短语来表达标签——这消除了手动模板的需要,并且比单个标签词更具表达力;
(3) 最后,使用beam search自动生成大量标签序列候选,并提出对比重排序以获得最佳组合。其流程图如下所示:
Prompts for seq2seq
「引入了基于Prompts的微调的seq2seq,引入了比一个标记更具表现力的标签序列」。以情感分类为例,给定输入句子为 x,模型输入可以表述为“x [MASK]”。我们将正类的标签序列定义为“Highly recommended”。而对于负类来说,那是“Not for me”。然后每个类别的概率与在位置 [MASK] 生成“Highly recommended”和“Not for me”的 T5 模型的概率相关联。当我们将 MLM 单标签词与我们的标签序列进行比较时(如下图2所示),我们看到「标签序列编码了更丰富的语义含义并摆脱了复杂的模板」,因为标签序列本身可以是独立的句子。
自动标签序列生成
由于标签序列的引入,不再需要人工设计的模板,自动prompt搜索的目标只是构建一个表现良好的标签序列映射M。本文提出的自动标签序列生成管道包含三个步骤(上图1):
(1)使用 T5 和波束搜索生成候选; (2) 通过对比概率重新排序; (3) 枚举标签序列组合并通过微调性能重新排序。
实验快照
1、实验结果主要基于T5-base数据集(其中每类 16 个训练示例),下图主要展示了5个不同拆分方式的平均(和标准差)性能。FT:微调;Manual:人工prompt设计; AutoWord:自动搜索单标签词。
推荐阅读
[2]【历年IJCAI论文下载 && 论文速递】无数据对抗蒸馏、垂直联合、预训练微调范式图神经网络(GNN)
[3]【NLP论文分享&&语言表示】有望颠覆Transformer的图循环神经网络(GNN)
论文&&源码
Title: Automatic Label Sequence Generation for Prompting Sequence-to-sequence Models
Author: 清华大学AI学院
Paper:https://arxiv.org/pdf/2209.09401v1.pdf
Code:https://github.com/ thunlp/Seq2Seq-Prompt.