Вывод моего мультиклассового классификатора выглядит так, как показано ниже, для которого мне нужно построить кривую ROC и получить auc
Utterence Actual Predicted Conf_intent1 Conf_Intent2 Conf_Intent3
Uttr 1 Intent1 Intent1 0.86 0.45 0.24
Uttr2 Intent3 Intent2 0.47 0.76 0.55
Uttr3 Intent1 Intent1 0.70 0.20 0.44
Uttr4 Intent3 Intent2 0.42 0.67 0.56
Uttr5 Intent1 Intent1 0.70 0.55 0.36
Note: Probability is done on absolute scoring so will not add to 1 for particular utterence the highest probability will be predicted
Из моего кода я сделал матрицу путаницы какthis:
import pandas as pd
import numpy as np
from sklearn.metrics import multilabel_confusion_matrix
from sklearn.metrics import accuracy_score
from sklearn.metrics import classification_report
#reading the input file
df = pd.read_excel('C:\\testsamples.xlsx')
#Converting the columns to array
actual = df['Actual'].to_numpy()
predicted = df['Predicted'].to_numpy()
mcm = multilabel_confusion_matrix(actual, predicted)
Как я могу построить кривую ROC из этого для каждого Intent1,2 и 3 и извлечь соответствующую информацию, такую как auc?