图解神经网络机器翻译原理:LSTM、seq2seq到Zero-Shot

2017 年 8 月 6 日 新智元


20万,这是新智元如今达到的用户总数。在飞向智能宇宙的旅程中,感谢每一位和新智元同行的朋友。您的关注和支持是“新智元号”星舰永不枯竭的燃料。

 

20 万,每一位乘客对我们来说都弥足珍贵。我们希望加深对每一位乘客的了解,恳请您对这份问题不多、且不涉及任何隐私的调查问卷给出宝贵的反馈。


新智元正在举行评论赠书活动点击阅读原文投票,并留下你对新智元公众号的建议,赢取《深度学习》免费赠书。

1新智元编译  

来源:blog.statsbot.co

作者:Daniil Korbut

编译:熊笑


【新智元导读】这篇刊登在 blog.statsbot.co 上的博文,通过对 LSTM、BRNN、seq2seq、Zero-Shot Translation 和 BLEU 的简要阐释和图示,深入浅出地讲解了机器学习翻译引擎的工作原理,并解释了谷歌翻译算法的运作方式。



本文试图为您深入浅出地讲解机器学习翻译引擎的工作原理,并解释谷歌翻译算法的运作方式。

 


如今机器翻译系统则使用了不同的方法:它们通过分析大量文本来分配文本中的规则



如果谷歌翻译引擎尝试用较短的句子来翻译,则会因为变量太多而无法进行。理想的状态是教会计算机语法规则,然后让它根据规则翻译句子。可惜并不是这么简单。

 

饱受学习外语之苦的你肯定知道,规则总是有很多例外。当我们尝试为程序描写所有这些规则及其特例以及特例的特例时,翻译的质量就无从保证。


如今机器翻译系统则使用了不同的方法:它们通过分析大量文本来分配文本中的规则。


我们来看看机器翻译这个“黑匣子”里是些什么东西。深度神经网络可以在非常复杂的任务(语音/视觉对象识别)中取得优异结果,但尽管它们具有灵活性,却只能用于输入和目标具有固定维数的任务。


循环神经网络


这就是 LSTMs(Long Short-Term Memory networks)的用武之地了,LSTMs 可以帮助我们无法先验获知的序列。


LSTMs 是一种特殊的循环神经网络(RNN),能够学习长期依赖(long-term dependency)。所有RNN看起来像一连串的重复模块。



因此,LSTM将数据从模块传输到模块,例如,为了生成Ht,我们不仅用Xt,而且用了所有值为X 的以前的输入。要了解有关LSTM的结构和数学模型的更多信息,您可以阅读“了解LSTM网络“。



双向 RNN



下一步是双向循环神经网络(BRNNs)。BRNN 所做的,是将常规RNN 的神经元分成两个方向。一个方向是 positive time,或 forward states。另一个方向是 negative time,或 backward states。这两个状态的输出并不和相反方向状态的输入相连接。



为了理解为什么BRNN 可以简单的RNN效果更好,你可以想象我们有一个9个词的句子,我们想预测第 5 个词。只让它知道前4 个词,和让知道前4个词与最后4 个词——当然,第二种情况下的质量会更好。


sequence to sequence 模型


接下来就可以说说 sequence to sequence 模型了(也称为seq2seq)。基础的seq2seq 模型由两个RNN 组成:处理输入的编码器网络和生成输出的解码器网络。



马上,这个机器翻译器就要诞生了!


但是,还有个问题。谷歌翻译目前支持103种语言,难道我们要为每种语言提供103x102种不同的模型吗?当然,这些模型的质量会因为该语言的普及程度和训练这个网络所需的文件数量而有所不同。更明智的方法,是让一个神经网络以任何语言作为输入并转换成任何语言。


Zero-Shot Translation


这个想法是由谷歌工程师在2016年底实现的。这种神经网络的架构建立在我们刚才说过的seq2seq模型上。


唯一的不同是编码器和解码器之间有 8 层 LSTM-RNN,它们在层之间具有残留连接,并可以在一定程度上做出精度和速度的调整。


这个方法的主要意义在于,现在谷歌算法对于每对语言只使用一个系统,而不是一个庞大的集合。


该系统在输入句子的开头需要一个“token”,它指定了您尝试将短语翻译成的语言。

这提高了翻译质量,甚至可以在系统未见过的两种语言之间进行翻译,这种方法称为Zero-Shot Translation。


BLEU


当我们谈论谷歌翻译算法的改进和更好的结果时,我们如何正确地评估一种翻译比另一种更好?


对于一些常用的句子,我们有专业翻译人员的翻译做参考。


有很多方法部分解决了这个问题,但最流行和最有效的指标是 BLEU (bilingual evaluation understudy)。想象一下,我们有两个机器翻译的备选:


备选 1:Statsbot makes it easy for companies to closely monitordata from various analytical platforms via natural language.


备选 2:Statsbot uses natural language to accurately analyzebusinesses’ metrics from different analytical platforms.



虽然它们具有相同的含义,但质量不同,结构也不同。


我们来看看两个人类翻译的结果:


参考文献 1:Statsbot helps companies closely monitor their data fromdifferent analytical platforms via natural language.


参考文献 2:Statsbot allows companies to carefully monitor data fromvarious analytics platforms by using natural language.


显然,备选 1 更好,与备选 2 相比,它分享了更多的单词和短语。这是 BLEU 方法的核心理念。我们可以将备选的 n-gram 与参考翻译的n-gram 进行比较,并计算匹配数(与其位置无关)。我们仅使用 n-gram 精度,因为有多个参考文献时,计算召回率很困难,结果会是 n-gram 分数的几何平均值。


现在您知道机器学习翻译引擎的复杂性了。下一次当您使用谷歌翻译时,别忘了想像一下,它在返回给您最佳结果之前,已经分析了数百万份文档。



编译来源:https://blog.statsbot.co/machine-learning-translation-96f0ed8f19e4?nsukey=VImjuDSmJU5s7XG%2BcVgu5QIzrc0KecpUzpUdvUXxifDycOG5DXilsiMxZ4Tvs9ja9XQJ6EKe0fBnYzJwuvbqQw3MaRxVOHkwmW9xkA75dDpNwJM4VEBiPYXLER34D0txiOrVl2pS3flSlaIh9pq72G9ZPolOBX6io%2BdJtOk%2Fki51k1r5W82uKRxKNYWGHtjs


【号外】新智元正在进行新一轮招聘,飞往智能宇宙的最美飞船,还有N个座位

点击阅读原文可查看职位详情,期待你的加入~


登录查看更多
1

相关内容

seq2seq 是一个Encoder–Decoder 结构的网络,它的输入是一个序列,输出也是一个序列, Encoder 中将一个可变长度的信号序列变为固定长度的向量表达,Decoder 将这个固定长度的向量变成可变长度的目标的信号序列
【ICML2020-西电】用于语言生成的递归层次主题引导RNN
专知会员服务
21+阅读 · 2020年6月30日
【ICML2020-华为港科大】RNN和LSTM有长期记忆吗?
专知会员服务
73+阅读 · 2020年6月25日
Transformer文本分类代码
专知会员服务
116+阅读 · 2020年2月3日
【反馈循环自编码器】FEEDBACK RECURRENT AUTOENCODER
专知会员服务
22+阅读 · 2020年1月28日
【强化学习】深度强化学习初学者指南
专知会员服务
178+阅读 · 2019年12月14日
注意力机制介绍,Attention Mechanism
专知会员服务
165+阅读 · 2019年10月13日
多图带你读懂 Transformers 的工作原理
AI研习社
10+阅读 · 2019年3月18日
三次简化一张图:一招理解LSTM/GRU门控机制
机器之心
15+阅读 · 2018年12月18日
基础 | 深度解析LSTM神经网络的设计原理
黑龙江大学自然语言处理实验室
6+阅读 · 2018年6月16日
机器翻译不可不知的 Seq2Seq 模型
AI研习社
4+阅读 · 2018年5月24日
一文详解LSTM网络
论智
18+阅读 · 2018年5月2日
一文读懂LSTM和循环神经网络
七月在线实验室
8+阅读 · 2018年4月18日
机器学习翻译基本原理
论智
5+阅读 · 2017年12月21日
深度学习基础之LSTM
全球人工智能
26+阅读 · 2017年12月18日
深度解析LSTM神经网络的设计原理
AI研习社
5+阅读 · 2017年11月1日
神经网络机器翻译原理:LSTM、seq2seq到Zero-Shot
北京思腾合力科技有限公司
11+阅读 · 2017年8月10日
Question Generation by Transformers
Arxiv
5+阅读 · 2019年9月14日
Neural Speech Synthesis with Transformer Network
Arxiv
5+阅读 · 2019年1月30日
Arxiv
21+阅读 · 2018年5月23日
Arxiv
14+阅读 · 2018年5月15日
Arxiv
21+阅读 · 2018年2月14日
VIP会员
相关VIP内容
【ICML2020-西电】用于语言生成的递归层次主题引导RNN
专知会员服务
21+阅读 · 2020年6月30日
【ICML2020-华为港科大】RNN和LSTM有长期记忆吗?
专知会员服务
73+阅读 · 2020年6月25日
Transformer文本分类代码
专知会员服务
116+阅读 · 2020年2月3日
【反馈循环自编码器】FEEDBACK RECURRENT AUTOENCODER
专知会员服务
22+阅读 · 2020年1月28日
【强化学习】深度强化学习初学者指南
专知会员服务
178+阅读 · 2019年12月14日
注意力机制介绍,Attention Mechanism
专知会员服务
165+阅读 · 2019年10月13日
相关资讯
多图带你读懂 Transformers 的工作原理
AI研习社
10+阅读 · 2019年3月18日
三次简化一张图:一招理解LSTM/GRU门控机制
机器之心
15+阅读 · 2018年12月18日
基础 | 深度解析LSTM神经网络的设计原理
黑龙江大学自然语言处理实验室
6+阅读 · 2018年6月16日
机器翻译不可不知的 Seq2Seq 模型
AI研习社
4+阅读 · 2018年5月24日
一文详解LSTM网络
论智
18+阅读 · 2018年5月2日
一文读懂LSTM和循环神经网络
七月在线实验室
8+阅读 · 2018年4月18日
机器学习翻译基本原理
论智
5+阅读 · 2017年12月21日
深度学习基础之LSTM
全球人工智能
26+阅读 · 2017年12月18日
深度解析LSTM神经网络的设计原理
AI研习社
5+阅读 · 2017年11月1日
神经网络机器翻译原理:LSTM、seq2seq到Zero-Shot
北京思腾合力科技有限公司
11+阅读 · 2017年8月10日
Top
微信扫码咨询专知VIP会员