Я пытаюсь выполнить бинарную классификацию изображений с использованием библиотеки keras, но я получаю ValueError as Error при проверке цели: ожидается, что плотность_1 имеет 4 измерения, но получен массив с формой (32, 2)
classifier.add(Conv2D(filters=32, kernel_size=(3,3), input_shape=(64,64,3), activation='relu'))
classifier.add(Conv2D(filters=32, kernel_size=(3,3), activation='relu'))
#Pooling_layers
classifier.add(MaxPooling2D(pool_size=(2,2)))
#conv_layers
classifier.add(Conv2D(filters=32, kernel_size=(3,3), activation='relu'))
classifier.add(Conv2D(filters=32, kernel_size=(3,3), activation='relu'))
#Max_pooling_layers
classifier.add(MaxPooling2D(pool_size=(2,2)))
classifier.add(Dense(units=2, activation='softmax'))
#Compile_classifier
classifier.compile(optimizer = 'adam', loss='categorical_crossentropy', metrics=['accuracy'])
from keras.preprocessing.image import ImageDataGenerator
train_datagen=ImageDataGenerator(rescale=1./255)
train_set = train_datagen.flow_from_directory(
'dataset/train',
target_size=(64,64),
batch_size=32,
class_mode='categorical')
test_datagen=ImageDataGenerator(rescale=1./255)
test_set = test_datagen.flow_from_directory(
'dataset/test',
target_size=(64,64),
batch_size=32,
class_mode='categorical')
classifier.fit_generator(
train_set,
steps_per_epoch=9000,
epochs=25,
validation_data=test_set,
validation_steps=3000)
При выполнении моей программы у меня появляется это сообщение об ошибке.
ValueError: Error when checking target: expected dense_1 to have 4 dimensions, but got array with shape (32, 2)