关键词:automated translation 自动翻译

谷歌传统的机器翻译系统:基于词组/短语的(phrase-based) 统计机器翻译 Statistical Machine Translation (SMT),即 Phrass-Based Machine Translation (PBMT),翻译的是一列长度可能不相同的单词或词组。

PBMT 有许多缺陷 (导致翻译不准确),为了克服这些缺陷,提出了Neural Machine Translation (NMT) 神经机器翻译。

结构:两个 Recurrent Neural Networks (RNNs) 递归神经网络。一个用来处理输入的文本 (encoder network),一个用来生成翻译后的文本 (decoder network)。

优点:end-to-end 直接学习,从输入文本直接映射到关联的输出文本

缺点:主要有三个

  1. 速度慢:对大规模的数据集,训练的速度慢;推断 (即最后翻译)的速度也慢,因为涉及到大量的参数;

  2. 准确率低,不稳健(lack robustness):处理罕见词时比较无能;

  3. 有时候并不翻译所有输入的内容,即,没有完全覆盖 (cover)所有的输入文本。

为了处理这三个缺点,GNMT的方法是:

  1. 为了加快速度:使用了8层的 Long Short-Term Memory (LSTM) RNNs。

  • 层与层之间的 residual connection 残差相关是为了促进梯度流 (encourage gradient flow)[?不是很清楚,可能加快梯度下降的速度];

  • decoder network 的最高层与 encoder network 的最底层之间的 attention connection 是为了并行计算 (parallelism),从而减少训练的时间;

  • 使用了低精度计算,以减少推断时间,即增加了翻译速度;并且用 Google 的 Tensor Processing Unit (TPU) 张量处理单元进行加速。

   2. 为了改进对罕见词的处理,在输入和输出时都采用了 wordpieces 系统。

   3. 长度正则化过程 length normalization procedure 来处理 decoding 时,不同长度的假设之间的比较问题。coverage penalty 惩罚项,能够促使模型翻译所有的输入内容。