Unsupervised Bilingual Word Embedding Agreement for Unsupervised Neural Machine Translation

Unsupervised Bilingual Word Embedding Agreement for Unsupervised Neural Machine Translation


这是2019ACL的一篇文章,探究了无监督的双语词嵌入和无监督神经机器翻译之间的关系。

哈工大的一篇文章,感觉文章并没有什么实质性的内容,就是把一个并不复杂的问题公式化,然后看起来很复杂的样子,实际上用的方法还不是以前方法提到过的,说的很高大上的样子,看的云里雾里,一篇短文可以说明的问题硬是写成了长文

文章链接:

Unsupervised Bilingual Word Embedding Agreement for Unsupervised Neural Machine Translation

知识点

  1. 提出 UBWE协议正规化和UBWE对抗性训练,使UBWE和UNMT在训练过程中相互作用,从而提高了翻译性能。
  2. 使用不同检查点的VecMap嵌入对UNMT进行预训练,可以获得不同精度级别的UBWE(无监督的双语词嵌入)。

摘要

无监督的双语词嵌入(UBWE)以及其他技术(例如反向翻译和去噪)已帮助无监督的神经机器翻译(UNMT)在几种语言对中取得了令人瞩目的成就。在以前的方法中,首先使用非并行单语语料对UBWE进行训练,然后使用这种经过预先训练的UBWE来初始化嵌入在UNMT的编码器和解码器中的单词。 也就是说,UBWE和UNMT的培训是分开的。 在本文中,我们首先通过实证研究UBWE与UNMT之间的关系。实证结果表明,UBWE的表现对UNMT的表现有很大的影响。因此,我们提出了两种用UBWE协议训练UNMT的方法。在几种语言对上的经验结果表明,所提出的方法明显优于常规的UNMT。

引言

文中研究了UBWE和UNMT之间的关系:

  1. 预训练UBWE的质量和UNMT的效果成正相关。
  2. 在UNMT训练期间,UBWE的质量显著下降。

基于这两个发现,我们假设通过UBWE协议学习UNMT可以提高UNMT的效果。详细地说,我们提出了两种方法,即UBWE协议正规化和UBWE对抗训练,以在NMT培训期间保持UBWE的质量。几种语言对上的实验结果表明,所提出的方法明显优于原始的UNMT。本文的其余部分安排如下。

  1. 第2节中,我们介绍了UNMT的背景。
  2. 第3节中介绍和分析初步实验的结果。
  3. 第4节中,我们提出了与UBWE协议共同训练UNMT的方法。
  4. 第5节和第6节中,我们描述了评估我们方法性能的实验并分析实验结果。
  5. 第7节介绍了一些相关的工作。
  6. 第8节总结论文。

初步实验

为了研究UBWE和UNMT之间的关系,我们根据经验选择了一种相似的语言对(英语-法语属于同一语言家族)和一种遥远的语言对(英语-日语属于不同语言家族)作为语料库。

3.1 Effect of UBWE Quality on UNMT Performance

图1显示了使用不同准确度级别的UBWE时UNMT的性能。为了获得不同精度级别的UBWE,我们使用在不同检查点的VecMap嵌入来对UNMT进行预训练。

在这里插入图片描述
Precision@1表示使用MUSE测试集中的第1位预测候选词来指示单词翻译的准确性。

随着UBWE准确性的提高,两种语言对的NMT性能都有所提高。这说明预训练UBWE的质量对于UNMT来说是非常重要的。

3.2 Trend of UBWE Quality during UNMT Training

图2显示了UNMT在整个训练阶段中UBWE准确性和BLEU分数的趋势。VecMap被用来为UNMT的编码器和解码器预训练单词嵌入。我们使用编码器的源嵌入和解码器的目标嵌入来计算UNMT训练期间MUSE测试集上的单词翻译准确性。无论使用哪种语言,UBMT的绩效在UNMT培训过程中均大幅下降。

在这里插入图片描述
3.3 Analysis

本节分析一些可能的解决办法:

Use fixed embedding?

固定词嵌入,在训练的过程中不改变。很多论文中用过此方法。本文证明并不可行。

如图2所示,在UNMT训练过程中UBWE性能显着下降。因此,我们尝试在原有的基线系统(baseline -fix)的基础上修复编码器和解码器的嵌入。表1显示了baseline -fix系统的性能与原始基线系统的性能非常相似。换句话说,Baseline-fix可以防止UBWE精度下降;然而,固定的嵌入也阻止了UBWE进一步改进UNMT训练。因此,固定的UBWE并不能提高UNMT的性能。

在这里插入图片描述
Use byte pair encoding (BPE) to increase shared subwords?

BPE算法也很常见,但本文中没有采用。

对于英语-法语和英语-德语UNMT,Lample等人将两个双语语料库连接成一个单语语料库。他们采用了BPE来扩大两种语言的共享子词数量。使用预先训练好的单语子词嵌入作为UNMT的初始化。由于在这些相似的语言对中存在大量的共享子词,因此该方法比其他UBWE方法具有更好的性能。然而,这种初始化并不适用于遥远的语言对,比如英语-日语和英语-汉语,因为它们很少有共享的子单词。在UNMT中使用基于单词的嵌入更加普遍。此外,基于单词的嵌入很容易与UBWE技术相结合。因此,我们在提出的方法中没有采用BPE。

Train UNMT with UBWE Agreement

基于以往的实证结果和分析,我们提出了两种联合协议机制,即:, UBWE协议正规化和UBWE对抗性训练,使UBWE和UNMT在训练过程中相互作用,从而提高了翻译性能。图3说明了UNMT的结构和拟议的协议机制。

一般来说,在UNMT培训中,会添加一个目标函数L_BWE来确保UBWE一致。一般的UNMT目标函数可以重新表述如下:
在这里插入图片描述
在这里插入图片描述
4.1 UBWE Agreement Regularization

基于UNMT的现有体系结构,我们在反向翻译期间诱导UBWE协议正则化,以在UNMT训练期间保持编码器和解码器中的UBWE准确性。 编码器和解码器嵌入的相似度函数Similarity(L1; L2)用于测量UBWE精度,目标函数L_BWE为:

在这里插入图片描述
enc_L1和enc_L2分别是L1和L2编码器的所有词嵌入,dec_L1和dec_L2分别是L1和L2解码器的所有词嵌入。

由于在UNMT中没有可以用作双语词典的测试或开发数据集,因此在计算相似度Similarity(L1; L2)之前,我们需要在NMT训练过程中生成一个合成的词对词典来测量UBWE准确性。我们使用CSLS来衡量UBWE准确性。这也可以看作是源词嵌入和目标词嵌入之间的相似性(facebook第一篇中的方法)。

在这里插入图片描述
由于字典尺寸太大,文中做了筛选,将CSLS评分进行排名,选择排名靠前的词对组成新的字典。enc_yj表示编码器L2对单词yj的嵌入,dec_xj表示解码器L1对单词xj的嵌入。两个字典的大小都设置为|Dict|。因此,编码器和解码器中的词嵌入之间的相似度可测量为

在这里插入图片描述
Dict中单词对之间的上述相似性用于反向翻译期间的UBWE协议正则化。注意,在UNMT训练的每个epoch中,都会动态地选择合成词对字典。

4.2 UBWE Adversarial Training

通过对抗训练求出 编码器词嵌入 到 解码器词嵌入 的映射矩阵 W_1。
与生成字典时候求得的映射矩阵有什么不同?

在UBWE,通过转换矩阵将源词嵌入映射到目标词嵌入。借鉴此方法,我们使用相反的方向引进了一个转换矩阵。生成器估算为:
在这里插入图片描述
其中,enc_x为L1编码器词嵌入,dec_y为相应的L2解码器词嵌入,W1为将enc_x的嵌入空间投影到dec_y的嵌入空间的变换矩阵。鉴别器D_1是一个多层感知器,它表示单词嵌入来自于这种语言的概率。它被训练来区分词嵌入W1enc_x和dec_y属于哪种语言。W1则使W1enc_x和dec_y越来越相似来迷惑鉴别器D_1。也就是说,我们训练D1使其在原始词嵌入(解码器词嵌入吧?)和G1样本之间以最大的概率选择准确的语言。生成器G1被训练成最小化log(1−D_1(G1(enc_x)))。因此,值函数V (G_1;D_1)优化为:
在这里插入图片描述

发布了52 篇原创文章 · 获赞 7 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/weixin_38937984/article/details/102388490