![043a4c365ae910e81e43fe5fcaaa7e0a.png](https://i-blog.csdnimg.cn/blog_migrate/7152e221fdba6f193d7f0ce035e2dcc9.jpeg)
1 写在前面
最近抽时间写文章,将自己以前学过的知识总结一下,通过文章记录下来,以后忘记了也可以随时翻阅。
本文主要介绍最基础的seq2seq模型,并尝试使用tensorflow实现。很多朋友都说pytorch很香,所以随后自己有时间也想入门pytorch,尝试写一个pytorch的版本seq2seq。
2 seq2seq模型
![2f138c555606639d2c4fe61bf06a6472.png](https://i-blog.csdnimg.cn/blog_migrate/b7c8536e71d2adf1b50d68d9036272b4.jpeg)
结合图1,我们介绍下seq2seq模型。seq2seq模型可以分为Encoder和Decoder两部分。在seq2seq模型中,Encoder和Decoder模型用LSTM或者GRU实现。这里的Enconder将原句子编码成一个固定大小的有意义的向量 C,然后将向量C作为Decoder的输入,Decoder对向量C解码,最后输出目标句子。
2.1 Encoder
Encoder是一个LSTM。假设我们的输入是 how are you,输入句子中的每个单词