基于多语言联合训练的汉-英-缅神经机器翻译方法
满志博, 毛存礼, 余正涛, 李训宇, 高盛祥, 朱俊国    
昆明理工大学 信息工程与自动化学院, 云南省人工智能重点实验室, 昆明 650500
摘要:多语言神经机器翻译是解决低资源语言翻译的有效方法,现有方法通常依靠共享词表的方式解决英语、法语以及德语等相似语言之间的多语言翻译问题。缅甸语属于典型的低资源语言。汉语、英语以及缅甸语之间的语言结构差异较大。为了缓解由差异性引起的共享词表大小受限制问题,该文提出一种基于多语言联合训练的汉英缅神经机器翻译方法。在Transformer框架下将丰富的汉英平行语料与较少的汉缅、英缅语料进行联合训练,模型训练过程中分别在编码端和解码端将汉英缅映射在同一语义空间以降低汉英缅语言结构差异性对共享词表的影响,通过共享汉英语料训练参数来弥补汉缅、英缅语料缺失的问题。实验结果表明:在一对多、多对多的翻译场景下,所提方法的BLEU值比基线模型的汉英、英缅以及汉缅翻译结果有明显提升。
关键词汉语-英语-缅甸语    低资源语言    多语言神经机器翻译    联合训练    语义空间映射    共享参数    
Chinese-English-Burmese neural machine translation based on multilingual joint training
MAN Zhibo, MAO Cunli, YU Zhengtao, LI Xunyu, GAO Shengxiang, ZHU Junguo    
Yunnan Key Laboratory of Artificial Intelligence, Faculty of Information Engineering and Automation, Kunming University of Science and Technology, Kunming 650500, China
Abstract: Multilingual neural machine translation is an effective method for translations of low-resource languages that have relatively small amounts of data available to train machine translations. Existing methods usually rely on shared vocabulary for multilingual translations between similar languages such as English, French, and German. However, the Burmese language is a typical low-resource language. The language structures of Chinese, English and Burmese are also quite different. A multilingual joint training method is presented here for a Chinese-English-Burmese neural machine translation that alleviates the problem of the limited amount of shared vocabulary between these languages. The rich Chinese-English parallel corpus and the poor Chinese-Burmese and English-Burmese corpora are jointly trained using the Transformer framework. The model maps the Chinese-Burmese, Chinese-English and English-Burmese vocabulary to the same semantic space on the encoding and decoding sides to reduce the differences between the Chinese, English and Burmese language structures. The influence of the shared vocabulary compensates for the lack of Chinese-Burmese and English-Burmese data by sharing the Chinese-English corpus training parameters. Tests show that in one-to-many and many-to-many translation scenarios, this method has significantly better BLEU scores over the baseline models for Chinese-English, English-Burmese, and Chinese-Burmese translations.
Key words: Chinese-English-Burmese    low resource language    multilingual neural machine translation    joint training    semantic space mapping    shared parameters    

目前,多语言神经机器翻译(neural machine translation, NMT)[1-4]在低资源语言翻译方面取得了较好的效果。与标准双语翻译模型相比,多语言神经机器翻译通过构建多种语言之间的联合训练模型[5],能够通过共享资源丰富语言的模型参数来提升资源稀缺语言机器翻译性能,但是目前该方法主要应用于相似的语言之间,例如英语、德语、法语等,这些语言之间有大量的同源词或者相同的子词词根,在建立多语言词汇共享词表时,这些语言的词表中会有很多相同的词语可以共享。

基于统计的缅甸语机器翻译方法[6-7]依赖大规模的汉缅平行语料,但缅甸语是一种典型的低资源语言,多语言机器翻译可以有效解决汉缅数据缺乏的问题。但是,汉语、缅甸语以及英语3种语言的结构差异较大,没有相同的词语或者词根,共享词表时由于受到词表大小的限制会造成许多词语无法在词表中出现,导致3种语言的语义空间无法对齐。如图 1所示,汉语“他”对应2个缅甸语单词,英语单词“very much”对应一个缅甸语单词。利用汉英缅数据进行多语言模型训练时,会出现无法准确地在编码过程中将3种语言的词语对齐的问题。

图 1 (网络版彩图)汉语、英语、缅甸语互译句子示例

针对以上问题,本文提出基于多语言联合训练的汉英缅神经机器翻译方法,在Johnson等[8]所提模型的基础上进行改进,在Transformer框架下利用丰富的汉英平行语料与汉缅、英缅的语料进行联合训练,在编码、解码过程中,将汉语、英语以及缅甸语3种语言进行语义映射,缩小3种语言之间的语义距离,同时丰富3种语言共享词表中的词语。在Tranformer的框架下,在每个归一化和残差连接层中,将所有语言对的训练参数进行共享学习。本文通过在Transformer的编码端和解码端的汉语、英语以及缅甸语3种语言词嵌入映射共享语义空间,解决汉英缅由于差异性较大引起的词表共享受限制问题,将汉英缅3种语言对的训练参数进行共享,利用汉英高资源语言对的训练参数弥补汉缅、英缅低资源语言对所导致的训练不充分的问题,从而提升汉缅、英缅的神经机器翻译性能。

1 相关研究

目前,由于缅甸语与其他语言的双语资源较少,针对缅甸语的机器翻译的研究工作受到一定程度的限制。Nwet[9]提出一种基于缅甸语-英语词对齐的英缅统计机器翻译方法。由于这种方法在一定程度上受到词表大小的限制,Nwet等[10]进一步提出基于扩展英缅双语的平行语料的机器翻译方法。以上针对于缅甸语的机器翻译研究都是基于统计的方式,而基于统计的方式需要大规模的双语词典或双语平行语料。缅甸语是一种典型的低资源语言,基于统计的方式不能完全适用于缅甸语。

针对低资源语言的神经机器翻译的方法主要包括:

1) 基于枢轴的神经机器翻译方法[11]。借助枢轴语言构建低资源语言的神经机器翻译模型,提高神经机器翻译性能。由于英语-缅甸语以及缅甸语-汉语的语料缺乏,并且翻译性能不佳,基于枢轴的方法对缅甸语机器翻译性能提高并不明显。

2) 基于迁移学习的神经机器翻译方法[12-16]。借助预训练的思想,将资源丰富语言对训练模型或参数迁移到低资源语言对的训练过程中。由于缅甸语和其他语言之间的语法差异大,直接利用迁移学习的思想将其他语言的模型迁移到缅甸语上的效果不佳。

3) 近些年来,利用多语言神经机器翻译联合训练逐渐成为解决低资源语言机器翻译的主流方法,主要有3类:(1) 对所有源语言使用相同编码器,对目标语言使用不同的解码器。Dong等[16]在一对多的翻译场景下,提出将多语言翻译过程中的源语言的编码器共享、为每个目标语言分配不同的解码器的方法。Lee等[2]在多对一的翻译场景下,提出在编码器端采用字符级输入并且多种源语言共享编码器的方法。(2) 对所有源语言到目标语言的语言对使用不同的编码器、解码器,分别为每种语言对训练翻译模型。Firat等[17]提出一种基于共享注意力机制的多路、多对多的神经机器翻译方法。Zoph等[18]提出将注意力机制进行联合的多对一的神经机器翻译方法。以上两类方法一方面需要每种语言专用的编码器或解码器,从而限制了翻译模型的泛化性;另一方面,训练不同语言对的翻译模型在一定程度上也加大了模型训练的成本。(3) 对所有源语言、目标语言均使用相同的编码器、解码器。Ha等[19]和Johnson等[8]训练了用于多语言翻译的单个NMT模型,使用目标语言符号作为翻译方向,这种方法将不同语言合并为一个联合表示空间,但是忽略了语言的多样性。Wang等[4]提出了一种具有语言敏感机制的多语言神经机器翻译方法,在多语言神经机器翻译的训练过程中增加敏感机制的表示,在共享的同时又不丢失语言本身的多样性。

由于汉英缅3种语言差异较大,不具备相同的词语或者词根。在多语言神经机器翻译框架下,仅利用共享词表的方法会在一定程度上限制3种语言的词汇表征能力,以上方法不能完全适用于缅甸语的机器翻译中。为此,在文[4, 8]基础上,本文提出将汉英缅3种语言进行语义空间映射以降低语言差异性,以解决3种语言由于语言结构差异导致的词表受限制的问题,通过在公共语义空间中共享多语言联合训练模型参数,来提升缅汉机器翻译的性能。

2 多语言神经机器翻译研究背景 2.1 编码器-解码器

本文的主要工作是基于Transformer[20]架构进行多语言神经机器翻译,选择Johnson等[8]以及Ha等[19]提出的方法作为实验的基准模型。在多语言神经机器翻译框架[8]下,给定一个包含n个单词的源语言的句子为x=(x1, x2, …, xn),其包含m个单词的目标语言的参考译文为y=(y1, y2, …, ym),以及对应的目标语言的标签为T,例如〈2EN〉(表示to English)、〈2ZH〉以及〈2MY〉。整个编码-解码的结构主要包括:源语言、目标语言词嵌入、编码器、解码器和输出层。在词嵌入层,每个源语言和目标语言的多语言神经机器翻译的单词都会映射为一个向量矩阵WE。编码器-解码器[21]的表示如下:

$ \boldsymbol{H}_{\mathrm{enc}}=\operatorname{Encoder}([\boldsymbol{T}, \boldsymbol{x}]), $ (1)
$ \boldsymbol{S}_{\mathrm{dec}}=\operatorname{Decoder}\left(\left[\boldsymbol{y}, \boldsymbol{H}_{\mathrm{enc}}\right]\right) . $ (2)

其中:$ \boldsymbol{H}_{\mathrm{enc}} \in R^{|x| \times d_{\mathrm{m}}} $$\boldsymbol{S}_{\mathrm{dec}} \in R^{|\boldsymbol{y}| \times d_{\mathrm{m}}} $ 分别表示编码器和解码器的输出,|x|和|y|分别表示向量xy的模,dm表示模型的尺寸。

与翻译场景为一对一的翻译模型相比,多语言模型将多个语言对进行联合训练,对所有源语言和目标语言应用统一的神经机器翻译框架。针对统一的编码器-解码器框架,在整个翻译的迭代过程中目标函数 $ \mathscr{L}$

$ \begin{gathered} \mathscr{L}_{m-h}(D ; \theta)=\sum\limits_{l=1}^{L} \sum\limits_{d=1}^{\left|\boldsymbol{D}_{l}\right|} \sum\limits_{h=1}^{M} \ln P\left(\boldsymbol{y}_{h}^{l}\left|\boldsymbol{x}^{l}, \boldsymbol{y}_{ <h}^{l}\right| ;\right. \\ \left.\boldsymbol{\theta}_{\text {enc }}, \boldsymbol{\theta}_{\text {dec }}, \boldsymbol{\theta}_{\text {attention }}\right) . \end{gathered} $ (3)

其中:D是源语言x和目标语言句对y的集合,θ是训练过程中所有参数的集合,L表示联合训练语言的句子对总个数,M表示目标语言句子的长度,∣Dl∣表示集合D中第l个翻译对句子向量的模,$ P\left(\boldsymbol{y}_{h}^{l} \mid \boldsymbol{x}^{l}, \boldsymbol{y}_{ <h}^{l}\right)$ 表示第l个翻译对中第d个句子的第h个单词的翻译概率,其中 <h表示目标语言句子单词数目小于h个。θattention表示训练过程中的注意力机制参数,θenc表示编码器中的参数,θdec表示解码器中的参数。

2.2 Transformer

Transformer[20]是一种基于编码器-解码器的框架,由多个网络层堆叠而成。其中:编码器由6个相同的堆栈层组成,每层包含一个自注意力机制子层和一个基于词语位置的前馈子层,利用位置信息可以较好地将句子中每个词语的位置显式地加入到神经网络中;解码器也遵循类似的结构。除了以上的自注意力机制子层以及基于词语位置的前馈子层以外,在解码器自注意力机制子层后是多头交叉的注意力机制网络。在解码器,ett时刻源语言向量表征与目标语言向量表征的相似度分数。

$ \boldsymbol{e}_{i, t}=\frac{1}{\sqrt{\boldsymbol{d}_{\mathrm{m}}}} \boldsymbol{q}_{i} \boldsymbol{k}_{t}^{\mathrm{T}} \text {. } $ (4)
$ \boldsymbol{q}_{i}=\boldsymbol{W}_{q} \cdot \boldsymbol{H}_{\mathrm{enc}}^{i}, \quad \boldsymbol{k}_{t}=\boldsymbol{W}_{k} \cdot \boldsymbol{S}_{\mathrm{dec}}^{t} . $ (5)

在机器翻译中,Transformer将编码器中的隐状态视为一组键(Key)值(Vaule)对的集合。WqWk是交叉注意力机制的训练参数。qi表示编码端第i个隐状态与注意力机制参数Wq相乘,kt表示解码端t时刻隐状态与注意机制参数Wk相乘。

3 基于多语言联合训练的汉英缅神经机器翻译模型

针对汉英缅3种语言各自语义空间不同以及翻译训练过程中参数共享的翻译模型性能不佳的问题,本文在Transformer架构下进行汉英缅神经机器翻译,具体模型架构如图 2所示。

图 2 基于多语言联合学习的汉英缅神经机器翻译模型框架

3.1 多语言语义空间映射

传统的多语言机器翻译方法都是基于共享词表。但是,当多种差异性较大的语言进行词表共享时,每种语言可用的词表内容会变少,因此每种语言的词汇表征能力会相应地降低,这就是相似语言共享词表效果比差异性较大的语言效果更好的原因。如图 2所示,汉语、英语以及缅甸语3种语言之间的差异较大。汉语、英语属于主谓宾(SVO)语序的语言,其语句特点是有中心语的后置和前置。缅甸语则属于遵循主宾谓(SOV)结构的语言,这种结构的语言倾向于将形容词放在名词前面,此类顺序称之为中心语后置。这就意味着,缅甸语和汉语、英语的句法构成存在很大不同,而且缅甸语的虚词和助词在英语中不存在对应的词,因此会出现不同语言的相同含义的词语之间无法对应,还存在一种语言中的单词可能被翻译成另一种语言的一个或多个单词的问题。以上的语言特点都会导致3种语言的语义空间较为相互独立[22]

针对以上的问题,在汉英缅联合训练的神经机器翻译任务中,在3种语言共享词表之前,本文首先将3种语言词嵌入进行共享[23],这样可以保证得到的是3种语言共享词嵌入的语义空间而不是3种语言的词汇相似程度。具体如下:

Step1    如图 3所示,分别训练汉英缅3种语言的单语词嵌入,利用Mikolov等[23]提出的skipgram算法得到汉英缅3种语言的单语词嵌入向量EZhEEnEBu

图 3 汉英缅词嵌入语义映射图

Step2    给定一句包含n个单词的英语句子为XEn=(x1, x2, …, xn)。将编码器端生成的英语词向量EEn进行提取,任意一个英语单词的经过词表 $R_{\mathrm{En}}^{D_{\mathrm{w}} \times V_{\mathrm{En}}} $ 的查表操作后的词向量表示为EEn(xEn)。其中:Dw表示词嵌入的维度,在本文中,设置为512维;VEn为英语的词表,英语词表的大小为1万条词表。

Step3    给定一个包含 $\boldsymbol{X}_{\mathrm{Zh}}=\left(\boldsymbol{x}_{1}, \boldsymbol{x}_{2}, \cdots, \boldsymbol{x}_{n}\right) $ ,给定一个包含n个单词的缅甸语句子为 $\boldsymbol{X}_{\text {Вu }}=\left(\boldsymbol{x}_{1}, \boldsymbol{x}_{2}, \cdots, \boldsymbol{x}_{n}\right) $ 。分别将汉语和缅甸语与英语的词向量跨语言线性映射矩阵$ \boldsymbol{W}_{\mathrm{En-Zh}} \in R_{\mathrm{En}-\mathrm{Zh}}^{D_{\mathrm{w}} \times D_{\mathrm{w}}}、\boldsymbol{W}_{\mathrm{E}-\mathrm{Bu}} \in R_{\mathrm{En}-\mathrm{Bu}}^{D_{\mathrm{w}} \times D_{\mathrm{w}}}$ 最小化:

$ \sum\limits_{\left(\boldsymbol{x}_{Z h}, \boldsymbol{x}_{\mathrm{En}}\right) \in D_{Z h-E n}}\left\|\boldsymbol{W}_{\mathrm{Zh}-\mathrm{En}} \boldsymbol{E}_{\mathrm{Zh}}\left(\boldsymbol{x}_{\mathrm{Zh}}\right)-\boldsymbol{E}_{\mathrm{En}}\left(\boldsymbol{x}_{\mathrm{En}}\right)\right\|^{2} , $ (6)
$ \sum\limits_{\left(\boldsymbol{x}_{\mathrm{Bu}}, \boldsymbol{x}_{\mathrm{En}}\right) \in D_{\mathrm{Zh}-\mathrm{Bu}}}\left\|\boldsymbol{W}_{\mathrm{En}-\mathrm{Bu}} \boldsymbol{E}_{\mathrm{Bu}}\left(\boldsymbol{x}_{\mathrm{Bu}}\right)-\boldsymbol{E}_{\mathrm{En}}\left(\boldsymbol{x}_{\mathrm{En}}\right)\right\|^{2} . $ (7)

Step4  将式(6)和(7)得到的中英的映射矩阵WZh-EnEBu(xBu)和英缅的映射矩阵WEn-BuEBu(xBu)进行跨语言线性最小化,

$ \sum\limits_{\left(\boldsymbol{x}_{Z h}, \boldsymbol{x}_{\mathrm{Bu}}\right) \in D_{\mathrm{Zr}-\mathrm{Bu}}}\left\|\boldsymbol{W}_{\mathrm{En}-\mathrm{Bu}} \boldsymbol{E}_{\mathrm{Bu}}\left(\boldsymbol{x}_{\mathrm{Bu}}\right)-\boldsymbol{W}_{\mathrm{En}-\mathrm{Zh}} \boldsymbol{E}_{\mathrm{Zh}}\left(\boldsymbol{x}_{\mathrm{Zh}}\right)\right\|^{2} . $ (8)

由于缅甸语属于低资源语言,几乎没有开源的英缅以及汉缅的双语词典,Step3、Step4中的词典DZh-EnDZh-Bu以及DEn-Bu是通过将汉语、英语以及缅甸语3种语言的单语数据利用GIZA++词对齐的方式得到的。通过词对齐的方式可以获得较高质量的英语-缅甸语、缅甸语-汉语以及汉语-英语的双语词典数据。

Step5    利用Step3学习到的缅甸语词嵌入矩阵对源语言的词嵌入矩阵进行替换,替换后的词嵌入矩阵具有汉语、英语以及缅甸语3种语言的语义信息,更进一步地将3种语言的语义空间进行对齐。

通过以上5个步骤,得到汉英缅3种语言的共同的语义空间。将汉英缅3种语言的词语进行词嵌入转换,在数学空间中进行语义匹配转换而不考虑特定语言的字母,缓解了汉英缅3种语言词汇不匹配的问题。

3.2 多语言参数共享

图 2所示,编码器在对汉语、英语以及缅甸语进行编码训练的过程中,每个子层都会产生训练过程中的参数[14]。为了将汉英缅3种语言训练过程中的语义距离减小,将所有子层生成的参数进行共享。具体参与共享的参数还包括:1) 自注意力机制中线性变换产生的参数;2) 编码器-解码器的注意力机制参数。在汉英缅神经机器翻译中,为了将3种语言对之间的训练参数最大化共享,本文将以上的所有训练参数进行共享,以减小语义差距。

参数共享策略    本文使用符号Θ表示模型共享参数的集合。参数共享策略如下:

1) 基本模型是由单独的2种语言组成的翻译模型,例如,汉英、汉缅、英缅等(Θ= $ \phi $ )。

2) 在所有语言对翻译模型的词嵌入层中共享网络参数(Θ={WE})。

3) 将编码器和解码器中的相关参数进行共享(Θ={WE, θenc, θdec})。

具体共享的步骤如下:

Step1    共享前馈子层的参数(Θ={WE, HencSdec, WL1, WL2})。其中:WE为经过语义映射后的词嵌入表示,Henc为编码器的输出,Sdec为解码器的输出,WL1表示前馈神经网络第1子层中的所有参数,WL2表示表示前馈神经网络第2子层中的所有参数。

Step2     共享自注意力子层的特征权重(Θ={WE, Henc, Sdec, WK1, WQ1, WV1, WF1})。其中:WK1WQ1WV1分别为注意力机制第1子层生成的参数,WF1为前馈神经网络第1子层生成的参数。

Step3     共享编码器-解码器注意力机制子层的参数(Θ={WE, Henc, Sdec, WK2, WQ2, WV2, WF2})。其中:WK2WQ2WV2分别为注意力机制第2子层生成的参数,WF2为前馈神经网络第2子层生成的参数。

4 实验 4.1 实验数据

汉英缅语义空间映射实验数据    本文利用GIZA++的方式对汉英、英缅以及汉缅的双语词语进行对齐,使用构建的10万句汉缅、英缅的双语句子以及开源的90万句英汉双语句子进行词对齐的训练,获得英汉、英缅以及汉缅的双语词典。在实验过程中,对汉英缅映射的实验数据进行训练集、测试集以及验证集的划分,比例为8∶1∶1。

汉英缅翻译实验数据    本文在一对多和多对多的2个翻译场景下进行汉英缅神经机器翻译。一对多的翻译场景是指源语言端是汉语、目标语言端是英语和缅甸语,源语言端是英语、目标语言端是汉语和缅甸语,以及源语言端是缅甸语、目标语言端是英语和汉语。多对多的翻译场景是指源语言端是汉语、英语以及缅甸语,目标语言端也是汉语、英语以及缅甸语。汉语和英语的双语语料来自“2018国际机器翻译大会(Workshop on Machine Translation, WMT-18)”的中英数据集。目前,公开的英缅、汉缅数据较少,本文利用构建的10万句英缅以及10万句汉缅的双语语料。具体的语料的信息如表 1所示。

表 1 实验数据集中句子的数量
数据集 训练集 验证集 测试集
汉英 8.96×105 2 000 2 000
英缅 9.6×104 2 000 2 000
汉缅 9.6×104 2 000 2 000

4.2 实验设置

汉英缅语义空间映射实验设置    在实验过程中,将词向量的维度设置为512维,训练过程的迭代次数设置为10。

汉英缅翻译实验设置    在实验中,使用比特对编码(byte pair encoding, BPE)对汉语、英语以及缅甸语的单词进行了亚词切分。词表大小为35 kB。使用美国国立标准技术研究所(National Institute of Standards and Technology, NIST)的BLEU脚本对翻译结果进行评测。

实验环境为Linux系统Ubuntu16.04,Tensorflow版本为Tensorflow-GPU1.13.2,编译语言为Python3.7。选择Transformer_Base作为实验的基础框架设置。在实验过程中,设置Transformer的编码器和解码器均为6层,编码器和解码器中词向量的维度以及注意力机制的单元为512。使用Adam优化器对训练过程中的学习率进行调整。另外,为了防止过拟合问题,设置Dropout参数为0.1,在训练过程中设置每个batch包含的源语言单词数为2 048。每3 000个batch对验证集进行一次解码,如果连续10次的验证集的BLEU值不再提高,则提前终止训练,防止模型过拟合。

4.3 实验结果及对比分析 4.3.1 实验1:一对一及一对多的翻译场景下不同模型实验结果对比分析

在实验1中,设置翻译场景为一对多,具体实验结果如表 2所示,分别选择汉语、英语以及缅甸语作为源语言对应另外2种不同的目标语言。设置对比实验如下:

表 2 一对一及一对多翻译场景下的实验结果(BLEU值)
翻译场景 方法 英汉 英缅 汉英 汉缅 缅英 缅汉
一对一 Transformer 26.02 14.55 25.08 14.09 16.77 16.00
一对多 MNMT 25.56 13.09 23.45 13.78 15.40 16.14
Dong等 24.77 14.87 23.60 13.55 15.30 16.40
Baseline 26.04 15.06 24.89 14.35 16.80 16.30
Fine-tuning 26.71 16.22 25.54 15.20 16.11 18.23
本文方法 26.80 16.42 26.20 15.77 17.68 19.30

1) 谷歌(Google)多语言神经机器翻译模型(multilingual neural machine translation, MNMT):即Johnson等[8]提出的基于双向长短期记忆(long short-term memory,LSTM)的多语言神经机器翻译模型。

2) Dong等[16]在一对多的翻译场景下,提出将多语言翻译过程中源语言的编码器共享、为每个目标语言分配不同的解码器的方法。

3) Transformer[20]:在一对一的翻译场景下仅使用Transformer模型。

4) 基线模型(Basline):基线模型是指在Transformer的框架下,不使用共享语义空间以及共享参数下进行的翻译实验。

5) 微调(Fine-tuning):不使用多语言共享语义空间,而是利用微调的方式,使用高资源语言对的翻译模型对低资源语言的进行微调[14]

表 2所示,在一对多的翻译场景下,本文提出的方法在汉语-缅甸语的翻译方向上BLEU值达到15.77,比谷歌多语言神经机器翻译模型有明显提升,BLEU值提升了1.99,这说明基于Transformer的多语言神经机器翻译框架中的遮蔽注意力机制可以更好地对目标语言进行翻译;Dong等[16]的方法的翻译效果在一对多的翻译场景下与谷歌多语言神经机器翻译模型方法相当,在翻译方向相同的情况下,本文提出的方法对汉语-缅甸语以及缅甸语-汉语翻译的效果都要更好。另外,在相同的翻译方向上,例如汉语-缅甸语,本文提出的方法在一对多场景下比一对一场景的BLEU值提升了1.68,这说明利用大规模的汉英平行语料和较少的汉缅平行语料进行多语言联合神经机器翻译,可以充分弥补汉语-缅甸语数据缺乏所导致的模型效果不佳的问题。

在英语-缅甸语以及缅甸语-英语的翻译方向上,本文方法在一对多翻译场景下,比其他4种方法的BLEU值均有明显提升,这意味着在多种语言共享的语义空间中,任意2种语言的语义空间都比独立的空间更近,从而可以有效提升对低资源语言的翻译效果。

Fine-tuning方法取得了和本文所提方法相当的效果,但是Fine-tuning的过程并未考虑到语言的特殊性及语义信息,这会导致在多语言翻译过程中丢失语言本身的特殊性。由于缅甸语是没有天然分词的语言,语言本身的语义信息就显得更为重要,利用本文方法可以更好地将3种语言的语义空间进行映射。

4.3.2 实验2:一对一及多对多的翻译场景下实验结果对比分析

在多对多的翻译场景下,将源语言端、目标语言端设置为汉语、英语以及缅甸语3种语言,并对比其他低资源神经机器翻译方法。新增的2种对比方法如下:

1) 基于Bahdanau等[24]提出的语言神经机器翻译方法:编码器和解码器均使用循环神经网络结构的方法。

2) 基于枢轴的神经机器翻译方法:Kim等[11]提出一种基于枢轴的神经机器翻译方法。本文在保持其他设置不变的情况下,利用基于枢轴的方法对汉英缅进行神经机器翻译,在实验中仅使用汉英、英缅数据获得汉缅的机器翻译模型。

表 3所示,在汉语-缅甸语的翻译方向上,本文提出的方法比基于枢轴的方法BLEU值提高了2.77。在缅甸语-汉语的翻译方向上,本文提出的方法比基于枢轴的方法BLEU值提高了1.82,这说明利用多语言联合学习可以有效地通过高资源语言对弥补低资源语言对的数据稀缺。在相同的翻译方向上,本文方法的BLEU值明显高于Bahdanau等[24]提出的方法。

表 3 一对一及多对多翻译场景下的实验结果(BLEU值)
翻译场景 方法 英汉 汉英 英缅 缅英 汉缅 缅汉
一对一 Transformer 26.02 25.08 14.55 16.77 14.09 16.00
多对多 MNMT 24.01 24.30 13.90 14.66 13.09 15.05
Bahdanau等[24] 25.67 23.43 13.76 15.22 14.56 15.67
枢轴 14.05 17.09
Baseline 25.44 24.80 14.22 14.50 15.44 15.86
本文方法 25.89 24.86 17.06 17.33 16.82 18.91

同时,对比表 23可以发现,当翻译方向相同时,多对多的翻译场景的翻译效果好于一对多的翻译场景。例如,汉缅和缅汉的多对多的翻译效果均优于一对多的翻译场景。以上的实验结果说明,通用共享编码器可以较好地实现3种语言之间的映射,减小语言之间的差异。

在英语-汉语翻译方向上,本文方法的BLEU值为25.89,一对一的Transformer模型的BLEU值为26.02,本文方法BLEU值下降了0.13,这是因为在多对多的翻译场景下,汉语-缅甸语的数据在汉语-英语的数据中增加了部分的噪声,导致模型性能下降。

4.3.3 实验3:多对多翻译场景下不同的词嵌入表征方式对翻译效果的影响

在多对多的翻译场景下考查不同的词嵌入表征方式对翻译效果的影响,具体实验结果如表 4所示。

表 4 不同的词嵌入表征方式对汉英缅翻译效果的影响(BLEU值)
翻译场景 词嵌入表征方式 英汉 汉英 英缅 缅英 汉缅 缅汉
多对多 单独表征 24.62 23.50 15.40 16.61 14.22 16.56
Press等[25] 24.67 23.55 15.76 16.72 14.56 16.42
本文方法 25.89 24.86 17.06 17.33 16.82 18.91

1) 单独表征:对汉英缅每种语言都进行单独的初始化,不共享词表及词嵌入的表征。

2) Press等[25]提出一种将机器翻译中所有的输入和输出词向量同时共享的方法。

3) 本文方法:将汉英缅3种语言的词嵌入共享,编码及解码都进行相同语义空间的映射表征。

表 4所示,本文方法的BLEU值高于其他2种词嵌入的表征方式,说明利用相同的表征将3种语言进行映射会缩小语义距离,提升翻译模型的性能。

表 4实验结果显示,本文方法显著提升了汉缅、英缅的翻译效果,使用不同的向量空间的表征方式对实验结果有一定的影响。汉语、英语以及缅甸语的语义空间相对较为独立,使用单独表征方法将3种语言的语义空间独立出来,由于缅甸语相对英语和汉语之间的差异性极大,单独表征方法无法将3种语言的语义空间统一缩小。利用Press等[25]的方法虽然可以较好地缩小3种语言的语义距离,减小语义差异,但是针对缅甸语这种低资源语言,会出现汉缅、英缅之间较多的词语一对多或者多对一的情况,本文表征方法更好地缩小了这种语言之间的差异,使3种语言更好地表征在同一个语义空间中。

4.3.4 实验4:不同的词表设置对汉英缅翻译效果的影响

在实验过程中,设置汉语、英语以及缅甸语的词汇表为独立的35 kB,对比分析基线系统独立使用词汇表对实验结果的影响,具体结果如表 5所示。其中本文方法使用共享词表。

表 5 不同的词汇表设置对汉英缅翻译效果的影响(BLEU值)
翻译场景 方法 英汉 汉英 英缅 缅英 汉缅 缅汉
一对多 Baseline(独立词表) 25.55 23.20 13.72 14.04 13.17 15.57
本文方法(共享词表) 26.80 26.20 16.42 17.68 15.77 19.30
多对多 Baseline(独立词表) 24.45 23.98 14.10 13.44 14.97 13.26
本文方法(共享词表) 25.89 24.86 17.06 17.33 16.82 18.91

在Baseline使用独立词表的情况下,将本文方法与Baseline方法进行对比。在一对多和多对多场景下,本文方法的BLEU值都明显优于Baseline方法。在缅甸语、汉语以及英语的词表大小相同的情况下,本文提出的方法可以更好地将实验过程中的参数以及训练策略共享,通过高资源语言对的训练信息弥补低资源语言由于缺少数据导致翻译性能不佳的问题。

4.4 翻译实例分析

表 67所示,将翻译方向定位为汉语-缅甸语。当对输入的源语言汉语句子中的“中国”进行翻译时,基线模型的翻译输出误判为2个缅甸语单词,本文方法输出的缅甸语句子正确地将2种语言的词语进行对齐,将汉缅句子中的单词在不同的语义空间中进行了校正。另外,基线模型输出的英语句子中“Today”漏翻译。翻译示例证明了本文方法不但能将缅甸语、英语以及汉语语义空间不齐的问题进行校正,还能够将互译的英缅、汉缅以及英汉单词进行校正。

表 6 汉缅、汉英翻译示例
源语言句子(汉语) 今天,我们将从缅甸的仰光市回到中国
目标语言句子 基线模型(缅甸语)
本文方法(缅甸语)
参考译文(缅甸语)
基线模型(英语) We are going to return to China from Yangon, Myanmar.
本文方法(英语) We will return to China from Yangon, Myanmar, today.
参考译文(英语) Today, we will return to China from Yangon, Myanmar.

表 7 缅汉、缅英翻译示例
源语言句子(缅甸语)
目标语言句子 基线模型(汉语) 缅甸语言一直和中国的关系很融洽
本文方法(汉语) 从很早的时候,缅甸和中国的关系就很友好
参考译文(汉语) 缅甸与中国的关系自古以来就非常友好
基线模型(英语) Fast-China has been very popular since the beginning.
本文方法(英语) Myanmar-China relations have been better since the beginning.
参考译文(英语) Myanmar-China relations have been very friendly since ancient times.

5 结论

针对汉英缅语言结构差异大导致多语言翻译时共享词表能力受限的问题,本文利用汉语、英语以及缅甸语3种语言进行联合语义表征来提升缅汉机器翻译模型的性能。实验结果表明:本文提出的方法在一对多的翻译场景下,汉缅翻译的BLEU值达到15.77,在多对多的翻译场景下,汉缅翻译的BLEU值达到16.82,比基线模型均有明显提升。在下一步的工作中,将在多语言翻译框架下探索不同的参数共享方式对翻译效果的影响,从而进一步提升缅甸语的神经机器翻译性能。

参考文献
[1]
AHARONI R, JOHNSON M, FIRAT O. Massively multilingual neural machine translation [C]//Proceedings of NAACL-HLT 2019. Minneapolis, USA, 2019.
[2]
LEE J, CHO K, HOFMANN T. Fully character-level neural machine translation without explicit segmentation[J]. Transactions of the Association for Computational Linguistics, 2017, 5: 365-378. DOI:10.1162/tacl_a_00067
[3]
WANG Y N, ZHANG J J, ZHAI F F, et al. Three strategies to improve one-to-many multilingual translation [C]//Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing. Brussels, Belgium, 2018: 2955-2960.
[4]
WANG Y N, ZHOU L, ZHANG J J, et al. A compact and language-sensitive multilingual translation method [C]//Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics. Florence, Italy, 2019: 1213-1223.
[5]
CARUANA R. Multitask learning[J]. Machine Learning, 1997, 28(1): 41-75. DOI:10.1023/A:1007379606734
[6]
哈里旦木·阿布都克里木, 刘洋, 孙茂松. 神经机器翻译系统在维吾尔语-汉语翻译中的性能对比[J]. 清华大学学报(自然科学版), 2017, 57(8): 878-883.
ABUDUKELIMU H, LIU Y, SUN M S. Performance comparison of neural machine translation systems in Uyghur-Chinese translation[J]. Journal of Tsinghua University (Science & Technology), 2017, 57(8): 878-883. (in Chinese)
[7]
李鹏, 刘洋, 孙茂松. 层次短语翻译的神经网络调序模型[J]. 清华大学学报(自然科学版), 2014, 54(12): 1529-1533.
LI P, LIU Y, SUN M S. Neural reordering model for hierarchical phrase-based translations[J]. Journal of Tsinghua University (Science & Technology), 2014, 54(12): 1529-1533. (in Chinese)
[8]
JOHNSON M, SCHUSTER M, LE Q V, et al. Google's multilingual neural machine translation system: Enabling zero-shot translation[J]. Transactions of the Association for Computational Linguistics, 2017, 5: 339-351. DOI:10.1162/tacl_a_00065
[9]
NWET K T. Building bilingual corpus based on hybrid approach for Myanmar-English machine translation[J]. International Journal of Scientific & Engineering Research, 2011, 2(9): 1-6.
[10]
NWET K T, SOE K M, THEIN N L. Developing word-aligned Myanmar-English parallel corpus based on the IBM models[J]. International Journal of Computer Applications, 2011, 27(8): 12-18. DOI:10.5120/3322-4566
[11]
KIM Y, PETROV P, PETRUSHKOV P, et al. Pivot-based transfer learning for neural machine translation between non-English languages [C]//Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing. Hong Kong, China, 2019.
[12]
LAKEW S M, EROFEEVA A, NEGRI M, et al. Transfer learning in multilingual neural machine translation with dynamic vocabulary [Z]. arXiv: 1811.01137, 2018.
[13]
DABRE R, FUJITA A, CHU C H. Exploiting multilingualism through multistage fine-tuning for low-resource neural machine translation [C]//Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing. Hong Kong, China, 2019: 1410-1416.
[14]
FIRAT O, SANKARAN B, AL-ONAIZAN Y, et al. Zero-resource translation with multi-lingual neural machine translation [C]//Proceedings of the 2016 Conference on Empirical Methods in Natural Language Processing. Austin, USA, 2016.
[15]
SACHAN D S, NEUBIG G. Parameter sharing methods for multilingual self-attentional translation models [C]//Proceedings of the Third Conference on Machine Translation (WMT), Volume I: Research Papers. Brussels, Belgium, 2018.
[16]
DONG D X, WU H, HE W, et al. Multi-task learning for multiple language translation [C]//Proceedings of the 53rd Annual Meeting of the Association for Computational Linguistics and the 7th International Joint Conference on Natural Language Processing. Beijing, China, 2015: 1723-1732.
[17]
FIRAT O, CHO K, SANKARAN B, et al. Multi-way, multilingual neural machine translation[J]. Computer Speech & Language, 2017, 45: 236-252.
[18]
ZOPH B, KNIGHT K. Multi-source neural translation [C]//Proceedings of the 2016 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies. San Diego, USA, 2016.
[19]
HA T L, NIEHUES J, WAIBEL A. Toward multilingual neural machine translation with universal encoder and decoder [Z]. arXiv: 1611.04798, 2016.
[20]
VASWANI A, SHAZEER N, PARMAR N, et al. Attention is all you need [C]//Proceedings of the 31st International Conference on Neural Information Processing Systems. Long Beach, USA: Curran Associates, 2017: 5998-6008.
[21]
SUTSKEVER I, VINYALS O, LE Q V. Sequence to sequence learning with neural networks [C]//Proceedings of the 27th International Conference on Neural Information Processing Systems. Montreal, Canada, 2014: 3104-3112.
[22]
WIN A T. Phrase reordering translation system in Myanmar-English [C]//Ninth International Conference on Computer Applications (ICCA 2011). Yangon, Myanmar, 2011: 50-53.
[23]
MIKOLOV T, CHEN K, CORRADO G, et al. Efficient estimation of word representations in vector space [Z]. arXiv: 1301.3781, 2013.
[24]
BAHDANAU D, CHO K, BENGIO Y. Neural machine translation by jointly learning to align and translate [Z]. arXiv: 1409.0473, 2014.
[25]
PRESS O, WOLF L. Using the output embedding to improve language models [Z]. arXiv: 1608.05859, 2016.