南大NLP ICLR20满分论文:镜像生成式神经机器翻译

01

背景介绍与研究动机

近年来,基于神经网络的机器翻译模型(NMT)取得了令人瞩目的进展。 然而,训练神经机器翻译需要大量的平行语料,这样规模的平行语料对于许多语言对或使用领域来说往往是很难获取的。 与此同时,非平行的语料(不平行的源语言/目标语言的单语语料)却非常容易获得。 所以如何利用非平行语料来帮助 NMT 的训练就成为了热门的研究主题。

然而我们发现,不论是在训练(training)还是在解码(decoding)上,以往的方法可能没有最大程度地利用好非平行的语料。 对训练来说,基于 back-translation(回译)(Sennrich et al., 2016)是最常用的利用非平行语料的方法。 在 back-translation 中,你需要有一对翻译模型(TM),然后利用反向翻译模型“回译”目标语言的单语语料制造“伪”平行语料来帮助正向翻译模型的训练。 然而,在该方法下,由于两个翻译模型是独立的,单语语料只能孤立地对其中一个翻译方向产生帮助,这样可能有失效率。 后来的研究者提出了joint back-translation (Zhang et al., 2018)和 dual learning (He et al 2016),通过迭代训练的方式轮流使用单语语料来更新两个翻译方向。 然而,在这些方法下,两个方向的翻译模型仍然是独立的。 理想情况下,如果两个翻译模型不是独立的,而是有内在的“关联的”,那么在使用任一语言的单语语料就有可能同时帮助这一对相关的翻译模型,从而获得更好的对非平行语料的使用效率。

对于解码来说,之前工作(如 Gulcehre et al., 2015)提出可以利用在非平行语料上预训练的语言模型(LM)通过与翻译模型(TM) 进行线性插值来帮助解码。 然而我们注意到,这样一个预训练的语言模型和翻译模型也是相互独立的,这就有可能使得他们不能很好地“配合”,甚至产生冲突。 另外,这样的 LM 只在解码的时候使用,而没有在训练的时候考虑,这样训练-解码的不一致也可能会导致解码质量的损失。

在本文中,我们提出了镜像生成式神经机器翻译(mirror-generative NMT, MGNMT)来解决上述问题。 MGNMT 是一个包含了正、反向翻译模型(TM)和源、目标端语言模型的统一框架。 由生成式机器翻译(generative NMT, Shah & Barber, 2018)的启发,我们引入了一个隐变量 z 作为桥梁,使得所有的翻译模型和语言模型都发生了联系。 我们方法的建模利用了联合概率的镜像/对称性质,即:

在这样的框架下,z 被视作源语言和目标语言的共同语义表示(在这里,其先验分布 p(z) 我们假设为标准正态分布)。z 作为一个桥梁,将双向的翻译模型和双语的语言模型都联系了起来(下图)。通过这样的建模,MGNMT在训练时可以更好地利用非平行语料来帮助两个方向的翻译模型;在解码的时候可以自然地利用一同学习且与翻译模型有关联的语言模型来帮助解码。

图1:MGNMT的镜像性质

02

解决方案

具体来说,MGNMT包含正向翻译模型、反向翻译模型,源语言语言模型,目标语言语言模型及变分推断模型,如下图所示:

图2:MGNMT结构

接下来我们介绍 MGNMT 如何进行训练和解码。

1. 从双语平行语料中学习

首先,我们使用了Stochastic Gradient Variational Bayes (SGVB) 来对联合概率进行估计。因此,我们的优化目标就可以转化为优化联合概率的 Evidence Lower BOund (ELBO):

2.  从双语非平行语料中学习

经过推导,当给定源语言和目标语言的非平行语料时,我们的优化目标可以由如下式子给出:

其训练过程如下算法所示:

即在每一轮迭代中,MGNMT 同时使用“回译”来产生两个方向的伪平行语料,由于隐变量 z 作为共同桥梁,这些伪平行语料可以同时帮助到 4 个“子”模型(TM,LM)的更新。

3. 解码

由于 MGNMT 包含了相互关联的双向TM 和 双语LM,在解码时就可能利用他们来“协同”提升翻译质量。 以 x 到 y 的翻译为例。在解码时,我们希望能找到p(y|x) 最大时对应的译文 y。然而,由于我们建模的是联合概率 p(x,y),我们不能直接利用现成的 beam search 等方法来估计 p(y|x)。因此,受 GNMT (Shah & Barber, 2018)启发,我们提出了一个镜像版本的 EM 解码算法:1)首先从标准正态先验中采样 z,然后利用 beam search从 p(y|x, z) 得到一个初始翻译 y(这个初始翻译质量会比较差);2)迭代以下步骤直到收敛:基于 x 和上一轮的翻译 y,从 q(z|x, y)中采样新的 z,然后通过最大化 ELBO 寻找新的翻译 y:

可以看到,由于MGNMT 包含了关联的翻译模型和语言模型,其解码过程可以很自然地利用目标端语言模型来帮助翻译,与此同时还可以利用反向翻译模型和源端语言模型计算出重构概率进行重排序(reranking),最大程度地利用了在平行/非平行语料上联合训练到得到的翻译知识和语言知识。该过程如以下算法所示:

03

实验结果与分析

我们在低资源语言对、低资源领域任务和资源丰富语言对上都进行了实验,相比于 Transformer(及 RNMT) 以及基于 Transformer 的利用非平行语料的方法都取得了一定的提升:

我们还进行了一些分析实验,通过实验我们说明了:

1)MGNMT 能更好地结合语言模型来帮助解码:

2)相比与之前使用噪声信道模型重排序(noisy channel model reranking)的方法,MGNMT能取得更好的效果; 与此同时,也说明了基于重构的重排序是有帮助的:

3)我们在只是用单一语言的单语数据时,确实能对两个翻译方向都起到一定的帮助:

4)通过对比 KL 散度与 BLEU,我们认为我们引入的隐标量z 对于MGNMT确实是有意义的:

5)在速度上,我们的模型训练和解码都会需要更多的时间,导致一定程度上效率低下,这也是未来我们需要改进的方向。

04

总结

在本文中,我们提出了镜像生成式神经机器翻译(mirror-generative NMT, MGNMT)。 MGNMT 统一了双向翻译模型和双语语言模型,在这样的框架下,两个翻译方向都得以更高效地利用非平行语料进行训练,并且可以很自然地利用其中的语言模型帮助解码。 实验和分析说明了我们方法的有效性。 未来我们会考虑拓展我们的方法至无监督或多语言的翻译场景。

作者:郑在翔

编辑:何亮

南大NLP研究组

南京大学自然语言处理研究组从事自然语言处理领域的研究工作始于20世纪80年代。曾先后承担过该领域的18项国家科技攻关项目、863项目、国家自然科学基金和江苏省自然科学基金以及多项对外合作项目的研制。其中,承担的国家七五科技攻关项目“日汉机译系统研究”获七五国家科技攻关重大成果奖、教委科技进步二等奖以及江苏省科技进步三等奖。

分析理解人类语言是人工智能的重要问题之一,本研究组在自然语言处理的多个方向上做了大量、深入的工作。近年来集中关注文本分析、机器翻译、社交媒体分析推荐、知识问答等多个热点问题,结合统计方法和深度学习方法进行问题建模和求解,取得了丰富的成果。本研究组在自然语言处理顶级国际会议ACL上连续三年发表多篇论文,也在人工智能顶级国际会议IJCAI和AAAI上发表论文多篇,相关系统在机器翻译、中文分词、命名实体识别、情感计算等多个国际国内评测中名列前茅。

本实验室立志于研究和解决在传统文本和互联网资源的分析处理中面临的各项问题和挑战,并积极探索自然语言处理的各种应用。如果你也和我们有共同兴趣或目标,欢迎加入我们!

推荐阅读

CCMT2019最佳论文奖:在远距离语言对上提升双语词典推断的质量

AAAI20论文:利用多头注意力机制生成多样性翻译

AAAI20论文:面向目标观点词抽取的潜在观点迁移网络

AINLP年度阅读收藏清单

征稿启示 | 稿费+GPU算力+星球嘉宾一个都不少

AINLP-DBC GPU 云服务器租用平台建立,价格足够便宜

我们建了一个免费的知识星球:AINLP芝麻街,欢迎来玩,期待一个高质量的NLP问答社区

关于AINLP

AINLP 是一个有趣有AI的自然语言处理社区,专注于 AI、NLP、机器学习、深度学习、推荐算法等相关技术的分享,主题包括文本摘要、智能问答、聊天机器人、机器翻译、自动生成、知识图谱、预训练模型、推荐系统、计算广告、招聘信息、求职经验分享等,欢迎关注!加技术交流群请添加AINLP君微信(id:AINLP2),备注工作/研究方向+加群目的。

我来评几句
登录后评论

已发表评论数()

相关站点

+订阅
热门文章