是这样的,本来是拿了一个卷积锚狗识别模型,是二分类问题,
现在我多加了一个花朵类,由binary改成categorical,模型是训练出来了,但是test的时候不清楚怎么使用categorical的独热编码标签。
之前那个二分类模型是检测label的大小,大于0.5的是dog,否则是cat。变成多分类模型后不清楚怎么改
#二分类的test调用原码
def fig_predict_result(model, count):
test_datagen = ImageDataGenerator(rescale=1. / 255)
test_generator = test_datagen.flow_from_directory(
'./data/test/',
target_size=(150, 150),
batch_size=256,
class_mode='binary')
text_labels = []
plt.figure(figsize=(30, 20))
# 迭代器可以迭代很多条数据,但我这里只取第一个结果看看
for batch, label in test_generator:
pred = model.predict(batch)
for i in range(count):
true_reuslt = label[i]
print(true_reuslt)
if pred[i] > 0.5:
text_labels.append('dog')
else:
text_labels.append('cat')
# 4列,若干行的图
plt.subplot(count / 4 + 1, 4, i + 1)
plt.title('This is a ' + text_labels[i])
imgplot = plt.imshow(batch[i])
plt.show()
————————————————
版权声明:本文为CSDN博主「zhangphil」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zhangphil/article/details/103581736