回顾Google神经网络机器翻译上线历程 (回顾工作历程经典句子)

雷锋网按:本文作者陈村,剑桥大学自然语言处理(NLP)组, 现为机器学习语义分析工程师。

回顾Google神经网络机器翻译上线历程 | 深度

Google Translate作为久负盛名的机器翻译产品,推出10年以来,支持103种语言,一直作为业界的标杆。

而在前不久,Google官方对翻译进行一次脱胎换骨的升级——将全产品线的翻译算法换成了基于神经网络的机器翻译系统(Nueural Machine Translation, )。从Google官方发表的博文[1]和技术报告[2]中,我们有机会一窥究竟,这个全新的系统到底有什么神奇的地方?笔者借这篇文章,帮大家梳理一下机器翻译的发展历程,以及Google这次新系统的一些亮点。

机器翻译,即把某一种源语言(比如英文)翻译到最恰当的目标语言(比如中文)。

还在几年前,机器翻译界的主流方法都是Phrased-Based Machine Translation (PBMT),Google翻译使用的也是基于这个框架的算法。所谓Phrased-based,即翻译的最小单位由任意连续的词(Word)组合成为的词组(Phrase),比如下图中的“北风呼啸”。

PBMT是怎么把一句英文翻译成中文的呢?

回顾Google神经网络机器翻译上线历程 | 深度

Statistical machine translation. ACM Computing Surveys, 40(3), 1–49.

传统的PBMT的方法,一直被称为NLP(Natural Language Processing,自然语言处理)领域的终极任务之一。 因为整个翻译过程中,需要依次调用其他各种更底层的NLP算法,比如中文分词、词性标注、句法结构等等,最终才能生成正确的翻译。 这样像流水线一样的翻译方法,一环套一环,中间任意一个环节有了错误,这样的错误会一直传播下去(error propagation),导致最终的结果出错。

因此,即使单个系统准确率可以高达95%,但是整个翻译流程走下来,最终累积的错误可能就不可接受了。

深度学习这几年火了之后,机器翻译一直是深度学习在NLP领域里成果最为卓越的方向之一。 深度神经网络提倡的是end-to-end learning ,即跳过中间各种子NLP步骤,用深层的网络结构去直接学习拟合源语言到目标语言的概率。

2014年,Cho et. al [3]和Sutskever et al. [4] 提出了Encoder-Decoder架构的神经网络机器翻译系统。如下图所示:

回顾Google神经网络机器翻译上线历程 | 深度

NMT这样的过程直接学习源语言到目标语言,省去了训练一大堆复杂NLP子系统的依赖,依靠大量的训练数据(平行语聊库,比如同一本书的中文和英文版本),直接让深度神经网络去学习拟合。熟悉深度学习的朋友可能会意识到,这样的方法一个极大的优势就是 省去了很多人工特征选择和调参的步骤 。听说前两年,有个做神经网络图像处理的教授,在不太了解NLP的基础上,硬生生地搭建了一套可以匹敌传统PBMT的机器翻译系统,后者可是十几年来多少奋战在第一线的NLP同志一砖一瓦垒起来的啊。而且,相比于传统PBMT一个词组一个词组的独立翻译,NMT这样end-to-end翻译出来的语言更加自然流畅。

2015年,Yoshua Bengio团队进一步,加入了Attention的概念。稍微区别于上面描述的Encoder-Decoder方法,基于Attention的Decoder逻辑在从隐层h中读取信息输出的时候,会根据现在正在翻译的是哪个词,自动调整对隐层的读入权重。即翻译每个词的时候,会更加有侧重点,这样也模拟了传统翻译中词组对词组的对应翻译的过程。Attention模块其实也就是一个小型神经网络,嵌入在Encoder-decoder之间的,跟着整个神经网络训练的时候一起优化训练出来的。

Bengio团队的这个工作也奠定了后序很多NMT商业系统的基础,也包括Google这次发布的GNMT。

Google这次在算法上、尤其是工程上对学术界的NMT方法提出了多项改进,才促成了这次Google NMT系统的上线。

学术上的NMT虽然取得了丰硕的成果,但在实际的产品中NMT的效果却比不上PBMT。究其原因Google在技术报告[2]中总结了三点:

1、训练和预测的速度太慢。

要获得更好的模拟效果,就要用更深层的神经网络来拟合参数(下面会提到,GNMT用了8层的Stack LSTM来做Encoder)。这么复杂的神经网络在预测的时候就要耗费大量的资源,远远慢于PBMT的系统。并且在训练的时候拟合这么大规模的预料,可能要很久很久才能训练一次,这样不利于快速迭代改进调整模型参数。

2、NMT在处理不常见的词语的时候比较薄弱。

比如一些数字、或者专有名词。在传统PBMT系统中,可以简单地把这些词原封不动的copy到翻译句子中;但是在NMT中,这样的操作就无法有效的进行。

3、有时候NMT无法对输入源句子的所有部分进行翻译,这样会造成很奇怪的结果。

Google NMT的主要神经网络架构图如下:

回顾Google神经网络机器翻译上线历程 | 深度

仔细看,其实还是带Attenion的Encoder-Decoder逻辑。Encoder是由8层LSTM组成,最下面两层是一个 双向LSTM ,可以从前到后以及从后往前理解一遍输入的源语言输入。中间的蓝色模块就是 Attention模块 ,负责对Encoder的逻辑进行加权平均输出到Decoder层。 Decoder模块 也是一个8层的LSTM,最终连接到Softmax层,一个词一个词输出最终的目标语言词语的概率分布。

算法上,论文中还提到了一些创新点。包括引入Wordpiece来对单词进行更细粒度的建模,来解决上面提到的不常见词语的问题;以及在Decoding结束之后,搜索最佳输出序列的时候,引入coverage penalty的概念,来鼓励Decoder输出更加完整的翻译句子,以解决有时候NMT有时候无法完整的翻译整句的情况。

工程上,报告里面着重谈到了几个 性能优化 的重点:

8层的LSTM堆叠起来,大大增加了神经网络的表达能力,在海量的数据下可以获得更好的模型效果。不过这样的堆叠会直接导致模型太庞大不可训练,在梯度反向传播的时候,很容易出现梯度弥散或梯度爆炸的问题。过去的研究证明[5],Residual Connection的方式,直接去学习残差可能会带来更好的效果,避免了深度网络中反向传播中出现的梯度反向传播可能会发生的问题。在上面的Google NMT架构图中,从倒数第三层开始都会引入Residual Connection。

与此同时,在工程上Google也进行了非常多的优化,来减少训练和实时翻译时候的延迟问题。比如训练数据的时候,数据会分成n等份,交给不同的GPU去异步训练,然后再汇总到统一的参数服务器;同时,Encoder和Decoder的不同层的LSTM会在不同的GPU上运行,因为更上一层的LSTM不必等到下一层的神经网络完全计算完毕再开始工作;即使对于最后的Softmax输出层,如果最后输出词的维度太大,也会划分到不同的GPU上并行处理。可谓不放过丝毫并行的机会。

底层基础计算平台的支持。 Google NMT采用了自家的Tensorflow深度学习框架,并运行在Google专门为深度学习打造的TPU(Tensor Processing Unit)上,当年的AlphaGo也是由TPU提供支持。在对于模型参数的计算上,也大量应用了Quantized计算的技术:

从软件框架到定制硬件,相互配合,追求最极致的性能。在这篇报告里,有着长长的作者列表,最后赫然列着Google工程架构大神Jeffrey Dean的名字,他是当年一手创造了Map Reduce、Big Table等产品的Google奠基者之一。

Google这次的论文,基本框架仍然是带Attention模块的Encoder-Decoder。而且国内厂商,比如百度和搜狗,也发布了类似的神经网络机器翻译系统。百度早在去年,就发布“工业界第一款NMT系统”。不过,Google毕竟是机器翻译界的标杆,这次披露的论文也揭示了很多他们为了大规模商业化做出的努力,因此在业界引起了不小的震动。

注: [1] A Neural Network for Machine Translation, at Production Scale

[2]Wu, Y., Schuster, M., Chen, Z., Le, Q. V., Norouzi, M., Macherey, W., et al. (2016, September 26). Google's Neural Machine Translation System: Bridging the Gap between Human and Machine Translation.

[3]Cho, K., van Merrienboer, B., Gulcehre, C., Bougares, F., Schwenk, H., and Bengio, Y. (2014a). Learning phrase representations using RNN encoder-decoder for statistical machine translation. In Proceedings of the Empiricial Methods in Natural Language Processing (EMNLP 2014).

[4]Sutskever, I., Vinyals, O., and Le, Q. (2014). Sequence to sequence learning with neural Networks. In Advances in Neural Information Processing Systems (NIPS 2014).

[5]He, K., Zhang, X., Ren, S., & Sun, J. (1512). Deep residual learning for image recognition. arXiv preprint (2015).

原创文章,未经授权禁止转载。详情见 转载须知 。

回顾Google神经网络机器翻译上线历程 | 深度

全局中部横幅
JSON和GET请求字符串互转

实现JSON转GET请求,GET请求转JSON,很实用的小工具

CCTV

提供CCTV5+在线直播及电视节目表预告等服务,是中央电视台的第二个体育频道,频道每天24小时以全高清的方式进行开路播出。频道内容主要包括:赛事直播、录像和集锦。

校园集市

校园集市官方网站,轻量级校园社区,百万+活跃用户。以便捷的信息交流、可靠的用户沟通,很快在全国各高校风靡起来~

印章合同数字化风控管理

江苏群杰物联科技有限公司专注数字化风控管理,推出包括群杰智能章筒、智能印控台、智能盖章机、智能印章柜、智能印章管理平台在内的印章合同智能化管理产品及解决方案。目前群杰已服务超3500家客户,服务范围涵盖建筑、地产、金融、制造、政务等众多行业。

鸿雀咨询

鸿雀(北京)咨询有限公司是一家从事互联网资质审批代理服务咨询公司,办理全国icp经营许可证、经营性icp资质备案申请以及企业增值电信业务经营许可证变更、续期、注销、年报等业务服务,咨询热线:400-110-0723。

天宇游戏

天宇游戏为手游玩家提供好玩的手机游戏下载以及手机折扣游戏下载!天宇游戏天宇互动app有热门的手机游戏,还有丰富的手游礼包激活码,手游攻略、视频、活动资讯等内容!

短网址

985.so为您提供:,短网址程序,短网址服务,短网址转换,短网址API接口,批量生成短链接,短网址生成,压缩所有网址包括图片、flash、mp3、rar等所有互联网地址,专业的网址缩短网站!。

零度摄影

我们专注于商品摄影与平面设计,以镜头捕捉商品精髓,用创意诠释品牌魅力.以贴合品牌定位的设计风格,为商品赋予强烈视觉冲击力,有效提升品牌辨识度与市场吸引力,助力您的商品在竞争激烈的市场中绽放异彩,开启商业成功之路!

商盟网

商盟网是专为各大中小企业免费发布信息、免费推广的B2B网站平台

网站首页

广州市聚凯机械设备有限公司

高频焊机

中山市豪宇机电有限公司专业生产高频焊机、高频钎焊机、手持式高频焊机、超音频退火机、超高频淬火机、中频熔炼炉、中频锻造炉等,技术工艺精湛、价格实惠,欢迎广大客户朋友前来参观选购。联系电话:13680141789杨小姐。

全局底部横幅