Erläutern eines Schritts zur Ableitung des Kostenverhältnisses in der ROC-Kurve als Funktion der AUC

Dec 21 2020

Auf diesem Papier von David Hand sind die Fehlklassifizierungskosten$c_0$ und $c_1$ mit dem Verhältnis $c$ definiert als $c=c_0/(c_0+c_1).$ Der als optimal angesehene Schwellenwert ist

$$T(c)=\underset{t}{\text{arg min}}\left\{ c\pi_0(1-F_0(t)) + (1-c) \pi_1 F_1(t) \right\}$$

mit $t$ eine beliebige Schwelle in den Punktzahlen sein, und $1=\pi_0+\pi_1$ die Fraktionen von kranken und gesunden Personen in der Bevölkerung. $F_0$ ist die Verteilung von erkrankten und $F_1$die Verteilung von gesunden Personen. Fälle gelten als Klasse$0.$

Angenommen, eine Eins-zu-Eins-Beziehung von $c$ mit $T$ und differenzierend erhält er folgendes Ergebnis (Gleichung (5)):

$$c= \color{red}{\Pr(1\vert T)} = \pi_1 f_1(T) / \left\{ \pi_0f_0(T) + \pi_1f_1(T)\right\}$$

wo $\Pr(1\vert T)$ ist die bedingte Wahrscheinlichkeit der Zugehörigkeit zur Klasse $1,$ angesichts der Punktzahl $T.$

Ich verfolge hier alles bis auf den Teil in Rot. Es mag ein sehr grundlegendes Missverständnis sein, aber sollte die bedingte Wahrscheinlichkeit nicht aus einem Verhältnis von cdf im Gegensatz zu pdf berechnet werden ?

Ich nehme an, die Antwort liegt in der Berücksichtigung der Ergebnisse $s(x)$ in der logistischen Regression als monoton zunehmende Transformation von $\Pr(1 \vert x).$


Hier ist ein erfolgloser Versuch, dies zu hacken:

install.packages('pROC')
install.packages('ROCR')
install.packages('Epi')
library(pROC)
library(ROCR)
library(Epi)

set.seed(561)

cost0 = 1   # Cost of mis-classifying a normal as having cancer in million $ cost1 = 10 # Cost of mis-classifying a cancer patient as normal (death?) b = cost0 + cost1 c = cost0/(b) n = 7000 # Total cases pi0 =.8 # Percentage of normal pi1 =.2 # Percentage of disease # Actual values of the test for normals and disease (D higher test values) testA_Normals = rnorm(n*pi0, mean=3, sd=1) testA_Sick = rnorm(n*pi1, 6, 1) # Determining a threshold based on cost # arg t min {Loss = cost0 * (1 - pnorm(t,3,1)) * pi0 + # cost1 * pnorm(t,6,1) * pi1} t = seq(0,10,0.0001) loss <- cost0 * (1 - pnorm(t,3,1)) * pi0 + cost1 * pnorm(t,6,1) * pi1 Threshold = data.frame(t,loss)[which(loss==min(loss)),]$t

hist(testA_Normals,border=F, xlim=c(0,10))
hist(testA_Sick,col=2,border=F, add=T)

abline(v=Threshold)

Vergleich der 3 Gleichungen in der Gleichung:

c
pi1 * dnorm(Threshold,6,1) / (pi0 * dnorm(Threshold,3,1) + pi1 * dnorm(Threshold,6,1))
#P(1|T) = P(T|1) * P(1) / [P(T|0) * P(0) + P(T|1) * P(1)]
(pnorm(Threshold,6,1,F)*pi1)/(pnorm(Threshold,6,1,F)*pi1+
                            pnorm(Threshold,3,1,F)*pi0)

0.0909090909090909
0.0909165896894187
0.6749524!!!!!(***)

$(***) \text{Edit}:$ Nachdem ich Hilfe von einer sehr zuverlässigen Quelle erhalten habe (unbenannt, damit ich nicht falsch zitiere), das Denken dahinter $\Pr(1\vert T)$ ist nicht $\Pr(1\vert s \geq T),$ Das wäre das, was mein Code vorschlagen würde, aber eher $\Pr(1\vert s=T),$ oder $$\Tiny\lim_{d \to 0}\frac{d \pi_1 f_1(T)}{ d \pi_1 f_1(T) + d \pi_0 f_0(T) }= \lim_{d \to 0} \Pr\left(1\Big\vert -\frac d 2 +T +\frac d 2\right). $$

Antworten

3 DilipSarwate Dec 23 2020 at 05:19

Gegebene Entscheidungsregel

Wenn Hypothese $\mathsf H_0$ ist wahr (ein Ereignis, das mit Wahrscheinlichkeit auftritt $\pi_0$), die Entscheidungsvariable $X$ überschreitet den Schwellenwert $t$ mit Wahrscheinlichkeit $(1-F_0(t))$ (und so tritt ein Fehlalarm auf) und die anfallenden Kosten sind $c_0$.

Wenn Hypothese $\mathsf H_1$ ist wahr (ein Ereignis, das mit Wahrscheinlichkeit auftritt $\pi_1$), die Entscheidungsvariable $X$ ist kleiner als der Schwellenwert $t$ mit Wahrscheinlichkeit $F_1(t)$ (und so tritt eine Fehlerkennung auf) und die anfallenden Kosten sind $c_1$.

Somit sind die durchschnittlichen Kosten oder erwarteten Kosten jeder Entscheidung\begin{align} \text{average cost} &= c_0\pi_0(1-F_0(t)) + c_1\pi_1F_1(t)\\\ &= (c_0 + c_1)\left[\frac{c_0}{c_0 + c_1}\pi_0(1-F_0(t)) + \frac{c_1}{c_0 + c_1}\pi_1F_1(t)\right]\\ &= (c_0 + c_1)\big[c\pi_0(1-F_0(t)) + (1-c)\pi_1F_1(t)\big]. \end{align} Der Wert von $t$ das minimiert somit die durchschnittlichen Kosten $$T = \underset{t}{\arg \min}\big[c\pi_0(1-F_0(t)) + (1-c)\pi_1F_1(t)\big],\tag{1}$$ und die minimalen durchschnittlichen Kosten, die diese Entscheidungsregel erreichen kann, sind $$\text{minimum average cost}=(c_0 + c_1)\big[c\pi_0(1-F_0(T)) + (1-c)\pi_1F_1(T)\big]. \tag{2}$$

Beachten Sie jedoch, dass diese Minimalität der durchschnittlichen Kosten nur unter allen Entscheidungsregeln des Formulars enthalten ist

Wenn $X > t$ist die Entscheidung, dass$\mathsf H_1$aufgetreten.
Wenn$X \leq t$ist die Entscheidung, dass$\mathsf H_0$ aufgetreten.

Andere Entscheidungsregeln können durchaus geringere Durchschnittskosten verursachen als $(2)$und wir diskutieren diese unten.


Optimale Entscheidungsregel für minimale und durchschnittliche Kosten

Die optimale Entscheidungsregel für minimale erwartete Kosten ist diejenige, die das Wahrscheinlichkeitsverhältnis vergleicht$\displaystyle\Lambda(X) = \frac{f_1(X)}{f_0(X)}$ bis zur Schwelle $\displaystyle\frac{c_0\pi_0}{c_1\pi_1}$ und entscheidet das $\mathsf H_0$ oder $\mathsf H_1$ aufgetreten nach als $\Lambda(X)$kleiner oder gleich dem Schwellenwert ist oder größer als der Schwellenwert ist. Somit kann die reale Linie in Mengen aufgeteilt werden$\Gamma_0$ und $\Gamma_1$ definiert als \begin{align} \Gamma_0 &= \big\{X \in \Gamma_0 \implies \textit{decision }\text{is that } \mathsf H_0~\text{occurred}\big\}\\ &= \left\{x\in \mathbb R\colon \Lambda(x) \leq \frac{c_0\pi_0}{c_1\pi_1}\right\}\\ \Gamma_1 &= \big\{X \in \Gamma_1 \implies \textit{decision }\text{is that } \mathsf H_1~\text{occurred}\big\}\\ &= \left\{x\in \mathbb R\colon \Lambda(x) > \frac{c_0\pi_0}{c_1\pi_1}\right\} \end{align} wo $\Gamma_0$ und $\Gamma_1$ sind nicht unbedingt die Sätze $\left\{x \leq T\right\}$ und $\left\{x > T\right\}$zuvor diskutiert. Die optimale Entscheidung über die minimalen Durchschnittskosten hat Kosten von$$\text{minimum average cost}=(c_0 + c_1)\big[c\pi_0\Pr\{X \in \Gamma_1\mid \mathsf H_0\} + (1-c)\pi_1\Pr\{X \in \Gamma_0\mid \mathsf H_1\}\big]. \tag{3}$$

Wenn das Wahrscheinlichkeitsverhältnis eine monoton ansteigende Funktion seines Arguments ist,

dann $\Gamma_0$ und $\Gamma_1$ gefunden werden, um von der Form zu sein $\left\{x \leq T^*\right\}$ und $\left\{x > T^*\right\}$ und $(3)$ vereinfacht zu \begin{align} \text{minimum average cost}&=(c_0 + c_1)\big[c\pi_0\Pr\{X > T^*\mid \mathsf H_0\} + (1-c)\pi_1\Pr\{X \leq T^*\mid \mathsf H_1\}\big]\\ &= (c_0 + c_1)\big[c\pi_0(1-F_0(T^*)) + (1-c)\pi_1F_1(T^*)\big]. \tag{4} \end{align} Ein kleiner Gedanke zeigt das $T^*$ muss unbedingt das gleiche sein wie $T$ im $(1)$. Es gibt jedoch weitere Informationen, von denen Sie Informationen erhalten können$(4)$ denn jetzt haben wir eine andere Beschreibung des Wertes von $T^*$.

$T^*$ ist die Zahl so, dass $\Lambda(T^*)$ gleich $\displaystyle\frac{c_0\pi_0}{c_1\pi_1}$.

Von $\displaystyle\Lambda(T^*) = \frac{f_1(T^*)}{f_0(T^*)} = \frac{c_0\pi_0}{c_1\pi_1}$bekommen wir (mit etwas einfacher Algebra und der Behauptung, dass $T^*$ gleich $T$) Das $$c =\frac{c_0}{c_0+c_1} = \frac{\pi_1f_1(T^*)}{\pi_0f_0(T^*)+\pi_1f_1(T^*)} = \frac{\pi_1f_1(T)}{\pi_0f_0(T)+\pi_1f_1(T)}$$ deren Ableitung ist das, was das OP verwirrte.

Wenden wir uns zum Schluss der Behauptung zu $c$ auch gleich $\Pr(1\mid T)$. Lassen$Y$ sei eine Bernoulli-Zufallsvariable, so dass $Y=1$ wann immer $\mathsf H_1$ tritt während auf $Y=0$ wann $\mathsf H_0$tritt ein. Damit haben wir das für$i=0,1$, $f_{X\mid Y=i}(x) := f_i(x)$. Jetzt,$X$ und $Y$kann nicht eine gemeinsame genießen Dichte Funktion , weil$Y$ ist keine kontinuierliche Zufallsvariable, und wenn wir die visualisieren wollen $x$- -$y$Ebene haben wir dann zwei (gewichtete) Liniendichten $\pi_0f_0(x)$ und $\pi_1f_1(x)$ entlang der Linien $y=0$ und $y=1$ in dem $x$- -$y$Flugzeug. Was ist die bedingungslose Dichte von$X$? Nun, bei$X=x$, die bedingungslose Dichte von $X$ hat Wert $$f_X(x) = \pi_0f_0(x)+\pi_1f_1(x).\tag{5}$$ Was ist die Verteilung der Bernoulli-Zufallsvariablen? $Y$ konditioniert auf $X=x$? Na gut, wann dann$X=x$, $Y$ nimmt Werte an $0$ und $1$ mit entsprechenden Wahrscheinlichkeiten \begin{align}\Pr(Y=0\mid X=x) &= \frac{\pi_0f_0(x)}{\pi_0f_0(x)+\pi_1f_1(x)}\tag{6}\\ \Pr(Y=1\mid X=x) &= \frac{\pi_1f_1(x)}{\pi_0f_0(x)+\pi_1f_1(x)}\tag{7} \end{align} was das zeigt $c$ gleich $\Pr(Y=1\mid X=T)$ was das Papier, das das OP liest, als schreibt $\Pr(1|T)$. Das ist maschinelles Lernen für Sie ... aber es ist$(6)$ und $(7)$ plausible Werte für das bedingte PDF von $Y$? Gut für$i=0,1$können wir die bedingungslose Wahrscheinlichkeit finden, dass$Y=i$ durch Multiplikation der bedingten Wahrscheinlichkeit $\Pr(Y=i\mid X=x)$ durch das pdf von $X$ und integrieren, was uns gibt \begin{align} \Pr(Y=i) &= \int_{-\infty}^\infty \Pr(Y=i\mid X=x)\cdot f_X(x) \,\mathrm dx\\ &= \int_{-\infty}^\infty \left.\left.\frac{\pi_if_i(x)}{\pi_0f_0(x)+\pi_1f_1(x)} \cdot \right(\pi_0f_0(x)+\pi_1f_1(x)\right) \,\mathrm dx\\ &= \int_{-\infty}^\infty \pi_if_i(x) \,\mathrm dx\\ &= \pi_i \end{align} Ich hoffe, dass dies einer ansonsten kahlen und nicht überzeugenden Erzählung einen Hauch künstlerischer Wahrhaftigkeit verleiht.