keras ConvLSTM2D层做什么?

时间:2020-07-27 01:16:25

标签: tensorflow keras conv-neural-network lstm

我想更好地了解ConvLSTM2D Keras层。

它是否在2D输入(图像)上执行2D卷积,然后平均/展平其输出并将其输入LSTM模块? 但是我想它基本上是一个LSTM单元,其中的矩阵乘法被卷积运算所代替。正确吗?

谢谢

1 个答案:

答案 0 :(得分:1)

是的,您使用 CONVLSTM2D 的概念是正确的。
CONVLSTM2D 体系结构将LSTM的门控与2D卷积结合在一起。

正如您已经提到的,CONVLSTM层将执行与LSTM相似的任务,但是它代替矩阵乘法,而是进行卷积运算并保留输入维数。

另一种不同的方法是图像通过卷积层,结果将是平坦的1D数组,这将是LSTM层随时间推移具有一组特征的输入。

Kera的CONVLSTM层的输入:是具有形状的5D张量

(samples, time, channels, rows, cols)(如果是第一频道)。
(samples, time, rows, cols, channels)(如果是最后一个频道)。

CONVLSTM层的输出:

如果return_sequences = True是5D张量的形状

(samples, time, filters, rows, cols)  

如果return_sequences = False,则它是具有形状的4D张量。

(samples, filters, rows, cols)  

您可以从this篇论文中完成CONVLSTM的实现。

相关问题