Courbe ROC et AUC
En statistique, la courbe ROC (de l’anglais receiver operating characteristic, pour « caractéristique de fonctionnement du récepteur ») est une courbe qui permet de mesurer la performance d'un test binaire et de comparer les performances de deux tests. Elle représente la sensibilité, c'est-à-dire la probabilité d'être positif sachant qu'on est malade, en fonction de la probabilité d'être positif sachant qu'on n'est pas malade (cette dernière valeur est encore égale à 1 - sensibilité du test).
Cette courbe se construit pour un test dont le résultat est un score qui est un nombre réel (par exemple, une concentration) et où on décide d'un seuil de positivité du test. Pour chaque seuil, on a une valeur de la sensibilité et de la spécificité et ce sont toutes ces valeurs que l'on fait apparaître sur la courbe.
Voici comment l'on construit une courbe ROC à partir d'un échantillon (le plus large possible) de $N$ personnes dont on sait si elles sont malades ou non. On classe ces personnes en fonction du score du test : le score de $P_1$ est inférieur à $P_2$ qui est inférieur à $P_3$ etc... On calcule ensuite les valeurs de la sensibilité et de la spécificité pour $N+1$ valeurs du seuil :
- pour une valeur de seuil inférieure au score de $P_1$, tout le monde est positif et donc la sensibilité vaut $1$ et la spécificité vaut $0.$ On obtient le point $(1,1)$ sur la courbe.
- pour une valeur de seuil comprise entre le score de $P_1$ et celui de $P_2,$ on calcule la spécificité et la sensibilité, et on obtient un point sur la courbe.
- on fait cela pour toutes les valeurs du seuil comprises entre le score de $P_k$ et celui de $P_{k+1}$, puis pour une valeur du seuil supérieure ou égale au score de $P_N.$
On obtient ainsi $N+1$ points que l'on joint par des segments.
Exemple : Voici comment tracer la courbe ROC dans le cas suivant, avec 7 personnes.
Personne | $P_1$ | $P_2$ | $P_3$ | $P_4$ | $P_5$ | $P_6$ | $P_7$ |
Malade ou non | $\overline{M}$ | $\overline{M}$ | $M$ | $\overline{M}$ | $\overline{M}$ | ${M}$ | ${M}$ |
Score | $5,\!3$ | $5,\!7$ | $5,\!8$ | $6,\!1$ | $6,\!2$ | $6,\!3$ | $6,\!7$ |
Alors, en notant $T$ l'événement "le test est positif" et $M$ l'événement la personne est malade, on a
- si le seuil est inférieur à $5,\!3$, $P(T|M)=P(T|\bar M)=1$ ce qui donne le point $(1,1)$.
- si le seuil est compris entre $5,\!3$ et $5,\!7,$ alors $P(T|M)=1$ et $P(T|\bar M)=\frac 34,$ ce qui donne le point $(3/4,1)$.
- et ainsi de suite pour les autres valeurs possibles du seuil. Par exemple, si le seuil est compris entre $6,\!1$ et $6,\!2$ alors $P(T|M)=2/3$ et $P(T|\bar M)=1/4$, ce qui donne le point $(1/4,2/3).$
Finalement, la courbe ROC associée est la suivante :
Pour comparer deux tests, on peut comparer leurs courbes ROC, et plus particulièrement les aires sous cette courbe. On appelle alors AUC (pour Area Under Curve) l'aire du domaine compris entre l'axe des abscisses, la courbe ROC, et les droites $x=0$ et $x=1.$ Le test est parfait si son AUC est égale à $1$ (ce qui revient à dire qu'on peut trouver une valeur du seuil pour laquelle la sensibilité et la spécificité sont égales à $1$).