目录
2 Encoder(编码阶段:将输入序列压缩成固定长度的语义向量)
方式一:将最后一个隐状态输出进行变换(不变换),作为语义向量(不推荐使用)
方式二:将所有的隐状态输出进行变换,作为语义向量(推荐使用)
方式一:将语义向量输入到Decoder中,作为初始隐状态的输入(不推荐使用)
方式二:将语义向量输入到Decoder中,参与Decoder各个解码过程(推荐使用)
二 Seq2Seq原理解析(以Encoder-Decoder with peek为例)
1 Basic Encoder-Decoder(不推荐使用)
2 Encoder-Decoder with feedback(不推荐使用)
3 Encoder-Decoder with peek(不推荐使用)
4 Encoder-Decoder with attention(推荐使用)
一 Seq2Seq结构解析
1 Seq2Seq是一种Encoder-Decoder结构
基本思想就是使用两个RNN,一个RNN作为Encoder,另一个RNN作为Decoder
2 Encoder(编码阶段:将输入序列压缩成固定长度的语义向量)
方式一:将最后一个隐状态输出进行变换(不变换),作为语义向量
(不推荐使用)
方式二:将所有的隐状态输出进行变换,作为语义向量
(推荐使用)
3 Decoder(解码阶段:将语义向量生成指定序列)
方式一:将语义向量输入到Decoder中,作为初始隐状态的输入(不推荐使用)
方式二:将语义向量输入到Decoder中,参与Decoder各个解码过程(推荐使用)
二 Seq2Seq原理解析(以Encoder-Decoder with peek为例)
1 Encoder阶段
- Encode依次读入整个序列
,依次得到
个隐状态
- 语义向量: