-
问题描述:在使用预测模型预测图片的时候,输出的是一个整数,而不是图片的类别名称。
-
报错信息:
infer results: 5
- 问题复现:使用训练保存的预测模型预测经过预处理的图片,使用预测的结果经过
np.argmax(results[0])进行处理,获取概率最大的值,最后输出的是一个整数值。复现代码如下:
img = load_image('dog.png')
results = inferencer.infer({'pixel': img})
print("infer results: ", np.argmax(results[0]))
- 解决问题:在训练的时候,使用的是类别的标签,也就是一个整数,所以在预测的时候输出的也是类别的标签。需要输出类别的名称,还要根据标签对应的类别名称进行输出。
img = load_image('dog.png')
results = inferencer.infer({'pixel': img})
label_list = [
"airplane", "automobile", "bird", "cat", "deer", "dog", "frog", "horse",
"ship", "truck"]
print("infer results: ", label_list[np.argmax(results[0])])
- 问题拓展:PaddlePaddle的分类标签都是整数值,其中
int64类型的标签非常常用。PaddlePaddle的分类标签不支持使用字符串的方式输入类别名称,所以都是整数作为类别的标签,而已必须要从0开始标记。
本文详细介绍了在使用PaddlePaddle预测模型时遇到的输出为整数而非类别名称的问题,并提供了具体的解决方案,即通过映射整数标签到相应的类别名称来解决。同时,文章还探讨了PaddlePaddle中分类标签的特性,帮助读者更好地理解和应用预测模型。
1855

被折叠的 条评论
为什么被折叠?



