前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >LAMBADA——用GPT-2来做文本数据增强

LAMBADA——用GPT-2来做文本数据增强

作者头像
beyondGuo
发布2022-04-19 12:25:12
8780
发布2022-04-19 12:25:12
举报
文章被收录于专栏:SimpleAISimpleAI

Do Not Have Enough Data? Deep Learning to the Rescue!

本文发表在AAAI-20上,作者是IBM AI团队。

一句话总结: 思路相当简单,利用GPT-2强大的生成能力来进行文本增强,从而在few-shot场景下达到很好的增强效果。

思路一览:

本文提出的方法称为language-model-based data augmentation(LAMBADA)。

分成四个步骤:

1. 用已有的有标签数据训练一个classifier

这个A会被用来当做一个filter,用来筛选生成的样本的质量。

2. 在训练集上对 GPT-2 (

) 进行 fine-tune,得到

这一步就是整个文章的核心了。

我们知道,GPT-2实际上就是一个语言模型,使用的是Next-word-prediction的方式进行训练,这种语言模型称为causal language modeling (CLM) 。

为了生成我们需要的增强语料,这里的方式是使用我们的训练集,来构造一批语料,让GPT-2继续在该语料上进行Next-word-prediction的训练.

语料如何构建呢?假设我们有n个训练样本

,那么就构造:

即使用两个特殊的token——[SEP]和[EOS]把训练样本和标签给拼起来。

然后,就使用常规的causal language modeling的损失函数来训练:

3. 使用

进行增强样本生成

经过了上面的微调,让模型学习看到yi [SEP]就可以生成跟yi对应的句子xi,这里的yi [SEP]实际上就是所谓的prompt。

作者给出了几个生成的例子:

上述例子,比方Flight time这个class,就是直接对GPT-2输入Flight time [SEP],然后GPT-2就输出后面这个句子。

在具体生成的时候,由于存在一些randomness(比方根据概率分布进行采样),所以给定一个prompt之后,模型每次可以生成不同的句子,所以理论上可以无限扩充训练样本。

4. 使用

对生成的样本进行筛选

很好理解,因为生成的句子质量是难以保证的,生成一大堆,可能会有很多噪音,所以我们就用前面的一个初级分类器

对这批样本进行预测,挑选出那些置信度比较高的来作为我们真正使用的增强样本。

实验效果:

使用了三个数据集:

说实话,数据集的选择挺weak的,你做NLP的为啥不用点常见的NLP数据集。

对比的baseline主要包括EDA、CVAE和CBERT:

然后作者设计的低资源场景就是每个类别都只有5/10/20/50/100个样本,反正就是很平衡的情况,这其实也是不太现实的,现实的低资源场景往往是类别不平衡的。

这些槽点咱们也不多说了,看看它的实验效果吧:

上图展示了不同的训练集大小下的效果,可见在每个类别只有5个样本的时候,LAMBADA的效果十分显著。而当每个类别样本量达到100的时候,效果就比较弱了,但是依然是可以提高的。

(有意思的是,当每类别样本量为5的时候,LSTM奇差无比,即使到了100也只比SVM高一点,这说明在小样本的情况下,LSTM这种没有预训练的深度学习模型很垃圾,BERT虽然更是深度学习模型,但是它有强大的预训练,而SVM这种机器学习模型就很适应小样本场景)

然后针对每个类别只有5个样本的情况,作者对比了各种baseline:

效果还是比较明显的,我觉得这里主要归功于GPT-2巨大的预训练量。

然而,这个论文没有放出在样本量更多一些的时候的实验结果。。。我猜测是效果不好,不然为啥不放?另外我发现,上面那个表,其实主要是ATIS数据集效果很明显,其他的俩效果都只能说有提高,但是对于few-shot的场景下只有1-2个点的提高,说实话不是什么突破性提高。然后我发现作者的Figure1也是ATIS数据集的,心机啊!

总结:

看了实验结果之后,我发现并没有那么惊喜,但是从作者的写作上看,包括取的标题,我就感觉作者仿佛十分激动,仿佛发现了什么不得了的东西,搞得读者一开始也跟着瞎激动一番。

但是呢,虽然实验效果没那么惊喜,数据集的选取、实验的设计也有很多槽点,但这里的方法还是给人一些启发的,告诉了我们NLG模型用于文本数据增强的更多可能。比方我们可以在prompt设计,在GPT-2微调的方式上进行更精细地设计,想办法让GPT-2针对给定的标签可以生成更加diverse的样本,都可以作为进一步改进的方向。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 SimpleAI 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Do Not Have Enough Data? Deep Learning to the Rescue!
    • 思路一览:
      • 1. 用已有的有标签数据训练一个classifier
      • 2. 在训练集上对 GPT-2 (
      • 3. 使用
      • 4. 使用
    • 实验效果:
      • 总结:
      相关产品与服务
      NLP 服务
      NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档