循环神经网络与一般神经网络的区别:
1、样本数据区别
循环神经网络的训练数据的基本单位是num_steps,num_steps个样本作为一组,num_steps个样本有先后顺序。
数据的shape: batch_size,num_step,num_features
训练数据的生成方式有:随机采样和相邻采样
2、网络结构的区别
在一个num_steps为一组的数据中,上一个样本的输出(历史信息),作为下一输入的一部分。
第一个的输入是历史信息是state,人工初始化
RNN与LSTM的区别:
RNN之将上一个输出(H)作为下一个样本的输入信息,一个训练单元有两个输入Xt和Ht-1
LSTM在RNN的基础上增加了state变量(C),一个训练单元有三个输入Xt,Ct-1,Ht-1
RNN图示:

LSTM图示:

seq2seq模型理解:
seq2seq是encoder-decoder结构的实例

encoder的作用是从输入序列提取出context信息,也就是lstm网络的最后一个state(h,c)
decoder的作用是以encoder得到的context信息作为initial-state,以<start>作为X1,预测序列,直到输出<end>
网友评论