EMNLP 2018 | 结合通用和专用NMT的优势,CMU为NMT引入「语境参数生成器」

选自arXiv

作者:Emmanouil Antonios Platanios等

机器之心编译

参与:白悦、刘晓坤

通用和专用 NMT 模型分别在相似语言对和罕见语言对的翻译中具有优势,但这也反映了各自的劣势,取决于参数共享的程度。为此,CMU 的研究者在本文中提出了一种在两者之间取得平衡方法,不需要改变 NMT 原有架构,而是引入新的组件 CPG,来可控地实现不同语言对模型之间的参数共享。该组件可无缝整合不同的 NMT,并在基准数据集上取得当前最佳。研究者强调,该方法使我们更接近普适的中间语言。

神经机器翻译(NMT)无需单独训练或调整系统的任何部分就可以直接建模源语言到目标语言的映射。这使得 NMT 快速发展,并在许多大规模环境中成功应用 (Wu et al., 2016; Crego et al., 2016)。编码器-解码器抽象使构建将任何语言的源句映射到向量表示,再将向量表示解码到任何目标语言的系统在概念上变得可行。因此,人们提出了各种方法来扩展这种多语言机器翻译的抽象 (Luong et al., 2016; Dong et al., 2015; Johnson et al., 2017; Ha et al., 2016; Firat et al., 2016a)。

多语言 NMT 之前的工作可大致分为两种范式。第一个通用 NMT (Johnson et al., 2017; Ha et al., 2016) 对所有语言使用单一模型。通用 NMT 没有任何特定语言的参数化,在翻译截然不同的语言和数据有限的情况下,这种模式过于简单化且非常不利。通过实验验证,Johnson 等人的方法(2017)在高样本复杂度情况下性能变差,因此在有限的数据设置中表现不佳。Ha 等人提出的通用模型(2016)需要输入句子的新编码方案,这会导致过大的词汇量从而难以扩展。第二种范式,特定于每种语言的编码器-解码器 (Luong et al., 2016; Firat et al., 2016a),每种语言使用独立的编码器和解码器。这不允许跨语言共享信息,可能导致过度参数化,且在语言相似的情况下可能有害。

在本文中,CMU 的研究者在这两种方法之间取得了平衡,提出了一种能够分别为每种语言学习参数的模型,同时也能在相似语言之间共享信息。研究者使用了新的语境相关的参数生成器(CPG),它可以(a)泛化所有这些方法;(b)缓解上述通用和独立语言编码器-解码器系统的问题。它将语言嵌入作为翻译的语境进行学习,并用它们为所有语言对生成共享翻译模型的参数。因此,它为这些模型提供了每种语言单独学习参数的能力,同时也在相似语言之间共享信息。参数生成器是通用的,允许以这种方式增强任何现有的 NMT 模型。此外,它具有以下所期望的特征:

  1. 简单:类似 Johnson 等人(2017)和 Ha 等人(2016)的方法,且与 Luong 等人(2016 年)和 Firat 等人(2016a)的方法相反,它只需稍作修改就可以应用于大多数现有的 NMT 系统,并且能够无缝地容纳注意力层。
  2. 多语言:和之前相同,允许使用相同的单个模型进行多语言翻译。
  3. 半监督:可以使用单语数据。
  4. 可扩展:通过在语言间使用大量但可控的共享来减少参数的数量,从而减少大量数据的需求,如 Johnson 等人所述(2017)。它还允许语言的解耦,避免对大量共享词汇需求,如 Ha 等人所述(2016)。
  5. 适应性强:无需完全重新训练就可以适应新语言。
  6. 当前最先进的方法:比成对 NMT 模型和 Johnson 等人的模型具备更好的性能。(2017 年)。事实上,该方法优于最先进的性能。

作者首先介绍一个可用于定义和描述大多数现有 NMT 系统模块化框架,然后,在第 3 节中,将根据该框架介绍本研究的主要贡献,即语境参数生成器(CPG)。作者还论证了该方法使我们更接近普适的中间语言。

论文:Contextual Parameter Generation for Universal Neural Machine Translation

  • 论文地址:https://arxiv.org/abs/1808.08493
  • 项目地址:https://github.com/eaplatanios/symphony-mt

摘要:我们对现有神经机器翻译(NMT)模型进行了简单修正,允许使用单个通用模型完成多种语言之间的翻译,同时允许语言特定的参数化,并且还可以用于域适应。我们的方法不需要改变标准 NMT 系统的模型架构,而是引入了新的组件,即语境参数生成器(CPG),可以生成系统的参数(例如,神经网络中的权重)。该参数生成器接受源语言嵌入和目标语言嵌入作为输入,并分别为编码器和解码器生成参数。模型的其余部分保持不变,并在所有语言中共享。我们展示了这种简单的修正如何使系统使用单语数据进行训练并实现 zero-shot 翻译。我们进一步表明,它能够超越 IWSLT-15 和 IWSLT-17 数据集的当前最佳性能,并且学习的语言嵌入能够发现语言之间的有趣关系。

图 1:在我们的模块化框架下的 NMT 系统概述。我们的主要贡献在于参数生成器模块(即,耦合或解耦——具有蓝色字体的每个框是单独的选项)。注意,g 表示参数生成器网络。在我们的实验中,我们考虑该网络的线性形式。但是,我们的贡献并不取决于其他模块的选择;我们仍然可以将具有不同架构的参数生成器和不同类型的词汇表用于编码器和解码器。

表 1:我们提出的有基础成对 NMT(PNMT)模型的方法(阴影的一行)和用于 IWSLT-15 数据集的 Google 多语言 NMT 模型(GML)的比较。百分比的并列行显示训练时使用多少部分(1%、10%、100%)的平行语料库;其余的仅用作单语数据。表中显示了 BLEU 和 Meteor 指标的结果。CPG *表示与 CPG 相同的模型,但未使用自动编码训练样本进行训练。每种情况下的最佳分数加粗显示。

表 2:我们提出的有基础成对 NMT(PNMT)模型的方法(阴影的一行)和用于 IWSLT-17 数据集的 Google 多语言 NMT 模型(GML)的比较。因为 Meteor 不支持 It、Nl 和 Ro,所以仅显示了 BLEU 度量标准的结果,CPG8 表示使用 8 个语言嵌入来表示 CPG。「C4」下标表示用于受控参数共享的 CPG 的低级版本(参见第 3.1 节),使用等级 4 等。每种情况下的最佳得分加粗显示。

本文为机器之心编译,转载请联系本公众号获得授权。

原文发布于微信公众号 - 机器之心(almosthuman2014)

原文发表时间:2018-09-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏深度学习之tensorflow实战篇

推荐算法图推荐-基于随机游走的personalrank算法实现

推荐算法图推荐 基于图的模型(graph-based model)是推荐系统中的重要内容。其实,很多研究人员把基于邻域的模型也称为基于图的模型,因为可以把基于邻...

1.9K9
来自专栏Vamei实验室

绘图: matplotlib核心剖析

matplotlib是基于Python语言的开源项目,旨在为Python提供一个数据绘图包。我将在这篇文章中介绍matplotlib API的核心对象,并介绍如...

2327
来自专栏AI派

【Github 5K星】BAT头条滴滴小米等笔试面经+深度学习/算法/NLP资源汇总!

最近,在GitHub上有位id为imhuay的热心人带头建立了一个关于国内知名互联网企业笔试和面试经验的资源库,光从名称上就能看出其内容有多丰富:《2018/2...

1241
来自专栏逍遥剑客的游戏开发

快速LightMap烘焙

1093
来自专栏机器之心

从基础概念到实现,小白如何快速入门PyTorch

3677
来自专栏数据派THU

手把手教你深度学习强大算法进行序列学习(附Python代码)

本文共3200字,建议阅读10分钟。 本文将教你使用做紧致预测树的算法来进行序列学习。

1934
来自专栏牛客网

腾讯应用研究一面 武汉

腾讯应用研究武汉现场一面 一共20分钟。 (比我内推的三轮面试都缺少一点技术含量,内推面试会问我项目,跟我有交流或者提建议,这次就感觉随便找点东西问问,然后最后...

51816
来自专栏PPV课数据科学社区

强大的PyTorch:10分钟让你了解深度学习领域新流行的框架

摘要: 今年一月份开源的PyTorch,因为它强大的功能,它现在已经成为深度学习领域新流行框架,它的强大源于它内部有很多内置的库。本文就着重介绍了其中几种有特色...

3779
来自专栏生信技能树

比较不同的对单细胞转录组数据聚类的方法

背景介绍 聚类之前必须要对表达矩阵进行normalization,而且要去除一些批次效应等外部因素。通过对表达矩阵的聚类,可以把细胞群体分成不同的状态,解释为什...

88412
来自专栏数据科学与人工智能

【陆勤践行】最流行的4个机器学习数据集

机器学习算法需要作用于数据,而数据的本质则决定了应用的机器学习算法是否合适,而数据的质量也会决定算法表现的好坏程度。所以会研究数据,会分析数据很重要。本文作为学...

22010

扫码关注云+社区

领取腾讯云代金券