点击上方,选择星标置顶,每天给你送干货

阅读大概需要11分钟

跟随小博主,每天进步一丢丢

作者:朝九晚九

学校:北京航空航天大学

研究方向:自然语言处理

目录

1. RoBERTa

2. ERNIE

3. ERNIE 2.0

4. XLMs

5. MASS

6. UNILM

7. CMLM

8. ELECTRA

9. SpanBERT

10. ALBERT

11. MT-DNN

12. XLENET

1. RoBERTa

论文:A Robustly Optimized BERT Pretraining Approach.

在更长的句子上训练,动态更改mask的模式。

2. ERNIE

论文:Enhanced Representation through Knowledge Integration.

使用NLP的工具来识别短语和实体,包括3种层级的Masking:基本、phrase和entity。依次对基于基本级别、短语级别、实体级别分别进行mask训练。对于对话数据,还训练了Dialogue LM。使用Q和R标记query和response。

与BERT 的对比图如下:

3. ERNIE 2.0

论文:A Continual Pre-training Framework for Language

Understanding.

其框架如下:

构造多个无监督任务来学习词法、句法和语义的信息;且通过增量的方式进行多任务学习,引入新任务后,并不是只使用新的任务来训练,而是通过多任务学习同时学习之前的任务和新增加的任务,这样既要学习新的信息的同时也不能忘记老的信息。多个无监督任务包括:

  • 词法任务:Word、phrase、entity级别的mask;预测一个词是否首字母大小的任务;预测当前词是否出现在其他文档里

  • 句法任务:把一个段落切分成1到m个段,随机打散,让模型来恢复;两个句子距离的任务,对于两个句子有三种关系:前后相邻,不相邻但是属于同一个文档,属于不同的文档

  • 语义任务:预测两个句子的语义和修辞关系;利用搜索引擎的数据,给定query和搜索结果,预测两个句子是强相关,弱相关和完全不相关

这几篇文章都是对 BERT 模型的 Pretraining 阶段的 Mask 进行了不同方式的改进,但是对于 BERT 模型本身(基于 Mask LM 的 Pretraining、Transformer 模型和 Fine-tuning)没有做任何修改。

4. XLMs

论文:Cross-lingual Language Model Pretraining.

跨语言版的bert,使用两种预训练方法:

  1. 基于单语种语料的无监督学习

  2. 基于跨语言的平行语料的有监督学习

具体实现使用了几种策略:shared sub-word vocabulary、causal language modeling、masked language modeling、translation language modeling,如下图所示:

5. MASS

论文:Masked Sequence to Sequence pre-training for language generation.

框架如下图所示:

Bert只是用了transformer的encoder部分,其下游任务不适用于生成任务,提出联合训练encoder和decoder模型,训练分为两步。

  • Encoder:输入为随机mask掉连续部分token的句子,使用transformer对其进行编码

  • Decoder:输入为与encoder同样的句子,但是mask掉的正好与encoder相反,使用attention机制训练,但是只预测encoder端被mask的单词。该操作可以迫使decoder预测的时候更依赖于source端的输入而不是前面预测出的token,防止误差传递。

此外,还提出一个对于mask长度的超参数k,实验表明k为句子长度的50%~70%模型效果最好。

6. UNILM

论文:UNIfied Language Model Pre-training for Natural Language Understanding and Generation.

框架如下图所示:

预训练了一个微调后可以同时用于自然语言理解和自然语言生成的下游任务模型,核心框架transformer,预训练和目标结合了以下三个:

  • 单向语言模型(同ELMO/GPT),在做attention时只能mask其中一个方向的上下文

  • 双向语言模型(同BERT),可以同时看到两个方向的上下文

  • seq2seq语言模型,输入为两个片段S1和S2,encoder是双向的,decoder是单向的,仅能attention到一个反向的token以及encoder的token

7. CMLM

论文:Cross-lingual masked language model.

即跨语言掩码语言模型。对于无监督机器翻译而言,跨语言预训练模型XLM已被证实是有作用的,但是现有的工作中,预训练模型的跨语言信息只是通过共享BPE空间得到。这样得到的跨语言信号非常隐式,而且受限。CMLM可以将显式的跨语言信息作为训练信号,更好的训练跨语言预训练模型。方法分为3步:

  • 由n-gram向量推断得到n-gram翻译表。分别用两种语言的单语语料通过fasttext训练单语的n-gram向量,之后通过无监督跨语言词向量的方法得到跨语言n-gram向量,并由两种语言的n-gram向量相似度推断得到两种n-gram之间的翻译表。

  • 在n-gram翻译表的辅助下,用提出的新的训练任务CMLM进行跨语言预训练:随机的mask掉n-gram的字符,在模型输出端,让其预测被mask掉的n-gram字符对应的几个翻译选项。由于n-gram BPE字符的长度与其对应的翻译候选可能不一样,为此借助IBM Model 的思想进行改进。

  • 用预训练的模型初始化翻译模型得到的编码器和解码器,进行无监督机器翻译模型的训练。

8. ELECTRA

论文:Efficiently Learning an Encoder that Classifies Token Replacements Accurately.

提出了新的预训练任务和框架,把生成式的Masked language model(MLM)预训练任务改成了判别式的Replaced token detection(RTD)任务,判断当前token是否被语言模型替换过。使用一个MLM的G-BERT来对输入句子进行更改,然后给D-BERT去判断哪个字被改过,如下:

生成器的训练目标还是MLM(作者在后文也验证了这种方法更好),判别器的目标是序列标注(判断每个token是真是假),两者同时训练,但判别器的梯度不会传给生成器。

9. SpanBERT

论文:SpanBERT:Improving Pre-training by Representing and Predicting Spans.

在跨度选择任务(例如问答和共指解析)方面取得了实质性进展。训练的方法主要是通过:

(1)掩码连续随机跨度,而不是随机令牌。

(2)优化跨边界目标(SBO),训练跨度边界表示以预测被屏蔽跨度的整个内容,而不依赖于其中的各个令牌表示。

10. ALBERT

论文:A Lite BERT For Self-Supervised Learning Of Language Representations.

试图解决大部分预训练模型训练成本高,参数量巨大的问题。ALBERT为了减少模型参数主要有以下几点:

  1. 词嵌入参数因式分解;

  2. 隐藏层间参数共享

作者认为,词向量只是记忆了相对少量的词语的信息,更多的语义和句法等信息是由隐层记忆的,因此,他们认为,词嵌入的维度可以不必与隐藏层的维度一致,可以通过降低词嵌入的维度的方式来减少参数量。全连接层、注意力层的参数均是共享的,也就是ALBERT依然有多层的深度连接,但是各层之间的参数是一样的

此外,为了提升模型性能,ALBERT提出了一种新的训练任务:

句子间顺序预测,是给模型两个句子,让模型去预测两个句子的前后顺序。

11. MT-DNN

论文:Multi-Task Deep Neural Networks for Natural Language Understanding

BERT的fine-tune是针对不同的任务在编码层后面加上task-layer,而MT-DNN就是把所有任务fine-tune的步骤都拼到了一起。这里根据输出的不同将任务分成了四种。如下图所示:

12. XLENET

论文:Net: Generalized Autoregressive Pretraining for Language Understanding.

结合了自回归和自编码的优势,仍遵循两阶段的过程,第一个阶段是语言模型预训练阶段;第二阶段是任务数据Fine-tuning阶段,但是改动第一个阶段,不像Bert那种带Mask符号,而是采用排列组合的方式,借鉴自回归语言模型的方法预测下一个单词。且采用了双流自注意力机制。


方便交流学习,备注:昵称-学校(公司)-方向,进入DL&NLP交流群。

方向有很多:机器学习、深度学习,python,情感分析、意见挖掘、句法分析、机器翻译、人机对话、知识图谱、语音识别等。

记得备注呦

推荐阅读:

【ACL 2019】腾讯AI Lab解读三大前沿方向及20篇入选论文

【一分钟论文】IJCAI2019 | Self-attentive Biaffine Dependency  Parsing

【一分钟论文】 NAACL2019-使用感知句法词表示的句法增强神经机器翻译

【一分钟论文】Semi-supervised Sequence Learning半监督序列学习

【一分钟论文】Deep Biaffine Attention for Neural Dependency Parsing

详解Transition-based Dependency parser基于转移的依存句法解析器

经验 | 初入NLP领域的一些小建议

学术 | 如何写一篇合格的NLP论文

干货 | 那些高产的学者都是怎样工作的?

一个简单有效的联合模型

近年来NLP在法律领域的相关研究工作


让更多的人知道你“在看”

NLP的12种后BERT预训练方法相关推荐

  1. 【NLP】Pytorch中文语言模型bert预训练代码

    ACL2020 Best Paper有一篇论文提名奖,<Don't Stop Pretraining: Adapt Language Models to Domains and Tasks> ...

  2. RoBERTa:一种鲁棒地优化BERT预训练的方法

    RoBERTa:一种鲁棒地优化BERT预训练的方法 文章目录 RoBERTa:一种鲁棒地优化BERT预训练的方法 前言 背景 实验 静态 VS 动态 Masking 输入形式与NSP任务 更大的bat ...

  3. NLP-预训练模型-2019:XLM-Roberta【一种多语言预训练模型】

    <原始论文:Unsupervised Cross-lingual Representation Learning at Scale> Facebook AI团队于2019年11月发布了XL ...

  4. 云策画时代最具潜力的12种编程说话

    2012年8月13日 名人名言:要使孩子们从小就懂得和领会到:他的每一步.每一个行动都会在他身边的人--同志.父母.教师和"陌生者"的精神生活引起反响.只有当他不给别人带来灾难,不 ...

  5. 后 BERT 时代的那些 NLP 预训练模型

    本文介绍对于 BERT 的 Pretraining 过程进行改进的几篇文章,包括 Pre-Training with Whole Word Masking for Chinese BERT.ERNIE ...

  6. RoBERTa:一种稳健优化BERT的预训练方法

    本文是BERT相关系列模型第三篇内容,之前内容见下链接. 篇一:BERT之后,NLP主要预训练模型演变梳理 篇二:带你走进 ERNIE 摘要 语言模型的预训练带来了显著的性能提高,但比较不同的方法具有 ...

  7. 后BERT时代:15个预训练模型对比分析与关键点探索(附链接)

    来源:知乎 作者:JayLou 本文约7800字,建议阅读10分钟. 本文对ELMo以来的15个代表性的预训练语言模型进行了多维度的对比和分析. 前言 在之前写过的<NLP的游戏规则从此改写?从 ...

  8. 【NLP】万字梳理!BERT之后,NLP预训练模型发展史

    作者 | 周俊贤 整理 | NewBeeNLP 本文讲解下BERT推出后,预训练模型的演变,包括BERT.RoBERTa.ALBERT.ERNIE系列.ELECTRA.下面脑图是本系列第一篇内容,欢迎 ...

  9. 后BERT时代:15个预训练模型对比分析与关键点探究

    前言 在小夕之前写过的<NLP的游戏规则从此改写?从word2vec, ELMo到BERT>一文中,介绍了从word2vec到ELMo再到BERT的发展路径.而在BERT出现之后的这大半年 ...

  10. 谷歌AI论文BERT双向编码器表征模型:机器阅读理解NLP基准11种最优(公号回复“谷歌BERT论文”下载彩标PDF论文)

    谷歌AI论文BERT双向编码器表征模型:机器阅读理解NLP基准11种最优(公号回复"谷歌BERT论文"下载彩标PDF论文) 原创: 秦陇纪 数据简化DataSimp 今天 数据简化 ...

最新文章

  1. 教你用OpenCV人脸检测自动给头像戴圣诞帽(附代码)
  2. 鸿蒙系统平板界面,华为鸿蒙系统界面首次曝光!首款预装鸿蒙设备正式入网:发布在即...
  3. Fibinary Numbers
  4. postman 无法正常返回结果 Could not get any response
  5. lisp 设计盘形齿轮铣刀_机械设计基础——周转轮系传动比的计算
  6. 读取mmdetection训练目标检测模型的日志文件(log.json)的各种AP值按epoch写入excel文件
  7. 常用服务器安装和部署
  8. 理想的正方形 HAOI2007(二维RMQ)
  9. 关于lua字节码在32位和64位系统上不兼容的问题
  10. 软件测试工程师的工作总结
  11. 记事本写小程序C语言,抖音上用记事本编写爱心小程序教程
  12. JavaScript里的闭包(摘自JavaScript高级程序设计)
  13. 正宗eMule官方网站导航
  14. Euler法解微分方程
  15. 网络投票专家投票计算_安全专家说在线投票是一个坏主意。 这就是为什么。
  16. php全部转换成小写,php strtolower字母转换小写
  17. 微信头像失效_微信头像地址失效踩坑记附带方案
  18. 【059期】面试官问:序列化是什么,为什么要序列化,如何实现?
  19. win10本地搜索应用没反应怎么解决?
  20. PodfileKit将github上常见的iOS(Swift)第三方框架进行了汇总,并且将框架进行了分类,为用户管理第三方框架提供了方便。

热门文章

  1. JAVA多线程----用--取钱问题1
  2. android button text属性中英文大小写问题
  3. 20190925 On Java8 第二十二章 枚举
  4. linux 下socket通信,client断开service退出解决办法
  5. Mysql缺少可执行的命令
  6. javascript获取网址参数
  7. poj 2754 Similarity of necklaces 2
  8. web前端网站优化-你真的不重要了吗?
  9. android自定义按钮控件样式
  10. asp.net 获取计算机启动时间