Habe ich gerade eine Bayes'sche Methode zur Analyse von ROC-Kurven erfunden?

21

Präambel

Dies ist ein langer Beitrag. Wenn Sie dies noch einmal lesen, beachten Sie bitte, dass ich den Fragenteil überarbeitet habe, obwohl das Hintergrundmaterial das gleiche bleibt. Außerdem glaube ich, dass ich eine Lösung für das Problem gefunden habe. Diese Lösung wird unten im Beitrag angezeigt. Dank an CliffAB für den Hinweis, dass meine ursprüngliche Lösung (aus diesem Beitrag herausgearbeitet; siehe Bearbeitungsverlauf für diese Lösung) zwangsläufig voreingenommene Schätzungen hervorgebracht hat.

Problem

Bei Klassifizierungsproblemen des maschinellen Lernens besteht eine Möglichkeit zur Bewertung der Modellleistung darin, die ROC-Kurven oder die Fläche unter der ROC-Kurve (AUC) zu vergleichen. Es ist jedoch meine Beobachtung, dass es kaum Diskussionen über die Variabilität von ROC-Kurven oder Schätzungen der AUC gibt. Das heißt, sie sind Statistiken, die anhand von Daten geschätzt wurden, und daher mit Fehlern verbunden. Das Charakterisieren des Fehlers in diesen Schätzungen hilft beispielsweise zu charakterisieren, ob ein Klassifikator tatsächlich einem anderen überlegen ist.

Ich habe den folgenden Ansatz entwickelt, den ich Bayes'sche Analyse von ROC-Kurven nenne, um dieses Problem anzugehen. In meinen Überlegungen zum Problem sind zwei wesentliche Punkte zu beachten:

  1. ROC-Kurven setzen sich aus geschätzten Mengen aus den Daten zusammen und sind für die Bayes'sche Analyse zugänglich.

    Die ROC-Kurve wird zusammengesetzt, indem die wahre positive Rate TPR(θ) gegen die falsche positive Rate F , von denen jede selbst aus den Daten geschätzt wird. Ich betrachte und Funktionen von , die Entscheidungsschwelle, die zum Sortieren von Klasse A von B verwendet wird (Baumstimmen in einer zufälligen Gesamtstruktur, Entfernung von einer Hyperebene in SVM, vorhergesagte Wahrscheinlichkeiten in einer logistischen Regression usw.). Das Variieren des Werts des Entscheidungsschwellenwerts gibt unterschiedliche Schätzungen von und . Darüber hinaus können wirT P R F P R θ θ T P R F P R T P R ( θ ) T PFPR(θ)TPRFPRθθTPRFPRTPR(θ)eine Schätzung der Erfolgswahrscheinlichkeit in einer Folge von Bernoulli-Versuchen sein. Tatsächlich ist TPR definiert als was auch die MLE der Binomialerfolgswahrscheinlichkeit in einem Experiment mit Erfolgen und Gesamtversuchen ist.TPTP+FN>0TPTP+FN,TPTP+FN>0

    wir also die Ausgabe von und als Zufallsvariablen betrachten, stehen wir vor dem Problem, die Erfolgswahrscheinlichkeit eines Binomialexperiments abzuschätzen, bei dem die Anzahl der Erfolge und Misserfolge genau bekannt ist (angegeben) von , , und , von denen ich , dass sie alle fest sind). Herkömmlicherweise verwendet man einfach die MLE und nimmt an, dass TPR und FPR für spezifische Werte vonF P R ( θ ) T P F P F N T N θ θTPR(θ)FPR(θ)TPFPFNTNθ. Bei meiner Bayes'schen Analyse von ROC-Kurven zeichne ich jedoch posteriore Simulationen von ROC-Kurven, die durch Zeichnen von Stichproben aus der posterioren Verteilung über ROC-Kurven erhalten werden. Ein Standard-Bayesan-Modell für dieses Problem ist eine Binomialwahrscheinlichkeit mit einer Beta vor der Erfolgswahrscheinlichkeit. Die posteriore Verteilung der Erfolgswahrscheinlichkeit ist ebenfalls Beta, sodass wir für jedes eine posteriore Verteilung der TPR- und FPR-Werte haben. Dies bringt uns zu meiner zweiten Beobachtung.θ

  2. Die ROC-Kurven nehmen nicht ab. Sobald also ein Wert von und abgetastet wurde, besteht eine Wahrscheinlichkeit von Null, dass ein Punkt im ROC-Raum "südöstlich" des abgetasteten Punkts abgetastet wird. Formgebundenes Sampling ist jedoch ein schwieriges Problem.F P R ( & thgr; )TPR(θ)FPR(θ)

Der Bayes'sche Ansatz kann verwendet werden, um eine große Anzahl von AUCs aus einem einzigen Satz von Schätzungen zu simulieren. Beispielsweise sehen 20 Simulationen im Vergleich zu den Originaldaten so aus. Simulierte ROC-Kurven

Diese Methode hat eine Reihe von Vorteilen. Zum Beispiel kann die Wahrscheinlichkeit, dass die AUC eines Modells größer als die eines anderen ist, direkt geschätzt werden, indem die AUC ihrer hinteren Simulationen verglichen wird. Varianzschätzungen können über Simulationen erhalten werden, die billiger sind als Resampling-Methoden, und diese Schätzungen verursachen nicht das Problem korrelierter Stichproben, die sich aus Resampling-Methoden ergeben.

Lösung

Ich habe eine Lösung für dieses Problem entwickelt, indem ich zusätzlich zu den beiden obigen Bemerkungen eine dritte und vierte Bemerkung zur Art des Problems gemacht habe.

  1. F P R ( & thgr; )TPR(θ) und haben Randdichten, die für eine Simulation zugänglich sind.FPR(θ)

    Wenn (umge ) ein Beta-verteilte Zufallsvariable mit den Parametern ist und (stellvertretende und ), können wir auch überlegen , was die Dichte der TPR Mittelung über die verschiedenen Werte die unserer Analyse entsprechen. Das heißt, können wir einen hierarchischen Prozess , bei dem ein Muster ein Wert betrachten aus der Sammlung von Werte , die durch unsere Out-of-Sample - Modellvorhersagen, und dann Proben einen Wert von . Eine Verteilung über die resultierenden Samples vonF P R ( θ ) T P F N F P T N θ ~ θ θ T P R ( ~ θ ) T P R ( ~ θ ) θ T P R ( θ ) c θ 1 / cTPR(θ)FPR(θ)TPFNFPTNθθ~θTPR(θ~)TPR(θ~)values ​​ist eine Dichte der wahren positiven Rate, die für selbst unbedingt gilt . Da wir ein Beta-Modell für annehmen , ist die resultierende Verteilung eine Mischung aus Beta-Verteilungen mit einer Anzahl von Komponenten , die der Größe unserer Sammlung von , und Mischungskoeffizienten .θTPR(θ)cθ1/c

    In diesem Beispiel habe ich die folgende CDF auf TPR erhalten. Insbesondere aufgrund der Entartung von Beta-Verteilungen, bei denen einer der Parameter Null ist, sind einige der Gemischkomponenten Dirac-Delta-Funktionen bei 0 oder 1. Dies ist der Grund für die plötzlichen Spitzen bei 0 und 1. Diese "Spitzen" implizieren dies Diese Dichten sind weder kontinuierlich noch diskret. Eine Prioritätswahl, die in beiden Parametern positiv ist, würde diese plötzlichen Spitzen (nicht gezeigt) "glätten", aber die resultierenden ROC-Kurven werden in Richtung Prioritätsachse gezogen. Dasselbe kann für FPR (nicht gezeigt) durchgeführt werden. Das Zeichnen von Abtastwerten aus den Randdichten ist eine einfache Anwendung der inversen Transformationsabtastung.

CDF von TPR

  1. Um die Formerfordernisse zu lösen, müssen wir nur TPR und FPR unabhängig voneinander sortieren.

    Die nicht abnehmende Anforderung entspricht der Anforderung, dass die Randproben von TPR und FPR unabhängig voneinander sortiert werden. Das heißt, die Form der ROC-Kurve wird vollständig durch die Anforderung bestimmt, dass der kleinste TPR-Wert mit dem kleinsten FPR gepaart werden muss Wert und so weiter, was bedeutet, dass die Konstruktion einer formbeschränkten Zufallsstichprobe hier trivial ist. Für den unkorrekten zuvor liefern Simulationen den Beweis, dass die Erstellung einer ROC-Kurve auf diese Weise Stichproben mit einer mittleren AUC ergibt, die an der Grenze einer großen Anzahl von Stichproben gegen die ursprüngliche AUC konvergiert. Nachfolgend finden Sie eine KDE von 2000 Simulationen.Beta(0,0)

Bildbeschreibung hier eingeben

Vergleich zum Bootstrap

In einer langen Chat-Diskussion mit @AdamO (danke, AdamO!) Wies er darauf hin, dass es mehrere etablierte Methoden gibt, um zwei ROC-Kurven zu vergleichen oder die Variabilität einer einzelnen ROC-Kurve zu charakterisieren, darunter den Bootstrap. Als Experiment habe ich versucht, mein Beispiel mit Beobachtungen im Holdout-Set zu booten und die Ergebnisse mit der Bayes'schen Methode zu vergleichen. Die Ergebnisse werden im Folgenden verglichen. (Die Bootstrap-Implementierung ist hier der einfache Bootstrap - zufällige Stichprobenentnahme mit Ersetzung der Größe des ursprünglichen Samples. Durch das flüchtige Lesen der Bootstraps werden meines Wissens erhebliche Lücken in Bezug auf die Methoden zur erneuten Stichprobenentnahme aufgedeckt angemessener Ansatz.)n=20

Bildbeschreibung hier eingeben

Diese Demonstration zeigt, dass der Mittelwert des Bootstraps unter dem Mittelwert des ursprünglichen Beispiels liegt und dass das KDE des Bootstraps gut definierte "Buckel" liefert. Die Entstehung dieser Buckel ist kaum rätselhaft - die ROC-Kurve reagiert empfindlich auf die Einbeziehung jedes Punkts, und eine kleine Stichprobe (hier n = 20) bewirkt, dass die zugrunde liegende Statistik empfindlicher auf die Einbeziehung jedes Punkts reagiert Punkt. (Diese Strukturierung ist nachdrücklich kein Artefakt der Kernelbandbreite. Beachten Sie den Rug-Plot. Jeder Stripe besteht aus mehreren Bootstrap-Replikaten mit demselben Wert. Der Bootstrap hat 2000 Replikate, aber die Anzahl der unterschiedlichen Werte ist deutlich geringer. We kann den Schluss ziehen, dass die Buckel ein wesentliches Merkmal des Bootstrap-Verfahrens sind.) Im Gegensatz dazu liegen die mittleren Schätzungen der Bayes'schen AUC tendenziell sehr nahe an der ursprünglichen Schätzung.

Frage

Meine überarbeitete Frage ist, ob meine überarbeitete Lösung falsch ist. Eine gute Antwort wird beweisen (oder widerlegen), dass die resultierenden Stichproben von ROC-Kurven verzerrt sind, oder ebenso andere Qualitäten dieses Ansatzes beweisen oder widerlegen.

Sycorax sagt Reinstate Monica
quelle
1
Ich denke, Sie glauben zu sehr an ROC-Kurven. Ich habe keinen einzigen Fall gesehen, in dem sie zu Einsichten führten. Ich habe viele Fälle gesehen, in denen sie zu Schwellenwerten führen, was wirklich eine schlechte Idee ist.
Frank Harrell
1
@FrankHarrell Danke für den Hinweis, Dr. Harrell. Aber für meine Kunden habe ich die Aufgabe, Klassifikatoren zu entwickeln, die in sehr großen Datenmengen autonom Entscheidungen treffen. Ich weiß, dass dies im medizinischen Kontext höchst unproduktiv ist, aber eine Nutzen- / Kostenanalyse durch Experten für jede Beobachtung ist einfach nicht praktikabel, wenn wir Entscheidungen über Tausende von Datenpunkten treffen müssen. Wir müssen uns entscheiden, welches Modell implementiert werden soll, um diese Aufgabe zu erfüllen, und ROC / AUC helfen bei dieser Entscheidung.
Sycorax sagt Reinstate Monica
2
Da Sie Wahrscheinlichkeiten vorhergesagt haben, verwenden Sie ohnehin keinen Klassifikator, zumindest zu Beginn Ihres Prozesses. Versorger würden Entscheidungen besser treffen, aber wenn Sie keine Versorger erhalten können, können Sie dies anders als bei ROC-Kurven mit Auftriebskurven und Schwellenwerten für das Entscheidungsrisiko betrachten. Dies ist kein wirklich medizinisches Problem.
Frank Harrell
3
X1+X2<1X1,X2X1X2
3
Beginnen Sie mit meinen Kursnotizen - siehe biostat.mc.vanderbilt.edu/CourseBios330 . Schauen Sie sich auch die Biostatistik für die biomedizinische Forschung an, die unter biostat.mc.vanderbilt.edu/ClinStat erhältlich ist , insbesondere das Kapitel Informationsverlust und den Beginn von Kapitel 10.
Frank Harrell,

Antworten:

7

c

Es ist allgemein anerkannt, dass Sie die Variabilität von ROC-Kurven mit dem Bootstrap von Pepe Etzione Feng abschätzen können . Dies ist ein guter Ansatz, da die ROC-Kurve eine empirische Schätzung darstellt und der Bootstrap nicht parametrisch ist. Eine solche Parametrisierung führt zu Annahmen und Komplikationen wie " Ist ein Flat-Prior wirklich nicht informativ?" Ich bin nicht davon überzeugt, dass dies hier der Fall ist.

θθ

Nehmen Sie als Beispiel ein Modell mit perfekter Unterscheidung. Wenn Sie Ihre Methode verwenden, werden Sie feststellen, dass die Konfidenzbänder das Einheitsquadrat sind. Sie sind nicht! Es gibt keine Variabilität in einem Modell mit perfekter Unterscheidung. Ein Bootstrap wird Ihnen das zeigen.

Wenn man sich dem Thema der ROC "Analyse" aus einer Bayes'schen Perspektive nähern würde, wäre es vielleicht am nützlichsten, das Problem der Modellauswahl anzugehen, indem man den Raum der Modelle, die für die Analyse verwendet werden, in den Vordergrund stellt. Das wäre ein sehr interessantes Problem.

AdamO
quelle
Ich bin mir nicht sicher, ob diese Antwort auf den Inhalt des Beitrags antwortet. Zum Beispiel habe ich gerade ROC-Kurven für ein Modell mit perfekter Unterscheidung simuliert. Diese Kurven sind alle in der äußersten nordwestlichen Ecke des ROC-Raums konzentriert, und ein zentrales Intervall um die AUC-Simulationen sind einige Zahlen, die sehr nahe bei 1 liegen. Dies steht im direkten Widerspruch zu der Behauptung in der Antwort, die besagt, dass die Simulationen liegen müssen Überall auf dem gesamten Einheitsquadrat.
Sycorax sagt Reinstate Monica
1
θθTPR(θ)FPR(θ)
θ
θθ
@ user777 was genau hat ein vorrang drauf?
AdamO