Я пытаюсь построить модель CNN. Но я столкнулся с этой ошибкой и не могу ее устранить.
from keras.models import Sequential
from keras.layers import Conv2D,MaxPooling2D,Flatten,Dense
from keras.optimizers import Adam
def vgg():
kernel=(3,3)
pool=(2,2)
model=Sequential()
model.add(Conv2D(96,kernel,padding='same',input_shape=(32,32,1),activation='relu'))
model.add(Conv2D(96,kernel,padding='same',activation='relu'))
model.add(MaxPooling2D(pool,strides=2,padding='same'))
model.add(Conv2D(128,kernel,padding='same',activation='relu'))
model.add(Conv2D(128,kernel,padding='same',activation='relu'))
model.add(MaxPooling2D(pool,strides=2,padding='same'))
model.add(Conv2D(256,kernel,padding='same',activation='relu'))
model.add(Conv2D(256,kernel,padding='same',activation='relu'))
model.add(Conv2D(256,kernel,padding='same',activation='relu'))
model.add(MaxPooling2D(pool,strides=2,padding='same'))
model.add(Conv2D(512,kernel,padding='same',activation='relu'))
model.add(Conv2D(512,kernel,padding='same',activation='relu'))
model.add(Conv2D(512,kernel,padding='same',activation='relu'))
model.add(MaxPooling2D(pool,strides=2,padding='same'))
model.add(Conv2D(512,kernel,padding='same',activation='relu'))
model.add(Conv2D(512,kernel,padding='same',activation='relu'))
model.add(Conv2D(512,kernel,padding='same',activation='relu'))
model.add(MaxPooling2D(pool,strides=2,padding='same'))
model.add(Flatten())
model.add(Dense(4096,activation='relu'))
model.add(Dense(4096,activation='relu'))
model.add(Dense(43,activation='softmax'))
model.compile(Adam(lr=0.001),loss='categorical_crossentropy',metrics=['accuracy'])
return vgg
model=vgg()
print(model.summary())
Я не могу найти решение. Это из-за того, что фильтров больше нет или из-за более высоких значений в плотных, потому что в другой модели я использовал меньшие значения, и они работают нормально