Je fais la classification multiclasse en utilisant l'approche de régression logistique. En fait, je sais que si j'utilise accuracy_score function() (par exemple, de la bibliothèque de sklearn) il me calculer la précision de la valeur nette à la valeur distincte comme ceci:Score de précision pour un vecteur de prédictions utilisant la régression logistique en Python
y_pred = [0, 2, 1, 3]
y_true = [0, 1, 2, 3]
accuracy_score(y_true, y_pred)
0.5
Mais je veux obtenir le accuracy_score_new() fonction d'un vecteur de meilleurs prédictions de régression logistique pour chaque étiquette (de predict_proba) et calcule si la vraie étiquette se trouve dans cet intervalle comme suit:
y_pred = [[0,1,3] [2,1,4], [1,2,5] [3,7,9]]
y_true = [0, 1, 2, 3]
accuracy_score_new(y_true, y_pred)
1
le accuracy_score_new dans cet exemple sera égal à 1 car le classificateur prédit que l'étiquette est dans l'intervalle. Comment cette fonction peut-elle être effectuée?
Voulez-vous utiliser la nouvelle fonction dans une classe scikit ou voulez juste utiliser vous-même pour l'impression de la nouvelle précision. Si ce dernier, alors vous pouvez écrire du code python simple pour cela. Juste itérer sur les deux tableaux. –