Python 如何修复图像分类的Keras值错误?
我试图使用keras库执行二值图像分类,但在检查目标时,我得到了一个ValueError作为错误:预期稠密_1有4维,但得到了形状为(32,2)的数组 在执行我的程序时,我收到了这个错误消息Python 如何修复图像分类的Keras值错误?,python,machine-learning,computer-vision,Python,Machine Learning,Computer Vision,我试图使用keras库执行二值图像分类,但在检查目标时,我得到了一个ValueError作为错误:预期稠密_1有4维,但得到了形状为(32,2)的数组 在执行我的程序时,我收到了这个错误消息 ValueError:check target时出错:预期稠密1有4个维度,但得到了形状为(32,2)的数组我认为应该将batch\u size参数添加到模型中。编译。另外,尝试打印train\u set返回的内容并查看数据的形状。我尝试将批处理大小添加到model.compile,但仍然显示错误,那么tr
ValueError:check target时出错:预期稠密1有4个维度,但得到了形状为(32,2)的数组
我认为应该将batch\u size
参数添加到模型中。编译
。另外,尝试打印train\u set
返回的内容并查看数据的形状。我尝试将批处理大小添加到model.compile,但仍然显示错误,那么train\u set
呢?从中产生的数据的形状是什么?训练集数据由66个图像组成。我认为应该将批大小
参数添加到模型。编译。另外,尝试打印train\u set
返回的内容并查看数据的形状。我尝试将批处理大小添加到model.compile,但仍然显示错误,那么train\u set
呢?从中产生的数据的形状是什么?训练集数据由66幅图像组成
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)