keras ConvLSTM2D 层有什么作用?

问题描述 投票:0回答:2

我想更好地了解 ConvLSTM2D Keras 层。

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

谢谢你

tensorflow keras conv-neural-network lstm
2个回答
5
投票

是的,您对CONVLSTM2D的概念是正确的。
CONVLSTM2D 架构将 LSTM 门控与 2D 卷积相结合。

正如您所提到的,CONVLSTM 层将执行与 LSTM 类似的任务,但它不是矩阵乘法,而是执行卷积运算并保留输入维度。

另一种不同的方法是图像通过卷积层,结果将是一个扁平的一维数组,这将是 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的实现。


0
投票

即使另一个答案很好地描述了 ConvLSTM 操作,但我发现他毫无保留地赞同与问题相关的消息中所说的内容,这让我感到困惑。 事实上,“它对 2D 输入执行 2D 卷积,然后平均/展平其输出并将其输入 LSTM 模块”这句话完全是错误的(并且与后面的句子相矛盾);输入经过卷积层处理后,绝不会被平均或扁平化,相反,它的空间组织被仔细保留,因为 LSTM 内部的门也使用了卷积。

© www.soinside.com 2019 - 2024. All rights reserved.