如何将5D张量输入到keras model.fit

时间:2020-01-31 09:16:26

标签: tensorflow keras tensorflow2.0

我正在使用tensorflow ver 2,tensorflow.keras。

我制作的模型按tf.keras.Conv2D的顺序排列(需要4D输入张量(样本,行,列,通道)

然后tf.keras.convLSTM2D(需要5D输入张量(样本,时间,行,列,通道)。

由于这个原因,我使用5D张量(采样,时间,行,列,通道)进行了输入,但是在实现model.fit(train_data, train_data... )时一开始就无法将其输入tf.keras.Conv2D中。

有没有办法使model.fit采取5D张量?

1 个答案:

答案 0 :(得分:2)

您需要像在TimeDistributed中一样实现conv2D:

x_conv = tf.keras.layers.TimeDistributed(tf.keras.layers.Conv2D(filters=filters,
                                                                kernel_size=kernel_size,
                                                                strides=strides,
                                                                padding='same',
                                                                kernel_initializer='he_normal'))(x)

通过这种方式,图层可以了解到您正在timestep上进行4D输入