PredRNN: 基于ST-LSTM的预测学习

1、文章信息

《PredRNN: Recurrent Neural Networks for Predictive Learning using Spatiotemporal LSTMs》。

清华大学软件学院博士生,后续的PredRNN++ 以及Memory in Memory都是这个人所写。

2、摘要

时空序列的预测学习的目的是通过学习历史帧来生成未来的图像,其中空间表现和时间变化是两个关键的结构。本文提出一种预测递归神经网络(PredRNN)来模拟这些结构。这种架构的灵感来自于这样一种思想,即时空预测学习应该在一个统一的记忆池中记忆空间表象和时间变化。具体来说,内存状态不再局限于每个LSTM单元内部。相反,它们可以在两个方向上之字形移动:垂直穿过堆叠的RNN层,并水平贯穿所有RNN层的状态。该网络的核心是一种新的时空LSTM(ST-LSTM)同时提取和记忆空间和时间表示的单元。PredRNN在三个视频预测数据集上实现了最先进的预测性能,是一个更通用的框架,可以很容易地扩展到其他预测学习任务。

3、简介

一个简单的想法是,如果我们希望预测未来,我们需要记住尽可能多的历史细节。当我们回忆以前发生的事情时,我们不仅回忆物体的运动,还回忆从粗到细的视觉现象。在此基础上,我们提出了一种新的循环架构——预测RNN(PredRNN),它允许属于不同LSTMs的memory状态跨层交互。作为PredRNN的关键组成部分,我们设计了一个新的时空LSTM (ST-LSTM)单元。它在一个统一的记忆单元中对空间和时间表示进行建模,并在垂直层面和水平层面上传递记忆。PredRNN在三个视频数据集上取得了最先进的预测结果。它是预测学习的通用模块框架,并不局限于视频预测。

ConvLSTM网络采用了[23]中提出的编码-解码器RNN结构,并扩展到[21]中的视频预测。对于四层ConvLSTM编解码器网络,输入帧被送入第一层,在第四层产生未来的视频序列。在这个过程中,空间表示被逐层编码,隐藏状态从下到上传递。然而,属于这四层的记忆细胞是相互独立的,仅在时间域内更新。在这种情况下,底层会完全忽略顶层在之前的时间步中所记忆的内容。克服这种与层无关的记忆机制的缺点,对于视频序列的预测学习具有重要意义。ConvLSTM的主要公式如下:

PredRNN: 基于ST-LSTM的预测学习

4、主体内容

在本节中,我们将详细描述预测递归神经网络(PredRNN)。最初,这种架构受到这样一种思想的启发,即预测性学习系统应该在统一的memory中记住空间表现和时间变化。通过这样做,我们使内存状态沿之字形方向流经整个网络。然后,我们想进一步研究如何使时空记忆与原始的长短时记忆相互作用。因此,我们对LSTMs/ConvLSTMs中的存储单元、存储门和存储融合机制进行了探索。最后我们推导出一个新的时空LSTM(ST-LSTM)用于PredRNN的单元,它能够垂直和水平地传递存储器状态。

Spatiotemporal memory flow

PredRNN: 基于ST-LSTM的预测学习

为了生成时空预测,PredRNN首先利用卷积lstm (ConvLSTM)[19]作为基本构建块。堆叠的ConvLSTMs提取高度抽象的特征逐层,然后通过将它们映射回像素值空间进行预测。在传统的ConvLSTM体系结构,如图1(右)所示,每个单元格的状态只能水平更新。信息只能通过隐藏状态向上传递。这种时间记忆流在监督学习中是合理的,因为根据对叠加卷积层的研究,隐藏的表示从底层向上可以变得越来越抽象和class specific。然而,我们假设在预测学习中,应该保持原始输入序列中的详细信息。如果我们想要看到未来,我们需要从不同层次的卷积层中提取的表示中学习。因此,我们应用一个统一的时空记忆池并改变RNN连接,如图1所示(左)。橙色箭头表示LSTM记忆细胞的前馈方向。在左边的图中,一个统一的内存被所有的LSTMs共享,并且沿着之字形方向进行更新。具有时空记忆流的卷积LSTM单元的关键方程如下所示:

PredRNN: 基于ST-LSTM的预测学习

输入门、输入调制门、遗忘门和输出门不再依赖于同一层上的前一时间步的隐藏状态和单元状态。相反,如图1(左)所示,

PredRNN: 基于ST-LSTM的预测学习

它们依赖于上一层的隐藏状态和细胞状态,在当前时间步长上一层更新。具体地说,底层LSTM单元(l = 1)在前一个时间步长从顶层接收状态值。图中的四层具有不同的输入-状态和状态-状态卷积参数集,同时它们维护一个时空记忆单元,并在信息流经当前节点时分别、重复地更新其状态。注意,我们将记忆单元的符号从C替换为M,以强调它在PredRNN中以之字形流动,而不是在标准循环网络中以水平方向流动。与使用Hadamard乘积在门中进行状态转换的ConvLSTM不同,我们使用卷积运算符∗来进行更细粒度的memory转换。(即W和M之间是卷积而不是Hadamard乘积)。

Spatiotemporal LSTM

PredRNN: 基于ST-LSTM的预测学习

在本节中,我们提出了预测递归神经网络(PredRNN),用一个新的时空长短时记忆(ST-LSTM)单元替换了ConvLSTMs(见图2)。在上一小节介绍的体系结构中,时空记忆单元以锯齿状的方向更新,信息首先向上跨层传递,然后随着时间向前传递。我们想知道如果记忆细胞状态同时在这两个方向传递会发生什么。在ST-LSTMs的帮助下,上述带有时空记忆流的PredRNN模型演化成了我们最终的架构。ST-LSTM的方程如下:

PredRNN: 基于ST-LSTM的预测学习

其中两个记忆单元C和M都被保留了,Ct是标准的时间单元,在每个LSTM单元内从之前的节点t−1传输到当前时间步长(横向传播)。L层的Mt是我们在本节中描述的时空记忆spatiotemporal memory,它在同一时间步长内从l−1层垂直传输到当前节点(纵向传播)。T-1时刻最后一层的M会传递到t时刻第一层。我们为Mt构造了另一组门结构,同时在标准LSTMs中保留了Ct的原始门控机构。最后,该节点的最终隐藏状态依赖于融合的时空记忆。我们将这些来自不同方向的内存连接在一起,然后应用1×1卷积层进行降维,使得隐藏状态Ht与memory cell具有相同的维度。与简单的记忆拼接不同,ST-LSTM单元对两种记忆类型使用共享的输出门,实现无缝的记忆融合,可以有效地对时空序列中的形状变形和运动轨迹进行建模。

5、实验部分

本来使用了三个数据集,一个是Moving MINIST,一个是KTH action dataset,另外一个是雷达回波图数据集。实验细节不再详述。

Attention

如果你和我一样是轨道交通、道路交通、城市规划相关领域的,可以加微信:Dr_JinleiZhang,备注“进群”,加入交通大数据交流群!希望我们共同进步!

PredRNN: 基于ST-LSTM的预测学习