Построить кривую ROC от мультиклассового классификатора с переменной вероятностью с использованием scikit - PullRequest
1 голос
/ 19 сентября 2019

Вывод моего мультиклассового классификатора выглядит так, как показано ниже, для которого мне нужно построить кривую 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?

...