SentAugment:Self-training数据增强用于NLP

1 简介

本文根据2020年《Self-training Improves Pre-training for Natural Language Understanding》翻译总结。

自训练(Self-training)是一种半监督学习方法,使用标注数据训练一个好的teacher模型,然后使用该teacher模型对未标注的数据进行标注,最后使用(标注数据和)非标注数据联合训练一个student模型。本文训练student时没有使用原训练集的标注数据,因为实验发现没有明显的效果提升。

本文提出一种数据增强方法,SentAugment,用网络上爬取的数据来对给定的任务建立“域内(in-domain)“数据。

2 SentAugment

如下图所示,1)基于下游任务数据训练一个teacher;2)采用一个和下游任务没有关系的universal paraphrastic sentence encoder(输出相似语句的相似embedding表达),用最邻近方法来选择网上抓取的数据。3)第2步选择出来的语句让teacher进行标注,并选择top k个;4)用第3步的数据训练student。

我们方法主要是指上面的第2步。

SentAugment:Self-training数据增强用于NLP_第1张图片

3 实验结果

我们的方法(+ST)提升了原来的模型的效果。
SentAugment:Self-training数据增强用于NLP_第2张图片

4 Ablation study

我们试了下面3种数据增强方法,主要是指第2章节中训练集embedding获取的方法,当获取到训练集的embedding,我们就可以采用cosine 相似方法,在未标注数据中寻找相似的语句了。all-avg: 采用训练集的所有样例的sentence embedding的平均;label-avg:针对每种label建立一个embedding,即训练集中每种label的sentence embedding的平均;per-sent:对训练集中每个语句建立一个embedding。

如下表所示,label-avg表现较好。
SentAugment:Self-training数据增强用于NLP_第3张图片

Teacher对未标注数据进行标注时,我们发现采用连续label(logits、概率)比离散的好。

SentAugment:Self-training数据增强用于NLP_第4张图片

你可能感兴趣的:(NLP,半监督学习,人工智能)