0
点赞
收藏
分享

微信扫一扫

【预训练语言模型】RoBERTa: A Robustly Optimized BERT Pretraining Approach


【预训练语言模型】RoBERTa: A Robustly Optimized BERT Pretraining Approach

  作者发现BERT以及提供的预训练语言模型并没有得到充分的训练,因此本文提出RoBERTa以挖掘BERT模型,并提供充分的训练。作者认为,扩增训练语料增大预训练的迭代次数去掉Next Sentence Prediction在更长的序列上训练动态Masking等策略(Trick)可以大幅度提升BERT的性能。

简要信息:

序号

属性


1

模型名称

RoBERTa

2

所属领域

自然语言处理

3

研究内容

预训练语言模型

4

核心内容

BERT改进

5

GitHub源码

​​https://github.com/pytorch/fairseq​​

6

论文PDF

​​https://arxiv.org/pdf/1907.11692.pdf​​

一、动机

  • 现有的基于self-training的语言模型(例如ELMo、GPT、BERT等)方法虽然达到了SOTA,但是很难判断那个部分对效果具有很大的促进作用。同时预训练成本很高,使用的provate data限制了模型扩展;
  • 我们发现BERT预训练模型并没有得到充分的训练,语义挖掘能力还有一定提升空间;

二、背景——BERT模型及实验设置

  可直接参考​​BERT​​讲解。

三、RoBERTa——Robustly optimized BERT approach

3.1 More Data

  BERT只用了Wikipedia和BookCorpus,RoBERTa又额外扩增了训练语料。RoBERTa一共在5个语料上训练,包括Wikipedia、BookCorpus、CC-News、OpenWebText和Stories。后续的实验均在这5个语料上完成。

3.2 Dynamic Making Strategy

  Masked Language Modeling是BERT中非常重要的预训练目标,但是,在BERT训练过程中,带有随机Mask的语料是数据预处理阶段得到的,而在训练过程中则固定不变(Static Masking)。因此BERT在训练时,对于每一个句子,每次都将见到相同Mask。

  因此RoBERTa提出动态地改变每次训练时Mask采样位置(Dynamic Masking)。即每迭代一次训练,重新对每个句子的Mask进行采样。该策略间接实现了数据增强,且提高了鲁棒性。通过改变Mask策略,在QA、NLI以及分类任务上有提升:

【预训练语言模型】RoBERTa: A Robustly Optimized BERT Pretraining Approach_语言模型

3.3 The necessary of NSP?

  Next Sentence Prediction(NSP)通常对sentence-pair的输入进行训练,目标是预测两个句子是否存在前后关系。但RoBERTa发现去掉NSP效果反而更好:

【预训练语言模型】RoBERTa: A Robustly Optimized BERT Pretraining Approach_自然语言处理_02

3.4 Larger Batch Size

  在BERT中,batch size设置为256,一个epoch需要训练超过1M步。RoBERTa训练过程中,增大了batch size。如下表:

【预训练语言模型】RoBERTa: A Robustly Optimized BERT Pretraining Approach_Mask_03


不同的batch size以及对应的学习率。实验发现当batch size为2k时,效果可以达到最好。batch size设置大可以采用数据并行方法进行训练。

3.5 Text Encoding——BPE

  Byte-Pair Encoding(BPE)由​​Neural Machine Translation of Rare Words with Subword Units​​提出解决在机器翻译领域中出现的Out-of- Vocabulary(OOV)问题。主要通过wordpiece技术将word分解为更为细粒度的片段。RoBERTa采用BPE,获得了超过5w个token(BERT只有3w)。

BPE的详解可参考:​​BPE(Byte Pair Encoding)算法​​

四、实验

  RoBERTa参与了SQuAD、RACE和GLUE的打榜,并与当时最好的模型XLNet进行比对,结果如下:

SQuAD

【预训练语言模型】RoBERTa: A Robustly Optimized BERT Pretraining Approach_语言模型_04

其中SG-Net是一个抽取式问答的模型,博主做过论文解读,可参考:​​机器阅读理解算法集锦​​

RACE

【预训练语言模型】RoBERTa: A Robustly Optimized BERT Pretraining Approach_自然语言处理_05

GLUE

【预训练语言模型】RoBERTa: A Robustly Optimized BERT Pretraining Approach_自然语言处理_06


举报

相关推荐

0 条评论