Neural Machine Translation by Jointly Learning to Align and....

前面的两篇文章简单介绍了seq2seq在机器翻译领域的尝试,效果令人满意。上一篇也介绍到这一类问题可以归纳为求解P(output|context)的问题,不同的地方在于context的构建思路不同,上两篇中的seq2seq将context定义为encoder的last hidden state,即认为rnn将整个input部分的信息都保存在了last hidden state中。而事实上,rnn是一个有偏的模型,越靠后的单词在last state中占据的“比例”越高,所以这样的context并不是一个非常好的办法,本文将分享的文章来解决这个问题。题目是Neural Machine Translation by Jointly Learning to Align and Translate,作者是来自德国雅各布大学的Dzmitry Bahdanau,现在是Yoshua Bengio组的一个博士生,文章于2015年4月放在arxiv上。

本篇不再讨论seq2seq,如果您想了解seq2seq,可以去看Sequence to Sequence Learning with Neural Networks和Learning Phrase Representations using RNN Encoder–Decoder for Statistical Machine Translation两篇博客。本篇只讨论不同的地方。

本文用encoder所有hidden state的加权平均来表示context,权重表示decoder中各state与encoder各state的相关性,简单的seq2seq认为decoder中每一个state都与input的全部信息(用last state表示)有关,而本文则认为只与相关的state有关系,即在decoder部分中,模型只将注意力放在了相关的部分,对其他部分注意很少,这一点与人类的行为很像,当人看到一段话或者一幅图的时候,往往会将注意力放在一个很小的局部,而不是全部。具体看下图:

decoder中预测每个输出的条件概率变为:

这里每个time step的state变为:

这里,context vector由下式计算:

权重用了一个最简单的mlp来计算,

然后做归一化:

这里的权重反应了decoder中的state s(i-1)和encoder中的state h(j)之间的相关性。本文在为了得到相对来说无偏的state,在encoder部分采用了BiRNN。

在机器翻译领域中,attention model可以理解为source和target words的soft alignment,像下图一样:

上图是英语翻译成法语的一个结果。越亮的地方表示source和target中的words相关性越强(或者说对齐地越准),图中的每一个点的亮度就是前面计算出的权重。

本文最大的贡献在于提出了attention model,为今后研究对话生成,问答系统,自动文摘等任务打下了坚实的基础。context的定义也成为了一个非常有意思的研究点,rnn是一种思路,cnn同样也是一种思路,简单的word embedding也可以算是一种思路,交叉起来rnn+cnn也可以作为一种思路,将word替换成char可以作为一种思路,思路其实非常多,不同的组合有不同的模型,都可以去探索。

另外,不知道是不是Yoshua Bengio组的习惯,本文也在附录附上了详细的模型推导过程。

来源:paperweekly

原文链接

时间: 2024-09-21 11:37:51

Neural Machine Translation by Jointly Learning to Align and....的相关文章

QA Systems and Deep Learning Technologies – Part 1

1. Introduction The automatic question and answering (QA) system has been in use for decades now. However, Siri's and Watson's success in 2011 has captured the whole industry's attention. Since the success of these two technologies, the automatic QA

QA Systems and Deep Learning Technologies – Part 2

Introduction This is the second article in a two part series about QA Systems and Deep Learning. You can read part 1 here. Deep Learning is a subfield of machine learning, and aims at using machines for data abstraction with the help of multiple proc

Neural Attention Model for Abstractive Sentence Summarization

本周开始分享自动文摘相关的paepr,今天分享的一共有两篇.其中一篇是A Neural Attention Model for Abstractive Sentence Summarization,另一篇是Abstractive Sentence Summarization with Attentive Recurrent Neural Networks,两篇文章都出自于Harvard NLP组,两篇是姊妹篇,第二篇是第一篇的升级版,所以要结合着读,对比着分析. 世上没有什么所谓的银弹,每种方法

A Hierarchical Neural Autoencoder for Paragraphs and Documents

本篇将会分享一篇用自动编码器(AutoEncoder)来做文档表示的文章,本文的结果会给自然语言生成.自动文摘等任务提供更多的帮助.本文作者是来自斯坦福大学的博士生Jiwei Li,简单看了下其简历,本科居然是北大生物系的,是一个跨界选手.本文的题目是A Hierarchical Neural Autoencoder for Paragraphs and Documents,于2015年6月放在arxiv上. 自动编码器之前接触的并不多,所以读了下Yoshua Bengio的deep learn

(zhuan) Where can I start with Deep Learning?

Where can I start with Deep Learning? By Rotek Song, Deep Reinforcement Learning/Robotics/Computer Vision/iOS | 03/01/2017       If you are a newcomer to the Deep Learning area, the first question you may have is "Which paper should I start reading f

(zhuan) Recurrent Neural Network

  Recurrent Neural Network  2016年07月01日  Deep learning  Deep learning 字数:24235   this blog from: http://jxgu.cc/blog/recent-advances-in-RNN.html    References Robert Dionne Neural Network Paper Notes Baisc Improvements 20170326 Learning Simpler Langu

Attention and Augmented Recurrent Neural Networks

Attention and Augmented Recurrent Neural Networks CHRIS OLAHGoogle Brain   SHAN CARTERGoogle Brain   Sept. 8 2016   Citation: Olah & Carter, 2016   Recurrent neural networks are one of the staples of deep learning, allowing neural networks to work wi

(zhuan) Attention in Long Short-Term Memory Recurrent Neural Networks

Attention in Long Short-Term Memory Recurrent Neural Networks by Jason Brownlee on June 30, 2017 in Deep Learning   The Encoder-Decoder architecture is popular because it has demonstrated state-of-the-art results across a range of domains. A limitati

【资源】用深度学习解决自然语言处理中的7大问题,文本分类、语言建模、机器翻译等

本文讲的是用深度学习解决自然语言处理中的7大问题,文本分类.语言建模.机器翻译等,自然语言处理领域正在从统计学方法转向神经网络方法.在自然语言中,仍然存在许多具有挑战性的问题.但是,深度学习方法在某些特定的语言问题上取得了state-of-the-art的结果.不仅仅是在一些benchmark问题上深度学习模型取得的表现,这是最有趣的:事实上,单个模型可以学习单词的含义和执行语言任务,从而避免需要一套专门的.人工的方法. 这篇文章将介绍深度学习方法正在取得进展的7类有趣的自然语言处理任务. 文本