Я собираюсь разработать сим-модель модели cnn для VGG-19. Код модели выглядит следующим образом.
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](https://i.stack.imgur.com/D0Rqv.png)