论文浅尝 | BERT:Pre-training of Deep Bidirectional Transformers

2019 年 11 月 10 日 开放知识图谱

论文笔记整理:王春培,天津大学硕士。


链接:https://arxiv.org/pdf/1810.04805.pdf

动机

将预训练语言表示应用于下有任务现有两种策略:基于特征的和基于微调的。文章认为当前技术限制了预训练的能力,尤其是基于微调的方法。很多语言模型是单向的,或者特征抽取器功能不够强大,这些都限制了下游NLP任务的性能。BERT模型通过使用双向编码器来改进基于微调的方法,添加NSP提高模型性能,推进了11NLP任务的技术。


亮点

BERT的亮点主要包括:

1)使用双向语言模型,使用能力更强的Transformer提取特征,添加NSP任务,提高模型性能。

2)推进了11NLP任务的最新技术,可应用范围非常广。

概念及模型

  • 模型体系结构

BERT的模型架构是一个多层双向Transformer编码器,文中主要报告两种模型参数的结果:

(1)BERTBASE: L=12, H=768, A=12, TotalParameters=110M

(2)BERTLARGE: L=24, H=1024, A=16, TotalParameters=340M

  • 输入表示

输入表示分为三部分:

(1)词嵌入:用##表示分词

(2)位置嵌入:通过学习得到位置嵌入,支持序列长度可达512个令牌

(3)句子嵌入:句子对被打包成一个序列,首先用特殊标记将它们分开。其次,添加一个学习句子A嵌入到第一个句子的每个标记中,一个句子B嵌入到第二个句子的每个标记中,对于单个句子,只是用句子A嵌入。

 

  • 预训练任务

1、任务#1Masked LM

文章认为双向语言模型比单向语言模型功能更强大,为了训练双向语言模型,文章采取的方法为随机屏蔽一定比例的输入令牌,然后仅预测那些被屏蔽的令牌,并将这其称为“Masked LM”(MLM),这种做法与CBOW不谋而合。

虽然可以此方法构建双向预训练模型,但这种方法有两个缺点。

首先,预训练和微调之间不匹配,因为[MASK]令牌在微调期间从未出现。为了减轻这种影响,文章提出并不总是用实际的[MASK]令牌替换“掩蔽”词。相反,训练数据生成器随机选择15%的令牌,然后执行以下过程:

180%的时间:用[MASK]标记替换单词

210%的时间:用随机单词替换单词

310%的时间:保持单词不变

 

Transformer编码器不知道它将被要求预测哪些单词或哪些单词已被随机单词替换,因此它被迫保持每个输入标记的分布式上下文表示。此外,因为随机替换只发生在所有令牌的1.5%(即15%的10%),这似乎不会损害模型的语言理解能力。

第二个缺点是每批中只预测了15%的令牌,这表明模型可能需要更多的预训练步骤才能收敛。

 

2、任务#2NSP

 

许多重要的下游任务都是基于理解两个文本句子之间的关系,而这两个文本句子并不是由语言建模直接捕获的。为了训练理解句子关系的模型,文章预先训练了一个可以从任何单语语料库生成的二值化的下一个句子预测任务。具体地,当为每个预训练示例选择句子AB时,50%的时间B是跟随A的实际下一句子,并且50%的时间是来自语料库的随机句子。

 

实验

文章将介绍11NLP任务的BERT微调结果:

1GLUE结果

2SQuAD v1.1

3、SQuAD v2.0

4、SWAG

总结

由于语言模式转换学习的经验改进表明,丰富的、无监督的预训练是许多语言理解系统的一个组成部分。特别是,这些结果使得即使是低资源任务也能从非常深的单向体系结构中受益。文章的主要贡献是将这些发现进一步推广到深度双向架构,允许相同的预训练模型成功解决一系列广泛的NLP任务。



 

OpenKG


开放知识图谱(简称 OpenKG)旨在促进中文知识图谱数据的开放与互联,促进知识图谱和语义技术的普及和广泛应用。

点击阅读原文,进入 OpenKG 博客。

登录查看更多
1

相关内容

在搭建网络模型时,需要随机初始化参数,然后开始训练网络,不断调整直到网络的损失越来越小。在训练的过程中,一开始初始化的参数会不断变化。当参数训练到比较好的时候就可以将训练模型的参数保存下来,以便训练好的模型可以在下次执行类似任务时获得较好的结果。
BERT进展2019四篇必读论文
专知会员服务
66+阅读 · 2020年1月2日
【Google论文】ALBERT:自我监督学习语言表达的精简BERT
专知会员服务
22+阅读 · 2019年11月4日
最新BERT相关论文清单,BERT-related Papers
专知会员服务
52+阅读 · 2019年9月29日
【论文笔记】基于BERT的知识图谱补全
专知
116+阅读 · 2019年9月15日
ACL 2019 | 多语言BERT的语言表征探索
AI科技评论
20+阅读 · 2019年9月6日
一文详解Google最新NLP模型XLNet
PaperWeekly
17+阅读 · 2019年7月1日
20项任务全面碾压BERT,全新XLNet预训练模型
机器学习算法与Python学习
15+阅读 · 2019年6月20日
中文版-BERT-预训练的深度双向Transformer语言模型-详细介绍
最新论文解读 | 基于预训练自然语言生成的文本摘要方法
微软研究院AI头条
57+阅读 · 2019年3月19日
3分钟看懂史上最强NLP模型BERT
机器学习算法与Python学习
7+阅读 · 2019年2月27日
BERT大火却不懂Transformer?读这一篇就够了
大数据文摘
11+阅读 · 2019年1月8日
Arxiv
5+阅读 · 2019年10月31日
Arxiv
5+阅读 · 2019年8月22日
Arxiv
6+阅读 · 2019年7月11日
Arxiv
11+阅读 · 2019年6月19日
Arxiv
6+阅读 · 2019年3月19日
The Evolved Transformer
Arxiv
5+阅读 · 2019年1月30日
VIP会员
相关资讯
【论文笔记】基于BERT的知识图谱补全
专知
116+阅读 · 2019年9月15日
ACL 2019 | 多语言BERT的语言表征探索
AI科技评论
20+阅读 · 2019年9月6日
一文详解Google最新NLP模型XLNet
PaperWeekly
17+阅读 · 2019年7月1日
20项任务全面碾压BERT,全新XLNet预训练模型
机器学习算法与Python学习
15+阅读 · 2019年6月20日
中文版-BERT-预训练的深度双向Transformer语言模型-详细介绍
最新论文解读 | 基于预训练自然语言生成的文本摘要方法
微软研究院AI头条
57+阅读 · 2019年3月19日
3分钟看懂史上最强NLP模型BERT
机器学习算法与Python学习
7+阅读 · 2019年2月27日
BERT大火却不懂Transformer?读这一篇就够了
大数据文摘
11+阅读 · 2019年1月8日
相关论文
Arxiv
5+阅读 · 2019年10月31日
Arxiv
5+阅读 · 2019年8月22日
Arxiv
6+阅读 · 2019年7月11日
Arxiv
11+阅读 · 2019年6月19日
Arxiv
6+阅读 · 2019年3月19日
The Evolved Transformer
Arxiv
5+阅读 · 2019年1月30日
Top
微信扫码咨询专知VIP会员