当前位置:   article > 正文

ACL 2021 | 北京大学KCL实验室:如何利用双语词典增强机器翻译?

神经机器翻译一对多生成

今天给大家介绍一篇 ACL 2021 机器翻译的文章,这篇文章来自北京大学 KCL 实验室。KCL(Knowledge Computing Lab,知识计算实验室)是北大软件工程国家工程研究中心一支 20 多人的研究团队,主要研究领域包括:信息抽取、信息检索、文本生成、程序语言理解等。

©作者 | 张通

单位北京大学KCL实验室

研究方向 | 自然语言处理

论文标题:

Point, Disambiguate and Copy: Incorporating Bilingual Dictionaries for Neural Machine Translation

论文链接:

https://aclanthology.org/2021.acl-long.307.pdf

引言

机器翻译任务中,语料通常包含大量的低频词和多义词,神经机器翻译模型通常难以精准捕捉这些词的语义信息,模型在翻译含有这些词的句子时效果可能大幅下降。如何在获取这些词精准且丰富的语义信息是神经机器翻译的一大难题。双语词典包含了丰富的先验知识,对于每个词标注了其一个或多个对应的翻译词。

这些知识可以帮助我们更好的理解源端句子,进而提高翻译的质量。在人进行翻译的时候,双语词典是重要的参考资料。对于不能确定意思的低频词或者多义词,翻译者可以通过查询双语词典的方式获取其合适的翻译,该翻译通常可以加深翻译者对这些词语义的理解,之后,译者可以将查询到的翻译词引入译文之中。

对于神经机器翻译模型,双语词典同样是重要的知识来源。双语词典根据其词对应关系通常可分为两种,一对一的双语词典和一对多的双语词典。一对一的双语词典对每个源语言词只包含一个对应的目标语言的翻译词。

这类词典通常更适用于特定领域的实体、术语等翻译,因为在该场景下,这领域的实体术语等大多不存在歧义现象,同时引入该词典能显著提高领域中的机器翻译质量。然而在现实世界中,一词多义的现象普遍存在,一个词很可能对应多个可能的翻译词。在一对多的词典中,每一个源端词都对应一个或者多个目标端词,利用一对多的双语词典更具通用性。

 

本文旨在通过引入一对多的双语词典来增强神经机器翻译模型性能。为此,在指针网络的基础上,我们提出了定位-消歧-拷贝框架,该框架端到端地结合了定位、消歧和拷贝三个关键步骤来利用双语词典提高机器翻译。

首先,我们使用定位模块在每一个解码时刻选择当前要翻译哪一个源端词;接下来,我们提出 bi-view 消歧模块来对该源端词的多个翻译候选词进行消歧,选择语义正确且符合目标句子语境的翻译词;最后,我们使用了层次化拷贝机制结合前两个模块的概率分布,端到端地将合适的翻译候选词拷贝到解码端。

除此之外,针对拷贝机制和 BPE 难以结合的问题,本文还提出了一个简单有效的 Selective BPE 策略,在经典 BPE 的基础上获得了进一步提升。实验表明本工作通过引入词典信息优化源端文本的语义表示,在 Transformer 和其他 baseline 模型的基础上显著地提高机器翻译模型的效果,并能显著缓解低频词问题对神经机器翻译模型造成的负面影响。

方法

我们提出了新颖的定位-消歧-拷贝(Point–Disambiguate–Copy, PDC)框架,该 PDC 框架规范了引入一对多双语词典的机器翻译的步骤。如下图所示,该 PDC 框架包含定位、拷贝、消歧三个关键步骤。

 

首先,预测一个源句子“这些花纹可以增强轮胎与地面之间的制动摩擦”的翻译,当在某一个特定的解码位置,模型第一步需要进行定位找到当前时刻哪一个源端词需要被翻译,如在图中,需要定位到“摩擦”应该被翻译。

第二步,模型从双语词典中查询该词在词典中定义的翻译词,如我们可以查询到摩擦对应的翻译词为“rub”、“friction”、“conflict”和“clash”,接下来需要利用上下文对这些翻译词进行消歧。需要注意的是,消歧得到的最优翻译词需要同时满足两个条件,即该词既要正确反映源句子的语义,又要保持目标句子的流畅性。如图 2.5 的例子中,根据源句中“花纹”、“轮胎”、“地面”等词,我们可以判断“rub”和“friction”是符合源句语义的“摩擦”的翻译词,然后根据目标句中“These patterns increase brake”,可以辅助更好的选择“friction”为最优翻译候选。

第三步为拷贝,如果判断当前模型的输出需要从词典中拷贝,那么最后将模型选择的最优候选翻译拷贝到模型的输出中。

然而,在先前的基于双语词典的工作中,这些步骤分别都面临一定的瓶颈:

1. 双语词典中的语义信息对理解源端词词义和拷贝决策都十分重要,尤其是在我们的目标是要拷贝词典中翻译词的情况下。然而在先前的基于双语词典的工作中,词典中丰富的语义信息并没有被有效利用。通过引入词典中丰富的语义信息,增强模型对文本的语义表示,模型可以更好的理解源端词汇并决策是否需要拷贝该词的翻译。

2. 在消歧阶段,前人的工作大多利用先验的消歧概率或利用粗粒度的上下文信息,缺失更细粒度的词典和上下文的语义信息。直觉上,经过消歧选择的最优翻译词需要同时满足两个条件,即该词既要正确反映源句子的语义,又要保持目标句子的流畅性。基于该思路,结合更细粒度的源端语义信息和目标端语义信息可以增强模型消歧质量。

3. 前人工作并没有显式地结合定位和消歧模块来建模端到端的拷贝机制,大多简单的一对一拷贝或者使用 pipeline 的形式。使用端到端的架构连接定位和消歧模块可以避免误差传播并简化训练过程。

为了解决上述问题,我们提出了定位-消歧-拷贝(Point – Disambiguate – Copy, PDC)框架来引入一对多的双语词典提高机器翻译模型。PDC 是独立于序列到序列的生成模型(如 Transformer)的一个拷贝模块,其目标是在一个解码时刻定位当前需要翻译的源端词并拷贝其正确的翻译候选词。

 

如上图所示,该模型包括三个模块:定位器(pointer)、消歧器(disambiguator)和拷贝器(copier),三个模块通过协作使用端到端的方式来将双语词典引入机器翻译模型。

Pointer 编码了每个源端词的词典翻译并引入该信息增强源端文本的语义表示,更好地定位那个源端词的翻译可能需要被拷贝;Disambiguator 使用了新颖的 Bi-view 消歧机制,从源端和目标端两个视角对源端词的多个翻译候选进行消歧,以保证该翻译候选对原文的忠实度和在目标文中的流畅度;Copier 使用层次化的拷贝机制结合前面两个模块的软概率分布,计算最终拷贝概率分布。

该拷贝机制系统地连接 Pointer 和 Disambiguator 模块,构建了端到端的机器翻译模型;同时,我们设计了一个简单有效的 Selective BPE 策略来结合基于词典的拷贝机制和 BPE。下面我们将对该方法进行详细介绍。

2.1 定位器

模型的第一步需要对哪个源端词的翻译可能需要被拷贝进行定位。首先对于每个源端词 ,我们通过双语词典获得 个翻译词 ,我们在这里称之为翻译候选词。为了更好地捕捉候选翻译的语义,我们使用自注意力对每个词的多个翻译候选编码,接下来使用源端信息对这些候选翻译词进行消歧,并将利用该信息增强源端句子的语义表示。最后,基于语义增强的源端句子表示,定位器使用注意力机制来选择当前哪个源端词的翻译可能需要被拷贝。

首先要进行的是对翻译候选进行编码。由于翻译候选词和目标端词的语言相同,我们通过共享翻译候选词和目标端词的嵌入矩阵,得到源端词 的翻译候选词对应的向量表示 。接下来,通过一个候选词编码器,使用单层的自注意力机制和前馈神经网络来编码每个词的所有候选词的语义信息。

接下来,我们需要使用该词典语义表示增强 Transformer 中的表示结果。先前的词典增强的机器翻译工作通常直接使用 Transformer 编码器端状态表示 h 和解码器端 t 时刻的解码状态 st 来定位哪一个目标词当前需要被翻译。

然而,双语词典词典中丰富的语义信息没有被有效利用。引入词典中丰富的语义信息可以增强模型对源端句子语义的捕获能力,并提高定位器的决策水平。为了达到这个目的,PDC 模型首先对这些翻译候选的表示使用源端编码器对应的词语义信息进行第一次消歧:

其中, 代表 的第 j 个翻译候选所对应的消歧概率。接下来,将这些翻译候选的表示根据消歧的权重进行表示融合,为每个源端词的所有翻译候选词构建统一的表示。

这样,对于每个源端词 ,我们构建了其双语词典翻译词的语义表示 。接下来,我们使用该词典表示来增强 Transformer 编码器的语义表示。具体地,对于编码器表示 h 和双语词典翻译词的语义表示 ,使用一层 cross attention 和前馈神经网络来使两者表示进行交互。

最后,我们利用注意力机制,使用语义增强的源端句子表示 和当前的解码器状态 st 来计算拷贝器的输出概率。

其中, 为定位器选择要使用源端词 的翻译候选的概率。根据该概率,我们可以融合语义增强的源端句子表示 和当前的解码器状态 st 的信息,得到语义增强的目标端表示

该语义增强的目标端表示 将用于之后的消歧器中。

2.2 消歧器

接下来,PDC 模型使用消歧器来对每个源端词的多个翻译候选进行精准的消歧。在翻译一个词的时候,模型有全部的源端句子信息和已翻译出的部分目标端译文句子信息。消歧器选择的最优翻译候选应该满足两个条件,即该词既要正确反应源句子的语义,又要保持目标句子的流畅性。

因此,我们提出了 Bi-view 消歧机制,从源端视角和目标端视角分别对每个源端词的多个翻译候选进行词义消歧。同时,目标端的表示融合了源端,目标端和词典端全部的语义信息,以提高消歧的准确率。

源端视角的消歧(source-view disambiguation)使用源端句子本身的信息来消歧,与普通的词义消歧任务一致。由于 Source-view 的消歧分布已经在定位器中被用来计算翻译候选融合的语义表示,其消歧分布 计算方式已经在公式 2.3 介绍。这个消歧分布于解码状态无关,在翻译一个句子时,源端的消歧概率只由其源端句子决定。

源端的消歧无法保证选择的翻译候选在目标端句子中的流畅性。因此,我们在源端消歧的基础上,利用语义增强的目标端表示 来进行目标端的消歧(target-view disambiguation)。

其中, 代表源端词 的第 j 个翻译词 对应的目标端消歧概率。相对于与解码状态无关的源端消歧概率,目标端消歧概率分布是动态的,在每个解码时刻会随解码器状态而改变。


2.3 拷贝器

最终,我们使用了一个层次化的拷贝器整合定位和 bi-view 消歧模块的输出分布。这样,模型的三个主要模块可以端到端的进行训练,避免了误差传播并简化训练过程。

对于 Bi-view 模块的输出概率分布,Copy 模块使用权重 将两个视角的消歧分布进行插值,并与定位的概率相乘的到对于每个源端词的每个翻译候选的拷贝概率。

其中, 代表拷贝源端词 的第 j 个翻译词的 bi-view 消歧概率,由定位器定位 的概率和 bi-view 消歧器选择 的概率相乘计算获得。

接下来,我们将此拷贝概率映射到词表的概率分布:

其中,c 代表输入句子 x 中每个词所对应的翻译候选集合。

模型的最终输出概率分布 由 PDC 输出的拷贝概率分布 和生成模型 Transformer 输出的生成概率分布 进行插值计算得到:

其中, 是一个动态的拷贝权重,用来平衡拷贝概率和生成概率的权重。该权重与解码状态相关,不同的解码时刻之间该权重是动态变化的。具体地, 由语义增强的目标端状态 计算得到。

2.4 Selective BPE

机器翻译工作中通常使用 BPE 切分低频词和未登录词为更小粒度的字词,以降低长尾词的影响。然而,在引入双语词典和拷贝机制时,BPE 与其有天然的冲突,即词典中的词需要经过 BPE,否则会跟目标端和源端的词不匹配。而词典中的要拷贝的词大多都是低频词,如果对词典中的候选词也进行 BPE,那么这些候选词会被切分为子词,然后模型需要对这些子词的表示进行融合作为该翻译候选的语义表示,并顺序地拷贝一个翻译候选的所有子词,这会使翻译的过程复杂化。

例如,“人类学”在词典中的一个翻译为“Anthropology”,经过 BPE 预处理,该词被分解为“An@@”、“th@@”、“ro@@”、“po@@”和“logy”五个字词。在定位和消歧模块,模型需要对这些子词的表示进行融合,生成“Anthropology”的统一表示来增强源端文本的表示;同时,在输出时,拷贝机制需要顺序地分别拷贝 5 个子词,复杂了输出过程并加大了错误的概率。

本文提出了 Selective BPE,一个简单而又有效的策略来解决上述 BPE 和拷贝机制的冲突问题。在训练时,BPE 并不会作用于词典,源端文本使用普通 BPE 来做处理,对于目标端文本,Selective BPE 不会作用于可以从该句话对应的翻译候选中拷贝的目标词,而只会作用于无法被拷贝的目标词。该方法的形式化描述如下。

其中, 为 Selective BPE 的指示符。 代表该词无法从词典中拷贝,可以使用 BPE 进行分割; 代表该词可以从词典中拷贝,需要保持原状。需要注意的是,Selective BPE 只需要在训练时上使用,因为测试和验证集不需要 reference。

通过引入 Selective BPE 策略,模型可以更方便的从词典端拷贝单词,同时基本保留了 BPE 解决 OOV 词的优势。Selective BPE 可以提供一种隐式的信息,让模型在翻译可以拷贝的低频词时,更趋向于直接拷贝它而不是通过生成其子词合成该词。

实验及结果分析

我们主要在中-英翻译任务上进行了实验。主实验数据集使用 LDC 新闻数据集,其包含大概 125 万个双语新闻句子对。我们使用 NIST 数据集作为我们的验证集和测试集。具体地,使用 NIST 2006(MT 06)作为验证集,NIST 2002、NIST 2003、NIST 2004、NIST 2005 和 NIST 2008 作为测试集。

实验结果如下表所示。在 NIST 实验中,我们的方法可以显著地在 Transformer、Single-Copy 和 Flat-Copy 的基础上获得提高,在 5 个数据集上分别平均提高 2.59BLEU、1.66 BLEU 和 2.20 BLEU。这个提高主要是由于我们使用双语词典信息增强语义表示的定位器和两角度的消歧器,并使用有效的层次拷贝机制将两者结合在一起。

PDC(w/o Dict Pointer)是 PDC 模型的一个变种,它去掉了翻译候选编码器,仅仅在原本的 Transformer 编码器表示上使用解码器状态进行定位。实验结果表明,在去掉基于词典信息的语义增强之后,PDC 模型的效果会大幅下降,降低 0.96 BLEU。这证明了使用源端词在双语词典中的翻译候选中蕴含的丰富语义信息,可以增强源端文本的表示从而增强定位器的效果。

▲ NIST 中-英翻译任务实验表

为了验证我们双角度消歧模块的有效性,我们实现了两个 PDC 模型的变种。PDC(w/o Src-View)代表去掉源端角度消歧的 PDC 模型,PDC(w/o Tgt-View)代表去掉目标端角度消歧的 PDC 模型,两者的实验结果如表 2.1 所示。结果表明,无论去掉源端或者目标端的消歧,结果都会有明显的下降,其中去掉源端消歧在 5 个测试集上平均下降 0.78 BLEU,去掉目标端消歧在5个测试集上平均下降 0.68 BLEU。

为了进一步探究源端消歧和目标端消歧两个角度的消歧的结合方法,我们展示了了超参数的变化对测试集效果的影响,代表源端消歧和目标端消歧进行线性插值结合时源端消歧概率分布所占的权重。如下图所示,单独使用 source-view 的消歧和 target-view 的消歧都无法达到最优效果。源端文本和目标端文本的语义信息在一定程度上是互补的,并都对消歧决策都十分关键。

▲ 超参数 对NIST中英翻译任务影响效果曲线图

 

我们对提出的 Selective BPE 策略进行实验,结果如下表所示。传统的 BPE 策略会提高机器翻译质量,我们的 Selective BPE 策略可以在传统的 BPE 基础上进一步大幅提高机器翻译模型的效果,提高幅度有 1.36 BLEU。我们认为该优越性主要归功于 Selective BPE 避免了传统 BPE 和基于字典的拷贝机制之间的冲突,使两者有效结合共同提高机器翻译模型的效果。

▲ 不同BPE策略实验结果表

基于词典的机器翻译方法通常以解决机器翻译中的长尾词问题为目的,因此我们进行了一个量化实验来探究 PDC 模型如何解决长尾词问题。我们将 NIST 验证集按照长尾词的占比进行了切分并进行实验,结果如下图所示。红色曲线代表PDC模型的效果,绿色的曲线代表 Transformer 模型的效果。实验结果表明,在不同长尾词占比的测试子集上,本文提出的 PDC 模型都可以一致地取得高于 Transformer 模型的结果;同时,随着长尾词的占比增加,我们模型相比 transformer 模型的提高越来越大。这证明通过引入一对多的双语词典,PDC 模型可以很好地缓解机器翻译中的长尾词问题。

▲ PDC模型在不同长尾词占比的测试集上的效果图

更多的实验结果与分析请参考原论文。

 

更多阅读

#投 稿 通 道#

 让你的文字被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。

???? 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算

???? 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿

△长按添加PaperWeekly小编

????

现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧

·


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/345369
推荐阅读
相关标签
  

闽ICP备14008679号