在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding

用于自然语言理解的多任务深度神经网络

  • Abstract
  • 1 Introduction
  • 2 Tasks
  • 3 The Proposed MT-DNN Model
    • 3.1 The Training Procedure
  • 4 Experiments
    • SNLI
  • SciTail

在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第1张图片
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第2张图片

Abstract

在本文中,我们提出了一个多任务深度神经网络(MT-DNN),用于跨多个自然语言理解(NLU)任务的学习反应。MT-DNN不仅利用了大量的跨任务数据,而且还得益于正则化的效果,这种效果导致更一般的表示,以帮助适应新的任务和领域。MT-DNN扩展了Liu等人(2015)提出的模型,通过加入一个预先训练的双向变压器语言模型,称为bert(Devlin等人,2018)。MT-DNN在10个nlutrequest上获得了最先进的结果,包括SNLI、SciTail和9个GLUE任务中的8个,将胶水基准提高到82.7%(2.2%的绝对改进)1。我们还使用SNLI和Sc-iTail数据集证明,MT-DNN所学习的表示允许使用比预先训练的BERT表示更少的域内标签来适应域。

1 Introduction

学习文本(如单词和句子)的向量空间表示是许多自然语言理解(NLU)任务的基础。两种流行的方法是多任务学习和语言模型预训练。本文结合两种方法的优点,提出了一种新的多任务深度神经网络(MT-DNN)。多任务学习(MTL)的灵感来源于人类学习活动,在这种活动中,人们通常会将从以前的任务中学到的知识用于帮助学习新的任务(Caruana,1997;Zhang和Yang,2017)。例如,一个会滑雪的人比不会滑雪的人更容易学会滑冰。类似地,多个(相关)任务联合学习是有用的,这样在一个任务中学习的知识可以使另一个任务受益任务。最近,越来越多的人对使用深度神经网络(DNNs)将MTL应用于表征学习(Collobert et al.,2011;Liu et al.,2015;Luong et al.,2015;Xu et al.,2018;Guo等人,2018年;Ruder12等人,2019年),原因有二。
首先,DNNs的监督学习需要大量特定于任务的标记数据,而这些数据并不总是可用的。MTL提供了一种有效的方法来利用来自许多相关任务的监控数据。
第二,多任务学习的使用通过对特定任务的过度拟合从正则化效应中获益,从而使学习到的表征在任务间具有普遍性。
与MTL不同的是,语言模型预训练通过利用大量未标记的数据来学习通用语言表示法是有效的。Gao等人最近的一项调查包括在内。(2018年)。一些最突出的例子是ELMo(Peters et al.,2018)、GPT(Radford et al.,2018)和BERT(Devlin et al.,2018)。这些是神经网络语言模型训练的文本数据使用无监督的目标。例如,BERT基于一个多层双向变换器,它被训练在纯文本上,用于蒙蔽词预测和下一个句子预测任务。为了将一个训练过的模型应用到特定的NLU任务上,我们通常需要对每个任务进行微调,使用特定于任务的训练数据对模型进行额外的特定于任务的层的调整。例如,Devlin等人。(2018)表明,可以通过这种方式对BERT进行微调,为一系列nlu任务创建最先进的模型,例如问答和自然语言推理。我们认为MTL和语言模型前训练是互补的技术,可以结合起来提高文本表示的学习,以提高各种nlu任务的性能。为此,我们扩展了Liu等人(2015)最初提出的MT-DNNmodel,将BERT作为其共享的文本编码层。如图1所示,底层(即文本编码层)在所有任务中共享,而顶层是任务特定的,结合了不同类型的NLU任务,如句子分类、成对文本分类、文本相似性和相关性排名。与BERT模型类似,MT-DNN可以通过微调来适应特定的任务。与bert不同,MT-DNN除了语言模型预训练外,还使用MTL来学习文本表示。
MT-DNN在通用语言理解评估(GLUE)基准测试中使用的9个NLU任务2中的8个获得了最新的最先进的结果(Wang et al., 2018),将GLUEbenchmark得分提升到82.7%,ab-solute比BERT提高了2.2%。我们进一步将MT-DNN的优势扩展到SNLI(Bow-man et al.,2015a)和SciTail(Khot et al.,2018)任务。通过MT DNNallow域自适应学习的表示,与预先训练的BERT表示相比,域标签明显减少。例如,我们调整后的模型在SNLI和SciTail上分别实现了91.6%和95.0%的准确率,分别比之前的最先进的表现高出1.5%和6.7%。即使只有0.1%或1.0%的原始训练数据,MT-DNN在SNLI和SciTail数据集上的性能都优于许多现有模型。所有这些都清楚地证明了MT-DNN通过多任务学习所具有的非凡的泛化能力。

2 Tasks

单句分类:给定一个句子,模型使用一个预定义的类标签对其进行标记。例如CoLA,预测一个英语句子在语法上是否合理。第二项任务是确定从电影评论中提取的一个句子的情绪是积极的还是消极的。
文本相似性:这是一个回归任务。在给出一对句子的基础上,该模型预测了一个表示两个句子语义相似度的实值分数。STS-B是GLUE的唯一示例。
文本成对分类:给定一对句子,该模型根据一组预定义的标签来确定这两个句子之间的关系。例如,无论是RTE任务还是MNLI任务,其目标都是预测一个句子相对于另一个句子来说是蕴涵性的、相反的还是中性的。QQP和MRPC是由句子对组成的数据集。任务是预测句子对中的句子在语义上是否等价。
相关性排名:给定一个查询和一个候选答案列表,该模型按照与查询相关的顺序对所有候选进行排序。QNLI是斯坦福大学问答数据集的一个版本(Rajpurkar等人,2016)。该任务的目的是评估一个句子是否包含对给定查询的正确答案。尽管QNLI在GLUE中被定义为一个二元分类任务,但在本研究中,我们将其表述为一个两两排序任务,其中模型期望将包含正确答案的候选排列得高于不包含正确答案的候选答案。我们将表明,这个公式导致了一个显著的改进,准确性超过二分类。

3 The Proposed MT-DNN Model

MT-DNN模型的体系结构如图1所示。较低层在所有任务之间共享,而顶层表示特定任务的输出。inputX是一个单词序列(一个句子或组合在一起的一对句子),它首先被表示为一个映射向量序列,每个单词一个,在l1中。然后transformer编码器通过自我注意获取每个单词的上下文信息,并在l2中生成一系列上下文嵌入。这是我们通过多任务目标得到的共享语义表示。在接下来的文章中,我们对模型进行了详细的阐述。
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第3张图片
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第4张图片
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第5张图片
Transformer Encoder (l2):
与BERT模型(Devlin et al.,2018)不同的是,MT-DNN通过预训练来学习代表性,而MT-DNN在预训练的基础上使用多任务目标来学习表现。
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第6张图片
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第7张图片
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第8张图片
输出模块的设计遵循随机回答网络(SAN)的答案模块(Liu等人,2018a),这是一种最先进的神经网络 NLI模型。它不是直接预测给定输入的必然性,而是保持一个状态,并不断地改进其预测。
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第9张图片
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第10张图片
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第11张图片
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第12张图片

3.1 The Training Procedure

MT-DNN的训练过程包括预处理和多任务学习两个阶段。预训练阶段沿袭BERTmodel (Devlin et al., 2018)。词汇编码器和转换器编码器的参数是通过两个非监督预测任务来学习的:掩蔽语言建模和下一句预测。在多任务学习阶段,我们使用基于小批量的随机梯度下降(SGD)来获取模型的参数(即所有共享层和任务特定层的参数),如算法1所示。
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第13张图片
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第14张图片
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第15张图片
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第16张图片
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第17张图片

4 Experiments

SNLI

斯坦福自然语言推断(SNLI)数据集包含570k人注释的句子对,其中的前提是从Flickr30语料库的字幕中提取的,并且人工注释了这些句子(Bowman et al.,2015b)。这是NLI中使用最广泛的蕴涵式数据集。数据集仅用于本研究的领域适应性。

SciTail

这是一个文本蕴涵数据集,来自科学问答(SciQ)数据集(Khot等人,2018年)。这个任务包括讨论一个给定的前提是否包含一个给定的可能性。与前面提到的其他蕴涵数据集不同,scitail中的假设来自科学问题,而相应的答案候选和前提来自于从大型语料库中检索到的相关web句子。因此,这些句子在语言上具有挑战性,而且短语和假设在词汇上的相似度往往很高,因而使句子的编写变得特别困难。数据集可用于本研究中的领域适应性。
在Bert上利用多域数据继续预训练+多域分类器:Multi-Task Deep Neural Networks for Natural Language Understanding_第18张图片
在Bert基础上利用多域数据继续pre-train,再加上适合各任务的classifer。近日可能出这篇的部分代码解析。

你可能感兴趣的:(#,部分翻译:模型压缩,跨域,终生学习,课程学习)