Wie lässt sich die probabilistische Interpretation der AUC ableiten?

14

Warum ist der Bereich unter der ROC-Kurve die Wahrscheinlichkeit, dass ein Klassifizierer eine zufällig ausgewählte "positive" Instanz (aus den abgerufenen Vorhersagen) höher einstuft als eine zufällig ausgewählte "positive" Instanz (aus der ursprünglichen positiven Klasse)? Wie kann man diese Aussage mathematisch unter Verwendung von Integralen beweisen und die CDFs und PDFs der wahren positiven und negativen Klassenverteilungen angeben?

mff
quelle
2
Ich habe hier einen sehr elementaren Beweis dafür geschrieben: madrury.github.io/jekyll/update/statistics/2017/06/21/…
Matthew Drury

Antworten:

9

Versuchen wir zunächst, den Bereich unter der ROC-Kurve formal zu definieren. Einige Annahmen und Definitionen:

  • Wir haben einen probabilistischen Klassifikator, der eine "Punktzahl" s (x) ausgibt, wobei x die Merkmale sind, und s eine generisch zunehmende monotone Funktion der geschätzten Wahrscheinlichkeit p ist (Klasse = 1 | x).

  • , mit k = { 0 , 1 } : = pdf der Punktzahlen für Klasse k, mit CDF F k ( s )fk(s)k={0,1}Fk(s)

  • Die Klassifizierung einer neuen Beobachtung wird erhalten, indem die Punktzahl s mit einem Schwellenwert t verglichen wird

Betrachten wir der mathematischen Einfachheit halber die positive Klasse (Ereignis erkannt) k = 0 und die negative k = 1. In dieser Einstellung können wir definieren:

  • Rückruf (auch bekannt als Sensitivität, auch bekannt als TPR) : (Anteil der als positiv eingestuften positiven Fälle)F.0(t)
  • Spezifität (auch bekannt als TNR) : (Anteil der als negativ eingestuften negativen Fälle)1- -F.1(t)
  • FPR (auch bekannt als Fall-out) : 1 - TNR = F.1(t)

Die ROC-Kurve ist dann eine Auftragung von gegen F 1 ( t ) . Wenn wir v = F 1 ( s ) setzen , können wir die Fläche unter der ROC-Kurve formal definieren als: A U C = 1 0 F 0 ( F - 1 1 ( v ) ) d v Variable ändern ( d v = f 1 () s ) d sF.0(t)F.1(t)v=F.1(s)

EINU.C.=01F.0(F.1- -1(v))dv
dv=f1(s)ds):
EINU.C.=- -F.0(s)f1(s)ds

Diese Formel kann leicht als die Wahrscheinlichkeit angesehen werden, dass ein zufällig gezogenes Mitglied der Klasse 0 eine niedrigere Punktzahl als die Punktzahl eines zufällig gezogenen Mitglieds der Klasse 1 erzeugt.

Dieser Beweis stammt von: https://pdfs.semanticscholar.org/1fcb/f15898db36990f651c1e5cdc0b405855de2c.pdf

Alebu
quelle
4

@ Alebus Antwort ist großartig. Die Notation ist jedoch nicht standardisiert und verwendet 0 für die positive Klasse und 1 für die negative Klasse. Nachfolgend sind die Ergebnisse für die Standardnotation aufgeführt (0 für die negative Klasse und 1 für die positive Klasse):

f0(s)F0(s)

f1(s)F1(s)

x(s)=1F0(s)

y(s)=1F1(s)

AUC=01y(x)dx=01y(x(τ))dx(τ)=+y(τ)x(τ)dτ=+(1F1(τ))(f0(τ))dτ=+(1F1(τ))f0(τ)dτ

where τ stands for threshold. One can apply the interpretation in @alebu's answer to the last expression.

Lei Huang
quelle
0

The way to calculate AUC-ROC is to plot out the TPR and FPR as the threshold, τ is changed and calculate the area under that curve. But, why is this area under the curve the same as this probability? Let's assume the following:

  1. A is the distribution of scores the model produces for data points that are actually in the positive class.
  2. B is the distribution of scores the model produces for data points that are actually in the negative class (we want this to be to the left of A).
  3. τ is the cutoff threshold. If a data point get's a score greater than this, it's predicted as belonging to the positive class. Otherwise, it's predicted to be in the negative class.

Note that the TPR (recall) is given by: P(A>τ) and the FPR (fallout) is given be: P(B>τ).

Now, we plot the TPR on the y-axis and FPR on the x-axis, draw the curve for various τ and calculate the area under this curve (AUC).

We get:

AUC=01TPR(x)dx=01P(A>τ(x))dx
where x is the FPR. Now, one way to calculate this integral is to consider x as belonging to a uniform distribution. In that case, it simply becomes the expectation of the TPR.

(1)AUC=Ex[P(A>τ(x))]
if we consider xU[0,1) .

Now, x here was just the FPR

x=FPR=P(B>τ(x))
Since we considered x to be from a uniform distribution,

P(B>τ(x))U
=>P(B<τ(x))(1U)U
(2)=>FB(τ(x))U

But we know from the inverse transform law that for any random variable X, if FX(Y)U then YX. This follows since taking any random variable and applying its own CDF to it leads to the uniform.

F.X.(X.)=P.(F.X.(x)<X.)=P.(X.<F.X.- -1(X.))=F.X.F.X.- -1(X.)=X.
und das gilt nur für uniform.

Die Verwendung dieser Tatsache in Gleichung (2) ergibt:

τ(x)B.

Wenn wir dies in Gleichung (1) einsetzen, erhalten wir:

EINU.C.=E.x(P.(EIN>B.))=P.(EIN>B.)

Mit anderen Worten, der Bereich unter der Kurve ist die Wahrscheinlichkeit, dass eine zufällige positive Stichprobe eine höhere Punktzahl aufweist als eine zufällige negative Stichprobe.

ryu576
quelle