最近想要看看Attention的机制,然后被网上博客引到这个论文,想要了解一下NMT(Neural Machine Translation)的架构。这篇paper没有发表在会议上,出自Google Brain,并公开了seq2seq的NMT框架代码。个人觉得文中的结论不太可信,但是对于NMT的介绍还是足够清晰。这里记录一些文中有意思的点,以及一些笔者自己的思考,欢迎指教。
NMT框架
详见文中Section2.1部分。
如下图所示,NMT分为Encoder部分和Decoder部分,中间接了一个Attention用于对Encoder部分的信息进行汇总。
具体地,输入是 [x1,x2,⋯,xm] ,Encoder把输入转换为可用信息 [h1,h2,⋯,hm] 。图中所示的Encoder是Bidirection RNN, hi 中同时具有所有时间切片的信息。
Decoder部分则是输出部分,每次根据之前生成的输出 [y1,y2,⋯,yi−1] 以及Attention汇总的Encoder的信息