Google 神经机器翻译系统实现 Zero-Shot 翻译

  • Dylan Raithel
  • 尚剑

2017 年 2 月 9 日

话题:AI

Google 去年晚些时候宣布他们已经将机器学习应用到谷歌翻译服务中,得到的神经网络模型可以实现"Zero-Shot"翻译。

Zero-Shot 翻译是指对不存在显式训练或者映射的语言对之间短语的翻译。当使用中介语言作为路径对以前未进行直接互译训练的语言或短语进行翻译时,经过训练的神经网络得到的效果让研究人员也很惊讶。研究人员指出,新系统的动态数据可视化为不同语言间的共享语义表示或者中介语言提供了早期证据。这也是更高效的翻译程序全部由神经网络自己产生的证据。

过去 10 年间,谷歌翻译已经从几种语言发展为支持 103 种语言,每天翻译超过 140 亿单词。应用神经网络来提高翻译的准确度和效率的动机是神经网络在很多其他领域的成功。

这一发现的关键问题是,是否可以在这样一些语言对之间进行翻译:它们之前从未配对,但是具有一些辅助路径进行连接,例如英语到韩语,韩语到日语,然后从英语推测日语。

谷歌团队声称,他们可以在不改变核心翻译模型的情况下实现该模型,其中包括编码器、解码器和注意力(Attention)。GNMT(Google Neural Machine Translation System,谷歌神经翻译系统)的一些细节表明它是使用双向递归神经网络来对传递到解码器的单词进行编码以预测目标语言单词,但是它与最近发表的论文中的 Zero-Shot 翻译模型的相似点和不同点还不明确。Google 声称:

... 与 Google 的基于短语的翻译系统相比,GNMT 的翻译错误平均减少了 60%... 在 WMT'14 英语到法语和英语到德语的基准测试中,GNMT 得到了与目前最好成绩相近的结果。通过对一组孤立的简单句子进行人为并行评估,与 Google 的基于短语的翻译系统相比,它将翻译错误平均减少了 60%。

输入单词用目标语言标记,而不是源语言。Google 注意到:

不指定源语言具有潜在的缺点,也就是在翻译来自不同源语言具有相同拼写但不同含义的单词时,可能产生歧义,但是优点是其更加简单,并且我们可以通过代码切换来处理输入。我们发现,在几乎所有的情况下,上下文可以提供足够的语言信息来生成正确的翻译。

Zero-shot 网络:

... 其中包括由 8 个编码器层和 8 个解码器层组成的深度LSTM网络,通过注意力(Attention)和残差(Residual)连接... 对从未进行直接互译训练的语言对执行隐式连接,这说明迁移学习和 Zero-Shot 翻译对神经翻译来说是可能的。

虽然翻译质量的改善已经取得立竿见影的效果,但可拓展性依然是今后持续努力的重点,其目标是支持所有的 103 种语言。GNMT 系统的公开可用的产品版本已经支持最近添加的 16 种语言中的 10 种。

阅读英文原文:Zero-Shot Translation with Google Neural Machine Translation System


感谢冬雨对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们。

AI