前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >完胜BERT!谷歌NLP预训练利器:小模型也有高精度,单个GPU就能训练 | 代码开源

完胜BERT!谷歌NLP预训练利器:小模型也有高精度,单个GPU就能训练 | 代码开源

作者头像
量子位
发布2020-03-16 17:21:06
6790
发布2020-03-16 17:21:06
举报
文章被收录于专栏:量子位量子位
十三 发自 凹非寺 量子位 报道 | 公众号 QbitAI

这款NLP预训练模型,你值得拥有。

它叫ELECTRA,来自谷歌AI,不仅拥有BERT的优势,效率还比它高。

ELECTRA是一种新预训练方法,它能够高效地学习如何将收集来的句子进行准确分词,也就是我们通常说的token-replacement。

有多高效?

只需要RoBERTa和XLNet四分之一的计算量,就能在GLUE上达到它们的性能。并且在SQuAD上取得了性能新突破。

这就意味着“小规模,也有大作用”,在单个GPU上训练只需要4天的时间,精度还要比OpenAI的GPT模型要高。

ELECTRA已经作为TensorFlow的开源模型发布,包含了许多易于使用的预训练语言表示模型。

让预训练变得更快

现存的预训练模型主要分为两大类:语言模型 (Language Model,LM)和掩码语言模型 (Masked Language Model,MLM)。

例如GPT就是一种LM,它从左到右处理输入文本,根据给定的上下文预测下一个单词。

而像BERT、RoBERTa和ALBERT属于MLM,它们可以预测输入中被掩盖的少量单词。MLM具有双向的优势,它们可以“看到”要预测的token两侧的文本。

但MLM也有它的缺点:与预测每个输入token不同,这些模型只预测了一个很小的子集(被掩盖的15%),从而减少了从每个句子中获得的信息量。

而ELECTRA使用的是一种新的预训练任务,叫做replaced token detection (RTD)。

它像MLM一样训练一个双向模型,也像LM一样学习所有输入位置。

受生成对抗网络(GAN)的启发,ELECTRA通过训练模型来区分“真实”和“虚假”输入数据。

BERT破坏输入的方法是,使用“[MASK]”替换token,而这个方法通过使用不正确的(但有些可信的)伪token替换一些输入token。

例如下图中的“cooked”可以替换为“ate”。

首先使用一个生成器预测句中被mask掉的token,接下来使用预测的token替代句中的[MASK]标记,然后使用一个判别器区分句中的每个token是原始的还是替换后的。

在预训练后,将判别器用于下游任务。

完胜BERT,SQuAD 2.0表现最佳

将ELECTRA与其他最先进的NLP模型进行比较可以发现:

在相同的计算预算下,它比以前的方法有了很大的改进,在使用不到25%的计算量的情况下,性能与RoBERTa和XLNet相当。

为了进一步提高效率,研究人员还尝试了一个小型的ELECTRA模型,它可以4天内在单个GPU上进行训练。

虽然没有达到需要许多TPU来训练的大型模型的精度,但ELECTRA仍然表现得突出,甚至超过了GPT(只需要1/30的计算量)。

最后,为了看看是否能够大规模实施,研究人员使用了更多的计算量(大约与RoBERTa相同的数量,约T5的10%),来训练一个大型ELECTRA。

结果表明,在SQuAD 2.0测试集上效果达到了最佳。

不仅如此,在GLUE上也超过了超过了RoBERTa、XLNet和ALBERT。

代码已开源

其实,这项研究早在去年9月份的时候便已发表。但令人激动的是,就在近几日,代码终于开源了!

主要是ELECTRA进行预训练和对下游任务进行微调的代码。目前支持的任务包括文本分类、问题回答和序列标记。

开源代码支持在一个GPU上快速训练一个小型的ELECTRA模型。

ELECTRA模型目前只适用于英语,但研究人员也表示,希望将来能发布多种语言的预训练模型。

传送门

谷歌AI博客: https://ai.googleblog.com/2020/03/more-efficient-nlp-model-pre-training.html

GitHub地址: https://github.com/google-research/electra

论文地址: https://openreview.net/pdf?id=r1xMH1BtvB

作者系网易新闻·网易号“各有态度”签约作者

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

本文分享自 量子位 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 让预训练变得更快
  • 完胜BERT,SQuAD 2.0表现最佳
  • 代码已开源
  • 传送门
相关产品与服务
NLP 服务
NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档