Classification: ROC et AUC

La section précédente présentait un ensemble de métriques du modèle, toutes calculées à un une valeur unique de seuil de classification. Mais si vous voulez évaluer du modèle pour tous les seuils possibles, vous avez besoin de différents outils.

Courbe ROC (Receiver Operating Characteristic)

La courbe ROC est une représentation visuelle des performances du modèle pour tous les seuils. La version longue du nom, "Receiver Operating Characteristic" (caractéristique opérationnelle du récepteur) est une retenue des systèmes de détection de radars de la Seconde Guerre mondiale.

La courbe ROC est dessinée en calculant le taux de vrais positifs (TPR). et de faux positifs pour chaque seuil possible (en pratique, des intervalles sélectionnés), puis le TPR et le TFP. Un modèle parfait, qui, à un certain seuil, a un TVP de 1,0 et 0,0, être représenté par un point en (0, 1) si tous les autres seuils sont ignorés, ou par:

Figure 1. Graphique des TFP (axe des ordonnées) et des TFP (axe des abscisses) montrant la
            les performances d'un modèle parfait: une droite comprise entre (0,1) et (1,1).
Image 1. ROC et AUC d'un modèle parfait hypothétique.

Aire sous la courbe (AUC)

L'aire sous la courbe ROC (AUC) représente la probabilité que le modèle, si un exemple positif et négatif est choisi aléatoirement, classera positive supérieure à la négative.

Le modèle parfait ci-dessus, qui contient un carré dont les côtés font 1, a une sous la courbe (AUC) de 1,0. Cela signifie qu'il y a une probabilité de 100% que le modèle classe correctement un exemple positif choisi aléatoirement au-dessus d'un exemple négatif choisi aléatoirement. En d'autres termes, examiner la propagation points de données ci-dessous, l'AUC donne la probabilité que le modèle place carré choisi aléatoirement à droite d'un cercle choisi aléatoirement, indépendamment de où le seuil est défini.

Ligne de données du widget sans curseur

Plus concrètement, un classificateur de spam avec AUC de 1.0 attribue toujours une probabilité plus élevée à un spam de spam qu'un e-mail légitime aléatoire. La classification réelle de chaque dépend du seuil que vous choisissez.

Pour un classificateur binaire, un modèle qui réalise aussi bien des suppositions aléatoires dont la valeur ROC correspond à une ligne diagonale comprise entre (0,0) et (1,1). L'AUC est 0,5, ce qui représente une probabilité de 50% de classer correctement un positif aléatoire et exemple négatif.

Dans l'exemple du classificateur de spam, un classificateur de spam avec une AUC de 0,5 attribue un spam aléatoire a plus de chances d'être indésirable qu'un les e-mails légitimes seulement une fois la moitié du temps.

Figure 2. Graphique des TFP (axe des ordonnées) et des TFP (axe des abscisses) montrant la
            la performance d'un joueur aléatoire de 50 à 50: une ligne diagonale à partir de (0,0)
            à (1,1).
Figure 2 : ROC et AUC de suppositions entièrement aléatoires.

(Facultatif, avancé) Courbe de précision/rappel

Les valeurs AUC et ROC sont efficaces pour comparer des modèles lorsque l'ensemble de données entre les classes. Lorsque l'ensemble de données est déséquilibré, la précision/rappel (PRC) et l'aire sous ces courbes peut offrir un meilleur résultat des performances du modèle. Les courbes de précision/rappel sont créées la précision du tracé sur l'axe des y et le rappel sur l'axe des x sur toutes de sécurité.

Exemple de courbe de précision/rappel avec une courbe convexe descendante à partir de (0,1)
            à (1,0)

AUC et ROC pour choisir le modèle et le seuil

L'AUC est une mesure utile pour comparer les performances de deux modèles différents, à condition que l'ensemble de données soit à peu près équilibré. (voir Courbe de précision/rappel, (voir ci-dessus, pour les ensembles de données déséquilibrés). Le modèle dont l'aire sous la plus grande la courbe est généralement la meilleure.

Figure 3.a. Graphique ROC/AUC d'un modèle avec une AUC=0,65. Figure 3.b. Graphique ROC/AUC d'un modèle avec une AUC=0,93.
Figure 3. ROC et AUC de deux modèles hypothétiques. La courbe sur le avec une AUC supérieure, représente le meilleur des deux modèles.

Les points d'une courbe ROC les plus proches de (0,1) représentent une plage de les seuils les plus performants pour le modèle donné. Comme indiqué dans le Seuils Matrice de confusion et Choix de la métrique et compromis le seuil que vous choisissez dépend de la métrique la plus importante pour un cas d'utilisation spécifique. Examinez les points A, B et C dans les chacun représentant un seuil:

Figure 4. Courbe ROC d'AUC=0,84 représentant trois points sur la
            la partie convexe de la courbe la plus proche de (0,1) étiquetée A, B, C, dans l'ordre.
Figure 4 : Trois points étiquetés représentant des seuils.

Si les faux positifs (fausses alarmes) sont très coûteux, il peut être judicieux de Choisissez un seuil offrant un TFP inférieur, comme celui du point A, même si est réduite. Inversement, si les faux positifs sont bon marché et les faux négatifs (vrais positifs manqués) très coûteux, le seuil du point C, qui maximise le TVI, ce qui peut être préférable. Si les coûts sont à peu près équivalents, point B peut offrir le meilleur équilibre entre le TVP et le TFP.

Voici la courbe ROC des données que nous avons déjà vues:

Exercice: tester vos connaissances

En pratique, les courbes ROC sont bien moins régulières que les illustrations. indiquée ci-dessus. Lequel de ces modèles, représenté par sa courbe ROC et l'AUC offrent les meilleures performances ?
une courbe ROC formant un arc vers le haut, puis vers la droite de (0,0) à
           (1,1). L'AUC de la courbe est de 0,77.
Ce modèle présente l'AUC le plus élevé, ce qui correspond au meilleur des performances.
une courbe ROC qui est approximativement une ligne droite entre (0,0) et
           (1,1), avec quelques zigzags. L'AUC de la courbe est de 0,508.
courbe ROC qui fait des zigzags vers le haut et vers la droite de (0,0) à (1,1).
           L'AUC de la courbe est de 0,623.
une courbe ROC qui fait un arc vers la droite, puis vers le haut
                (0,0) à (1,1). L'AUC de la courbe est de 0,31.
Lequel des modèles suivants fonctionne moins bien que le hasard ?
une courbe ROC qui fait un arc vers la droite, puis vers le haut
                (0,0) à (1,1). L'AUC de la courbe est de 0,32.
L'AUC de ce modèle est inférieure à 0,5, ce qui signifie qu'il est moins performant que le hasard.
la courbe ROC qui est à peu près une ligne droite
                     (0,0) à (1,1), avec quelques zigzags. La courbe présente une
                     AUC de 0,508.
Ce modèle fonctionne légèrement mieux que le hasard.
une courbe ROC qui est une ligne droite diagonale
                (0,0) à (1,1). L'AUC de la courbe est de 0,5.
Ce modèle fonctionne de la même manière que le hasard.
La courbe ROC se compose de deux lignes perpendiculaires: une verticale
      de (0,0) à (0,1) et une ligne horizontale de (0,1) à (1,1).
      L'AUC de cette courbe est de 1,0.
Il s'agit d'un classificateur parfait hypothétique.

(Facultatif, avancé) Question bonus

Laquelle des modifications suivantes peut être faite pire que par hasard à la question précédente pour qu'il soit plus performant que le hasard ?
Inversez les prédictions, de sorte que les prédictions de 1 deviennent 0 et les prédictions de 0 deviennent 1.
Si un classificateur binaire place des exemples de manière fiable dans les mauvaises classes plus souvent que le hasard, en changeant l'étiquette de classe améliore immédiatement ses prédictions que le hasard, sans avoir à à réentraîner le modèle.
Faites en sorte qu'il prédise toujours la classe négative.
Cela peut améliorer les performances au-delà de ses chances. De plus, comme décrites dans la section Précision, ce n'est pas un modèle utile.
Elle doit toujours prédire la classe positive.
Cela peut améliorer les performances au-delà de ses chances. De plus, comme décrites dans la section Précision, ce n'est pas un modèle utile.

Imaginez une situation dans laquelle il est préférable d'autoriser boîte de réception que d’envoyer un e-mail stratégique dans le dossier de spam. Vous avez un classificateur de spam est entraîné dans le cas où la classe positive est comme spam et la classe négative non-spam. Lequel de ces points sur la courbe ROC de votre classificateur ?

Courbe ROC d'AUC=0,84 représentant trois points sur la partie convexe d'un
       qui sont proches de (0,1). Le point A est à environ
       (0,25, 0,75). le point B est à environ (0,30, 0,90) et est
       le point qui maximise le TVP tout en minimisant le TFP. Point d'accès
       C est d'environ (0,4, 0,95).
Point A
Dans ce cas d'utilisation, il est préférable de minimiser les faux positifs, même si les vrais positifs diminuent.
Point B
Ce seuil équilibre les vrais et faux positifs.
Point C
Ce seuil maximise le nombre de vrais positifs (signale plus de spam) au prix d'un plus grand nombre de faux positifs (plus d'e-mails légitimes signalés comme spam).