论文笔记–Selective Annotation Makes Language Models Better Few-Shot Learners
论文笔记--Selective Annotation Makes Language Models Better Few-Shot Learners
1. 文章简介
- 标题:Selective Annotation Makes Language Models Better Few-Shot Learners
- 作者:Hongjin Su, Jungo Kasai, Chen Henry Wu, Weijia Shi, Tianlu Wang, Jiayi Xin, Rui Zhang, Mari Ostendorf, Luke Zettlemoyer, Noah A. Smith, Tao Yu
- 日期:2022/09/05
- 期刊:arxiv preprint
2. 文章导读
2.1 概括
文章从样本池中筛选数据集,对选中的样本进行标注,再通过prompt retrieval进行训练,整体架构如下:
实验证明,通过对选中的少量样本进行标注,得到的模型效果可以追平甚至超过对所有样本进行标注:
其中Vote-k为本文所述的方法。
2.2 文章重点技术
2.2.1 selective annotation(vote-k)
文章设计了Vote-k方法进行样本选择(共计选择
M
M
M个样本),并对选择的样本进行标注。Vote-k方法分为以下步骤:
- 使用Sentence-BERT计算每个样本的向量表示,其中每个句子的向量表示采用的是句子中所有输入单词表示的平均值(BERT中使用的是<CLS>向量);
- 计算向量表示两两之间的cosine similarity,得到有向图
G
=
(
V
,
E
)
G=(V, E)
V
V
E
E
k
k
- 将所有顶点分成两个集合
U
mathcal{U}
L
mathcal{L}
L
=
∅
,
U
=
V
mathcal{L}=empty, mathcal{U} = V
u
∈
U
u in mathcal{U}
s
c
o
r
e
(
u
)
=
∑
v
∈
{
v
∣
(
v
,
u
)
∈
E
,
v
∈
U
}
s
(
v
)
,
s
(
v
)
=
ρ
−
∣
{
l
∈
L
∣
(
v
,
l
)
∈
E
}
∣
begin{equation}score(u) = sum_{vin{v|(v,u)in E, v in mathcal{U}}} s(v), s(v) = rho^{-|{lin mathcal{L} | (v, l) in E}|}end{equation}
s
(
v
)
s(v)
s
(
v
)
s(v)
v
v
L
mathcal{L}
v
v
L
mathcal{L}
v
v
s
(
v
)
s(v)
v
v
- 迭代选中
M
/
10
M/10
L
mathcal{L}
U
mathcal{U}
- 使用
L
mathcal{L}
u
∈
U
uinmathcal{U}
- 将所有
u
∈
U
uinmathcal{U}
M
M
9
M
/
10
9M/10
L
mathcal{L}
M
M
L
mathcal{L}
2.2.2 prompt retrieval
将上述集合
L
mathcal{L}
L人工标注,每次预测的时候进行prompt retrieval:计算所有标注样本和测试样本的cosine similarity,选定和测试样本最为相似的一些标注样本进行In-Context Learning就可以啦!
3. 文章亮点
文章通过选择少量标注样本,可以持平大规模标注样本或随机标注样本得到模型的表现能力。尤其是文章提到了Fast Vote-k方法,可以避免使用BERT编码每个句子,直接得到标注样本,性能略差于Vote-k但由于文章测试的其它模型,适合初学者使用,大幅降低NLP成本。
4. 原文传送门
Selective Annotation Makes Language Models Better Few-Shot Learners
5. References
[1] Learning To Retrieve Prompts for In-Context Learning
[2] Active Learning
[3] Beam Search