本文总结了最近发表的论文「神经机器翻译的六大挑战(Six Challenges for Neural Machine Translation)」,并希望读者能看到神经机器翻译的不足和未来的发展方向。
- 该论文论述的神经机器翻译(NMT)六大挑战:领域误匹配、训练数据的总量、生僻词、长句子、词对齐和束搜索(beam search)。
- Nematus 和 Moses 都是使用 WMT 和 OPUS 数据集训练 NMT 和 SMT 系统,它们使用了 50K 子词(BPE)词汇。
- 考虑了两个语言对:英语-西班牙语和德语-英语。
挑战一:领域误匹配(Domain Mismatch)
单词表达为不同风格时会有不同的译文和意义。
5 个不同的德语-英语 统计机器翻译(SMT)和 神经机器翻译(NMT)系统使用了不同的语料库单独训练,即 OPUS 中的法律、医疗、IT、可兰经、字幕,然后再在所有 OPUS 语料库中训练一个新系统。
绿色为 NMT,蓝色为 SMT
在对应领域中,NMT 和 SMT 系统效果差不多,但在领域外 NMT 几乎在所有案例中都要比 SMT 表现更差(如 NMT 和 SMT 在医疗训练集/法律测试集中获得 3.9 vs 10.2 BLEU)。
挑战二:训练数据的总量
增加训练数据的总量能得到更好的结果。
在全部 WMT13 (385M 词) 上的英语-西班牙语系统,我们分区以获得学习曲线。对于 SMT 来说,语言模型在每个分区的西班牙语部分中训练。我们还提供了 SMT 和大型语言模型(LM)的对比。
NMT 表现出一个更陡峭的学习曲线,其从并不好的结果开始(对于有 0.4M 词量的第一分区为 1.6 和 16.4 BLEU),比 SMT 优于 1 BLEU(24M 词量),NMT 甚至在整个数据集上要比带大型 LM 的 SMT 更优秀(31.1 / 28.4 / 30.4 BLEU分别对应于 NMT、SMT 和 SMT+BigLM)
NMT 和 SMT 学习曲线的对比是很明显的:NMT 不能在语料库少于百万级词量的情况下顺利进行训练。
挑战三:生僻词
传统观点表示 NMT 在生僻词上表现得特别差。
测试这个挑战的 NMT 和 SMT 系统在德语-英语测试集上都实现了案例敏感的(case-sensitive)34.5 BLEU(34.5 BLEU 是在 NMT,且束大小(beam size)为 1 的情况下获得的)。
NMT 系统(至少是那些使用字节对编码的系统)要比 SMT 系统在极低频词上表现得更好。字节对编码(Byte-pair encoding)有时对允许成功翻译生僻词汇是足够的,即使字节对编码并不需要在形态学边界上拆分词。
SMT 和 NMT 系统实际上都对训练语料库中单次观察到的词汇表现很差,甚至比未观察到的词还要表现差。
挑战四:长句子
注意力机制(attention mechanism)拯救了 NMT 正确翻译长序列的能力,但到底有多好?
这一部分的系统和数据与挑战二中用的是一样的,但它用来翻译基于在子词(subwords)中的原句子长度的新测试集。
挑战五:词对齐
注意力机制是合适的词对齐方法吗?
词对齐(word alignment)的概念在 SMT 和 NMT 中是非常不同的。我们对注意力向量(attention vectors/软对齐矩阵)的序列和使用 fast-align 获得的词对齐进行比较。
注意力状态(attention states)和 fast-align 对齐点除了德语-英语或多或少都有点相关性。
挑战六:束搜索
为了增大束参数(beam parameter)常常需要回报递减(diminishing returns),这些分数的增加通常预示着更大的射束。
增加束尺寸并没有持续地改善翻译质量。最优的束尺寸从 4(捷克语到英语)到大约 30(英语到罗马尼亚语)不等。质量降低的主要原因是射束越宽,翻译的长度越短。
总结
最后虽然神经机器翻译有这些困难,当我们不能否认的是它十分高效。并且神经机器翻译仍然已经克服了大量的挑战,最显著的是 NMT 在领域外和低资源条件下的翻译十分出色。
论文地址:https://arxiv.org/pdf/1706.03872.pdf
摘要:我们探索了神经机器翻译的六大挑战:领域误匹配、训练数据的总量、生僻单词、长句子、词对齐和束搜索(beam search)。我们同样展示了基于短语统计机器翻译质量的不足和改进之处。