本文共 3538 字,大约阅读时间需要 11 分钟。
针对神经机器翻译翻译过度和翻译不足的问题,Tu et al. (2017) 的论文《Neural Machine Translation with Reconstruction》提出了一种“编码器-解码器-重构器框架”,其使用了回译来提升翻译准确度。日本首都大学东京的研究者在英语-日语翻译任务上实现了该框架。机器之心技术分析师对该实现的论文进行了解读和梳理。
论文链接:https://arxiv.org/pdf/1706.08198.pdf
论文作者:Yukio Matsumura, Takayu kiSato, Mamoru Komachi
神经机器翻译(NMT)近段时间发展迅猛,已经在传统的统计机器翻译基础上实现了很大的提升,并且已经在很多语言内的翻译任务上实现了当前最佳表现。
但是,NMT 翻译过度和翻译不足的问题都存在,也就是说,有时候它可能会重复翻译某些词,有时候它可能会遗漏某些词。这是因为 NMT 模型通常可被看作是黑箱,而我们并不完全清楚它们背后的机制,即它们将源句转换成目标句的方式。
针对这一问题,Tu et al. (2017) 为 NMT 提出了一种“编码器-解码器-重构器框架”,其使用了回译(back translation)来提升翻译准确度。这篇论文是该框架在英语-日语翻译任务上的实现。
此外,这篇论文还指出,除非顺译(forward translation)模型的训练方式类似传统的基于注意的 NMT(也被称为预训练),否则该框架不能实现让人满意的表现。
下面展示了 Bahdanau et al. (2015) 提出的传统的基于注意的 NMT 模型。
图 1:基于注意的 NMT
其中编码器将源句转换成固定长度的向量 C,并将其作为语境向量(context vector)。在每个时间步骤 t 都使用一个双向 RNN,那么该编码器的隐藏状态 h_t 就可表示为:
其中前向状态和反向状态可分别按以下方式计算:
和
r 和 r’ 都是非线性函数。那么语境向量 C 就变成:
其中 q 也是一个非线性函数。
在经典的编码器-解码器模型中,编码器计算得到的语境向量 C 会被解码器直接“解码”成目标句。但因为解码器必须处理整个向量,所以之前的信息可能会被之后处理的信息覆盖。因此,语境向量越长,模型就越有可能丢失重要信息。这就是引入基于注意的机制的原因,这能让模型在每个步骤关注语境向量的特定部分以确保信息充分足够。
在每个时间步骤 i,输出词的条件概率可以这样计算:
其中 s_i 是解码器的隐藏状态,计算方式为:
根据这一等式,我们可以看到时间步骤 i 的隐藏状态 s_i 是使用语境向量 c_i 以及前一个时间步骤 i-1 的隐藏状态和目标词计算的。
不同于前文提及的较长的长度固定的向量 C,语境向量 c_i 是编码器的每个隐藏状态 h_j 的加权和,计算方式为:
其中
其中权重矩阵 e_ij 是由一个“对齐模型”生成的,该模型的作用是将位置 j 附近的输入与位置 i 处的输出对齐;而 α 可被理解成是一个“注意分配”向量。
最后,目标函数定义为:
其中 N 是数据的数量,θ 是一个模型参数。
Tu et al. (2017) 为 NMT 提出的编码器-解码器-重构器框架在原来的 NMT 模型上增加了一个新的“重构器”结构。其目的是将解码器架构的隐藏状态翻译回源句,以进行比较并提升翻译准确度。下面描述了这种新结构:
图 2:编码器-解码器-重构器
在每个时间步骤 i,输出的“源词”的条件概率的计算方式为:
隐藏状态 s' 的计算方式与之前的解码过程类似:
注意这里的 c’ 被称为“逆语境向量”,计算方式为:
其中 s 只是解码器的每个隐藏状态(在顺译时的)。
类似地,可以进一步计算 α’:
目标函数定义为:
注意这个优化函数包含两个部分,即顺译部分和回译部分。超参数 λ 指定了顺译和回译之间的权重。
根据这篇论文,顺译部分衡量的是翻译流畅度,而回译部分衡量的是翻译充分性。以这种方式,这种新结构可以增强整体的翻译质量。
这篇论文使用了 2 个英语-日语平行语料库:Asian Scientific Paper Excerpt Corpus(ASPEC)(Nakazawa etal.,2016)和 NTCIR PatentMT Parallel Corpus (Goto et al., 2013)。
实验中所用的 RNN 模型有 512 个隐藏单元、512 个嵌入单元、30000 的词汇量和 64 的批大小。训练平台是 GeForce GTX TITAN X GPU。
基准 NMT 模型是普通的基于注意的 NMT。
注意在这些实验中超参数 λ 设置为 1。
下面给出了一些英语-日语翻译任务的示例。注意“联合训练(jointly-training)”是指没有预训练的编码器-解码器-重构器。
表1:英语-日语翻译的输出示例
表 2 和 3 展示了 BLEU 分数表示的翻译准确度、通过 bootstrap 重采样得到的显著性检验的 p 值(Koehn, 2004)以及在收敛之前的训练时间。
表 2:英语-日语翻译结果
表 3:日语-英语翻译结果
这个结果表明新的编码器-解码器-重构器框架所需的训练时间长于基准 NMT,但在英语-日语翻译中,其在 ASPEC 上的翻译准确度显著提升了 1.01 分,在 NTCIR 上提升了 1.37 分。但其在日语-英语翻译任务上却没有实现这样的提升。此外,联合训练得到的模型的表现甚至比基准模型还差一些。
此外,这篇论文还检查了这种新模型是否能更好地解决上面提到的翻译过度和翻译不足的问题。比如,图 3 表明基准模型无法输出“乱流と粘性の数値的粘性の関係を基に”,而新提出的模型能成功翻译它。图 4 表明基准模型重复翻译了“新生児”和“30歳以上の”,新提出的模型则表现更好。
图 3:示例 1 中的注意层:对翻译不足问题的改进;其中左为基准 NMT,右为编码器-解码器-重构器
图 4:示例 2 中的注意层:对翻译过度问题的改进;其中左为基准 NMT,右为编码器-解码器-重构器
这篇论文在英语-日语翻译任务上分析了新提出的编码器-解码器-重构器框架。结果表明,这种编码器-解码器-重构器能在英语-日语翻译任务上实现显著的 BLEU 分数提升,并且能缓解翻译中重复和遗漏词的问题。此外,通过将其与顺译和回译联合训练的模型进行比较,这篇论文还评估了预训练的重要性。
回译一直都是翻译研究的一种有用方法,也能让人类译者检查他们是否翻译准确。在机器翻译任务中使用这种传统翻译方法是一个相当了不起的思路。
未来,语言学知识和自然语言处理会结合得更加紧密,这可能会成为一种新思路,有助于更好地提升语言处理任务的表现,比如机器翻译,尤其是对于日语这样具有很多“语法模板”(即日语的“文法”)的语言。
转载地址:http://hzhna.baihongyu.com/