神经网络机器翻译研究热点与前沿趋势分析
2019-11-18苏劲松
林 倩,刘 庆,苏劲松,林 欢,杨 静,罗 斌
(厦门大学 信息学院,福建 厦门 361005)
0 引言
机器翻译是利用计算机自动将一种语言翻译成另外一种语言的过程,它是人类长久以来的一个梦想。随着全球化进程的加速和互联网的快速发展,各国之间的信息交流日趋频繁, 高效、快速的翻译逐渐成为人们的日常需求之一。然而,传统人工作业的翻译方式无法满足迅猛增长的翻译需求。而机器对海量数据的处理能力使得高效、快速的翻译成为可能,人们的目光开始转向机器翻译,对于机器翻译的需求空前增长。
近年来,随着深度学习的快速发展,神经网络机器翻译研究取得了巨大进展。在许多语种上,神经网络机器翻译(neural machine translation,NMT)性能大幅度提升,远远超过了传统统计机器翻译(statistical machine translation,SMT)。目前,NMT研究是自然语言处理研究的热门前沿发展方向。表1给出了2017年和2018年人工智能、自然语言处理方向的各大权威期刊和会议与NMT主题相关的Regular论文统计情况。发表论文的数量充分表现出NMT研究已经成为学者们关注的焦点,在学术界有着巨大影响力。
与此同时,产业界各大公司也投入人力、物力研发各自的神经网络机器翻译实用系统。NMT已成为各大机器翻译系统的核心技术,促进了翻译工具市场的蓬勃发展。翻译工具日益普遍,已经成为人们生活中的重要组成部分,从文献翻译到国际交流,机器翻译正在发挥重要作用。可以说,机器翻译的发展在学术界和产业界都已经完全进入了NMT时代。
纵观近一年发表的NMT论文,我们可以粗略得知该领域的研究发展主要集中在以下几个方向: 词汇表受限研究、资源受限研究和模型研究,而模型研究是整个NMT研究的重点。接下来,本文将对这三个方面分别进行介绍。最后,对NMT的后续发展进行了展望。
表1 2017—2018年神经网络机器翻译的Regular论文发表篇数
1 词汇表受限研究
传统NMT模型使用固定大小的词表,编码器无法学习词表之外(out-of-vocabulary,OOV)的词的语义表示,解码器无法选择词表之外的词作为译文,极大地影响了翻译质量。因此,如何解决词汇表受限问题已成为研究的重点之一。当前的研究主要通过基于细粒度语义单元的建模方法来解决该问题。这方面的研究主要分为以下三类:
(1) 字词混合的语义建模方法。Passban等[1]用字符级的解码器提高了形态学丰富的语言翻译质量;Chen等[2]在编码器中使用了词和字符两个粒度的信息,在解码端用多个注意力,使不同粒度的信息能够协同帮助翻译;Zhao等[3]为建模同一语系的语言对之间的相似性,其编码器由字符级单向RNN和词级双向RNN组成,并使用自顶向下的层次注意力机制,先获得词级别的上下文,再获得字符级的上下文,共同用于预测目标语言字符。
(2) 基于子词的语义建模方法。这类工作主要是以BPE(byte pair encoding)[4]为基础。Kudo等[5]提出子词正则化,利用一元语言模型生成多种候选的子词序列,丰富NMT编码器的输入以增强翻译系统的鲁棒性。Morishita等[6]引入了多粒度BPE的表示来平均求得词汇语义表示。特别地,Morishita等[6]认为编码器词向量层、解码器词向量层以及解码器输出层有着不同的作用,因此不同层的BPE粒度的选择也应该有所差别。
(3) 词干加词缀的语义建模方法。Song等[7]将词分解为词干和后缀,解码时先生成词干,再生成后缀;为了解决形态丰富的语言中存在源语言单词可能对应多个目标语言单词的情况,Passban等[8]将源语言词拆分成词干和后缀作为编码器的双通道输入,相应地,在解码器端使用了双注意力机制来捕获编码器不同粒度的语义信息。
这三类方法都在一定程度上缓解了词表之外的词降低翻译质量的问题。字词混合的语义建模方法结合了词级方法和字符级方法两者的优点,既可以缓解以词为语义单元造成的词汇表受限问题,又避免了完全只使用字符信息造成语义单元歧义大、输入序列过长的问题。词缀等语言现象的存在使得基于子词的建模方式受到了越来越多的关注。词干加词缀的建模方法则为形态学丰富语言的翻译任务提供了新思路。
2 资源受限NMT研究
NMT模型以平行句对为基础。然而,对于许多语言的翻译任务而言,平行句对的获取并不容易。因此,如何在资源受限的情况下建立高性能的NMT模型也成为研究热点之一。
2.1 无监督NMT研究
无监督NMT致力于在只有单语数据的情况下构建翻译模型。
Lample等[9]总结了无监督机器翻译取得成功的三个重要步骤: 初始化、语言模型和迭代的反向翻译;Lample 等[10]不依赖任何平行语料,只使用单语数据集来进行翻译模型建模。具体实现中,Lample 等[10]利用降噪自编码器和对抗训练将两种语言映射到相同的隐式空间,并迭代训练两个方向的翻译模型;Artetxe等[11]先预训练词向量,利用自编码器和反向翻译实现无监督NMT;Yang等[12]认为之前的无监督NMT使用共享编码器来编码不同语言的语义表示容易丢失不同语言各自的特性,进而限制翻译性能。对此,Yang等[12]提出每种语言应该使用各自的编码器进行建模,只对编码器的后几层和解码器的前几层的权重进行共享。
2.2 半监督NMT研究
与传统NMT和无监督NMT不同,半监督NMT以大量单语语料和少量平行语料为基础来进行翻译模型建模。
Fadaee[13]首先分析发现: 反向翻译生成的伪平行数据太多、容易使得NMT模型更偏向其中的噪声数据。此外,伪平行数据的使用对于具有高预测损失的单词最有帮助。进一步地,Fadaee[13]提出先识别目标语言中难以预测的单词,然后在单语数据中对含有这些词的句子进行采样,增加这些单词的出现次数,并在单语数据中对类似于难预测词上下文的句子进行采样;但是另一方面,反向翻译的模型性能仍受限于合成语料的质量。因此Zhang等[14]提出了联合训练方法,对源语言到目标语言和目标语言到源语言的NMT模型进行联合训练,一方向的NMT模型为反方向的NMT模型提供伪平行数据,如此迭代多次,可以同时提升NMT模型的翻译性能;基于同样的想法,Wang等[15]采用对偶学习来进行两个方向的半监督NMT联合建模。
2.3 基于枢轴的NMT研究
基于枢轴的SMT研究取得了很好的效果。研究者将这个想法迁移到NMT中,也取得了不错的效果。
Chen等[16]通过两种语言的多模态数据实现零资源翻译,首先利用源语言的文本—图片数据,训练源语言的图片描述(image captioning)模型,用于生成目标语言图片对应的源语言描述,以此来构造伪平行文本数据训练翻译模型;Ren等[17]提出在含有稀缺资源的语言对中引入高资源语言,将低资源的语言作为中间隐变量,以最大化大规模平行语料的似然为目标,使用双向EM算法联合训练两个方向共四个NMT模型。
2.4 领域自适应研究
与SMT研究一样,领域自适应也一直是NMT研究的重点。让非目标领域的平行语料来帮助建立更好的目标领域翻译模型,可以在一定程度上解决资源受限的问题。
从语料的角度,Zhang等[18]计算目标领域和候选训练平行句对的语义相似度,然后将相似度融入目标函数来实现模型领域自适应;Wang等[19]为解决领域自适应,提出了两种方法: 句子选择和句子加权,并能够在训练过程中动态进行句子选择和权重计算。上述工作均是从语料选择的角度来解决领域自适应问题。从建立模型的角度,Zeng等[20]用多任务学习方法联合训练神经网络机器翻译模型和基于注意力机制的领域分类器,分别学习到领域相关和领域无关的上下文信息,并且通过强化领域相关的目标语言词来优化模型训练。从参数生成的角度,Ha 等[21]和Platanios等[22]均致力于如何使用小的网络根据上下文信息来为每个翻译句子动态生成模型参数。特别地,Chu等[23]对NMT中的领域自适应研究进行了归类总结。
2.5 多模态NMT研究
近年来,融合文本之外的其他模态信息成为了NLP的一个研究热点。同样,在机器翻译领域,融合了文本、图像等模态信息的多模态NMT研究也成为了NMT发展的新趋势。
与传统的多模态NMT模型不同,Delbrouck等[24]在使用CNN抽取图片信息时,充分考虑文本信息,同时使用注意力机制捕获图片的相关信息来作为文本语义表示的有效补充;而Zhou等[25]则是引入多任务学习,同时建模两个任务: 多模态翻译,图片—文本的联合语义表示。
2.6 多语言多任务NMT研究
多语言多任务NMT一直是NMT研究的热点,它的优势在于可以充分发挥神经网络模型语义表示向量化、参数共享的优势。
在这方面,Gu等[26]通过多种语言之间的词汇和句子语义表示共享,使得低资源语言NMT模型能够利用高资源语言NMT模型的词汇和句子表示;Blackwood等[27]针对多语言NMT提出了一个任务相关的注意力模型,对不同目标语言采用不同的注意力参数,提高了多语言NMT模型的性能。Gu等[28]引入元学习(meta learning)来实现从多种资源丰富语言对的翻译模型到低资源语言对翻译模型的模型参数快速自适应;Wang等[29]为多语言NMT提出三个改进策略: 在解码器中使用初始化标签引导目标语言翻译、引入位置信息,并将隐状态分割为语言共享和语言独立的两个单元。多任务机制同样是解决资源受限的一个方法。Kiperwasser等[30]认为,训练时多任务中的辅助任务权重应该先大后小,而主要任务反之,并在此基础上提出了根据训练时间变化来动态决定每个任务在不同训练阶段的权重;Zaremoodi等[31]通过多任务学习对机器翻译任务和语义分析、语法分析和命名实体识别等辅助任务进行联合建模,使得NMT模型能够自动学习到语义和句法知识;Niu等[32]在多任务学习框架下考虑了和机器翻译相关的两个任务: 单语正式度转换(formality transfer)和正式度敏感的机器翻译(formality sensitive machine translation)。
3 模型研究
3.1 模型架构
从模型框架的角度来进行分类,目前NMT模型主要包含三类: 基于循环神经网络的NMT模型(recurrent neural network based NMT,RNMT),基于卷积神经网络的NMT模型(convolutional sequence to sequence learning,ConvS2S),基于自注意力机制的NMT模型(Transformer)。下面我们对这三类模型一年来的进展进行介绍。
3.1.1 RNMT
图1 RNMT框架图
如图1所示,RNMT模型主要包含基于双向循环神经网络(recurrent neural network,RNN)的编码器,基于单向RNN的解码器两个部分,其主要特点是在解码时每步都使用注意力机制动态地捕获与当前译文相关的源语言上下文信息。针对RNMT模型,研究人员在原本的网络结构基础上做了大量的尝试和改进,包括编码器和解码器的改进、信息建模方式的创新及外部知识的引入等。
编码器NMT的编码器以RNN为基础。由于RNN存在梯度消失和爆炸的缺陷,因此无法很好地建模长距离信息。对此,Su等[33]提出了将输入句子进行切分,形成词—子句—句子的层次结构,然后引入层次循环神经网络来进行编码器建模。同时,解码器以子句为单元进行逐子句翻译,并且引入两个注意力机制来分别捕获子句内部和子句之间的上下文信息。Zhang等[34]在编码层增加了一个关系网络层,该层可以有效建模不同源语言词对应的语义表示(annotation)之间的关系,改善编码器的语义建模效果。此外,现有RNMT编码器只使用双向RNN得到的annotation来表示输入句子的语义,存在信息表示不充分的缺陷。针对该缺陷,Xiong 等[35]设计了一种多信道编码器,包含来自输入源语言词的向量表示、双向RNN的隐藏状态、神经图灵机中的外部存储,并进一步引入门机制来自动学习不同信道语义表示的权重。受计算机视觉稠密卷积神经网络的启发,Shen等[36]也对RNMT的编码器和解码器进行修改,使得当前隐状态的语义表示生成同时受前面所有隐状态的影响,既在一定程度上解决梯度消失爆炸问题,又增强了模型的语义表示能力。
注意力机制注意力机制主要是使用目标隐状态来对源语言annotation进行相关度权重计算(本质是计算能量函数再进行归一化),自动生成和当前相关译文选择的上下文信息。Werlen等[37]利用注意力机制将之前预测的所有词信息融入当前词预测过程。Wang等[38]也用同样的思想将注意力机制的关注范围扩展到目标语言的隐状态,在中英实验上获得了最佳性能。受到深层编码器和解码器工作的启发,Zhang等[39]将注意力机制也改为深层模型,使得每一层的编码器都能获得相应层次级别的上下文信息。由于全局注意力机制会将权重分散到所有的源语言词汇,削弱了关键性词汇的影响。为了能够将注意力集中在关键信息上,研究者们提出了局部注意力机制[40]只对序列窗口内的内容进行建模,然而局部注意力通常以对齐词为中心,权重往两边递减,这样的做法不一定合理: 一是按照绝对距离来衡量权重不合理;二是上下文窗口无法保证包含所有重要的上下文词。Chen等[41]在局部注意力机制的基础上进一步加入语法信息约束,在依存树上设置窗口,对依存树上中心词周围的词进行关注建模,这样能够捕获绝对距离较远但语法距离较近的词的信息,从而获得更好的上下文表示。为了能够利用更多的信息,许多工作引入记忆(memory)模块来记录历史注意信息,辅助网络学习。记忆模块主要承担两个功能: 记忆注意力机制历史信息和更新句子表示。在此基础上,Meng等[42]提出使用两个记忆模块来分别承担两个功能,从而进一步改善记忆模块的使用效果。
解码器在传统的RNMT中,解码器利用三部分信息(由注意力机制捕捉到的源语言上下文、前一时间步的隐状态和前一时间步的译文)来预测当前时间步的译文。在此基础上,Li等[43]提出首先预测目标译文的词性,预测得到的词性可以用于帮助注意力机制生成更好的源语言上下文,以改善最终的译文预测。Huang等[44]提出了基于短语的NMT模型,该模型能够显式地建模输出序列中的短语结构,作者利用“sleep-wake network”[45]来对齐目标语句与源语句,代替传统的注意力机制。
现有NMT模型在解码时的Softmax操作十分耗费时间,为了解决该问题,Shi等[46]借助词对齐信息,减少目标语言的候选词汇,从而加快解码速度。借鉴传统SMT解码工作的成功经验,Zhang等[47]提出面向NMT的立方体剪枝方法,其主要思想是通过合并前缀译文相似的译文假设来构造等价类,每个类进行各自的Softmax译文选择操作。搜索时,挑选所有类中分数最小的译文假设进行扩展搜索。这种方式不仅能减少解码器的搜索次数,同时也减少了Softmax操作。与之前的工作不同,Post等[48]主要是探索如何在具有候选译文约束的情况下进行译文搜索,论文作者提出了新的搜索算法,使得搜索时间复杂度与候选译文约束的个数无关。
其他网络结构改进传统的RNMT模型存在一个明显的缺陷: 解码器输出与编码器输入缺乏直接联系,因此在模型后向求导过程中容易出现梯度消失和梯度爆炸的问题。对此,Kuang等[49]通过增加解码器目标译文和源语言输入词汇之间的联系来解决该问题。
针对RNMT低频词存在训练不足的难题,Nguyen等[50]进行了两种改进: ①在标准的输出层计算中加入正则化操作; ②引入一个简单的词汇模块来解决原本给予高频词过多反馈的问题,从而改善低频词的翻译情况。与前面工作不同,Liu 等[51]则是利用上下文信息来优化源语言输入词的嵌入表示,进而优化译文选择。而Wang 等[52]则是针对NMT翻译过程中代词缺失现象进行研究,提出引入重建网络来使得编码器和解码器隐状态能够重建代词信息,强化模型翻译代词的能力。
此外,还有一些工作主要致力于对RNMT神经网络单元的改进。例如,Li等[53]在原有的权重矩阵外再乘上一个由神经网络计算出的动态权重,进一步动态区分了神经网络单元中加权求和操作中不同部分的作用。Zhang等[54]则使用简单的加减操作简化门控循环单元,只保留了权重矩阵。这样的建模方式加快了计算速度,并且使得隐层状态具有可解释性。
模型压缩现有NMT模型往往模型结构复杂,参数量巨大。因而,模型压缩也是一种NMT研究选择。剪枝是实现模型压缩的方法之一。See等[55]采用了参数剪枝,以很小的性能代价压缩模型,解决了深度模型参数量过大的问题。Shu等[56]用一组编码表示词汇,压缩了词嵌入表示,大大减少了模型在词嵌入表示部分的参数。
未来信息建模与上述工作不同,近期还有许多研究工作涉及到了NMT的多次解码建模。这类工作的思想与人工翻译往往需要多次修改的过程是一致的。例如,Xia等[57]引入两次解码来优化译文生成,其中第二次解码时会参考第一次解码的译文信息。而Zhang等[58]主要是考虑了反向和正向译文的互补性,提出了引入反向解码器进行反向解码产生反向译文信息,然后再进行正向解码。在这过程中,正向解码器同时关注编码器和反向译文信息,因此能够生成更好的译文。在前面工作基础上,Geng 等[59]则是引入增强学习,根据输入句子的翻译难度和已产生译文的质量来自动决定多次解码的次数。Su等[60]和Schulz等[61]都致力于引入变分循环神经网络来增强NMT译文的多样性。Lin等[62]则是使用编码器利用反卷积操作产生全局语义信息,再利用注意力机制将其融入解码器。而Zheng等[63]则是通过在解码器中引入两层网络分别建模已生成译文和未生成译文,并同时建模了二者的语义关系。显然,后者信息可用于优化译文生成。
跨句子信息建模传统NMT翻译都是逐句进行翻译。然而,人们在翻译过程中,往往会用到跨句子的信息,这样翻译出来的译文才会更加完整连贯。基于此,Kuang等[64]通过引入门机制来动态控制前一个句子有多少信息被用于当前句子的翻译过程中。Tu等[65]提出使用缓存(cache)来保留先前(跨句子和翻译句子当前状态之前的)的上下文和译文信息,然后在解码过程中使解码器根据上下文的相似性从cache中读取之前的隐状态,优化当前时间步的隐状态建模表示。Maruf等[66]引入两个记忆模块来分别存储文档中源语言句子信息和第一次翻译产生的目标句子信息,这样在第二次翻译时通过关注这两个模块,NMT模型就可以充分利用源语言和目标语言文档级别的上下文信息。Kuang 等[67]则是采用两个缓存来分别存储目标语言句子级别动态产生的主题词和文档级别静态产生的主题词,这种方式可以方便解码器使用文档级别的信息。
SMT知识SMT模型架构完全不同于NMT。学到的翻译知识也有别于NMT学到的翻译知识。因此,引入SMT的翻译知识来改进NMT模型也是一种研究选择。
Wang等[68]在译文选择时不仅考虑了神经网络的预测概率,还同时考虑SMT的译文预测概率。神经网络机器翻译系统可能存在生成文本很流利,但是翻译得不够准确的问题,Zhao等[69]构造了基于目标语言的前缀树来存储双语短语和对应的翻译概率,使得解码器挑选译文时能尽量使用前缀树包含的译文。此外,Zhao等[70]使用记忆模块来存储低频词的上下文信息和译文嵌入表示,用于辅助低频词的后续翻译。
句法知识基于句法的SMT研究的成功证明了句法知识对翻译的重要性。因而,利用句法知识来改进NMT模型也成为了研究者的选择。这方面的前沿工作包括: Chen等[71]将基于句法树的RNN扩展为双向,改进了编码器建模。同时,在解码器端引入了针对树结构的覆盖度模型(tree-coverage model)。Li等[72]先将源语言句子句法信息进行序列化,然后再用不同方法进行RNN建模,以此来将源端句法信息融入编码器。而Wu等[73]则是研究如何利用目标译文的句法信息来改善译文生成。具体而言,他们提出在生成目标端译文的同时构建译文的依存结构,并将依存信息用于辅助下一个目标词的生成。Wu等[74]提出了编码器和解码器都是基于依存树的NMT模型。为了克服基于1-best句法树在NMT建模上存在的缺陷,Ma等[75]和Zaremoodi等[76]着重研究如何基于短语树森林来进行NMT建模。前者主要关注如何将短语树森林进行序列化,以方便后续的双向RNN建模,而后者主要关注如何直接基于短语树森林进行自底向上的语义融合生成。与前面工作的解码方式存在明显不同,Gu 等[77]提出了一种自顶向下带有句法信息的译文生成方式,以此来充分利用目标语言译文的句法信息。另外,Bastings等[78]引入图卷积网络(GCN),在传统编码器—解码器结构翻译模型的编码器端加入图卷积层来引入句法依存树信息,作者分别尝试了CNN、BOW和双向RNN三种类型的编码器,实验结果表明三种模型与GCN结合后效果均有提升。
其他外部知识除了上述信息,研究者们还探索了其他类型外部知识对NMT模型翻译效果的影响。例如,Li等[79]在编码端加入了一个知识模块,该模块存储了额外的语言学信息,把这些信息作为输入词汇的补充,使得编码器能够包含尽可能多的语言学信息。Gu等[80]和Zhang等[81]则是利用搜索引擎检索得到的信息来改善翻译质量。而Ugawa等[82]则是在编码器中引入了命名实体信息。
3.1.2 Transformer
传统NMT模型多是基于双向RNN进行序列化建模,即当前时刻的隐状态语义表示只直接依赖于上一时刻的隐状态语义表示和当前时刻的输入信息。Vaswani等[83]提出的Transformer框架引入了多重自注意力(multi-head self-attention)机制来增强模型翻译能力。
与RNN相比,自注意力机制中当前节点的隐状态语义表示同时依赖于序列中所有节点的隐状态表示,具有更强语义建模能力和可并行化训练的优点。如图2所示,编码器端首先对输入的源语言词的嵌入表示进行多重自注意力机制建模,获得源语言句子的最终语义表示。略有不同的是,解码器引入Masked多重自注意力机制建模目标语言的上下文信息,这个信息再和编码器的语义表示进行多重注意力机制建模,生成源语言的上下文信息,最后得出概率分布。因此,Transformer很快成为机器翻译界的新宠儿,如何基于Transformer进行改进成为了NMT研究的热点问题。
标准的Transformer以序列生成的方式来产生译文,因此,翻译模型在测试阶段无法实现译文的并行生成,影响了模型效率。对此,Gu 等[84]提出首先预测源语言词的繁殖度(fertility),然后根据繁殖度分别进行复制,复制后的源语言词同时输入解码器,以此来实现目标译文的并行生成。这种方式虽然解决了标准模型无法并行的问题,但也丢失了目标译文之间的序列信息。对此,Wang 等[85]则提出了一种折中方案: 目标译文分组生成,组内的译文并行生成,组间保留顺序生成。与上述关注如何并行生成译文的工作不同,更多工作都致力于Transformer中的自注意力机制的改进研究。目前的研究主要分两类: 一类做法是加入额外信息来优化注意权重计算。例如,Shaw等[86]引入了新的位置矩阵以建模词之间的相对位置关系;Yang等[87]用自注意力的中间状态计算得到一个高斯偏置项,并将其加入到原来的自注意力分布计算中,使权重分布更为平滑,以提升捕获短距离语义依赖的能力;另一类做法是改进自注意力机制的权重计算方式。例如,Shen 等[88]提出了具有方向性、多维度的自注意力机制;Zhang 等[89]将解码器端的Masked自注意力机制替换成平均注意力机制,在保证模型效果可比的情况下加快了模型的解码速度;Li等[90]引入子空间不一致、注意位置不一致和输出表示不一致三种正则化项,分别促进了子空间、注意位置和输出表示的差异性,来确保多重自注意力机制的多样性和互补性;Shen等[91]提出了一种双向分块自注意力机制,将输入的词嵌入序列划分为等长的分块,先进行块内的自注意力计算,再对上一步结果进行块间的自注意力计算,实现更快且节省空间的上下文融合。
图2 Transformer框架图
此外,还有不少研究者关注如何对层与层之间的信息进行融合,以此来减少编码器信息丢失,提升模型效果。Dou等[92]提出了两种融合方法: 层回归和多层注意力。其中层回归把每一层同一个位置的隐状态通过残差连接、线性组合、迭代组合或层次组合的方式融合,而多层注意力机制将计算自注意力机制时的加权对象由当前层扩展到了当前层以下的每一层,最后将每层各个位置的隐状态都进行融合。Wang 等[93]则是对每层同一位置的隐状态语义表示进行了融合。
3.1.3 ConvS2S
卷积神经网络(convolutional neural network,CNN)通常用于图像信息抽取,卷积操作能够并行计算,提升模型效率。为了避免NMT序列化建模的缺陷,基于CNN来进行NMT建模也是选择之一。
如图3所示,Gehring等[94]提出ConvS2S模型,将CNN引入序列到序列的翻译模型中,编码器和解码器采用相同的卷积操作,然后经门控线性单元进行非线性变换得到相应输出。值得关注的是,注意力机制为多跳注意力,即每个卷积层都进行注意力建模,上一层的卷积的输出作为下一层卷积的输入,经过堆叠得到最终的输出。而Gehring 等[95]用卷积神经网络建模了NMT编码器。Kaiser等[96]将在图像分类任务中取得很好效果的深度可分离卷积网络应用于神经网络机器翻译,减少了卷积操作中的参数数量。以上几个工作均在保证一定翻译准确度的情况下提升了翻译速度。
图3 ConvS2S框架图
3.2 模型对比和分析
纵观NMT的发展历史,不同模型框架有着不同的优势和缺陷。自然地,对这些模型进行对比和分析也成为NMT研究领域的一个研究方向。
Chen等[97]将当前效果显著的几种优化算法与模型结合,探究不同优化算法对不同模型的影响。得出如下结论: ①标签平滑[98]对RNMT和Transformer都有效; ②多重注意力机制对RNMT和Transformer都有效; ③层标准化使得RNMT和Transformer的模型训练更加稳定; ④训练时增大Batch Size大小对RNMT和Transformer都有效。Domhan等[99]的研究表明通过调节参数和增加优化算法,RNMT、ConvS2S的性能能够达到和Transformer可比的程度。
通过对翻译模型本身各部分的重要性进行粒度分析,Domhan等[99]认为编码端最后一层语义表示对于翻译模型最为重要。此外,多重注意力机制和残差前馈层的作用也不容忽视,而其中源语言的自注意力机制比目标语言的自注意力机制更为重要。Wang等[100]把传统注意力机制的作用范围扩展到解码器隐状态,使得RNMT的翻译性能第一次超过了Transformer。Lakew等[101]针对多语言翻译进行了三个方面的对比: 一是对双语、多语、零样本系统的翻译质量进行定量比较; 二是对RNMT和Transformer的翻译质量进行比较; 三是考察语言接近程度对于零样本翻译的影响。最终论文得出如下结论: ①多语言模型的性能要比双语模型性能更强; ②利用多语言语料训练,Transformer相对于RNMT的性能提升更加明显; ③使用相关语言的语料能有效提升多语言模型的性能; ④在双语和零样本模型中,源语言和目标语言的相关性对模型的性能影响不大; ⑤对于零样本的情况,Transformer模型比RNMT表现得更好。
Tang等[102]同样对比了RNN,自注意力机制和CNN在两个与翻译密切相关任务上的性能: 主谓一致和词义消歧。论文发现在主谓一致任务的长距离建模上CNN和自注意力机制的模型效果并不会优于RNN,只有当建模距离长于一定值时两者的效果才会与后者相当,甚至更好。
除了上述研究,还有一些工作侧重于探究模型性能受限的原因,以及解决特定问题的能力。Ott 等[103]提出当前NMT模型性能受到答案的多样性和噪声训练数据的限制。
Belinkov等[104]在基于字符的NMT模型上将字符嵌入表示的平均来作为词嵌入表示,使得模型不受输入字符顺序错位的影响。此外,还采用了对抗实例集成训练的方法,使得模型能够同步学习对多种噪声具有鲁棒性的语义表示。Tan等[105]则对Transformer模型进行了语言学分析,认为语言学特性对模型正确率的影响比错误传播更大。
3.3 模型训练
对NMT模型训练方法的改进研究主要集中在增强学习和对抗学习两个领域。增强学习通过对机器当前的每一步行为给予不同奖励,来指导模型自动选择如何做出正确的决策。通常,奖励函数设置为和译文评价指标直接相关的函数,因而能够在一定程度上解决NMT模型训练和测试评价函数不一致的问题。由于在增强学习中往往需要对译文进行采样生成,使用基于对数似然的训练方法面临着训练和测试不一致的问题,即模型在测试时必须根据前面做出的决策来生成标记,而无法像训练阶段一样使用正确标记信息。Bahdanau等[106]和He等[107]分别引入判定网络和价值网络来估计采样生成译文的质量。Wu等[108]针对增强学习在深层模型和大规模数据训练上的不稳定缺陷,提出设置更有效的奖励函数,将原来目标函数加入到增强学习目标函数中,以使得增强学习训练更加稳定。
对抗学习的核心思想是让两个目标相反的网络交替训练,这两个网络分别被称作生成器和判别器。生成器的目的是产生判别器无法区分真假的数据,而判别器要尽量将真假数据分辨出来,两者相互抗衡可以使得模型整体上达到更好的效果。生成器和判别器都可看作是黑盒模型。Ebrabimi等[109]不再将生成器当作黑盒,而是提出几种修改原文本的方式,使模型学会生成改变方式,并且从多种可能的句子中选择对抗对象。这样做的好处在于可以提升对抗样本的质量,覆盖更多种的对抗方式,有利于增强模型的鲁棒性。Cheng等[110]则是将编码器作为生成器,带有噪声的源语言句子和原本的源语言句子同时经过编码器语义建模,训练判别器将两者语义表示区分开来。传统的对抗学习中生成器往往不可导,Gu等[111]引入耿贝尔分布(gumbel distribution)使得生成器可导,模型可以实现一体化训练。Yang等[112]结合了增强学习和对抗学习的思想,通过判别器给出的相似度作为增强学习的奖励函数,以此来进行判别器与生成器的交替训练。
4 总结和展望
综上所述,神经网络机器翻译技术正在发挥越来越重要的作用,在学术界和产业界有着巨大的影响力,已经成为机器翻译领域的主流技术。但是,神经网络机器翻译仍然面临诸多挑战,未来的发展趋势值得更多的关注。
(1) 资源受限的NMT研究。资源问题一直是困扰NMT研究和产业化的首要问题。随着NMT产业化的逐渐推广,这个问题将日益突出。因此资源问题仍将是本领域研究的重要问题。
(2) 知识驱动的NMT研究。人工翻译融合了多方面、多维度的知识。因此,要构建一个高性能的NMT模型,如何融合除平行语料之外的翻译知识也是进一步提升NMT模型效果的关键所在。
(3) NMT模型简化研究。目前,基于RNMT+[97]和Transformer都取得了非常好的翻译效果。然而,随着翻译性能不断提升,带来的问题是模型变得日益复杂。如何在保持翻译性能的前提下,对这些翻译模型进行简化,降低训练复杂度,将是NMT产业化过程中需要解决的问题。
(4) NMT模型可解释性研究。神经网络的可解释性一直是深度学习的研究重点,相较于计算机视觉、图像处理,基于神经网络的自然语言处理在模型可解释性方面的研究更为缺乏,NMT研究也不例外,模型可解释性研究将有助于我们进一步推动NMT其他方面研究的进展。
(5) 新NMT架构设计。目前NMT架构主要以RNMT、Transformer和ConvS2S为主。三类模型架构性能相当,各有优缺点。如何融合三类架构的优点,设计出性能更好的翻译架构,也是学术界不断探索的研究问题。