前言
平时很少写总结性的文章,感觉还是需要阶段性总结一些可以串在一起的知识点,所以这次写了下。因为我写的内容主要在时序、时空预测这个方向,所以主要还是把rnn,lstm,gru,convlstm,convgru以及ST-LSTM
一、 RNN
最为原始的循环神经网络,本质就是全连接网络,只是为了考虑过去的信息,输出不仅取决于当前输入,还取决于之前的信息,也就是输出由之前的信息(也就是状态state)和此时的输入决定。
1.1 结构图
![db22b0dc9b7c9a7e972ab8c6103bf623.png](https://i-blog.csdnimg.cn/blog_migrate/8ed41a9b43359a118710f881489f234d.png)
![b9c100120c0b092a60db921bcfddac4a.png](https://i-blog.csdnimg.cn/blog_migrate/4c416c8efdb9b8fd94c834cddf5f55ed.png)
1.2 公式
1.3 优缺点
1.3.1 优点
① RNN 很适合处理序列数据,因为考虑了之前的信息
② 可以和CNN一起使用得到更好的任务效果
1.3.2 缺点
① 梯度消失、梯度爆炸
② rnn较其他cnn和全连接要用更多的显存空间,更难训练
③ 如果采用tanh、relu为激活函数,没法处理太长的序列