Convolutional LSTM Network A Machine Learning Approach for Precipitation Nowcasting

Convolutional LSTM Network: A Machine Learning Approach for Precipitation Nowcasting

​ 作者在这篇文章中提出用卷积操作替代矩阵的乘法操作——采用ConvLSTM去取代FC-LSTM,这样做的目的是更好的获取空间特征。

RNN

​ 在讲解ConvLSTM之前,我们需要知道LSTM实际上就是RNN的一种变体。下面先对RNN进行一个简单的介绍。

1.RNN的结构

Convolutional LSTM Network A Machine Learning Approach for Precipitation Nowcasting_第1张图片
RNN的出现是为了解决DNN无法对空间序列建模的问题。如图所示,RNN的展开是一个链式结构,链式的特征揭示了 RNN 本质上是与序列和列表相关的。

2.RNN的应用

​ RNN如今广泛应用于我们的生活当中,其应用包括语音识别,音乐生成,情感分类,DNA序列分析,机器翻译和视频行为识别等。

3.RNN的变体

​ RNN的主要变体有LSTM和GRU。这里着重介绍一下LSTM。针对RNN由于梯度消失或爆炸很难解决长时间依赖问题,在此基础上Hochreiter & Schmidhuber (1997)提出提出了LSTM,LSTM的本质就是能够记住很长时间内的信息。LSTM单元中包含了遗忘门,输入门和输出门。

Convolutional LSTM Network A Machine Learning Approach for Precipitation Nowcasting_第2张图片
LSTM结构图

遗忘门

Convolutional LSTM Network A Machine Learning Approach for Precipitation Nowcasting_第3张图片

​ 这个门的输入是ht-1和xt,经过一个激活函数,输出ft。ft为衰减因子,表示让Ct-1的各部分信息通过的比重。

输入门

Convolutional LSTM Network A Machine Learning Approach for Precipitation Nowcasting_第4张图片

​ Sigmoid 层决定哪些信息需要更新;一个 tanh 层生成一个向量,也就是备选的用来更新的内容Ct’,在下一步把这两部分联合起来,对 cell 的状态进行一个更新。

更新信息

Convolutional LSTM Network A Machine Learning Approach for Precipitation Nowcasting_第5张图片
有了上述的结构,就可以更新 cell 状态, 即把Ct-1更新为 Ct,旧的状态 Ct-1 和和 ft 相乘, 把一些不想保留的信息忘掉。然后加上 it 和Ct’相乘的结果,这部分信息就是我们要添加的新内容。

输出门

Convolutional LSTM Network A Machine Learning Approach for Precipitation Nowcasting_第6张图片
输出不仅仅依赖于 Ct ,而是需要经过一个过滤的处理。首先,使用一个sigmoid层来决定 Ct 中的哪部分信息会被输出。接着,把 Ct 通过一个 tanh 层(把数值都归到 -1 和 1 之间),然后把 tanh 层的输出和 sigmoid 层计算出来的权重相乘得到了最后输出的结果ht。

论文相关

接下来介绍一下关于论文相关的一些知识。论文提出一种ConvLSTM结构,不仅可以向LSTM一样建立时序关系,而且可以像CNN一样刻画局部空间特征,并且作者通过实验证明了ConvLSTM在获取时空关系上比FC-LSTM有更好的效果,而且ConvLSTM不仅可以预测天气,还能够解决其他时空序列的预测问题。
在介绍ConvLSTM之前,再介绍一下FC-LSTM。

FC-LSTM

Convolutional LSTM Network A Machine Learning Approach for Precipitation Nowcasting_第7张图片
FC-LSTM本质上是在LSTM的基础上做出了修改。为了解决记忆被输出门截断后使得各个门单元受控性降低的问题,在LSTM上引入了“peephole”连接。让几个“门”的输入数据除了接收正确的输入数据和上一个时刻的输出之外,再接受“细胞状态”的输入,这样就形成了FC-LSTM。FC-LSTM能很好的处理时序数据,但对于空间数据,它易造成冗余。

ConvLSTM

ConvLSTM核心本质还是和LSTM一样,将上一层的输出作下一层的输入。不同的地方在于加上卷积操作之后,不仅能够得到时序关系,还能够像卷积层一样提取特征,提取空间特征。这样就能够得到时空特征,并且将状态与状态之间的切换也换成了卷积计算。
Convolutional LSTM Network A Machine Learning Approach for Precipitation Nowcasting_第8张图片
ConvLSTM的公式如下:
Convolutional LSTM Network A Machine Learning Approach for Precipitation Nowcasting_第9张图片

作者在论文中提出了一种降水临近预报模型,实质是以过去雷达图序列为输入,以未来雷达图的一个固定序列作为输出的时空序列预报问题。通过给定固定长度为J的历史观测数据,如何预测未来长度为K的序列。

在这里插入图片描述
这个模型由一个编码网络和一个预测网络组成,具体结构参照论文
Convolutional LSTM Network A Machine Learning Approach for Precipitation Nowcasting_第10张图片
编码网络的作用是将输入序列压缩成一个hidden state的张量,而预测网络则是对这个hidden state进行预测。

实验结果

通过Moving MNIST和Radar Echo数据集,我们可以得到一些结论:

  • ConvLSTM在处理时空关系时较FC-LSTM表现得更好
  • 模型需要深且参数少
  • 卷积核的大小需要大于1
  • 在降水预测方面,ConvLSTM表现得比ROVER好

(部分图片来自于《Understanding LSTM Network》)

你可能感兴趣的:(ConvLSTM,Precipitation,Nowcasting,LSTM,RNN,FC-LSTM,深度学习)