论文笔记--ZEROGEN: Efficient Zero-shot Learning via Dataset Generation
1. 文章简介
- 标题:ZEROGEN: Efficient Zero-shot Learning via Dataset Generation
- 作者:Jiacheng Ye, Jiahui Gao, Qintong Li, Hang Xu, Jiangtao Feng, Zhiyong Wu, Tao Yu, Lingpeng Kong
- 日期:2022
- 期刊:ACL
2. 文章导读
2.1 概括
文章设计了一种生成标注数据对的方法,在构造的数据上进行TAM(Tiny tAsk Model)训练,可以在参数量远小于PLM的情况下持平或超越PLM的性能。整体架构见下图
2.2 文章重点技术
2.2.1 prompt-based zero-shot learning
所谓zero-shot,就是希望模型在遇到未知类别的样本时,可以模拟出人类推断其类别的能力。
prompt: 针对每个输入
x
i
∈
X
x_i \in \mathcal{X}
xi∈X,文章首先初始化一个它的prompt:
T
(
⋅
)
\mathcal{T} (\cdot)
T(⋅)。例如当
x
i
x_i
xi 为 'A deep and meaningful film.'时,相应的
T
(
x
i
)
\mathcal{T}(x_i)
T(xi)为’A deep and meaningful film. The sentiment of the moview review is '。
verbalizer:定义verbalizer
M
(
⋅
)
\mathcal{M}(\cdot)
M(⋅)将每个类别
y
∈
Y
y\in\mathcal{Y}
y∈Y 映射成为词表中的token(1->positive/0->negative等)。
2.2.2 数据集生成方法
本节为文章的技术重点,即如何在没有人工标注的情况下生成标注数据集,从而进行下游任务的训练。生称数据集的整体方案为:
a) 首先对类别
y
y
y进行均匀采样;
b) 得到
y
y
y的prompt:
T
(
y
)
\mathcal{T}(y)
T(y);
c) 选定大模型
P
\mathcal{P}
P,由
x
∼
P
(
⋅
∣
T
(
y
)
)
x\sim \mathcal{P}(\cdot|\mathcal{T}(y))
x∼P(⋅∣T(y))采样生成
x
x
x,这里可以采用多种采样方法得到尽可能多样性的数据集;
d) 生成上述
(
x
,
y
)
(x, y)
(x,y)数据对作为下游任务的样本。
注:上述过程适用于文本分类任务,NLI等任务需要做轻微调整,具体内容在这里不细述,可参见原文。
2.2.3 TAM训练
将上述样本对传入下游的小任务模型TAM进行训练,在文本分类、问答等多个场景性能表现持平大模型的能力。
原文采用了LSTM进行下游任务训练,原则上采用其他机器学习模型也可,读者可自行实验其他方法。
3. 数值实验结果
数值实验的几个重要结果如下
a) 选用的PLM量级越高,ZEROGEN生成数据的质量越高,优势越明显
b) 对大部分任务来说,生成
1
0
4
+
10^4 +
104+个样本对性能一般优于直接采用PROMPTING的性能
4. 文章亮点和不足
4.1 亮点
文章通过生成小样本标注数据+下游TAM的训练,可以实现PLM大模型的能力。上一篇博客https://blog.csdn.net/weixin_38124427/article/details/129740372
b 中介绍的vote-k也是一种数据采样方法,但属于few-shot learing,需要少量标记数据进行下游任务。总体来讲,两者都可以降低NLP的成本。
4.2 不足
原文也提到,方法的最大不足之处在于prompt的选择对NLI任务的表现影响较大,未来作者也会尝试在该方向进行突破。
5. 原文传送门
ZEROGEN: Efficient Zero-shot Learning via Dataset Generation
代码地址
6. References
[1] zero-shot learning
[2] 论文笔记–Selective Annotation Makes Language Models Better Few-Shot Learners