专栏首页新智元一个模型翻译103 种语言!谷歌500亿参数M4模型突破多语言神经翻译极限

一个模型翻译103 种语言!谷歌500亿参数M4模型突破多语言神经翻译极限


新智元报道

来源:GoogleAI

编辑:肖琴

【新智元导读】谷歌最新研究提出一种用于大规模多语言的大规模神经翻译方法,针对100+种语言,超过500亿参数训练一个NMT模型,突破了多语言NMT研究的极限。>>> 如何看待这一突破,来新智元 AI 朋友圈和AI大咖一起讨论吧~

在过去的几年里,机器翻译(MT)系统的质量有了巨大的进步,神经机器翻译(NMT)的发展打破了世界各地的语言障碍。

然而,NMT的成功很大程度上归功于大量的监督训练数据。但是,对于那些缺乏数据、甚至没有数据的语言呢?多语言NMT(Multilingual NMT)是一种潜在的补救方法,它带有一种归纳性偏见,即“从一种语言学习的信号应该有利于提高翻译到其他语言的质量”。

多语言机器翻译使用一个翻译模型来处理多种语言。针对数据匮乏的语言的多语言训练的成功已经证明这种方法用于自动语音识别和文本语音转换系统的有效性,此前的许多研究也证明了它在多语言翻译中的有效性。

我们之前研究了在单个神经网络中扩大可学习语言的数量,同时控制每种语言的训练数据量的影响。但是一旦所有的约束都被移除,会发生什么呢?尽管不同语言之间在数据大小、文字、复杂性和域等方面存在巨大差异,但我们能否使用所有可用的数据来训练一个单一的模型呢?

谷歌在论文“大规模多语言神经机器翻译:发现和挑战”及后续论文中,通过在覆盖100+种语言的超过250亿句子对、超过500亿参数上训练一个NMT模型,突破了多语言NMT研究的极限

论文地址:

https://arxiv.org/pdf/1907.05019.pdf

其结果是一种用于大规模多语言的大规模神经翻译方法(massively multilingual, massive neural machine translation,简称M4),该方法在低资源语言和高资源语言上都表现出了巨大的质量提升,可以轻松适应各个领域/语言,同时在跨语言下游迁移任务上表现出很高的效率。

如何评价谷歌的这一神经机器翻译突破?欢迎来新智元AI朋友圈参与讨论~

大规模多语言机器翻译

虽然对于NMT来说,跨语言对的数据偏斜是一个巨大的挑战,但它也为研究迁移(transfer)创造了一个理想的场景,在这个场景中,通过对一种语言的训练获得的见解可以应用于其他语言的翻译。在分布的一端,有像法语、德语和西班牙语这样的高资源语言,它们有数十亿个并行示例,而在另一端,像约鲁巴语、信德语和夏威夷语这样的低资源语言的监督数据只有几万个。

在所有语言对上的数据分布和在这些特定语言对上训练的双语baseline的相对翻译质量(BLEU分数)。

当使用所有可用数据(来自103种语言的250亿+个示例)进行训练,我们观察到向低资源语言的强有力的正迁移(positive transfer),这极大地提高了分布末端的30多种语言的翻译质量,平均提高了5个点。

考虑比较是在双语基线(即仅在特定语言对上训练的模型)和具有与单个双语模型相似的表示能力的单个多语言模型之间进行的,翻译质量提高可以预知,但结果令人鼓舞。这一发现表明,大规模多语言模型在泛化方面很有效,并且能够捕获大量语言之间的代表性相似性

单个大规模多语言模型与针对103种语言对中的每一种都进行训练的双语基线模型的翻译质量比较。

谷歌在EMNLP 19的论文“Investigating Multilingual NMT Representations at Scale”中,比较了不同语言的多语言模型的表示形式。研究人员发现,多语言模型无需外部约束即可学习相似语言的共享表示,从而验证了利用这些相似性的长期直觉和经验结果。

在论文“Evaluating the Cross-Lingual Effectiveness of Massively Multilingual Neural Machine Translation”中,谷歌进一步证明了这些学习表示在下游任务的跨语言迁移中的有效性。

基于表示相似性,所有103种语言编码表示聚类的可视化。

构建大规模神经网络

随着模型中低资源语言数量的增加,高资源语言翻译的质量开始下降。这种回归是在多任务设置中被发现的,这是由于任务间的竞争和转移的单向性(即,从高资源到低资源)引起的。在研究更好的学习和容量控制算法来减少这种负迁移的同时,我们还通过增加模型参数的数量来扩大神经网络的表示能力,从而提高高资源语言的翻译质量。

为了扩大神经网络的容量,可以做出许多设计选择,包括添加更多的层或使隐藏的表示更宽。我们继续研究训练更深的网络,我们使用GPipe来训练超过60亿参数的128层Transformers模型。增加模型容量可以显著提高所有语言的性能,平均提高了5个点。我们还研究了非常深的网络的其他特性,包括depth-width权衡、可训练性挑战以及将Transformer扩展到1500层以上、840亿个参数。

虽然扩大深度是增加模型容量的一种方法,但是探索能够利用问题的多任务性质的架构是一个非常可行的补充方法。通过对Transformer架构进行修改,我们大幅度地扩展了模型容量,使我们能够成功训练和传递500亿个参数,从而进一步提高了整体的翻译质量。

与103个单独的双语基线模型相比,当我们增加容量(参数数量)时,单个大规模多语言模型的翻译质量提高了。

大规模多语言 NMT方法:M4变得实用

对于每种语言,领域或任务,以极高的计算成本来训练大型模型是很低效的。相反,我们提出的大规模多语言 NMT方法,通过使用容量可调的层使新模型适应特定的语言或领域,而不改变原来的模型,从而使这些模型更加实用。

到本世纪末,全世界当前使用的7000种语言中至少有一半将不复存在。多语言机器翻译能帮上忙吗?我们将M4方法视为服务下1000种语言的垫脚石。从这种多语言模型开始,可以很容易地扩展到新的语言、域和下游任务,即使并行数据不可用。

确实,通往通用机器翻译的道路很艰难,许多有前途的解决方案似乎都是跨学科的。这使得多语言NMT成为机器学习实践者和理论家的一个测试平台,在上面探索多任务学习、元学习、深度网络的训练动态等等。我们还有很长的路要走。

本文分享自微信公众号 - 新智元(AI_era)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-10-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【NLP必备】将模型应用到数据较少的语言上:跨语种词嵌入模型梳理

    【新智元导读】不同语言的数据量不同。一些数据较少的语言,嵌入模型的训练会遇到困难,而跨语言嵌入模型则允许研究者将来自不同语言的词汇投影到共享嵌入空间中,使我们能...

    新智元
  • 谷歌双语助理来了!中英夹杂也不怕,递归神经网络和随机森林显神威

    多语家庭正变得越来越普遍,有一些研究发现多语人口已经超过单语人口,而且这个数字还将继续增长。随着多语用户数量的不断增加,开发能够同时支持多种语言的产品比以往任何...

    新智元
  • 谷歌提出多语言BERT模型:可为109种语言生成与语言无关的跨语言句子嵌入

    近日,谷歌AI研究人员提出了一种称为LaBSE的多语言BERT嵌入模型,该模型可为109种语言生成与语言无关的跨语言句子嵌入。

    新智元
  • 500亿参数,支持103种语言:谷歌推出「全球文字翻译」模型

    在过去的几年里,由于神经机器翻译(NMT)的发展,机器翻译(MT)系统的质量得到了显著提升,打破了世界各地的语言障碍。但 NMT 的成功很大程度上要归功于有监督...

    用户2769421
  • 500亿参数,支持103种语言:谷歌推出「全球文字翻译」模型

    在过去的几年里,由于神经机器翻译(NMT)的发展,机器翻译(MT)系统的质量得到了显著提升,打破了世界各地的语言障碍。但 NMT 的成功很大程度上要归功于有监督...

    机器之心
  • 如何用三个月搞定C语言

    C语言上个世纪七十年代诞生至今,已经度过了40多个春秋,在此期间经历多次的版本的更迭,目前市面上绝大部分语言的底层实现都是基于C语言,随着C语言之父的逝去,C语...

    程序员互动联盟
  • 经过重重筛选,我们为什么要选择kotlin ?

    内容来源:2017 年 11 月 19 日,上线了联合创始人郭达峰在“2017 谷歌开发者节北京站”上进行的《Kotlin as Your Next Langu...

    IT大咖说
  • 要想精通C语言,必须先学习汇编吗?

    编程语言里面很少有人直接说出精通两个字,特别是一些入行好多年的程序员,从语法来讲C语言相对来讲入门还是比较容易,在高级语言还没有完全展开的年代,C语言算入门比较...

    程序员互动联盟
  • 要想精通C语言,必须先学习汇编吗?

    编程语言里面很少有人直接说出精通两个字,特别是一些入行好多年的程序员,从语法来讲C语言相对来讲入门还是比较容易,在高级语言还没有完全展开的年代,C语言算入门比较...

    诸葛青云
  • C语言能干什么?

    C语言几乎是所有语言的实现基础,所以不存在做不了的事情,只是相对来说谁做更合适,编写游戏和软件都不是问题。 为何C语言如此强大? 1、C语言是许多高级计算机语言...

    程序员互动联盟

扫码关注云+社区

领取腾讯云代金券