【发布时间】:2018-07-15 10:49:35
【问题描述】:
我加载了我训练的模型。 这是训练的最后一层:
model.add(Flatten())
model.add(Dense(64))
model.add(Activation('relu'))
model.add(Dropout(0.5))
model.add(Dense(3))
model.add(Activation('sigmoid'))
model.compile(loss='categorical_crossentropy',
optimizer='adam',
metrics=['accuracy'])
之后,我尝试对随机图像进行预测。 所以我加载模型:
#load the model we created
json_file = open('/path/to/model_3.json', 'r')
loaded_model_json = json_file.read()
json_file.close()
loaded_model = model_from_json(loaded_model_json)
# load weight into model
loaded_model.load_weights("/path/to/model_3.h5")
print("\nModel successfully loaded from disk! ")
# Predicting images
img =image.load_img('/path/to/image.jpeg', target_size=(224, 224))
x = image.img_to_array(img)
x *= (255.0/x.max())
image = np.expand_dims(x, axis = 0)
image = preprocess(image)
preds = loaded_model.predict_proba(image)
pred_classes = np.argmax(preds)
print(preds)
print(pred_classes)
作为输出我得到这个:
[[6.0599333e-26 0.0000000e+00 1.0000000e+00]]
2
这基本上就像我得到[0 0 1]
喜欢predict_classes。虽然我想得到概率。
所以我正在寻找像[0.75 0.1 0.15] 这样的输出。
有什么想法吗?
【问题讨论】:
-
stackoverflow.com/questions/48621833/… 是不是同一个问题?你可能是同一个用户??
标签: python image-processing tensorflow machine-learning keras