更稳定的神经机器翻译:谷歌利用生成对抗提升NMT鲁棒性

From: Google AI Blog 编译:T.R

近年来基于Transformer的神经机器翻译(neural machine translation, NMT)大放异彩,利用深度神经网络在庞大的平行语料库上进行训练实现了完全数据驱动的机器翻译。虽然这一系列方法取得了令人瞩目的成就,但NMT模型却对输入的细微变化十分敏感,些许的变化就会造成翻译结果的大相径庭。

让我们来看一个中译英的例子,轻微的人称变化造成了翻译结果的天差地别:

NMT模型容易受到各种扰动的影响,缺乏足够的鲁棒性和稳定性使其在众多商业场景中的应用受到了很大的限制。虽然在计算机视觉领域人们对模型的稳定性有了深入的研究,但在NMT这一方面的研究还不充分。

针对这一问题来自谷歌的研究人员们 利用了生成对抗的方法改进模型的稳定性,提高NMT对于输入小扰动的抵抗能力,并将研究成果发表在了正在进行的ACL2019会议上。

利用AdvGen训练模型

直觉上对于理想的NMT翻译模型来说有微小差别,但相似的输入应该得到基本相似的翻译结果。研究人员认为利用对抗输入来扰动翻译模型可以提高模型的稳定性。

为了实现这一模型,研究人员利用对抗生成(Adversarial Generation, AdvGen)生成一系列合理的对抗样本来扰动模型,而后将扰动结果反馈到模型的防御训练中,以此来改进模型的稳定性。虽然这一方法受到了GANs的启发,但研究人员并未采用判别器网络,而仅仅只使用了简单的对抗样本对模型进行训练就取得了良好的效果。

训练过程的第一步是利用AdvGen的方法来扰动模型。基于源输入语句、目标输入语句和目标输出语句通过Transformer来计算翻译损失;针对源语句中的每个词有一系列的替换词(top-k similar)列表,针对随机的选择源语句中的某个词,AdvGen将从替换词中选取最有可能引起模型翻译错误的词进行替换;随后生成的对抗句子将送入Transformer中初始化模型的防御阶段。

首先左下角输入源句子,右侧的蓝色框则输入对应的目标句子和目标输出,随后计算翻译损失。AdvGen函数随后将源句子的词进行替换构建出对抗源样本。

在防御阶段,源输入的句子被替换成了对抗样本。和上一阶段类似,此时transformer模型将计算出翻译损失;随后AdvGen将利用目标输入句子、单词替换和基于注意力矩阵(见下图中发射的射线)计算出的单词选取分布来构建对抗目标样本。

最终生成的句子被重新馈入Transformer中,模型基于对抗源样本、对抗目标输入和目标句子一同计算出整个方法的鲁棒性损失。最小化这一损失可以不断降低模型面临扰动时产生不同结果的可能性,当训练到扰动产生的鲁棒性损失很小时,就可以认为模型可以有效地处理输入中细微的变化了。

模型性能

在这一方法的改进下,新的模型呈现出了较好的性能。在中英和德英翻译任务上取得了Transformer更加优异的结果,分别提高了2.8和1.6BLEU点。

此外研究人员还在包含噪声的数据集上对这一方法进行了测评,结果显示新提出的方法相较于目前的方法,在四种噪声水平下都获得了较好的性能,说明模型具有较好的稳定性和抗噪能力。

这些结果充分说明了这一模型对于输入中微小变动的稳定性,克服了NMT模型先前对于微小扰动过于敏感的特性。

研究人员同时希望这一模型可以成为翻译系统中一个稳定鲁棒的处理模块,并为众多下游任务、特别是对于翻译输入十分敏感的机器翻译任务提供更好的服务。

如果想要了解更多详情,请参看论文:

https://arxiv.org/abs/1906.02443

https://www.aclweb.org/anthology/P19-1425

如果有小伙伴正好在ACL参会,今天正好是这篇论文的Oral时间、不妨去学习一波:

ref:

https://ai.googleblog.com/

https://zhuanlan.zhihu.com/p/54523019

https://ai.google/research/people/106360

https://ai.google/research/people/LuJiang/

https://ai.google/research/people/author7590

https://www.linkedin.com/in/juliazhuwenli/

http://www.cs.cmu.edu/~awm/

https://ai.google/research/people/?area=MachineTranslation

http://www.acl2019.org/EN/nominations-for-acl-2019-best-paper-awards.xhtml

http://www.acl2019.org/EN/index.xhtml

pics: https://dribbble.com/shots/5818050-Translator

https://dribbble.com/shots/5841854-Illustrations

https://dribbble.com/shots/6772262-Communication

https://dribbble.com/shots/4295997-Translator