Xiaodong Liu等作者

GLUE排行榜上全面超越BERT的模型近日公布了!

在通用语言理解评估(GLUE)基准中,自 BERT 打破所有 11 项 NLP 的记录后,可应用于广泛任务的 NLP 预训练模型得到了大量关注。2018 年底,机器之心介绍了微软提交的综合性多任务 NLU 模型,它在 11 项 NLP 任务中有 9 项超越了 BERT,近日微软公布论文介绍了这种名为 MT-DNN 的多任务模型。

当前 GLUE 排行榜(2019.02.12)

GLUE 榜单链接:https://gluebenchmark.com/leaderboard

学习文本(例如单词和句子)的向量空间表示是许多自然语言理解(NLU)任务的基础。目前有两种流行的方法,分别是多任务学习语言模型预训练。

人类学习活动中经常用先前任务中学习到的知识来帮助学习新的任务,多任务学习(MTL)正是有这样的优点。最近人们越来越关注将 MTL 应用到使用深度神经网络(DNN)的表示学习中,其原因是:首先,DNN 的监督学习需要大量特定任务的标记数据,但这些数据并不总是可用的,MTL 提供了一种有效的方法利用来自其他相关任务的监督数据;其次,使用 MTL 可以减轻对特定任务的过拟合,从而能够使得学习到的表示在不同的任务中通用。

而另一方面,最近以 BERT 为代表的预训练方法对模型性能的提升已经有目共睹。来自微软的数位研究人员认为 MTL 和语言模型预训练是互补的技术,因此可以结合起来改进文本表示的学习,从而提高各种 NLU 任务的性能。

他们将 2015 年做的一项多任务深度神经网络(MT-DNN)模型加以拓展,将 BERT 合并到模型的共享文本编码层。

如图所示,较低层(即文本编码层)在所有任务中共享,而顶层是任务特定的,组合不同类型的 NLU 任务,如单句分类、成对文本分类、文本相似性和相关性排序。与 BERT 模型类似,MT-DNN 分两个阶段进行训练:预训练和微调。与 BERT 不同的是,MT-DNN 在微调阶段使用 MTL,在其模型架构中具有多个任务特定层。

作者将其改进后的 MT-DNN 模型在通用语言理解模型(GLUE)基准测试中使用的 9 个 NLU 任务中,其中的 8 个获得了最好的结果,将 GLUE 的基线分数推至 82.2%(超过 BERT 1.8%)。此外,作者还进一步将改进的模型应用于 SNLI 和 SciTail 任务中,在前一个任务中获得了 91.1% 的准确率,在后者准确率则达到 94.1%,分别优于先前的最先进性能 1.0%和 5.8%,尽管使用的训练数据只有 0.1% 和 1.0%。这些都足以说明 MT-DNN 结合预训练后其泛化能力得到了大大的提升。

论文链接:https://arxiv.org/pdf/1901.11504.pdf

摘要:在此论文中,我们提出了在多种自然语言理解任务上学习表征的多任务深度神经网络(MT-DNN)。MT-DNN 不仅能利用大量跨任务数据,同时还能利用正则化的优势构建更一般的表征,使得它能够适用于新的任务和领域。通过结合预训练的双向 Transformer 语言模型BERT, Devlin et al., 2018),MT-DNN 扩展了 Liu et al. (2015) 提出的模型。MT-DNN 在 10 个 NLU 任务上获得了新的当前最优结果,包括 SNLI、SciTail 和另外 9 个 GLUE 基准任务中的 8 个,MT-DNN 将 GLUE 基准总体评分推升至 82.2%(1.8% 的绝对提升)。我们还表示使用 SNLI 和 SciTail 数据集,MT-DNN 学习到的表征能允许实现更高效的领域自适应。即相比于预训练的 BERT,预训练 MT-DNN 需要的领域标注数据少得多。我们的预训练模型和代码很快都将公开发布。

3.MT-DNN 模型

MT-DNN 模型的架构如下图 1 所示。下面几层在所有的任务中共享,上面的几层表示特定任务输出。

单词序列(可以是一句话或者打包在一起的句子对)作为输入 X,先表示为一个嵌入向量序列,其中 l_1 中一个向量对应一个单词。然后 Transformer 编码器通过自注意机制捕捉每个单词的语境信息,在 l_2 中生成语境嵌入序列。这就是我们的多任务目标函数训练得到的共享语义表征。

图 1:表征学习 MT-DNN 模型的架构。下面的网络层在所有任务中都共享,上面的两层是针对特定任务。输入 X(一句话或句子对)首先表征为一个序列的嵌入向量,在 l_1 中每个词对应一个向量。然后 Transformer 编码器捕捉每个单词的语境信息并在 l_2 中生成共享的语境嵌入向量。最后,针对每个任务,特定任务层生成特定任务的表征,而后是分类、相似性打分、关联排序等必需的操作。

3.1 训练程序

MT-DNN 的训练程序包含两个阶段:预训练和多任务精调。预训练阶段遵循 BERT 模型的方式。词汇编码器和 Transformer 编码器的参数使用两个无监督预测任务学习:掩码语言建模和下一句预测。

在多任务精调阶段,我们使用基于 minibatch 的随机梯度下降(SGD)来学习模型参数(也就是,所有共享层和任务特定层的参数),如下图算法 1 所示。

4. 实验

我们在 GLUE、斯坦福自然语言推理(SNLI)和 SciTail 三个流行的自然语言理解基准上评估了 MT-DNN。我们对比了 MT-DNN 与现有的包括 BERT 在内的 SOTA 模型,在 GLUE 上证明了 MTL 进行模型精调的有效性,在 SNLI 和 SciTail 上证明了 MTL 的领域适应性。

表 1:三个基准总结:GLUE、SNLI 和 SciTail。

表 2:GLUE 测试集结果,通过 GLUE 评估服务器进行评分。每个任务下的数值表示训练样本的数量。SOTA 结果做了加粗显示。MT-DNN 使用 BERTLARGE 作为共享层。

理论多任务学习MT-DNNNLUNLP微软BERT
5
相关数据
微软机构

微软是美国一家跨国计算机科技公司,以研发、制造、授权和提供广泛的计算机软件服务为主。总部位于美国华盛顿州的雷德蒙德,最为著名和畅销的产品为Microsoft Windows操作系统和Microsoft Office办公室软件,以及Xbox的游戏业务。微软是美国《财富》杂志2015年评选的世界500强企业排行榜中的第95名。

https://www.microsoft.com/en-us/about
基于Transformer 的双向编码器表征技术

BERT是谷歌发布的基于双向 Transformer的大规模预训练语言模型,该预训练模型能高效抽取文本信息并应用于各种NLP任务,并刷新了 11 项 NLP 任务的当前最优性能记录。BERT的全称是基于Transformer的双向编码器表征,其中“双向”表示模型在处理某一个词时,它能同时利用前面的词和后面的词两部分信息。

自然语言理解技术

自然语言理解是人工智能的核心课题之一,也被广泛认为是最困难和最具标志性的任务。最经典的两个人工智能思想实验——图灵测试和中文房间,都是围绕自然语言理解来构建的。自然语言理解在人工智能技术体系中的重要性不言而喻,它一方面承载着机器和人的交流,另一方面直达知识和逻辑。自然语言理解也是人工智能学者孜孜以求的圣杯,机器学习的巨擘 Michael I. Jordan 就曾经在 Reddit 上的 AMA(Ask Me Anything)栏目中畅想用十亿美元建立一个专门用于自然语言理解的实验室。

基准技术

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

文本分类技术

该技术可被用于理解、组织和分类结构化或非结构化文本文档。文本挖掘所使用的模型有词袋(BOW)模型、语言模型(ngram)和主题模型。隐马尔可夫模型通常用于词性标注(POS)。其涵盖的主要任务有句法分析、情绪分析和垃圾信息检测。

表征学习技术

在机器学习领域,表征学习(或特征学习)是一种将原始数据转换成为能够被机器学习有效开发的一种技术的集合。在特征学习算法出现之前,机器学习研究人员需要利用手动特征工程(manual feature learning)等技术从原始数据的领域知识(domain knowledge)建立特征,然后再部署相关的机器学习算法。虽然手动特征工程对于应用机器学习很有效,但它同时也是很困难、很昂贵、很耗时、并依赖于强大专业知识。特征学习弥补了这一点,它使得机器不仅能学习到数据的特征,并能利用这些特征来完成一个具体的任务。

准确率技术

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

随机梯度下降技术

梯度下降(Gradient Descent)是遵循成本函数的梯度来最小化一个函数的过程。这个过程涉及到对成本形式以及其衍生形式的认知,使得我们可以从已知的给定点朝既定方向移动。比如向下朝最小值移动。 在机器学习中,我们可以利用随机梯度下降的方法来最小化训练模型中的误差,即每次迭代时完成一次评估和更新。 这种优化算法的工作原理是模型每看到一个训练实例,就对其作出预测,并重复迭代该过程到一定的次数。这个流程可以用于找出能导致训练数据最小误差的模型的系数。

监督学习技术

监督式学习(Supervised learning),是机器学习中的一个方法,可以由标记好的训练集中学到或建立一个模式(函数 / learning model),并依此模式推测新的实例。训练集是由一系列的训练范例组成,每个训练范例则由输入对象(通常是向量)和预期输出所组成。函数的输出可以是一个连续的值(称为回归分析),或是预测一个分类标签(称作分类)。

目标函数技术

目标函数f(x)就是用设计变量来表示的所追求的目标形式,所以目标函数就是设计变量的函数,是一个标量。从工程意义讲,目标函数是系统的性能标准,比如,一个结构的最轻重量、最低造价、最合理形式;一件产品的最短生产时间、最小能量消耗;一个实验的最佳配方等等,建立目标函数的过程就是寻找设计变量与目标的关系的过程,目标函数和设计变量的关系可用曲线、曲面或超曲面表示。

过拟合技术

过拟合是指为了得到一致假设而使假设变得过度严格。避免过拟合是分类器设计中的一个核心任务。通常采用增大数据量和测试样本集的方法对分类器性能进行评价。

正则化技术

当模型的复杂度增大时,训练误差会逐渐减小并趋向于0;而测试误差会先减小,达到最小值后又增大。当选择的模型复杂度过大时,过拟合现象就会发生。这样,在学习时就要防止过拟合。进行最优模型的选择,即选择复杂度适当的模型,以达到使测试误差最小的学习目的。

多任务学习技术

深度神经网络技术

深度神经网络(DNN)是深度学习的一种框架,它是一种具备至少一个隐层的神经网络。与浅层神经网络类似,深度神经网络也能够为复杂非线性系统提供建模,但多出的层次为模型提供了更高的抽象层次,因而提高了模型的能力。

语言模型技术

语言模型经常使用在许多自然语言处理方面的应用,如语音识别,机器翻译,词性标注,句法分析和资讯检索。由于字词与句子都是任意组合的长度,因此在训练过的语言模型中会出现未曾出现的字串(资料稀疏的问题),也使得在语料库中估算字串的机率变得很困难,这也是要使用近似的平滑n元语法(N-gram)模型之原因。

推荐文章
暂无评论
暂无评论~