ROC AUC 分数:y_true 中只有一类存在

问题描述 投票:0回答:0

我是机器学习的新手,我正在尝试获得我自己模型的 ROC AUC 分数。该模型有 14 个类。但是我得到这个错误,说它在 y_true 中只有一个类。 enter image description here

测试数据加载到ImageDataGenerator中。每个类有 120 张图像 enter image description here

这是我测试的模型和数据

model = tf.keras.models.load_model('/content/model055530/model.h5')

test_datagen = ImageDataGenerator(rescale = 1/255.0)
test_gen = test_datagen.flow_from_directory('/content/splitdataV/test/', 
                                            batch_size=BATCH_SIZE,
                                            shuffle=False,
                                            class_mode='categorical',
                                            target_size=(IMAGE_SIZE, IMAGE_SIZE))

设置图像和标签的代码

import numpy as np
from sklearn import metrics

x, y = test_gen.next()
prediction = model.predict(x)

predict_label = np.argmax(prediction, axis=-1)
true_label = np.argmax(y, axis=-1)
from sklearn.metrics import roc_auc_score
roc_auc_score(true_label,predict_label, multi_class='ovo')

如果有人能给我反馈,我将不胜感激。谢谢

python conv-neural-network roc auc imagedatagenerator
© www.soinside.com 2019 - 2024. All rights reserved.