VGG-19值错误-负尺寸

时间:2020-02-05 13:31:47

标签: python tensorflow keras faster-rcnn

我将开发类似于VGG-19的cnn模型。模型代码如下。

model = Sequential([
    #layer set 1 VGG-19
    Input(shape=(IMG_HEIGHT, IMG_WIDTH ,3)),
    ZeroPadding2D(padding=(1,1), data_format='channels_last'),
    Conv2D(64, 3, 3, padding='same', activation='relu', data_format='channels_last'),
    ZeroPadding2D(padding=(1,1), data_format='channels_last'),
    Conv2D(64, 3, 3, padding='same', activation='relu', data_format='channels_last'),
    MaxPooling2D((2,2), strides=(2,2), data_format='channels_last'),

    #layer set 2
    ZeroPadding2D(padding=(1,1), data_format='channels_last'),
    Conv2D(128, 3, 3, padding='same', activation='relu', data_format='channels_last'),
    ZeroPadding2D(padding=(1,1), data_format='channels_last'),
    Conv2D(128, 3, 3, padding='same', activation='relu', data_format='channels_last'),
    MaxPooling2D((2,2), strides=(2,2), data_format='channels_last'),

    #layer set 3
    ZeroPadding2D(padding=(1,1), data_format='channels_last'),
    Conv2D(256, 3, 3, padding='same', activation='relu', data_format='channels_last'),
    ZeroPadding2D(padding=(1,1), data_format='channels_last'),
    Conv2D(256, 3, 3, padding='same', activation='relu', data_format='channels_last'),
    ZeroPadding2D(padding=(1,1), data_format='channels_last'),
    Conv2D(256, 3, 3, padding='same', activation='relu', data_format='channels_last'),
    ZeroPadding2D(padding=(1,1), data_format='channels_last'),
    Conv2D(256, 3, 3, padding='same', activation='relu', data_format='channels_last'),
    MaxPooling2D((2,2), strides=(2,2), data_format='channels_last', padding='same'),

    #layer set 4
    ZeroPadding2D(padding=(1,1), data_format='channels_last'),
    Conv2D(512, 3, 3, padding='same', activation='relu', data_format='channels_last'),
    ZeroPadding2D(padding=(1,1), data_format='channels_last'),
    Conv2D(512, 3, 3, padding='same', activation='relu', data_format='channels_last'),
    ZeroPadding2D(padding=(1,1), data_format='channels_last'),
    Conv2D(512, 3, 3, padding='same', activation='relu', data_format='channels_last'),
    ZeroPadding2D(padding=(1,1), data_format='channels_last'),
    Conv2D(512, 3, 3, padding='same', activation='relu', data_format='channels_last'),
    MaxPooling2D((2,2), strides=(2,2), data_format='channels_last'),

    #layer set output
    Flatten(),
    Dense(4096, activation='relu'),
    Dropout(0.5),
    Dense(4096, activation='relu'),
    Dropout(0.5),
    Dense(1000, activation='softmax')
])

当我建立模型时,会出现以下错误。

Negative dimension size caused by subtracting 2 from 1 for 'max_pooling2d_10/MaxPool' (op: 'MaxPool') with input shapes: [?,1,1,512].

keras 2没有'dim_ordering'属性。因此,我添加了“ data_format”。我该如何解决这个问题?

屏幕截图 enter image description here

0 个答案:

没有答案