Sequence to Sequence Learning with Neural Networks

简介:

seq2seq+各种形式的attention近期横扫了nlp的很多任务,本篇将分享的文章是比较早(可能不是最早)提出用seq2seq来解决机器翻译任务的,并且取得了不错的效果。本文的题目是Sequence to Sequence Learning with Neural Networks,作者是来自Google的Ilya Sutskever博士(现在OpenAI)。可以说这篇文章较早地探索了seq2seq在nlp任务中的应用,后续的研究者在其基础上进行了更广泛的应用,比如自动文本摘要,对话机器人,问答系统等等。


这里看一张很经典的图,如下:


640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

图的左半边是encoder,右半边是decoder,两边都采用lstm模型,decoder本质上是一个rnn语言模型,不同的是在生成词的时候依赖于encoder的最后一个hidden state,可以用下式来表示:


640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=


模型非常简单,就是最普通的多层lstm,实际实现的时候有几点不同:


  • 用了两种不同的lstm,一种是处理输入序列,一种是处理输出序列。

  • 更深的lstm会比浅的lstm效果更好,所以本文选择了四层。

  • 将输入的序列翻转之后作为输入效果更好一些。


这里在decoder部分中应用了beam search来提升效果,beam search大概的思路是每次生成词是取使得整个概率最高的前k个词作为候选,这里显然beam size越大,效果越好,但是beam size越大会造成计算的代价也增大,所以存在一个trade off。


最后通过机器翻译的数据集验证了了seq2seq模型的有效性。


这里需要讨论的一点是,为什么将输入倒序效果比正序好?文中并没有说,只是说这是一个trick。但后面读了关于attention的文章之后,发现soft attention或者说alignment对于seq2seq这类问题有着很大的提升,我们都知道rnn是一个有偏模型,顺序越靠后的单词在最终占据的信息量越大,那么如果是正序的话,最后一个词对应的state作为decoder的输入来预测第一个词,显然在alignment上来看,这两个词并不是对齐的,反过来,如果用倒序的话,之前的一个词成了最后一个词,在last state中占据了主导,用这个词来预测decoder的第一个词,从某种意义上来说实现了alignment,所以效果会好一些。



来源:paperweekly


原文链接

相关文章
|
8月前
|
机器学习/深度学习 人工智能 自然语言处理
OneIE:A Joint Neural Model for Information Extraction with Global Features论文解读
大多数现有的用于信息抽取(IE)的联合神经网络模型使用局部任务特定的分类器来预测单个实例(例如,触发词,关系)的标签,而不管它们之间的交互。
100 0
|
8月前
|
机器学习/深度学习 资源调度 算法
【RLchina第四讲】Model-Based Reinforcement Learning(上)
【RLchina第四讲】Model-Based Reinforcement Learning(上)
208 0
|
8月前
|
机器学习/深度学习 算法
【RLchina第四讲】Model-Based Reinforcement Learning(下)
【RLchina第四讲】Model-Based Reinforcement Learning(下)
105 0
|
8月前
|
机器学习/深度学习 编解码 数据可视化
Speech Emotion Recognition With Local-Global aware Deep Representation Learning论文解读
语音情感识别(SER)通过从语音信号中推断人的情绪和情感状态,在改善人与机器之间的交互方面发挥着至关重要的作用。尽管最近的工作主要集中于从手工制作的特征中挖掘时空信息,但我们探索如何从动态时间尺度中建模语音情绪的时间模式。
75 0
|
11月前
|
机器学习/深度学习 算法 数据挖掘
A Generative Adversarial Network-based Deep Learning Method for Low-quality Defect ImageReconstructi
本文提出了一种基于生成对抗网络 (GAN) 的 DL 方法,用于低质量缺陷图像识别。 GAN用于重建低质量缺陷图像,并建立VGG16网络识别重建图像。
98 0
|
机器学习/深度学习 编解码 算法
Self-Training using Selection Network for Semi-supervised Learning
Self-Training using Selection Network for Semi-supervised Learning
114 0
Self-Training using Selection Network for Semi-supervised Learning
|
机器学习/深度学习 PyTorch 算法框架/工具
Batch Normlization: Accelerating Deep Network Training by Reducing Internal Covariate Shift》论文详细解读
Batch Normlization: Accelerating Deep Network Training by Reducing Internal Covariate Shift》论文详细解读
91 0
Batch Normlization: Accelerating Deep Network Training by Reducing Internal Covariate Shift》论文详细解读
《Multi-Task Multi-Network Joint-Learning of Deep Residual Networks and Cycle-Consistency Generative Adversarial Networks for Robust Speech Recognition》电子版地址
Multi-Task Multi-Network Joint-Learning of Deep Residual Networks and Cycle-Consistency Generative Adversarial Networks for Robust Speech Recognition
71 0
《Multi-Task Multi-Network Joint-Learning of Deep Residual Networks and Cycle-Consistency Generative Adversarial Networks for Robust Speech Recognition》电子版地址
|
机器学习/深度学习
Re22:读论文 HetSANN An Attention-based Graph Neural Network for Heterogeneous Structural Learning
Re22:读论文 HetSANN An Attention-based Graph Neural Network for Heterogeneous Structural Learning
Re22:读论文 HetSANN An Attention-based Graph Neural Network for Heterogeneous Structural Learning
|
机器学习/深度学习 数据挖掘
Paper:《Generating Sequences With Recurrent Neural Networks》的翻译和解读
Paper:《Generating Sequences With Recurrent Neural Networks》的翻译和解读
Paper:《Generating Sequences With Recurrent Neural Networks》的翻译和解读