首页 > 解决方案 > cnn 模型的 softmax 得分

问题描述

我已经建立了一个用于图像分类的 CNN 模型。我想挑选五个被网络正确分类并具有最大 softmax 分数的图像(对于每个类别)。

我试图检查 model.evaluate(X_test,y_test) 但它给出了模型的整体 softmax 分数。

model = Sequential()
model.add(Conv2D(96, (7, 7),  kernel_initializer='he_uniform', padding='same',strides=2, input_shape=(32, 32, 3)))
model.add(Activation("relu"))
model.add(Conv2D(64, (5, 5), kernel_initializer='he_uniform', padding='same',strides=2))
model.add(Activation("relu"))

model.add(Conv2D(128, (3, 3), kernel_initializer='he_uniform', padding='same',strides=2))
model.add(Activation("relu"))

model.add(MaxPooling2D(pool_size=(3, 3),padding='same',strides=3))

model.add(Flatten())

model.add(Dense(128))
model.add(Activation("relu"))

model.add(Dense(10, activation='softmax'))

编译模型

opt = SGD(lr=0.0001, momentum=0.9)
model.compile(optimizer=opt, loss='categorical_crossentropy', metrics['accuracy'])

我想查看正确分类图像的 softmax 分数。

标签: pythontensorflowkerassoftmax

解决方案


为此,您必须使用model.predict,而不是model.evaluate

model.predict(X_test)

推荐阅读