Contenu du cours
Classification Avec Python
Classification Avec Python
Métriques
Jusqu'à présent, nous avons utilisé la métrique de précision pour mesurer la performance du modèle. Ce chapitre montre les inconvénients de cette métrique et introduit plusieurs autres métriques pour résoudre ces problèmes.
Rappelons d'abord la partie TP, TN, FN et FP du dernier chapitre.
Précision
La précision montre une proportion de prédictions correctes.
Mais la précision a ses inconvénients.
Supposons que vous essayez de prédire si un patient a une maladie rare. Le jeu de données contient 99,9% de patients en bonne santé et 0,01% de patients atteints de la maladie. Prédire toujours que le patient est en bonne santé donnera une précision de 0,999, bien qu'un modèle comme celui-ci soit totalement inutile.
Les jeux de données comme celui-ci sont appelés déséquilibrés, et la précision équilibrée aide à gérer cela.
Précision équilibrée
La précision équilibrée calcule la proportion de prédictions positives correctes et la proportion de prédictions négatives correctes séparément et les moyenne. Cela signifie qu'elle accorde une importance égale à chaque classe, quelle que soit sa taille.
Dans l'exemple de maladie rare, la précision équilibrée sera égale à 0,5 pour un modèle toujours sain. Ce problème est résolu.
Mais la précision équilibrée ne différencie toujours pas l'erreur de Type 1 de l'erreur de Type 2, pas plus que la précision. C'est là que la précision et le rappel interviennent.
Précision
La métrique de précision indique combien de valeurs que le modèle a prédites comme positives étaient réellement positives.
C'est une proportion des prédictions Vraies Positives sur l'ensemble des prédictions Positives.
En utilisant la métrique de précision, nous pouvons comprendre à quelle fréquence l'Erreur de Type 1 se produit. Haute précision – l'Erreur de Type 1 est rare et faible précision signifie que l'Erreur de Type 1 est fréquente.
Rappel
Une métrique de rappel montre quelle proportion des valeurs réellement positives sont prédites correctement.
La métrique de rappel donne une compréhension de la fréquence de l'erreur de type 2. Un rappel élevé signifie que l'erreur de type 2 est rare et un rappel faible signifie que l'erreur de type 2 est fréquente.
Le problème avec les métriques de précision et de rappel est que le modèle qui prédit uniquement une classe positive (1) aura un rappel parfait. Cependant, sa précision serait mauvaise.
De plus, le modèle qui prédit correctement une instance positive et toutes les autres instances comme négatives obtiendra une précision parfaite, mais le rappel serait terrible.
Ainsi, nous pouvons facilement construire un modèle avec une précision parfaite ou un rappel parfait, mais il est beaucoup plus difficile de construire un modèle avec à la fois un bon rappel et une bonne précision. Il est donc important de considérer à la fois la précision et le rappel. Heureusement, il existe une métrique qui le fait.
Score F1
Le score F1 est une moyenne harmonique de la précision et du rappel. La moyenne harmonique est ici préférable à la moyenne régulière car elle pénalise plus fortement l'un des termes étant faible.
F1 combine à la fois la précision et le rappel en une seule métrique. F1 sera bon uniquement si la précision et le rappel sont relativement élevés.
Le choix de la métrique dépend de votre tâche. La précision (ou la précision équilibrée pour les ensembles de données déséquilibrés) est intuitive et donne une bonne compréhension de la performance globale du modèle. Si vous devez être plus précis sur les erreurs commises par un modèle, la précision peut indiquer les erreurs de Type 1, tandis que le rappel peut identifier les erreurs de Type 2. Et le score F1 montre à quel point les erreurs de Type 1 et de Type 2 sont équilibrées.
Métriques en Python
Scikit-learn implémente toutes ces métriques. Elles se trouvent dans le module sklearn.metrics
:
Merci pour vos commentaires !