基金项目:国家重点研发计划(2016YFB0801200,2018YFC0832104); 国家自然科学基金(U1636203)
通信作者:fengchong@bit.edu.cn
(1.北京理工大学计算机学院,北京市海量语言信息处理与云计算应用工程技术研究中心,北京 100081; 2.北京理工大学外国语学院,工信部语言工程与认知计算重点实验室,北京 100081)
(1.Beijing Engineering Research Center of High Volume Language Information Processing and Cloud Computing Applications,School of Computer Science & Technology,Beijing Institute of Technology,Beijing 100081,China; 2.Key Laboratory of Language Engineeri
DOI: 10.6043/j.issn.0438-0479.201908030
现有的机器翻译模型通常在词粒度切分的数据集上进行训练,然而不同的切分粒度蕴含着不同的语法、语义的特征和信息,仅考虑词粒度将制约神经机器翻译系统的高效训练.这对于藏语相关翻译因其语言特点而显得尤为突出.为此提出针对藏汉双向机器翻译的具有音节、词语以及音词融合的多粒度训练方法,并基于现有的注意力机制神经机器翻译框架,在解码器中融入自注意力机制以捕获更多的目标端信息,提出了一种新的神经机器翻译模型.在CWMT2018藏汉双语数据集上的实验结果表明,多粒度训练方法的翻译效果明显优于其余切分粒度的基线系统,同时解码器中引入自注意力机制的神经机器翻译模型能够显著提升翻译效果.此外在WMT2017德英双语数据集上的实验结果进一步证明了该方法在其他语种方向上的适用性.
Existing machine translation models are usually trained on word-granularity data sets.However,different segmentations contain different grammatical,semantic features.Segmenting word granularity merely will interfere efficient training of neural machine translation(NMT)models,and is particularly prominent for Tibetan-related translation due to Tibetan linguistic features.Hence,for bidirectional Tibetan-Chinese NMT,we propose a multi-granularity training method focusing on syllables,words and phonetic fusion.We also propose a novel NMT model within the attention-based NMT framework,where a self-attention mechanism is incorporated into the decoder to capture more target-side information.Experimental results on CWMT2018 Tibetan-Chinese bilingual dataset show that the translation performance of the phonetic word fusion segmentation granularity significantly outperforms other segmentation granularity,and that integrating self-attention mechanism into the decoder can improve the translation quality greatly.In this paper,we also use the additional WMT2017 German-English bilingual dataset to demonstrate the universality of the proposed method across different languages.
藏语是我国古老的语言文字之一,属辅音文字型,具有丰富的表达功能和严密的语法结构,是具有典型逻辑格语法体系的复杂拼音文字.它最小的语言单位是字母,其次是音节,其音节至少由一个藏文字母构成,且每个音节的前后都有一个音节点“·”.音节是藏语最基本的形式构词单元和语言单位.藏语音节分辅音字母、元音符号和标点符号3部分,含30个辅音字母和4个元音符号.
与其他语言相比,藏语音节之间的分隔符存在省略现象.例如:虚词中的格助词“”、具格助词“”、属格助词“”、终结词“”、饰集词“”和离合词“”与其前一音节不加分字分隔符组成一个音节,从而形成紧缩词或者黏着词,如“”是由音节“”和“”结合而成; 其次词与词之间没有明显的间隔标记,如“”和“”,不同的切分方式导致其表达的语义有所不同.藏语中的虚词和实词的界限也很难区分.虚词具有语法单位和词汇单位的两面性,并且具有层级性,不同虚词语法化和抽象化的程度不同.在一个句子中词和字携带不同的语义信息,计算机正确识别紧缩词或者黏着词对文本的歧义消解和句法、句型、语义处理有着十分重要的意义.
藏语的上述特点为机器翻译等自然语言处理技术提出了挑战.近年来随着编码器-解码器下模型结构的演化[1],基于端到端的网络模型在神经机器翻译(neural machine translation,NMT)任务中已取得了良好的进展[2].NMT把源语言编码为词嵌入,再对这些词嵌入通过解码器生成目标语言.其中,在神经网络训练中,通过长短时记忆(long short-term memory,LSTM)等网络和注意力机制的正确连接,可以很好地解决长距离依赖问题[3].而传统的编码器仅对字或词进行编码,这样在训练过程中丢失了源语言所携带的语义信息,降低了NMT的忠实度.对于资源稀缺的语料难以构建高效的翻译模型.
目前对藏语的相关翻译还存在很多技术难题.首先,NMT系统需要具备高质量大规模的平行语料才能训练出高效的翻译模型[4],而获取高质量大规模的平行语料比较困难,尤其是对资源稀缺的语料.其次,NMT使用神经网络直接将源语言文本映射成目标语言文本时,一般以句子为单位进行层次化处理,在句子级别上用不同的粒度,如以单词、子单词或字符为依据进行处理; 但不同粒度在句法和语义层面所携带的特征对训练NMT模型在学习和获取特征时的影响有所不同,很难确定哪种粒度更适合特定的翻译任务.单词通常被认为是语言交际的基本单位,早期的NMT系统要求句子用以词语为单位粒度的序列表示.后来,Sennrich等[5]建议将单词分割成更小的单元并像单词级别翻译.Britz等[6]利用混合词元模型建立开放词汇的NMT,主要在词层次上进行翻译,并为罕见的词查询字符提供组件.Murtay等[7]提出了一种利用字符信息的循环神经网络(recurrent neural network,RNN)语言模型,从字符的n元语法(n-gram)嵌入构造单词嵌入,并与普通单词嵌入融合进行模型训练.Yan等[8]专门研究电子商务领域中通过应用词级权重来提高NMT的效果.
为此,本文针对资源稀缺的藏汉双向翻译任务,通过不同粒度来改进NMT模型:首先提出了多策略切分不同粒度的翻译模型; 其次,在RNN的解码器中引入自注意力机制[9],以修改网络结构获取不同粒度上所携带的语义特征信息,从而更好地保留原文中所携带的特征信息; 最后通过多策略融合方式从不同粒度上获取更高效的译文.
大多数NMT系统都遵循Bahdanau等[4]提出的注意力机制的编码器-解码器框架.目标是将一种序列转换成另一种序列.基本思想为使用两个网络来处理翻译任务,分别为编码器和解码器,编码器将输入的序列转换成一个固定长度的内部表示向量,解码器则将该向量作为输入用以预测输出的序列.两个网络之间由内部表示向量连接.假设输入句子X={x1,x2,…,xTx},目标端输出句子为Y={y1,y2,…,yTy}.翻译过程实际上就是一个概率求解过程,具体计算形式为式(1):
P(Y|X; θ)=∏Tyj=1P(y< j,X; θ),(1)
其中,θ为参数,y<j为目标端生成词之前的所有词.因为X与Y并不等长,所以一般构造RNNSEARCH模型,即由两个RNN组成的编码器-解码器结构.编码器-解码器网络对源句的语义进行建模,并将源句转换为上下文向量表示形式,解码器从上下文向量表示形式中逐词生成目标词.NMT的一个重要特征是将词汇表中的每个单词映射成一个低维实值向量,连续表示法的使用让NMT能够学习潜在的双语映射,以进行准确翻译,并探索单词间的统计相似性.
通常的RNN计算式(1)时会从x1依次读取到xTx完成序列X的输入.但是,本研究希望每个单词的注释不仅总结前面的单词,而且总结后面的单词.因此编码器使用m个堆叠的LSTM层生成,隐层向量hkj(k=1,2,…,m),具体计算如下所示:
hkj=LSTM(hkj-1,hk-1j),(2)
其中如果k=1,则hk-1j=xj,xj为词xj的向量表示.
解码器根据yj上的上下文向量cj计算输出概率p(yj|y< j,X; θ),θ在不同的时间步长使用不同的上下文向量cj,最终yj的输出概率为
P(yj|y<j,X; θ)=softmax([tj-1
dj
cj]),(3)
其中,tj-1是j-1时刻目标词的嵌入,dj为j时刻编码器端的隐藏状态.其中dj的计算公式为
dj=LSTM(dj-1,[tj-1
cj]; θj-1).(4)
注意力机制将上下文向量cj计算为源注释的加权和:
cj=∑li=0αjihj.(5)
其中,hj=[h1j,h2j,…,hmj],注意力机制权重的计算式如下:
αji=(exp(eji))/(∑li=1exp(eji)),(6)
ej=vTatanh(Wadj-1+Uahkj),(7)
其中,va、Wa和Ua是注意力机制的权重矩阵, ej在注意力机制模型中能够平衡dj-1和hkj.使用这种策略,解码器可以处理在给定时间内最相关的源语句.
Transformer模型[10]仅依赖于注意力机制,也采用了编码器-解码器架构,但其结构相比于注意力更加复杂,其中编码端由6个编码器堆叠在一起,解码端也一样.每个编码器包含两层:一个自注意力层和一个前馈神经网络,自注意力能帮助当前节点不仅仅只关注当前的词,从而能获得上下文的语义.每个解码器也包含编码器提到的两层网络,且在这两层中间还有一层注意力层,帮助当前节点获得当前需要关注的重点内容.
在通用序列建模中,自注意力是一种强有力的机制.本文提出的模型(RNN*Self-Attention)在RNNSEARCH的解码端引入Transformer中解码器的自注意力.解码器完全使用注意力机制不仅能够在不同的神经层之间传递信息,实现一个多层注意力机制的神经网络翻译模型,而且能更好地处理序列过长问题; 并且自注意力能够计算每一个词之间的注意力.捕获更多的原文信息.如图1所示:
混合多策略架构是一个层次结构序列到序列的模型,通过在不同的粒度级别即音节、词语、音词融合上进行训练作为对比实验.
通过不同的切分粒度训练一个高效的翻译模型,使用字符集信息增强(子)字级别表示; 自注意力机制的解码器,则使用不用粒度的表示协同控制翻译.本文对音节、词语、子词和音词融合4种切分策略进行了实验,其中子词切分策略采用字节对编码(BPE),其余3种切分策略介绍如下.
在NMT中广泛采用的字符级建模[11]具有多种优势:1)字符是语言的基本单位,2)字符级别能够更好地为数据稀疏提供支撑作用,3)字符级建模的消失梯度.考虑到藏语的特殊性和不断出现新词术语的情况,词汇库不可能涵盖所有的语言词汇.词汇量不足将直接影响NMT的性能.使用更大的词汇量虽然能提高译文质量,但是训练过程将变得更加复杂,而且词汇库中往往具有许多相似的词汇[3],它们共享一个词汇位,但具有不同的词形,几乎不可能利用所有可能的候选词汇来获得良好的性能.为此,本文以藏语中的分割符“·”为切分依据,对藏语以音节为粒度进行切分,这样不仅缩小了词汇表,同时将完整地切分出每个独立的音节.
目前大量的NMT系统都是以词语级别为单位进行训练,音节级别的NMT系统可能会遇到丢失语义或数据信息分散等问题.在藏语中词与词之间没有明确的分割符,导致机器学习对齐和翻译更加困难.为了缓解神经元使其在NMT中能够很好地获取词语级别上的信息特征,本文利用西北民族大学所开源的藏文分词工具TIP-LAS[12],利用人工标记的大量数据进行训练,其次利用该分词工具对本文中使用的所有数据进行分词,最后通过人工校正分词所带来的歧义.这样很好地避免了由于没有公开高效的藏语分词工具而为藏语翻译系统带来的困难.
在资源匮乏的环境中,大型词汇表导致低频(子)词在训练时被表示为子字单元,并且模型还需学习这些高维表示的能力.Sennrich等[13]提出了子字单元的最小频率阈值,并将频率较低的子字段分成较小的单元或字符,以减少仔细调整词汇量大小到数据集的需要,从而对较小数据集进行更准确地分割.这种方法在分布表示上可以捕获多个混合的候选词,并在增强数据中有足够多的变化,是一种有效解决低资源的NMT技术.合并来自细粒度的数据可以看作是一种很好的数据扩充方式.尽管如此,简单的融合训练仍然存在歧义,例如“”(要完善保证和利补等制度),按照音节切分为“”,按照词语切分为“”,按照音词融合切分为“”.有许多词,甚至可能有许多句法结构不会在高度相关的语法之间共享.其次藏语中具有大量的黏着语和紧缩词,例如“”和“”中除了虚词“”和“”外其他词序列与成分都完全一样,但是句意完全不同:第一句中“”指“医生”,第二句中“”指“患者”.因此不能单纯地把藏语跟汉语同等地采用BPE[5].为此,本文在分词的基础上对藏语按照藏文紧缩格识别方法[14],融合规则、统计和还原等方式进行切分.具体步骤如下:在分词的基础上首先提取携带拟紧缩音节的词,对其中所携带的音节利用规则进行识别.若规则不能识别,则用还原法识别; 如果还原法不能识别,则利用最大熵模型识别,最终达到音词融合的效果.该融合方法的一个特性是通过改变词汇表的大小可以控制混合基于音节和词语的融合模型.
本文将RNN*Self-Attention与厦门大学开发的XMUNMT 开源翻译框架中的RNNSEARCH系统(下文简称为RNNSEARCH)、Tensor2Tensor开源框架中的Transformer 系统(下文简称为Transformer)进行了对比实验.考虑客观性,对比的其他两种系统的所有参数都保持了文献[10]中最优的参数设置.
为了能够跟以往的研究实验进行对比,所有的实验数据使用公开的数据集.藏汉平行语料为CWMT 2018提供的数据集,经过预处理后最终使用的数据如表1所示.在CWMT测试集上进行测试,测试数据如表2所示,其中2017_dev、2017_test、2018_test分别表示CWMT2017的开发集、测试集和CWMT2018的测试集,另外为了进一步说明在RNNSEARCH的解码端通过引入自注意力机制来进一步提升翻译效果,还在德英和英德翻译上进行实验,使用的数据集为WMT2017德英.
本文在每个模型下按不同粒度进行训练,对表2所示测试语料进行测试,表3展示了不同模型在不同粒度下的测试结果,使用的评分工具为Moses中的机器双语互译评估(bilingual evaluation understudy,BLEU)值.
在藏汉翻译任务中,本文对比了第1节中3种不同的NMT模型,采用4种不同切分策略分别训练,在表2的3种测试集上进行测试,结果表明:
1)以音节为切分粒度训练时,3种模型的翻译效果最差,BLEU值均低于15%.这是由于在藏语中不加其他任何规则或限制条件按照分割符“·”进行切分时,失去了其语义信息,无法保留原文所表达的信息,同时引入不少的噪声.同样地,汉语按照字符进行切分也会失去原文所携带的语义信息,无法对应藏语中相应的译文,导致双语平行语料无效,所以NMT无
法在平行语料中学习语义特征,导致训练不佳.
2)以词语为切分粒度进行训练的效果明显优于以音节为切分粒度的.因为在词语级别上能够相对稳定地保留原文的语义信息,同时能够较好地在双语句对中找到对应的平行词语,有助于NMT获取更多的信息以及保留更多的语义特征.本文提出的RNN*Self-Attention模型在3个测试集上采用词语级别训练时BLEU值均有明显提升,与RNNSEARCH模型在2017_dev和2018_test测试集上的BLEU值相比,分别提升了0.59和0.47个百分点.
3)当把2种语言分词后按照普通的子词切分方式处理训练时,同样也能提升翻译质量,3种模型在不同的测试集上都有所提升.
4)按音词融合切分策略进行训练时,相比于词语级别和子词级别3个模型的BLEU值均有明显提升.如与子词级别相比,本文提出的模型采用音词融合切分策略在3种测试集上的BLEU值分别提升了2.08,1.22和2.99 个百分点.可见本文提出的音词融合方法能够有效提升译文质量.
在3个测试集中,同一种粒度下训练模型在2017_dev测试集上的BLEU值最高.经分析后发现,2017_dev测试集和CCMT2018的训练集均为新闻、政府领域,可见领域适应问题对于机器翻译仍然十分重要.
在汉藏翻译任务中,本文同样利用3种不同的模型系统,采用4种不同切分策略进行训练,并在3种测试集上进行测试,实验结果表明:
1)以音节为切分粒度训练模型依然很难达到预期效果,在3个测试集上音节级别测试结果的BLEU值均低于15%.
2)与藏汉翻译相同,在词语级别上的BLEU值比音节级别上的高很多; 与藏汉翻译相比,汉藏翻译采用不同切分策略训练的模型效果更好; 本文提出的RNN*Self-Attention模型相比于RNNSEARCH模型在词语级别上具有显著提升,例如在2017_dev、2017_test、2018_test测试集上BLEU值分别提高了0.47,0.10和0.08 个百分点.
3)不加其他规则按照通用的BPE方式双语处理后进行实验,同样能够提升译文质量,可见藏语也能满足子词级别的切分,并且以子词切分的翻译效果比词语级别的更好.
4)按音词融合切分策略进行训练时,在汉藏翻译任务中更具优势,因为本文在音词融合时,中文使用BPE方式进行切分,藏语在分词的基础上利用藏语本身具有的语言特色规则、统计及还原的方式进行切分,后期经人工处理之后达到更好的音词融合效果.首先在译文中几乎没有未登录词,其次更好地将双语中稀缺或频率较少的词语切换成更小粒度的词,使藏语更好地遵循语法信息,并照顾到黏着语格助词和紧缩词的问题,这将极大地提升译文质量.RNNSEARCH、Transformer和RNN*Self-Attention模型在音词融合上的训练效果相比于BPE有显著提升,其中RNN*Self-Attention模型在2017_dev、2017_test和2018_test测试集上的BLEU值分别提升了0.86,0.87和1.42个百分点.同样地,RNN*Self-Attention模型相比于RNNSEARCH和Transformer模型均有所提升,证明本文提出的方法在汉藏翻译上的效果得到有效提升.
为了进一步证明RNN*Self-Attention模型能够更好地获取目标端信息,本文使用WMT2017德英数据集,分别在德英和英德翻译上进行实验,其实验过程中的所有参数跟藏汉和汉藏翻译中的参数保持一致,实验结果如表4所示.虽然在德英和英德翻译中效果最好的为Transformer模型,但是,RNN*Self-Attention模型相比于Transformer模型具有复杂度低、训练效率高等优势,能够更快地训练出一个比较稳定的翻译模型,如表4最后一列显示,在同样的数据集上训练翻译模型所耗费的平均时间具有很大差距,RNN*Self-Attention模型效率高于Transformer模型.与RNNSEARCH模型相比,RNN*Self-Attention模型在德英和英德翻译任务上的BLEU值分别提升了0.18 和1.20个百分点.引入自注意力构建的网络模型不仅提高翻译效果,同时没有增大复杂度,能够有效地解决长序列中词与词之间的依赖关系,更好地学习到一个句子内部的结构.从而证明本文方法具有较强的通用性.
本文针对资源稀缺的藏汉双向翻译研究了多切分粒度的训练方法,在音节、词语、音词融合3种切分策略下,有效解决了汉语句子中普遍出现的一些介词和连词在藏语中没有对应词的翻译问题,避免词汇和句法级别的翻译困难.同时,把低频词切分成相对高频的子字片段,缓解数据稀疏问题,使多种模型的翻译效果得到显著提升,通过缩小词典大小,显著缩短训练周期,正确传达源语言的意义,符合目标语言的语法.从同语料不同模型和同模型不同语料两个角度进行实验验证,在CWMT2018藏汉和WMT的德英机器双向翻译任务上的实验结果表明,本文方法优于基线系统.
在下一步的工作中,希望结合不同粒度,改进编码器在音节和词语级别上同时编码,以有效获取更多的特征属性,避免中间繁琐的过程.同时希望能够引入先验知识库来缓解资源稀缺问题.