论文部分内容阅读
神经机器翻译通常采用序列-序列的神经网络模型对翻译任务建模,其翻译结果从流畅度、忠实度等方面都远超传统的统计机器翻译方法,使机器翻译技术达到了一个新的高度。通常情况下,神经机器翻译模型利用编码器以序列的形式对源语言句子编码,再利用解码器同样以序列的形式生成目标语言句子。然而语言中句子的构成并不是词语的简单罗列,实际上每句话都是由该语言的语法结构约束的。例如一个英文句子可以由主语、谓语、宾语组成,每个英文单词可以充当其中一个或多个角色,它们需要在语法的约束下才能组合成一个正确的句子。语法结构是语言中非常重要的组成部分。而神经机器翻译模型在翻译的过程中往往忽视了语法结构,导致翻译结果中仍存在违背语法约束的错误译文。在自然语言处理领域,语法通常由句法结构表示。近年来,基于句法的神经机器翻译成为神经机器翻译研究中的一个热点话题。本文主要针对基于句法的神经机器翻译中的五种问题提出相应的研究方法。第一,针对基于句法的神经翻译模型中源语言树结构编码复杂的问题,提出一种简单有效的基于依存句法结构遍历的编码方法。源语言的句法结构可以帮助神经翻译模型准确地理解源语言中词语之间的结构关系,比如主谓关系,修饰关系等,从而保证译文最大限度的契合源语言。现有的诸多方法利用复杂的神经网络结构对源语言的句法结构进行编码。虽然实现了将句法信息引入到神经翻译模型中,但大大增加了模型的复杂度。针对这一问题,本文提出了基于依存句法结构遍历的编码方法。该方法立足于结构简单的源语言依存句法结构,通过先序、后序的遍历方式构建出两种不同于源语言句子的序列,同时它们最大限度地保留了句法结构知识。本文通过在编码器中额外地编码这两种遍历序列,将源语言的依存句法结构引入到神经翻译模型中。实验结果表明这种方法可以有效地让神经机器翻译利用源语言句法知识,并提高了翻译性能。第二,目前新兴的基于完全自注意力机制的Transformer模型已经全面地超越了以往的神经机器翻译模型,然而句法结构能否对Transformer有帮助仍是一个研究空白。本文在Transformer的基础上提出一种基于源语言依存结构的有监督编码器。Transformer编码器的特点是利用多层的多路自注意力网络从不同角度隐式地对源语言建模。针对这一点,本文提出利用依存句法结构指导自注意力网络显示地对句法结构建模。首先,本文在依存句法结构的基础上提出两种结构依存矩阵,这两个矩阵分别包含了子节点到父节点的依赖关系和父节点到子节点的依赖关系。然后,在Transformer模型的训练过程中,利用这两个矩阵去指导自注意力网络显示地对依存结构建模,从而达到将依存结构引入Transformer的目的。该方法简单易行,既不增加Transformer网络的复杂度,又不打破Transformer高度并行化的优势。在翻译过程中,编码器能够自动的构建源语言依存结构,并将其用来帮助翻译的产生。实验结果表明该方法可以有效地利用源语言依存句法结构提高Transformer的翻译性能。第三,针对在神经机器翻译模型中利用目标语言句法知识这一问题,本文提出了序列-依存的翻译模型。目标语言的依存句法知识可以直接有效地约束译文,使其满足语法结构。现有方法大多集中于如何在翻译过程中生成译文对应的句法结构,却忽视了对如何有效地利用已生成的句法结构进一步提高译文的质量。本文立足于目标语言的依存句法结构,提出序列-依存的翻译模型。该模型能够在翻译的过程中同时为译文构建依存句法结构,并从已生成的局部句法结构中抽取句法级的上下文知识,进一步帮助后续译文和句法结构的生成。实验结果表明本文提出的序列-依存翻译模型能够很好地利用目标语言句法知识提高模型的翻译能力,同时也能为译文建立合理的句法结构。第四,针对现有工作未能在神经机器翻译模型中同时利用源语言和目标语言句法知识这一问题,本文提出依存-依存的翻译模型。句法是比句子复杂很多的结构化知识,在基于序列的神经翻译模型中利用单一方向的句法知识已经很有挑战,那么要同时利用两个方向的句法知识更是难上加难,因此现有工作未能同时考虑二者。针对这一问题,本文提出依存-依存的神经翻译模型,该模型实现了同时利用源语言和目标语言的依存句法结构。本文将依存-依存的模型框架分别应用在基于循环神经网络的翻译模型和Transformer中并提高了二者的翻译性能。第五,本文对基于句法的翻译模型做了比较全面的分析,包括以下三个方面:(1)分析了训练数据规模对翻译模型的影响;(2)分析了句法精度对翻译模型的影响;(3)基于句法的翻译模型在相似语种和不相似语种下的翻译效果。