ValueError: Negative dimension size caused by subtracting 3 from 1 for 'conv2d_6/convolution' (op: '

原因一:

keras的后端是theano,默认channels_first,即他的图像形状是input_shape=(img_channels, img_rows, img_cols )。

而在tensorflow中则是默认channels_last,即input_shape=(img_rows, img_cols, img_channels)。

解决方法:

可添加这两行代码,使其变为channels_last;也可以自行调整输入数据的shape。

from keras import backend as K
K.set_image_dim_ordering("tf")

原因二:

如果padding参数为valid,这意味着将出现卷积过程中发生的自动降维,则可能会得到负尺寸。

解决方法:

将padding的参数替换成same。

你可能感兴趣的:(ValueError: Negative dimension size caused by subtracting 3 from 1 for 'conv2d_6/convolution' (op: ')