Dans un récent Webinaire techniquement parlant , J'ai discuté de la prédiction du risque de maladie artérielle périphérique (MAP) où la réponse est catégorique avec deux résultats possibles: Oui (patient à risque d'avoir une MAP) et Non (patient pas à risque d'avoir une MAP).
Au cours de cette présentation, j'ai souligné que le modèle de prédiction contient deux parties 1) la fonction de probabilité créée par un modèle et 2) le seuil utilisé pour classer les données comme étant les plus probables Oui ou Non. J'ai brièvement mentionné que la courbe ROC est un bon moyen d'évaluer et de comparer la fonction de probabilité créée par le modèle.
Ce billet de blog expliquera plus en détail les courbes ROC et comment les interpréter. Je fournirai également quelques réflexions sur les courbes ROC lors de la prédiction d'événements rares (données déséquilibrées) et du choix d'un seuil de classification.
La courbe ROC
La courbe ROC pour un modèle de prédiction du risque de maladie artérielle périphérique (MAP) est illustrée à la figure 1.
Figure 1. Courbe ROC pour le modèle de prédiction PAD.
Eléments standards de la courbe ROC:
- L'axe des x est 1-Specficity, qui est le taux de faux positifs; il varie de 0 à 1. Elle peut également être considérée comme l'erreur de type I du modèle.
- L'axe des y est la sensibilité, qui est la proportion de vrais positifs; il varie de 0 à 1. Il peut également être considéré comme la puissance du modèle ou comme une erreur de type 1.
- Parfois, une ligne diagonale passe par 0,0 et 1,1, où le taux de vrais positifs est égal au taux de faux positifs. Cette ligne représente un modèle vraiment aléatoire ou un modèle qui n'a pas de valeur prédictive.
Alors, qu'est-ce qui est tracé sur la courbe ROC?
Pour comprendre ce qui est tracé sur la courbe ROC, rappelez-vous que le modèle de prédiction d'une réponse catégorielle comporte deux parties 1) la fonction de probabilité et 2) un seuil pour classer la probabilité en catégories les plus probables. Pour chaque observation de l'ensemble de données, la probabilité prédite est utilisée comme seuil de classification. La sensibilité et la spécificité 1 résultantes d'un modèle avec ce seuil sont tracées pour chaque observation de l'ensemble de données. J'entrerai plus en détail sur ces calculs ci-dessous.
Notez que la courbe ROC ne tombe jamais en dessous de la ligne diagonale qui passe par 0,0 et 1,1.
Et comment interpréter la courbe ROC?
Un modèle parfait passe par le coin supérieur gauche de la grille (0,1). Une valeur x de 0 indique que le modèle ne produit aucun faux positif. Une valeur y de 1 indique que le modèle donne tous les vrais positifs.
La zone sous la courbe ROC (AUC) donne une indication de la proximité du modèle avec le coin supérieur gauche de la courbe ROC. Une AUC de 1 est un modèle parfait, et une AUC de 0,5 est un modèle aléatoire ou un modèle sans valeur prédictive. Puisque la courbe ROC ne tombe jamais en dessous de la ligne diagonale, l'AUC sera toujours comprise entre 0,5 et 1.
Une AUC plus élevée indique que le modèle est plus éloigné de la ligne diagonale qui représente un modèle sans valeur prédictive et se rapproche d'un modèle parfait qui passe par le coin supérieur gauche de la grille (0,1).
Un examen plus approfondi de la courbe ROC pour le modèle PAD
Examinons de plus près la courbe ROC pour le modèle de prédiction du risque de PAD et comment les valeurs x et y sont calculées. La figure 2 est un tracé graphique d'un sous-ensemble d'observations dans l'ensemble de données et tracé sur une courbe ROC. Certains de ces points sont étiquetés avec leur probabilité de prédiction correspondante pour PAD = Oui.
Figure 2. Exemple de courbe ROC pour un événement rare.
Tout d'abord, notez que les points de données sont dans l'ordre des probabilités prédites, allant de 0,02 à 0,53. Si j'avais construit un modèle à partir d'un ensemble de données avec un nombre égal pour Oui et Non, je m'attendrais à ce que la plage soit comprise entre 0 et 1 avec 0,5 près du centre de la courbe. Cependant, cet ensemble de données concerne un ensemble de données rare ou déséquilibré, ce qui signifie qu'il y a une fréquence de Oui beaucoup plus faible que Non.
Le point de données dans le coin supérieur droit du graphique correspond à la probabilité prédite la plus faible dans le sous-ensemble de données (0,02). Avant de parler des calculs utilisés pour tracer ce point, prenez une minute pour réfléchir au scénario. Si nous utilisons l'une des probabilités prédites les plus basses comme seuil pour classer toutes les probabilités prédites, que va-t-il se passer avec nos classifications? Presque toutes les données seront classées comme Oui lorsque beaucoup d'entre elles sont vraiment un Non. Cela correspond à un taux élevé de faux positifs (1-Spécificité). De même, toutes les données qui sont un Oui seront classées comme un Oui, ce qui est un taux de vrais positifs élevé (sensibilité).
Pensez également au point de données dans le coin inférieur gauche du graphique. Ce point correspond à la probabilité prédite la plus élevée dans les données (0,53).Si la probabilité prédite la plus élevée est utilisée comme seuil, toutes les données seront classées comme non, ce qui signifie que le taux de faux positifs (spécificité 1) est faible, en fait il est nul.Toutes les données qui sont un Oui seront classées comme un Non, ce qui se traduit par un faible taux de vrais positifs (sensibilité), et encore une fois, est de zéro.
Calcul de la spécificité et de la sensibilité 1
Pour tracer des données sur la courbe ROC, nous devons calculer 1-Spécificité et Sensibilité. Commençons par le point de données dans le coin supérieur droit de la figure 2 qui correspond à la probabilité prédite la plus faible dans le sous-ensemble de données (0,02). Premièrement, la probabilité prédite de 0,02 est utilisée comme seuil pour classer l'ensemble de données entier comme Oui ou Non. Cette condition prédite est comparée à la condition réelle ou vraie et les données peuvent être séparées en quatre résultats - vrai positif, vrai négatif, faux négatif, faux positif (figure 3). La figure 3 est appelée matrice de confusion et les nombres renseignés dans la matrice de confusion sont utilisés pour calculer la spécificité 1 et la sensibilité.
|
Vraie condition
|
Réel positif
|
Négatif réel
|
Condition prédite
|
Prédiction positive
|
Vrai positif (TP)
|
Faux positif (FP)
|
Prédiction négative
|
Faux négatif (FN)
|
Vrai négatif (TN)
|
Figure 3. Résultats des modèles de classification binaire (Confusion Matrix).
1-Spécificité
1-La spécificité est le taux de faux positifs et est calculé en soustrayant le taux de vrais négatifs de un. Le taux de vrais négatifs est le nombre de vrais négatifs (TN) prédit par le modèle divisé par le nombre total de négatifs réels qui comprend à la fois les vrais négatifs (TN) et les faux positifs (FP).

Sensibilité
La sensibilité est le taux de vrais positifs qui est le nombre de vrais positifs (TP) prédit par le modèle divisé par le nombre total de vrais positifs, y compris les vrais positifs (TP) et les faux négatifs (FN).

Avec un seuil de classification de 0,02 appliqué à l'ensemble de données, nous obtenons les résultats présentés dans la figure 4 ci-dessous.
|
Vraie condition
|
Réel positif
|
Négatif réel
|
Condition prédite
|
Prédiction positive
|
TP = 277
|
FP = 3394
|
Prédiction négative
|
FN = 0
|
TN = 312
|
Graphique 4. Résultats du modèle de prédiction PAD avec un seuil de classification de 0,02.
À partir de ces résultats, nous pouvons calculer la spécificité 1 et la sensibilité qui correspondent aux valeurs x et y, respectivement, tracées sur la courbe ROC.


En résumé, la courbe ROC est un tracé de chaque point de données de l'ensemble de données qui a été utilisé pour créer la fonction de probabilité. 1-La spécificité et la sensibilité sont calculées pour chaque point de données en utilisant les résultats de la matrice de confusion lorsque la probabilité prédite est utilisée comme seuil de classification.
En parcourant ces calculs pour la courbe ROC, nous pouvons également conclure qu'un modèle de prédiction utilisant la fonction de probabilité et une classification de 0,02 ne serait pas un excellent modèle. Premièrement, puisque ce point est proche de la ligne diagonale qui représente un modèle vraiment aléatoire, nous ne sommes pas beaucoup mieux que d'attribuer simplement au hasard le risque de MAP aux patients. Nous pouvons également voir à partir des calculs qu'il existe un écart important entre notre taux réel négatif (spécificité) de 0,08 et notre taux positif réel (sensibilité) de 1. En d'autres termes, alors que 100% des vrais cas de MAP sont classés, le taux de faux positifs est de 92%. Nous voudrons choisir un seuil de classification qui équilibre la spécificité et la sensibilité et qui soit plus éloigné de la ligne diagonale et plus proche du coin supérieur gauche du graphique.
Choisir un seuil de classification
Par défaut, un seuil de 0,5 est utilisé pour classer les données en fonction de la fonction de probabilité, JMP crée une formule de prédiction en utilisant ce seuil. Un seuil de 0,5 peut être approprié pour les données avec un nombre égal de positifs et de négatifs réels. Cependant, lorsque le taux positif réel est faible (par exemple, des événements rares ou des données déséquilibrées), un seuil de 0,5 n'est probablement pas optimal.
La question devient alors, quelle approche peut être utilisée pour choisir un seuil de classification pour les événements rares? La courbe ROC nous donne quelques indices. Le coin supérieur gauche du graphique est l'endroit où le taux négatif réel (spécificité) et le taux positif réel (sensibilité) des deux sont maximisés. En regardant la figure 2, où les probabilités de prédiction sont étiquetées, nous pouvons voir qu'un seuil autour de 0,07 serait optimal pour ce modèle de prédiction si notre objectif est d'équilibrer spécificité et sensibilité.Cependant, les courbes ROC ne sont généralement pas étiquetées avec leurs probabilités de prédiction.
La statistique J de Youden peut être utilisée pour trouver la probabilité de prédiction qui correspond au point de la courbe ROC où la spécificité et la sensibilité sont maximisées.

La statistique J de Youden est comprise entre 0 et 1 où 0 correspond à un taux égal de vrais positifs et de faux positifs et 1 correspond à un modèle avec tous les vrais positifs et pas de faux positifs. Il peut également être considéré comme le point le long de la courbe ROC qui est le plus éloigné de la ligne diagonale qui représente un modèle aléatoire.
Si vous utilisez la logistique nominale dans la plate-forme Fit Model, lorsque vous sélectionnez la courbe ROC, vous obtiendrez également une table ROC correspondante. L'une des colonnes du tableau est la statistique J de Youden et est étiquetée Sens- (1-Spec). Le tableau ROC peut être trié par ordre décroissant de Sens- (1-Spec) pour identifier la probabilité de prédiction (Prob) qui a le maximum Sen- (1-spec) qui est l'endroit où le taux réel négatif (spécificité) et le taux réel positif (sensibilité ) des deux sont maximisés. Vous pouvez voir que JMP place un astérisque à côté de la valeur maximale pour Sens- (1-Spec).

Dans l'exemple PAD, il y avait seulement 277 patients avec PAD à partir d'un ensemble de données avec 3 983 patients; un seuil de classification de 0,07 équilibrait le taux réel positif et vrai négatif. Une fois qu'un seuil de classification a été déterminé, il peut être modifié dans la formule de prédiction enregistrée dans la table de données. Je noterai que le choix d'un seuil dépend de l'objectif du modèle de prédiction et des risques associés aux résultats. Un chercheur peut choisir un seuil différent s'il souhaite, par exemple, se prémunir contre les faux positifs ou les faux négatifs.