我用40个类训练了Keras的InceptionResNetV2,并使用model.eevaluate((进行了测试;一切都很好。但是,当我尝试将model.prdictive((与单个图像一起使用时,我会得到类似的输出
CCD_ 1而不是概率分布。
用于错误再现的Colab:https://colab.research.google.com/drive/1BTuNdwQK5CqaggBVAfJ1cTTR2Qp0GH6v?usp=sharing
模型体系结构
21是预测类的索引,您有40个类。如果你有一个类的列表,即class_list[etc..],则该类为class_list[21]
使用Keras的内置函数预处理测试图像对我的情况有所帮助。
from keras.applications.inception_resnet_v2 import preprocess_input
img_batch = preprocess_input(img_batch)
使用model.predict_proba
而不是model.predict
,如下所示:
predict_proba(image, batch_size = 32, verbose = 1)