写点什么

打破语言壁垒:谷歌推 M4 翻译模型,训练参数多达 500 亿,支持 103 种语言

2019 年 10 月 16 日

打破语言壁垒:谷歌推M4翻译模型,训练参数多达500亿,支持103种语言


据《圣经·创世纪》第十一章记载,巴别塔是由当时人类联合兴建,希望能够借其通往天堂的通天塔。为阻止人类的计划,上帝让人类说不同的语言,使人类之间不能相互沟通,因此人类计划最后以失败告终。终结人类语言的壁垒,一直是科学家们的目标,时光之轮转到 21 世纪的今天,曙光仿佛就在眼前。近期,Google AI 分享了他们在大规模多语言、大规模神经机器翻译方面的相关探索。所以,人类真的能够建造巴别塔吗?答案是:也许可以。


“也许翻译的方式可能是从每种语言沉降到人类交流的共同基础,即真实的但尚未被发现的通用语言,然后再以任何方便的特定方式重新出现。”


——Warren Weaver,1949 年


在过去的几年里,由于神经机器翻译(Neural Machine Translation,NMT)的发展,机器翻译(Machine Translation,MT)系统的质量出现了飞跃,打破了世界各地的语言障碍。然而,神经机器翻译的成功,很大程度上要归功于大量监督学习的训练数据。但是,对于那些数据稀少、甚至没有数据的语言,又该怎么办呢?多语言神经机器翻译是一种潜在的补救措施,它带有归纳性的偏见,认为“一种语言的学习信号应该有利于翻译到其他语言的质量。”


多语言机器翻译使用单一翻译模型来处理多种语言。数据稀缺语言的多语言训练的成功,已经在自动语音识别文本转语音系统,以及之前的多语言翻译的研究 [123] 中得到证明。我们先前研究了在控制每种语言的训练数据量的同时,增加单个神经网络可学习的语言数量的效果。但是,一旦所有的约束都被解除,将会发生什么呢?尽管不同语言在数据大小、脚本、复杂性和域方面存在巨大的差异,但我们能不能利用所有可用的数据来训练一个单一的模型呢?


Massively Multilingual Neural Machine Translation in the Wild: Findings and Challenges (《大规模多语言神经机器翻译现状:发现与挑战》以及后续的论文 [4567],我们通过对超过 250 亿个句子对(从 100 多种语言与英语的双向语言对)上使用 500 多亿个参数,对单个神经机器翻译模型进行训练,从而突破了多语言神经机器翻译研究的极限。其结果是一种大规模多语言、大规模神经机器翻译(Massively Multilingual, Massive Neural Machine Translation,M4)的方法,在低资源语言和高资源语言上均表现出巨大的质量飞跃,并且可以很容易地适应各个域 / 语言,同时在跨语言下游移转任务上表现出极高的效率。


大规模多语言机器翻译

尽管跨语言对的数据倾斜(Data Skew)在神经机器翻译中是一个巨大的挑战,但它也为研究语言移转创造了一个理想的场景,在这个场景中,通过一种语言的训练获得的洞见可以应用于其他语言的翻译。在分布的一段,有像法语、德语和西班牙语这样的高资源语言,它们有数十亿个并行的例子,而在另一端,像约鲁巴语(Yoruba,非洲西部的一种语言)、信德语(Sindhi,巴基斯坦信德省和印度西部的一种语言)和夏威夷语这种地资源语言的监督学习数据,仅限于几万个。



在所有语言对上的数据分布(以对数标度)和双语基线的相对翻译质量(BLEU 得分)对这些特定语言对进行训练。


一旦使用所有可用数据(来自 103 种语言的超过 250 亿个样本)进行训练,我们就会观察到向低资源语言的强烈正向移转,从而使分布尾部的 30 多种语言的翻译质量平均提高了 5 个 BLEU 点。这种影响已为人所知,但令人惊讶的是,考虑到这种比较在双语基线(即仅在特定语言对上进行训练的模型)和具有类似于单一双语模型的表示能力之间进行的,这种比较结果令人鼓舞。这一发现暗示了大规模多语言模型在泛化方面是有效的,并且能够捕获大量语言之间的代表性相似性。



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


在 EMNLP 的 19 篇论文 [5] 中,我们比较了不同语言之间的多语言模型的表示方式。我们发现,多语言模型无需外部约束即可学习语言相似的语言的共享表示,从而验证了利用这些相似性长期直觉和经验结果。在 Evaluating the Cross-Lingual Effectiveness of Massively Multilingual Neural Machine Translation(《大规模多语言神经机器翻译跨语言效果评估》)[6] 中,我们进一步证明了这些学习表征在下游任务的跨语言移转中的有效性。



基于表征相似性的所有 103 种语言编码表征的聚类可视化。语言按其语系进行颜色编码。


译注:语言移转(Language Transfer),指的是说话者或写作者在使用第二语言时,也运用了他们母语知识的一种现象。标准的定义为一种语言对学习另一种语言的影响。当两种语言的语言结构或单位相当类似时,语言移转的现象就看有可能发生。语言移转包括正向移转(Positive Transfer)和负向移转(Negative Transfer)。正向移转是发生在语言移转时,说话者仍说出正确的目标语的现象。而负向移转是发生在说话者将和目标语结构不同的一个语言套用在目标语里。在对比分析的理论里,两个语言的差异越大,负向移转的情况就越多。


构建大规模神经网络

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


为了扩大神经网络的容量,可以进行许多设计的选择,包括增加更多的层或使隐藏的表示更宽。我们继续研究训练更深层次的翻译网络,利用 GPipe [4] 训练了 128 层 Transformers,参数超过了 60 亿。增加模型容量可以显著提高所有语言的性能,平均提高 5 个 BLEU 点。我们还研究了超深网络的其他特性,包括深度与宽度之间的权衡,可训练性挑战以及将 Transformer 扩展到超过 1500 层、840 亿个参数的设计选择。


虽然扩展深度是增加模型容量的一种方法,但探索可以利用问题的多任务性质的架构是一种非常合理的补充方式。通过使用稀疏门控混合专家层(sparsely-gated mixture of experts)来替换普通的前馈层,对 Transformer 架构进行修改,大幅提升了模型容量,使我们能够成功训练和传递 500 亿个参数,从而进一步提高了整体的翻译质量。



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


使 M4 实用化

为每个单独的语言、域或语言移转任务,用极高的计算成本来训练大型模型是低效的。相反,我们提出了方法 [7],通过使用容量可调层使新模型适应特定的语言或域,而不改变原来的模型,从而使这些模型更加实用。


对未来的展望

到本世纪末,目前使用的 7000 种语言中,至少有一半将不复存在。多语言机器翻译真的能解决这一问题吗?我们将 M4 方法视为服务未来 1000 种语言的垫脚石;从这样的多语言模型开始,我们可以很容易地扩展到新的语言、域和下游任务,即使在秉性数据不可用的情况下也是如此。事实上,道路是曲折的,在通往通用机器翻译的道路上,许多有前途的解决方案似乎都是跨学科的。这使得多语言的神经机器翻译成为机器学习实践者和理论家的一个可信的测试平台,他们对探索多任务学习、元学习、深度网络的训练动态等等感兴趣。我们还有很长的路要走,路漫漫其修远兮,吾将上下而求索。


译注:到本世纪末将有一半语言不复存在,引自《剑桥濒危语言手册》(The Cambridge Handbook of Endangered Languages),Austin、Sallabank 编著。


原文链接:


Exploring Massively Multilingual, Massive Neural Machine Translation


2019 年 10 月 16 日 08:002082
用户头像

发布了 338 篇内容, 共 129.0 次阅读, 收获喜欢 852 次。

关注

评论

发布
暂无评论
发现更多内容

AI解锁无人时代 仍需数据安全保驾护航

CECBC区块链专委会

一文读懂区块链技术如何改变非洲贸易(下)

CECBC区块链专委会

做大做强肉牛产业,生物资产解决方案助力乡村振兴

CECBC区块链专委会

网络攻防学习笔记 Day84

穿过生命散发芬芳

网络攻防 7月日更

阿里专家整理的面试全秘籍,我看了三个月,却入职京东,税前30K

马小轩

Java 程序员 架构 面试

可以使任何人获得管理员权限的Windows 10系统漏洞

H

网络安全 信息安全 漏洞

2021年中总结:Java面试宝典+999道高频真题+32天Java核心技术突击

马小轩

Java 编程 程序员 架构 面试

如何正确的进行网站入侵渗透测试

H

网络安全 信息安全 渗透测试

腾讯三面:哨兵挂了,Redis还能正常工作吗?

Java架构

Java 编程 架构 程序人生 架构师

三流外包程序员,意外获得被各大厂封杀的面试宝典,斩获阿里P7offer

喝酸奶不舔盖

Java 面试 JVM

最新蚂蚁Java岗面经:HashMap+多线程+缓存+中间件(含答案解析)

马小轩

Java 编程 程序员 架构 面试

Spring之 EL表达式

邱学喆

语法规则 Expression ExpressionParser ParserContext EvaluationContext

使用Apache Spark构建可靠的数据湖(九)

数据与智能

spark Data Lake iceberg Hudi

大神万字总结:InnoDB锁类型及其详细分析

Java架构

Java 编程 架构 微服务 架构师

面试官:连多线程问题你都一问三不知,还要我怎么“放水”?

马小轩

Java 编程 程序员 架构 面试

从家里到阿里,学弟求职的一年

程序员鱼皮

Java 数据库 redis 面试 求职

Apache Druid 安装的时候进行 Java 版本校验没有输出

HoneyMoose

靠着 github 上扣下来标星 90.6K 的面试题,成功斩获阿里 p6+offer

Java技术架构

Java 学习 程序员 架构 面试

双非本科,面试两个月成功收获阿里、美团等6个offer,经验分享

互联网架构师小马

Java 面试

亲身体验!阿里中间件/百度/蚂蚁中间件Java岗面试究竟有多难?

马小轩

Java 编程 程序员 架构 面试

盘点:2021年最新、最全、最实用的Java岗面试真题,已收录GitHub

马小轩

Java 编程 程序员 架构 面试

fil近期最新消息?fil能落地吗?fil未来价值多大?

v:IPFS456

fil近期最新消息? fil能落地吗? fil未来价值多大?

2021年WEB全栈开发技术栈

devpoint

Vue 全栈 7 月日更

2021年“金九银十”该如何准备?阿里P8整理出一套Java核心面试题

马小轩

Java 编程 程序员 架构 面试

最经典的黑客入门教程

H

网络安全 信息安全 网络

Vue进阶(四):使用 Vuex + axios 发送请求

华强

Vue axios vuex 七月日更 vue-resources

通证与区块链:前台经济+后台技术

CECBC区块链专委会

那个经常准点下班,到处去参加面试的程序员,又涨薪了

马小轩

Java 编程 程序员 架构 面试

模块三作业

A先生

Vue进阶(七十八):Vue 定时器与 JS 定时器

华强

Vue 定时器 七月日更

阿里巴巴支付宝面试 5 轮暴击,差点扛不住了!但终获 Offer

Java架构

Java 编程 架构 面试 架构师

技术为帆,纵横四海- Lazada技术东南亚探索和成长之旅

技术为帆,纵横四海- Lazada技术东南亚探索和成长之旅

打破语言壁垒:谷歌推M4翻译模型,训练参数多达500亿,支持103种语言-InfoQ