我正在执行多类图像分类任务。在训练我的 CNN 时,验证准确率在所有时期都保持不变。我尝试了不同的模型架构和不同的超参数值,但没有任何变化。任何想法将不胜感激。这是我目前的结果:
Train and Validation Loss and Accuracy
这是我的CNN:
model = models.Sequential()
model.add(Conv2D(32, (3, 3), activation = 'relu', input_shape= .
(img_width, img_height, 3)))
model.add(MaxPooling2D((2, 2)))
model.add(Conv2D(64, (3, 3), activation = 'relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(128, (3, 3), activation = 'relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Flatten())
model.add(layers.Dropout(0.2))
model.add(layers.Dense(64, activation = 'relu'))
model.add(layers.Dropout(0.2))
model.add(layers.Dense(8, activation = 'softmax'))
model.compile(loss='categorical_crossentropy',
optimizer=optimizers.Adam(lr=0.001, beta_1=0.9, beta_2=0.999,
epsilon=1e-08, decay=0.0001),metrics = ['acc'])
model.summary()
最佳答案
有多种可能的潜在因素可能导致这种现象 - 以下是您可以尝试的一些初步修复的列表,但并不详尽:
class_weights
人为地加权与代表性不足的类别的训练示例相关的损失。可以传递给模型的 fit()
的参数方法。 查看此 GitHub 问题以获取可能有助于解决您的问题的进一步建议:
https://github.com/keras-team/keras/issues/1597
关于python - Keras CNN 中用于多类图像分类的验证精度常数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52356068/