前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >神经机器翻译之全并行文本生成技术

神经机器翻译之全并行文本生成技术

作者头像
IT派
发布2018-03-28 17:22:39
1.2K0
发布2018-03-28 17:22:39
举报
文章被收录于专栏:IT派IT派IT派

在过去的几年里,随着技术的飞速发展,神经网络推动了自然语言任务在准确性和质量方面的快速提高,如文本分类和问题回答等。而其中由深度学习带来的一个令人印象深刻的领域是需要机器来生成自然语言文本的任务。其中两个任务是基于神经网络模型且具有最先进的性能的是文本摘要和机器翻译。

然而,到目前为止,所有基于神经网络和深度学习的文本生成模型都具有相同的、令人惊讶的局限性:就像我们一样,它们只能逐个单词,甚至逐个字母地生成语言。如今,Salesforce正宣布了一个能够克服这种局限性的神经机器翻译系统,它可以以完全并行的方式,一次性生成一个完整的句子。而这意味着用户的等待时间减少了10倍,同时翻译质量也与最好的逐单词模型非常相近。

图1:模型概

我们使用的所有层(包括词嵌入、注意、MLP和softmax层)可以并行操作,而“生成力预测器”,正如下面描述的那样,尽管是在并行性的情况下,仍然可以实现高质量、自一致的输出翻译。

高效的神经机器翻译

自2014年以来,随着神经网络和深度学习,以及所谓的神经机器翻译的应用,机器翻译领域取得了巨大的进步。特别是随着注意的使用,在2015年出现了一个飞跃式发展,现在则是涉及从蕴涵到问题问答的自然语言处理任务的关键技术。

尽管相较于传统方法来说,神经机器翻译模型的翻译质量要高得多,但与此同时,神经MT模型的慢是以一种至关重要的方式呈现的:它们有更高的延迟,这是完成用户所提供的新文本的翻译所需要的时间。这是因为现有的神经机器翻译系统每次只翻译一个单词,且需要运行整个神经网络,而其中每个单词的生成需要数十亿的计算。

因此,计算效率一直是现如今神经机器翻译领域所研究的一个主要目标。大约一年前,四个研究小组已经发表了关于更高效的神经MT模型的论文,主要是为了消除循环神经网络(RNNs)的使用。这在深度学习序列模型中是很常见的,但由于它们本质上来说是很难并行化的,所以运行速度很慢因此,DeepMind引入了ByteNet,它使用的是基于卷积神经网络的并行树结构以此来替代RNN。Salesforce Research提出了QRNN,这是一种高效的RNN层替代方案,可以提高在机器翻译和其他任务领域的性能。今年早些时候,Facebook AI Research发布了完全卷积神经MT,而Google Brain则描述了一种翻译模型的改进,即最先进的完全基于注意的MT模型。

所有这些方法都使得模型可以进行更快的训练,并且还可以在翻译时间上提高效率,但是它们都存在前面所述的同样的局限性问题:即它们都是逐个单词地输出。

克服逐个单词翻译的限制

其实,这主要是由现有神经网络序列模型的基本技术属性导致的:它们是自回归的,这意味着它们的解码器(产生输出文本的组件)需要使用先前输出的文本来产生其输出的下一个单词。也就是说,自回归解码器使得后面的单词生成是以前面的单词为基础的。当然,这个属性也有若干好处,特别是,它使自回归模型可以更容易地进行训练。

我们的模型(非自回归(non-autoregressive),因为它没有上述属性)就像最近发布的改进版一样,是始于相同的基础神经网络层,但是引入了一个完全不同的基于“生成”的文本生成过程,这是一个来自IBM在20世纪90年代初推出的传统机器翻译研究中的概念。这种潜生成模型是本文所主要介绍的。

非自回归神经机器翻译

先前的神经机器翻译模型和我们的新的非自回归模型之间的区别,可以用以下两个动画来进行表示。紫色圆点代表“编码器1”中的神经网络层,“编码器1”是一个用以理解和解释输入句子(此处指的是英文)的网络;蓝色点代表“解码器2”中的层,其工作是将这种理解转换成另一种语言(此处指的是德语)表示的句子;而彩色的线代表层之间的注意连接,使得网络能够将句子不同部分的信息结合在一起。请注意,两个模型中的紫色编码器层可以同时运行(动画的第一部分,用密集的红色注意连接),而第一个动画中的蓝色解码器层必须在一次处理一个单词,因为在解码器开始产生下一个之前,每个输出单词必须做好准备(见棕色箭头)。

图2:自回归神经机器翻译

输出句子是逐个单词生成的,因为每个输出步骤在不知道先前生成的单词的情况下不能开始。

下一个动画展示了我们模型的基本工作方式。其中,编码器和解码器都可以并行工作,而不是逐个单词地输出。现在编码器有两个任务:首先它必须对输入句子进行理解和解释,但是它也必须预测一系列数字(2,0,0,2,1),然后将其用于启动并行解码器,这可以通过直接从输入的文本中进行复制,而不需要进行棕色箭头所指的自回归操作。这些数字被称为生成力(fertilities); 它们代表了每个单词在输出句子中所占有的空间。所以如果一个单词的生成力是2,那么这意味着模型决定在输出中分配两个单词来对其进行翻译。

图3:非自回归神经机器翻译使用我们的潜在生成力模型

输出句子是以并行方式生成的。

生成力序列为解码器提供了一个计划或规划,使其能够并行地生成整个翻译。如果没有像这样的计划(称为潜变量),并行解码器的任务就像一个翻译小组一样,每个译者都必须提供一个输出翻译的单词,但是不能提前告诉对方他们准备说什么。我们将生成力作为一个潜变量,确保这个隐喻的翻译小组中的所有译者都能够以并行方式尽心工作,从而做出彼此相一致的翻译决定。

实验

尽管数量级有较低的延迟,但我们的模型将我们测试过的语言对之一(英语译成罗马尼亚语)的最佳翻译质量(以BLEU评分衡量)联系起来,并在其他语言上获得了非常好的结果。

表1:五个流行数据集的非自回归翻译模型的结果

标有“NAT”的行显示了我们模型的性能,没有我们称之为微调的额外训练步骤;“NAT-FT”则包括这些步骤。“NPD”是指噪声并行解码,这意味着要并行地尝试几个不同的生成计划,然后选择最好的一个。自回归模型使用相同的架构和相同的模型大小;“b = 4”表示波束大小为4的波束搜索。

示例

我们模型的好处之一是用简单的方法来获得更好的翻译:尝试并行几个不同的生成计划,然后从另一个同样快速的翻译模型中选择最好的输出。下面以罗马尼亚语-英语的示例显示“噪音并行解码”过程:

图4:噪声并行解码的例子

首先,编码器在输出句子中产生几个可能的计划,如中间所示,用于输出语句中的空间分配。这些生成计划中的每一个都能导致不同可能的输出翻译,如右图所示。然后,自回归MT模型选择最佳翻译,用红色表示,这个过程比直接使用它生成输出要快得多。总之,NPD的两个步骤带来的总延迟仅为非自回归模型的两倍。

附论文:《非自回归神经机器翻译》

地址:https://einstein.ai/static/images/pages/research/non-autoregressive-neural-mt.pdf

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-11-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 IT派 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
NLP 服务
NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档