python - 使用 flow_from_directory() 时如何知道标签的顺序?
问题描述
我正在使用 softmax 进行多类分类。我的最终输出给了我三个概率,每个概率对应一个类,我怎么知道每个概率指的是哪个类?我正在通过图像数据生成器训练我的模型。
train_generator = train_datagen.flow_from_directory(
'/gdrive/MyDrive/shot/training',
target_size=(640, 360),
batch_size=32,
class_mode='categorical')
/gdrive/MyDrive/shot/training
在同一个项目中,我通过 test_datagen 提供一些图像进行预测,我如何知道 model.predict() 正在处理哪个图像?
t_gen = test_datagen.flow_from_directory(
'/gdrive/MyDrive/shot/testing',
target_size=(640, 360),
batch_size=32,
class_mode='categorical')
classes = model.predict(t_gen,batch_size=32)
print(classes)
我得到一个充满概率的表格作为答案,但我不知道预测了哪个图像以及每个概率对应于哪个标签。
解决方案
由于您是从图像数据生成器训练的,因此您可以按如下方式使用您的课程
labels = list(train_datagen.class_indices.keys())
pred = model.predict(input_data)
classes = labels[pred.argmax()]
print(classes)
# or
labels = ['badshot', 'goodshot', 'noshot']
pred = model.predict(input_data)
classes = labels[pred.argmax()]
推荐阅读
- haskell - 如何使 Applicative 的实例成为某种数据类型
- azure - Azure Devops 中的“上一次执行成功后构建”
- firebase - 您从哪里获取/找到 Firebase 的 JWT-Secret?
- python - Python 中文本数据的 FScore、Precision、Recall 和 Accuracy
- php - 无法在“a href”链接中传递带撇号的变量
- excel - 如何根据翻译列表用中文字符替换列中的单元格?
- bash - 如何通过 xargs 将多个查询参数传递到 httpie?
- c - 它是可移植的编译库吗?
- typescript - 确保对象将每个枚举值作为键(Typescript)?
- python - pip安装后找不到python模块