首页 国际新闻正文

胸口中间疼是怎么回事,读8篇论文,整理BERT相关模型发展与反思,三生三世枕上书

作者 | 陈永强

来历 | 微软研究院AI头条(ID:MSRAsia)

【导读】BERT 自从在 arXiv 上宣布以来获得了很大的成功和重视,打开了 NLP 中 2-Stage 的潘多拉魔盒。随后呈现了一大批相似于“BE全才儿子邪佞妃RT”的预练习(pre-trained)模型,有引进 BERT 中双向上下文信息的广义自回归模型 XLNet,也有改善 BERT 练习办法和方针的 RoBERTa 和 SpanBERT,还有结合多使命以及常识蒸馏(Knowledge Distillation)强化 BERT 的 MT-DNN 等。除此之外,还有人企图探求 BERT 的原理以及其在某些使命中体现拔尖的真实原因。以上种种,被戏称为 BERTology。本文中,微软亚洲研究院常识核算组实习生陈永强测验汇总上述内容,作抛砖引玉。

目录

1. XLNet 及其与 BERT 的比照

2. RoBERTa

3. SpanBERT

4. MT-DNN 与常识蒸馏

对 BERT 在部分 NLP 使命中体现的深入剖析:

1. BERT 在 Argument Reasoning Comprehension 使命中的体现

2. BERT 在 Natural Language Inference 使命中的体现

1. XLNet 及其与 BERT 的比照

咱们的谈论从 XLNet 团队的一篇博文开端,他们想经过一个公正的比较证明最新预练习模型 XLNet 的优越性。但什么是 XLNet 呢?

图1:XLNet 和 BERT 比照图

咱们知道,BERT 是典型的自编码模型(Autoencoder),旨在从引进噪声的数据重建原数据。而 BERT 的预练习进程选用了降噪自编码(Variational Autoencoder)思维,即 MLM(Mask Language Model)机制,差异于自回归模型(Autoregressive Model),最大的奉献在于使得模型获得了双向的上下文信息,可是会存在一些问题:

1. Pretrain-finetune Discrepancy:预练习时的[MASK]在微调(fine-tuning)时并不会呈现,使得两个进程不共同,这不利于 Learning。

2. Independence Assumption:每个 token 的猜测是彼此独立的。而相似于 New Y长耀堂ork 这样溧水郭兴村的 Entity,New 和 York 是存在相关的,这个假定则疏忽了这样的状况。

自回归模型不存在第二个问题,但传统的自回归模型是单向的。XLNet 团队想做的,便是让自回归模型也获得双向上下文信息,并防止榜首个问题的呈现。

他们首要运用了以下三个机制:

  • Permutation Language Model

  • Two-Stream Self-Attention

  • Recurrence Mechanism

Permutation Language Model

Two-Stream Self-Attentio胸口中心疼是怎么回事,读8篇论文,收拾BERT相关模型开展与反思,三生三世枕上书n

Recurrence Mechanism

接下来咱们将别离介绍这三种机制。

Permutation Language Model

图2:XLNet 模型结构图

在猜测某个 token 时,XLNet 运用输入的 permutation 获取双向的上下文信息,一起保持自回归模型原有的单向办法。这样的优点是能够不必改动输入次序,只需在内部处理。

它的完成选用了一种比较奇妙的办法:运用 token 在 permutation 的方位核算上下文信息。如关于,当时有一个 2 -> 4 ->3 ->1 的摆放,那么咱们就取出 token_2 和 token_4 作为AR 的输入猜测 token_3。不难了解,当一切 permutation 取完时,咱们还珠之薇然人生就能获得一切的上下文信息。

这样就得到了咱们的方针公式:

可是在原来的公式中,咱们只运用了 h_ (x_(Z<t)) 来表明当时周世晶token“上文”的 hidden representation,使得不论模型要猜测哪个方位的 token,假如“上文”共同,那么输出便是共同的。因而,新的公式做出了改动,引进了要猜测的 token 的方位信息。

此外,为了下降模型的优化难度,XLNet 运用了狩魔手记txt全集下载 Partial Prediction,即只猜测当时 permutation 方位 c 之后的 token,终究优化方针如下所示。

Two-Stream Self-Attention

图3:Two-Stream Self-Attention 机制

该机制所要处理的问题是,当咱们获得了 g_ (x_{Z<t},z_t) 后,咱们只需该方位信息以及“上文”的信息,缺少以去猜测该方位后的 token;而本来的 h_ (x_{Z<t}) 则由于获取不到方位信息,仍然缺少以去猜测。因而,XLNet 引进了 Two-Stream Self-Attention 机制,将两者结合起来。

Recurrence Mechanism

图4:Recurrence Mechanism 机制

该机制来自 Transformer-XL,即在处理下一个 segment 时结合上个 segment 胸口中心疼是怎么回事,读8篇论文,收拾BERT相关模型开展与反思,三生三世枕上书的 hidden representation,使得模型能够获得更长间隔的上下文信息。而在 XLNet 中,尽管在前端选用相对方位编码,但在表明 h_ (x_{Z<t}) 的时分,涉及到的处理与 permutation 独立,因而还能够沿袭这个机制。该机制使得 XLNet 在处理长文档时具有较好的优势。

XLNet 与 BERT 的差异示例

图5:XLNet 与 BERT 的差异示例

为了阐明 XLNet 与 BERT 的差异,作者举了一个处理“New York is a city”的比方。这个能够直接经过两个模型的公式得到。假定咱们要处理 New York 这个单词,BERT 将直接 mask 这两个 tokens,运用“is a city”作为上下文进行猜测,这样的处理疏忽了 New 和 York 之间的相关;而 XLNet 则经过 permutation 的办法,能够使得模型获得更多如 York | New, is a city 这样的信息。

公正地比较 XLNet 与 BERT

为了更好地阐明 XLNet 的优越性,XLNet 团队宣布了最初说到的博文“A Fair Comparison Study of XLNet and BERT”。

在这篇博文中,XLNet 团队操控 XLNet 的练习数据、超参数(Hyperparameter)以及网格查找空间(Grid Search Space)等与 BERT 共同,一起还给出了三个版别的 BERT 进行比较。BERT 一方则运用以下三个模型中体现最好的模型。

试验成果如下。

表1:XLNet 与 BERT 试验成果比照

从中能够看出,在相同设定状况下,XLNet 完胜 BERT。但风趣的是:

  • XLNet 在运用 Wikibooks 数据集时,在MRPC(Microsoft Research Paraphrase Corpus: 语句对来历于对同一条新闻的谈论,判别这一对语句在语义上是否相同)和 QQP(Quora Question Pairs: 这是一个二分类数据集。意图是判别两个来自于 Quora 的问题语句在语义上是否是等价的)使命上获得了不弱于原版 XLNet 的体现;

XLNet 在运用 Wikibooks 数据集时,在MRPC(Microsoft Research Paraphrase Corpus: 语句对来历于对同一条新闻的谈论,判别这一对语句在语义上是否相同)和 QQP(Quora Question Pairs: 这是一个二分类数据集。意图是判别万年李金生两个来自于 Quora 的问题语句在语义上是否是等价的)使命上获得了不弱于原版 XLNet 的体现;

  • BERT-WWM 模型遍及体现都优于原 BERT;

BERT-WWM 模型遍及体现都优于原 BERT;

  • 去掉 NSP(Next Sentence Prediction)的 BERT 在某些使命中体现会更好;

去掉 NSP(Next Sentence Prediction)的 BERT 在某些使命中体现会更好;

除了 XLNet,还有其他模型提出根据 BERT 的改善,让 BERT 发挥更大的潜能。

2. RoBERTa: A Robustly Optimized BERT Pretraining Approach

表2:RoBERTa 在 GLUE 中的试验成果

RoBERTa 是最近 Facebook AI 联合 UW 发布的 BERT 预练习模型,其改善首要是如图所示几点,除了调参外,还引进了 Dynamically Change Mask Pattern 并移除 Next Sentence Prediction,使得骨加宽模型在 GLUE Benchmark 排名榜首。作者的观念是:BERT is significantly undertrained。

表3:RoBERTa 各个机制的作用比较试验

不同于原有的 BERT 的 MLM 机制,作者在一共40个 epoch 中运用10种不同的 Mask Pattern,即每种 Mask Pattern 练习4代,作为 static 战略;作者还引进了 dynamic masking 战略,即每输入一个 sequence 就为其生成一个 mask pattern。终究发现,新战略都比原 BERT 好,而 dynamic 总体上比 static 战略要好一些,而且能够用于练习更大的数据集以及更长的练习步数,因而终究选用 dynamic masking pattern。

作者还经过替换 NSP 使命进行预练习。尽管 BERT 中现已做了测验去掉 NSP 后的比照,成果在许多使命中体现会下降,可是包括前文 XLNet 团队所做的试验都在质疑这必定论。

选用的新战略包括:

  • Sentence-Pair+NSP Loss:与原 BERT 相同;

  • Segment-Pair+NSP Loss:输入完好的一对包括多个语句的片段,这些片段能够来自同一个文档,也能够来自不同的文档;

  • Full-Sentences:输入是一系列完好的语句,能够是来自同一个文档也能够是不同的文档;

  • Doc-Sentences:输入是一系列完好的语句,来自同一个文档;

Sentence-Pair+NSP Loss:与原 BERT 相同;

Segment-Pair+NSP Loss:输入完好的一对包括多个语句的片段,这些片段能够来自同一个文档,也能够来自不同的文档;

Full-Sentences:输入是一系列完好的语句,能够是来自同一个文档也能够是不同的文档;

成果发现完好语句会更好,来自同一个文档的会比来自不同文档的好一些,终究选用 Doc-Sentences 战略。

表4:RoBERTa 在更多练习数据和更久练习时刻下的试验成果

作者还测验了更多的练习数据以及更久的练习时刻,发现都能提高模型的体现。

这种思路必定程度上与 OpenAI 前段时刻放出的 GPT2.0 暴力扩大数据办法有点相似,可是需求耗费许多的核算资源。

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

图6:SpanBER模型结构以及在 GLUE 中的试验成果

不同于胸口中心疼是怎么回事,读8篇论文,收拾BERT相关模型开展与反思,三生三世枕上书 RoBERTa,SpanBERT 经过修正模型的预练习使命和方针使模型到达更好的作用。其修正首要是三个方面:

  • Span Masking:这个办法与之前 BERT 团队放出WWM(Whole Word Masking)相似,即在 mask 时 mask 一整个单词的 token 而非本来单个token。每次 mask 前,从一个几许散布中采样得到需求 mask 的 span 的长度,并等概率地对输入中为该长度的 span 进行 mask,直到 mask 完15%的输入。

Span Masking:这个办法与之前 BERT 团队放出WWM(Whole Word Masking)相似,即在 mask 时 mask 一整个单词的 token 而非本来单个token。每次 mask 前,从一个几许散布中采样得到需求 mask 的 span 的长度,并等概率地对输入中为该长度的 span 进行 mask,直到 mask 完15%的输入。

  • Span Boundary Object:运用 span 前一个 token 和结尾后一个 token 以及 token 方位的 fixed-representation 表明 span 内部的一个 token。并以此来猜测该 token,运用穿插熵作为新的 loss 加入到终究的 loss 函数中。该机制使得模型在 Span-Level 的使命种能获得更好的体现。

Span Boundary Object:运用 span 前一个 token 和结尾后一个 token 以及 token 方位的 fixed-representation 表明 span 内部的一个 token。并以此来猜测该 token,运用穿插熵作为新的 loss 加入到终究的 loss 函数中。该机制使得模型在 Span-Level 的使命种能获得更好的体现。

  • Single-Sequence Training:直接输入一整段接连的 sequence,这样能够使得模型获得更长的上下文信息。

Single-Sequence Training:直接输入一整段接连的 sequence,这样能够使得模型获得更长的上下文信息。

在这三个机制斗宠狂潮下,SpanBERT 运用与 BERT 相同的语料进行练习,终究在 GLUE 中获得82.8的体现,高于原版 Google BERT 2.4%,高于他们调参后的 BERT 1%,一起在 Coreference Resolution 大将最好成果提高了6.6%。

4. MT-DNN 与常识蒸馏

Multi-Task Deep Neural Networks for Natural Language Understanding

这篇论文旨在将 Multi-Task 与 BERT 结合起来,使得模型能在更多的数据上进行练习的一起还能获得更好的搬迁才能(Transfer Ability)。

图7:MT-DNN 模型结构以及练习算法

模型架构如上图所示,在输入以及 Transformer 层,选用与 BERT 相同的机制,可是在后续处理不同使命数据时运用不同的使命参数与输出的表明做点积(Dot Production),用不同的激活函数(Activation 宏组词Function)和丢失函数(Loss Function)进行练习。

图8:MT-DNN 在不同使命之间的搬迁才能

MT-DNN 具有不错的搬迁才能。如上图所示,MT-DNN 只需求23个使命样本就能够在 SNLI 中获得82%的准确率!尤其是 BERT 在一些小数据集上微调或许存在无法收敛体现很差的状况,MT-DNN 就能够比较好地处理这一问题,一起节省了新使命上标示数据以及长时刻微调的本钱。

Improving Multi-Task Deep Neural Networks via Knowledge Distillation for Natural Language Understanding

图9:运用常识蒸馏对 MT-DNN 模型进行优化

由于 MT-DNN 能够看作一个 ensemble 进程,所以就能够用常识蒸馏(Knowledge Distillation)进行优化,该办法能提高许多 ensemble 模型的体现,感爱好的读者能够自行了解相关内容。

本文的常识蒸馏进程即关于不同的使命,运用相同的结构在对应的数据集上进行微调,这就能够看作每个使命的 Teacher,他们别离拿手处理对应的问题。

Student 则去拟合 target Q,而且运用 soft 穿插熵丢失(Cross Entropy Loss)。为什么运用 soft 穿插熵丢失呢?由于有些语句的意思或许并不是肯定的,比方“I really enjoyed the conversation with Tom"有必定重生之末世血凤概率说的是反语,而不是100%的活跃意思。这样能让 Student 学到更多的信息。

选用常识蒸馏后,模型在 GLUE 中的体现增长了1%,现在排名前三。咱们还能够等待 MT-DNN 机制在 XLNet 上等其他预练习模型中的体现。

对 BERT 在部分 NLP 使命中体现的深入剖析

上文的 BERT 在 NLP 许多使命中都获得了耀眼的成果,乃至有人以为 BERT 简直处理了 NLP 范畴的问题,但接下来的两篇文章则给人们浇了一盆冷水。

1. BERT 在 Argument Reasoning Comprehension 使命中的体现

Probing Neural Network Comprehension of Natural Language Arguments

表5:BERT 在 Argument Reasoning Comprehension 使命中的体现

该文首要探求 BERT 在 ARCT(Argument Re宠物小精灵之天分纵横asoning Comprehension)使命中获得惊人体现的真实原因。

首要,ARCT 使命是 Habernal 等人在 NACCL 2018 中提出的,即在给定的条件(premise)下,关于某个陈说(claim),相反的两个根据(warrant0,warrant1)哪个能支撑前说到陈说的推理。

他们还在 SemEval-2018 中指出,这个使命不只需求模型了解推理的结构,还需求必定的外部常识。在本例中,这个外部常识能够是“Sport Leagues 是一个和 Sport 相关的某安排”。

该使命中体现最好的模型是 GIST,这儿不具体打开,有爱好的读者能够重视该论文。

图10:模型结构与试验成果

作者测验运用 BERT 处理该使命,调整输入为[CLS,Claim,Reason,SEP,Warrant ],经过共用的 linear layer 获得一个 logit(相似于逻辑回归),别离用 warrant0 和 warrant1 做一次,经过 softmax 归一化成两个概率,优化方针是使得答案对应的概率最大。

终究该模型在测验会集获得最高77%的准确率。需求阐明的是,由于 ARCT 数据集过小,仅有1210条练习样本,使得 BERT 在微调时简单发生不稳定的体现。因而作者进行了20次试验,去掉了退化(Degeneration,即在练习集上的成果非常差)的试验成果,计算得到上述表格。

表6:作者的探索性试验(Probing Experiments)

尽管试验成果非常好,但作者置疑:这终究是 BERT 学到了需求的语义信息,仍是仅仅过度运用了数据中的计算信息,因而作者提出了关于 cue 的一些概念:

  • A Cue's Applicability:在某个数据点 i,label 为 j 的 warrant 中呈现万生东但在另一个 warrant 中不呈现的 cue 的个数。

A Cue's Applicability:在某个数凡克猫童装据点 i,label 为 j 的 warrant 中呈现但在另一个 warrant 中不呈现的 cue 的个数。

  • A Cue's Productivity:在某个数据点 i,label 为 j 的 warrant 中呈现但在另一个 warrant 中不呈现,且这个数据胸口中心疼是怎么回事,读8篇论文,收拾BERT相关模型开展与反思,三生三世枕上书点的正确 label 是 j,占一切上一种 cue 的份额。直观来说便是这个 cue 能被模型运用的价值,只需这个数据大于50%,那么咱们就能够以为模型运用这个 cue 是有价值的。

A Cue's Productivity:在某个数据点 i,label 为 j 的 warrant 中呈现但在另一个 warrant 中不呈现钱国女,且这个数据点的正确 label 是 j,占一切上一种 cue 的份额。直观来说便是这个 cue 能被模型运用的价值,只需这个数据大于50%,那么咱们就能够以为模型运用这个 cue 是有价值的。

  • A Cue's Coverage:这个 cue 在一切数据点中呈现的次数。

A Cue's Coverage:这个 cue 在一切数据点中呈现的次数。

这样的 cue 有许多,如 not、are 等。如上图表一所示是 not 的呈现状况,能够看出 not 在64%的数据点中都有呈现,而且模型只需挑选有 not 呈现的 warrant,正确的概率是61%。

作者置疑模型学到的是这样的信息。假如推论建立,只需输入 warrant,模型就能获得很好的体现。因而作者也做了上图表二所示的试验。

能够看出,只输入 w 模型就获得了71%的峰值体现,而输入(R,W)则能添加4%,输入(C,W)则能添加2%,正好71%+4%+2%=77%,这是一个很强的依据。

图11:对立数据集以及在对立数据集上的试验成果

为了充分证明推论的正确性,作者结构了对立数据集(Adversarial Dataset),如上图比方所示,关于本来的结构:R and W -> C,变换成:Rand !W -> !C(这儿为了便利,用!表明取反)

作者首要让模型在原 ARCT 数据集微调并在对立数据集评测(Evaluation),成果比随机还要糟糕。后来农门继妃之错嫁离王府又在对立数据集微调并在对立数据集评测,获得体现如上图第二个表所示。

从试验成果来看,对立数据集基本上消除了 cue 带来的影响,让 BERT 真实地展现了其在该使命上的才能,与作者的猜测共同。

尽管试验稍显缺少(如未充分阐明模型是否收敛,其他模型在对立数据会集的体现如多么),但本文给 BERT 的炽热浇了一盆冷水,充分阐明了 BERT 并不是全能的,咱们有必要镇定考虑 BERT 现在获得惊人体现的真实原因。

2. BERT 在 Natural Language Inference 使命中的体现

Right for the Wrong Reasons: Diagnosing Syntactic Heuristics in Natural Language

这是另一篇对 BERT 等模型在自然语言推理(Natural Language Inference,NLI)使命中体现的讨论。

图12:NLI 使命中 Heuristic 示意图

作者首要假定在 NLI 中体现好的模型或许运用了三种 Heuristic,而所谓的 Heuristic 即在 Premise 中就给了模型一些提示,有如下三种:

  • Lexical Overlap:对应的 Hypothesis 是 Premise 的子序列

Lexical Overlap:对应的 Hypothesis 是 Premise 的子序列

  • Subsequence:对应的 Hypothesis 是 Premise 的子串

Subsequence:对应的 Hypothesis 是 Premise 的子串

  • Constituent:Premise 的语法树会掩盖一切的 Hypothesis

Constituent:Premise 的语法树会掩盖一切的 Hypothesis

根据这个假定,作者也做了试验并观察到,MNLI 练习会集许多数据点都存在这样的 Heuristic,且对应的选项是正确的数量远多于不正确。针对这种状况,作者结构了 HANS 数据集,均衡两种类型样本的散布,而且标记了 premise 是否 entail 上述几种 Heuristic。

试验时模型在 MNLI 数据集微调,在 HANS 数据集评测,成果 entailment 类型的数据点中模型都体现不错,而在 non-entailment 类型中模型体现欠佳。这一试验成果支撑了作者的假定:模型过度运用了 Heuristic 信息。

图13:模型在 HANS 数据集上的成果剖析

可是作者并不非常确认这种试验成果是什么原因导致的,并提出如下猜测:

  • HANS 数据集太难了?不。作者让人类进行测验,发现人类在两种类型的数据中准确率别离为77%和75%,远高于模型。

HANS 数据集太难了?不。作者让人类进行测验,发现人类在两种类型的数据中准确率别离为77%和75%,远高于模型。

  • 是模型缺少满足的表明才能吗?不。ICL胸口中心疼是怎么回事,读8篇论文,收拾BERT相关模型开展与反思,三生三世枕上书R 2019《RNNs implicit胸口中心疼是怎么回事,读8篇论文,收拾BERT相关模型开展与反思,三生三世枕上书ly implement tensor-product representations》给出了必定的依据,表明 RNN 满足在 SNLI 使命中现已学到必定的关于结构的信息。

是模型缺少满足的表明才能吗?不。ICLR 2019《RNNs implicitly implement tensor-product representations》给出了必定的依据,表明 RNN 满足在 SNLI 使命中现已学到必定的关于结构的信息。

  • 那便是 MNLI 数据集并不好,缺少满足的信号让模型学会 NLI。

那便是 MNLI 数据集并不好,缺少满足的信号让模型学会 NLI。

因而作者在训胸口中心疼是怎么回事,读8篇论文,收拾BERT相关模型开展与反思,三生三世枕上书练会集加入了必定的 HANS 数据,结构了 MNL+数据集,让模型在该数据集微调,终究获得了如上图所示的成果。为了证明 HANS 对模型学到 NLI 的奉献,作者还让在 MNL+上微调的模型在另一个数据会集做了评测,模型体现都有提高。

总结

本文总结了 BERT 提出以来一些最新的开展。

BERT 是一个优异的预练习模型,它的预练习思维能够用来改善其他模型。BERT 能够更好,咱们能够设置新的练习办法和方针,让其发挥更大的潜能。

但 BERT 并没有幻想中的那么好,咱们有必要镇定对待 BERT 在一些使命中获得不错体现的原因——终究是由于 BERT 真实学到了对应的语义信息,仍是由于数据会集数据的不平衡导致 BERT 过度运用了这样的信号。

仿制如下链接到浏览器

https://www.msra.cn/wp-content/uploads/2019/09/How-Powerful-are-BERTs.pdf

即可下载本文内容相关PPT。

参考文献:

[1] XLNet: Generalized Autoregressive Pretraining for Language Understanding. Yang et al.CoRR abs/1906.08237.

[2] A Fair Comparison Study of XLNet and BERT. XLNet Team.

https://medium.com/@xlnet.team/a-fair-comparison-study-of-xlnet-and-bert-with-large-models-5a4257f59dc0

[3] Probing Neural Network Comprehension of Natural Language Arguments. Niven et al. ACL2019.

[4] Right for the Wrong Reasons: Diagnosing Syntactic Heuristics in Natural Language Inference. McCoy el al. Corr abs/1902.01007.

[5] RoBERTa: A Robustly Optimized BERT Pretraining Approach. Liu et al. CoRR abs/190.11692.

[6] SpanBERT: Improving Pre-training by Representing and Predicting Spans. Joshi et al. CoRRabs/1907.10529.

[7] Multi-Task Deep Neural Networks for Natural Language Understanding. Liu et al. CoRR abs/1901.11504.

[才智之圣甲虫像8] Improving Multi-Task Deep Neural Networks via Knowledge Distillation for Natural Language Understanding. Liu et al. CoRR abs/1904.09482.

(*本文为AI科技大本营转载文章,转载请联络作者)

千百擼
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。