当前位置: 首页 > 科技观察

一种基于词尾预测的英俄翻译质量提升方法

时间:2023-03-19 22:20:42 科技观察

【.com原创稿件】神经网络翻译模型受限于其所能使用的词汇量,经常遇到词汇量无法覆盖原文的情况而目标端词的情况下,尤其是在处理词法丰富的语言(如俄语、西班牙语等)时,整个语料库的词汇覆盖度往往不足,导致生成很多“未注册词”,严重影响翻译质量。现有工作主要集中在如何调整翻译粒度和扩大词汇量。这些作品可以减少“未注册词”的产生,但语言本身的形态学并没有得到真正的研究和具体解决。我们的工作提出了一种创新的方法,不仅可以通过控制翻译粒度来降低数据稀疏性,从而减少“未注册词”,还可以通过有效的结尾预测机制大大减少目标俄语翻译的词法错误,提高翻译质量英俄翻译。通过与一些有影响力的现有工作(基于子词和字符的方法)进行比较,我们的方法可以成功地应用于基于RNN和Transformer的两种主流方法在5000万的大规模数据集上。神经网络翻译模型得到稳步改进。研究背景近年来,神经机器翻译(NeuralMachineTranslation,NMT)在很多语言和场景中都显示出明显优于统计机器翻译(StatisticMachineTranslation,SMT)的效果。神经网络机器翻译将源语言句子编码成一个隐藏状态,然后从这个隐藏状态开始解码,逐个生成目标语言的翻译词。NMT系统会在目标端设置一个固定大小的词汇表。在解码阶段的每一步,都会从这个固定大小的词汇表中预测一个词作为当前步骤的翻译词。受限于计算机的硬件资源,这个词汇量往往不会设置的很大(一般30000-50000)。而且,随着词汇量的增加,预测的难度也会相应增加。基于词的NMT系统经常会遇到“Outofvocabulary(OOV)”的问题,尤其是当目标是MorphologicallyRich语言时,这个问题会更加严重。以“英俄”翻译为例。俄语是一种形式非常丰富的语言。30,000到50,000个单词的词汇量往往无法涵盖俄语中的所有单词,并且会产生许多OOV。OOV的出现对翻译质量影响比较大。有很多方法可以尝试解决这个问题。这些方法有的会从翻译粒度(translationgranularity)的角度出发,有的方法会尝试有效地扩大目标词汇表的规模。虽然这些方法可以有效降低OOV,但这些方法并没有专门对目标语言的形态进行建模。对于像俄语这样形态丰富的语言,词干的数量会比单词的数量少得多,所以自然而然地,我们会想到分别对词干和后缀建模。我们设计并实现了一种在解码过程中的每个解码步骤中分别预测词干和词尾的方法。在训练阶段,目标语言端会用到两个序列,即词干序列和后缀序列。词干序列和后缀序列的生成过程如下图所示:(词干序列和后缀序列的生成,“N”表示词干与词本身相同,即词没有后缀)这样一来,数据稀疏的问题就会得到缓解,因为词干的种类会明显小于词的种类,词尾的种类也就几百种。相关工作基于两个基于子词(subword)和字符(character)的方法,从调整翻译粒度的角度帮助缓解目标方形态丰富的语言的翻译问题。基于子词的方法使用BPE(BytePariEncoding)算法来生成词汇表。语料库中频繁出现的词被保留在词汇表中,而其他不常见的词被分成子词。由于少量的子词可以拼出所有不常见的词,因此NMT词汇表中只能保留常见词和这些子词。还有一个基于字符的NMT系统。源句和目标句都表示为字符序列。这个系统可以更好地处理源形式丰富的语言,引入了卷积神经网络(convolutionalneuralnetwork,CNN),也可以对长距离依赖进行建模。以上两种方法虽然可以缓解数据稀疏性,但都没有专门对语言形态进行建模,子词和字符也不是一个完整的语言单位。也有一些研究工作是从如何有效扩展目标端词汇量出发的,比如在目标端设置一个大词汇量,但是每次训练过程只在一个子表上进行预测,这个子表包含了所有可能的翻译的话。虽然这种方法可以解决未注册词的问题,但由于低频词没有得到充分训练,数据稀疏性问题仍然存在。NeuralNetworkMachineTranslation本文验证了“基于后缀的预测”方法在两大神经网络翻译系统上的有效性,即基于递归神经网络(RNN-based)和谷歌2017年提出的最新神经网络翻译模型(Transformer),详细介绍请参考相应的论文。基于RNN的神经网络机器翻译如下图:("NeuralMachineTranslationbyJointlyLearningtoAlignandTranslate",Bahdanauetal.,2015)Transformer的结构如下图:("AttentionIsAllYouNeed",AshishVaswanietal.,2017)俄语词干和词尾俄语是一种形态丰富的语言,单复数(number)、格(case)、性别(gender)都会影响词的形态。以名词“球”为例。“球”是中性词,不会随着阴阳的变化而变化。有两部分,即词干和结尾。词尾的变化是俄语形态变化的体现。结尾可以体现俄语的单复数、格、阴阳等信息。使用基于规则的俄语词干提取工具,可以获得俄语句子中每个单词的词干和词尾。在NMT的解码阶段,词尾预测网络在每个解码步骤预测词干和词尾。词干的生成与NMT原有的网络结构一致。此外,利用当前步骤生成的词干、当前解码器端的隐藏状态和源端的源上下文信息,使用一个前馈神经网络(Feedforwardneuralnetwork)生成当前步骤的词尾.网络结构如下图所示:***,将生成的词干和词尾拼接在一起就是当前步骤的翻译词。实验我们对RNN和Transformer都进行了实验。在WMT-2017英俄新闻翻译任务的部分训练语料(约530万)上,效果如下:其中,Subword使用subword-based方法作为baseline,FullyCharacter-based是使用字符-basedNMT系统作为基线。“后缀预测”是我们的系统。此外,我们还在电子商务领域的数据上使用了一个大规模的语料库(5000万)来证明该方法的有效性。实验结果如图:测试集包括标题(Title)、详情(Description)和用户评论的内容(Comment),示例如下:部分翻译结果示例:在第一个示例中,标记1和2的俄语词的形式表示该词是反身动词(reflexiveverb),反身动词的直接形式宾语和主语是同一个东西,换句话说,做者和接受者是一个反身动词是同一件事。从源句可以看出,“退货”的代理人是购买产品的人,收件人是要退回的产品,所以1和2的翻译是错误的。3的译词是正确的,它的词尾表示它是一个不定式动词(infinitiveverb),这个不定式动词可以有宾语。在第二个例子中,数字1和2代表复数,4代表单数。第三个例子中,3代表过去时,1和2代表现在时。在上面的例子中,我们的模型可以产生比基于子词和基于字符的模型更正确的俄语词法。总结我们提出了一种简单有效的方法来提高NMT系统的翻译质量,目标是词法丰富的语言,例如“英语-俄语”。在解码阶段的每个步骤中,首先生成词干,然后生成结尾。我们将两种NMT模型(基于RNN的NMT和Transformer)与基于子词和字符的方法进行了比较,证明了该方法的有效性。我们使用大规模(530万)和超大规模(5000万)语料库,在新闻和电子商务两个领域进一步改进这种方法可以带来稳定的改进。在我们的工作中,单词结尾专门在NMT中建模。团队:iDst-NLP-TranslationPlatform作者:SongKai/KaiSong(阿里巴巴),ZhangYue/YueZhang(新加坡科技设计大学),ZhangMin/MinZhang(苏州大学),LuoWeihua/WeihuaLuo(阿里巴巴))会议:AAAI-18【原创稿件,合作网站转载请注明原作者和出处为.com】