时空序列预测问题是输入的是按照某一时刻之前若干个时刻表示空间信息的二维矩阵,预测某一时刻后面若干个时刻的空间状态。可以形式化为:
卷积LSTM(Convolutional LSTM)是把卷积神经网络的思想和循环神经网络的思想融合到一个端到端的深度神经网络之中,使得网络既有提取时间信息的能力,又有提取空间信息的能力。ConvLSTM这种网络结构在视频帧预测,未来天气预测等时空序列预测问题中有很好的表现。下面介绍三篇关于卷积LSTM网络的论文。
Convolutional LSTM Network: A Machine Learning Approach for Precipitation Nowcasting
这篇论文首次提出了ConvLSTM的网络结构,在普通的FC-LSTM上加入了卷积层,使得网络在能够很好的提取时间信息的基础上,具有了提取空间信息的能力。可以成功的应用于视频帧预测和降水预测。
我们可以把FC-LSTM和ConvLSTM进行对比:
可以看到,ConvLSTM将FC-LSTM的矩阵乘操作变为了卷积操作,这样就不用将X展开成一维输入网络了,可以更好的保存空间信息。
网络的整体结构如下图所示:
可以看到,网络运行方式为左边的网络利用输入数据进行编码,然后复制到右边的网络进行解码输出。
Predrnn: Recurrent neural networks for predictive learning using spatiotemporal lstms
这篇文章作者认为,ConvLSTM在时间和空间上信息提取存在不均衡的问题,时间信息的提取程度远远大于空间信息。针对ConvLSTM时间和空间提取不均匀的问题,以此为动机,作者提出了PredRNN网络。做法是在每个LSTM模块中增加一个存储传播空间信息的单元M,使它纵向传播(蜿蜒传播)。可以由下图清晰的看出单元M如何作用在整个网络:
但是本文作者将新提出的传播空间信息的单元的M和之前ConvLSTM中传播时间信息的单元C结合起来组成了PredRNN网络,网络结构如下图:
因为需要输出新的隐状态M,所以每个LSTM单元内的结构也发生了改变,LSTM单元内的结构如下图所示:
Predrnn++: Towards a resolution of the deep-in-time dilemma in spatiotemporal predictive learning
由于深层RNN网络在训练时容易产生梯度消失的现象,导致模型无法完全发挥多层网络的优势。针对此问题,PredRNN++在PredRNN的基础上,增加了GHU(Gradient Highway Unit)单元来处理梯度消失问题。
GHU单位是在深层LSTM单元中加入一个快速随着时间传递信息的单元,可以一定程度上解决梯度消失的现象。经过作者多次实验,GHU单元的结构以及在整个网络中的位置如下图所示:
此外,PredRNN++提出了Causal LSTM作为网络的LSTM单元。与PredRNN的LSTM单元相比,将隐状态的连接方式做了改变,作者在论文中说随着RNN深度的增加,表现要好于PredRNN中的LSTM单元,但是根据实验数据来看,效果不如加入GHU单元明显。Causal LSTM结构如下图所示: