La façon de calculer l'AUC-ROC consiste à tracer le TPR et le FPR comme seuil, est modifié et calcule l'aire sous cette courbe. Mais pourquoi cette zone sous la courbe est-elle la même que cette probabilité? Supposons ce qui suit:τ
- A est la distribution des scores que le modèle produit pour les points de données qui sont réellement dans la classe positive.
- B est la distribution des scores que le modèle produit pour les points de données qui sont en fait dans la classe négative (nous voulons que ce soit à gauche de ).A
- τ est le seuil de coupure. Si un point de données obtient un score supérieur à celui-ci, il est prévu comme appartenant à la classe positive. Sinon, il devrait être dans la classe négative.
Notez que le TPR (rappel) est donné par: et le FPR (retombées) est donné par: .P(A>τ)P(B>τ)
Maintenant, nous traçons le TPR sur l'axe des y et le FPR sur l'axe des x, dessinons la courbe pour divers et calculons l'aire sous cette courbe ( ).τAUC
On a:
AUC=∫10TPR(x)dx=∫10P(A>τ(x))dx
où est le FPR. Maintenant, une façon de calculer cette intégrale est de considérer comme appartenant à une distribution uniforme. Dans ce cas, cela devient simplement l'attente du .
xxTPR
AUC=Ex[P(A>τ(x))](1)
si l'on considère .
x∼U[0,1)
Maintenant, ici était juste lexFPR
x=FPR=P(B>τ(x))
Puisque nous considérons que provient d'une distribution uniforme,
x
P(B>τ(x))∼U
=>P(B<τ(x))∼(1−U)∼U
=>FB(τ(x))∼U(2)
Mais nous savons de la transformation inverse la loi que pour toute variable aléatoire , si puis . Cela suit puisque la prise de n'importe quelle variable aléatoire et l'application de son propre CDF conduit à l'uniforme.XFX(Y)∼UY∼X
FX(X)=P(FX(x)<X)=P(X<F−1X(X))=FXF−1X(X)=X
et cela ne vaut que pour l'uniforme.
L'utilisation de ce fait dans l'équation (2) nous donne:
τ(x)∼B
En substituant cela à l'équation (1), nous obtenons:
AUC=Ex(P(A>B))=P(A>B)
En d'autres termes, l'aire sous la courbe est la probabilité qu'un échantillon positif aléatoire obtienne un score plus élevé qu'un échantillon négatif aléatoire.