小编Mat*_*son的帖子

Keras ConvLSTM2D:输出层上的ValueError

我正在尝试训练2D卷积LSTM,以基于视频数据进行分类预测。但是,我的输出层似乎遇到了问题:

““ ValueError:检查目标时出错:预期density_1具有5个维,但数组的形状为(1,1939,9)”

我当前的模型基于Keras Team提供的ConvLSTM2D示例。我认为上述错误是由于我误解了示例及其基本原理而导致的。

数据

我有任意数量的视频,其中每个视频包含任意数量的帧。每帧为135x240x1(最后一个颜色通道)。这将导致输入形状为(None,None,135、240、1),其中两个“ None”值分别是批次大小和时间步长。如果我训练一个具有1052帧的视频,那么我的输入形状将变为(1、1052、135、240、1)。

对于每一帧,模型应跨9个类别预测0到1之间的值。这意味着我的输出形状为(None,None,9)。如果我训练带有1052帧的单个视频,则此形状变为(1、1052、9)。

模型

Layer (type)                 Output Shape              Param #
=================================================================
conv_lst_m2d_1 (ConvLSTM2D)  (None, None, 135, 240, 40 59200
_________________________________________________________________
batch_normalization_1 (Batch (None, None, 135, 240, 40 160
_________________________________________________________________
conv_lst_m2d_2 (ConvLSTM2D)  (None, None, 135, 240, 40 115360
_________________________________________________________________
batch_normalization_2 (Batch (None, None, 135, 240, 40 160
_________________________________________________________________
conv_lst_m2d_3 (ConvLSTM2D)  (None, None, 135, 240, 40 115360
_________________________________________________________________
batch_normalization_3 (Batch (None, None, 135, 240, 40 160
_________________________________________________________________
dense_1 (Dense)              (None, None, 135, 240, …
Run Code Online (Sandbox Code Playgroud)

python conv-neural-network lstm keras tensorflow

5
推荐指数
1
解决办法
3051
查看次数

标签 统计

conv-neural-network ×1

keras ×1

lstm ×1

python ×1

tensorflow ×1