1.RNN
原始的循环神经网络,本质是全连接网络,输入分为两个部分,分别为上一层的输出以及本层的输入。
网络中维护三个参数,本层输入的权重W,上层输出的权重U以及偏置b。
优点:
1.RNN很适合处理序列数据,因为考虑了之前的信息。
2.可以和CNN一起使用得到更好的效果。
缺点:
1.由于在训练过程中W,U和b是同一组参数,容易出现梯度爆炸或者梯度消失的情况。
2.RNN相较于其他CNN和全连接需要更多的显存空间,更难训练。
3.如果使用tanh、relu作为激活函数,没办法处理太长的序列。
2.LSTM
为了解决梯度消失和爆炸以及更好的预测分类序列数据等问题,产生了LSTM。
相比于普通的RNN,LSTM多了三个控制,分别为输入控制f,输入控制i和输出控制o,同时维持一条记忆线,用来动态的控制哪些更重要的信息需要被保留到下一层,哪些不重要的信息可以被一遗忘,对于每一个门都有自己对应的权重与偏置,在RNN的内部实现了解耦合,避免了梯度消失于梯度爆炸的情况。
3.GRU
GRU是2014年提出的一