Fläche unter der ROC-Kurve oder Fläche unter der PR-Kurve für unausgeglichene Daten?

16

Ich habe einige Zweifel, welches Leistungsmaß verwendet werden soll, Bereich unter der ROC-Kurve (TPR als Funktion von FPR) oder Bereich unter der Genauigkeits-Rückruf-Kurve (Genauigkeit als Funktion von Rückruf).

Meine Daten sind unausgewogen, dh die Anzahl der negativen Instanzen ist viel größer als die der positiven Instanzen.

Ich benutze die Ausgabe Vorhersage von Weka, eine Stichprobe ist:

inst#,actual,predicted,prediction
1,2:0,2:0,0.873
2,2:0,2:0,0.972
3,2:0,2:0,0.97
4,2:0,2:0,0.97
5,2:0,2:0,0.97
6,2:0,2:0,0.896
7,2:0,2:0,0.973

Und ich benutze pROC- und ROCR-Bibliotheken.

MM
quelle
Sie haben vergessen zu erwähnen, was Sie mit einer dieser Kurven erreichen möchten.
Marc Claesen
1
Hinweis: Sie möchten anscheinend zwischen ROC-Kurven (TPR als Funktion von FPR über den gesamten Betriebsbereich) und PR-Kurven (Präzision versus Abruf über den gesamten Betriebsbereich) wählen. Eine Terminologie wie " AUC-ROC für Präzision und Rückruf " ist sehr irreführend, deshalb habe ich sie überarbeitet. Bitte machen Sie es wieder rückgängig, wenn ich es falsch verstanden habe.
Marc Claesen

Antworten:

27

Die Frage ist ziemlich vage, daher gehe ich davon aus, dass Sie ein geeignetes Leistungsmaß auswählen möchten, um verschiedene Modelle zu vergleichen. Einen guten Überblick über die wichtigsten Unterschiede zwischen ROC- und PR-Kurven finden Sie in folgendem Artikel : Die Beziehung zwischen Precision- Recall- und ROC-Kurven von Davis und Goadrich .

Um Davis und Goadrich zu zitieren:

Bei stark verzerrten Datensätzen geben Precision-Recall-Kurven (PR-Kurven) jedoch ein aussagekräftigeres Bild der Leistung eines Algorithmus.

ROC-Kurvendiagramm FPR gegen TPR. : PR-Kurven zeichnen Präzision gegen Rückruf (FPR) oder genauer:

FPR=FPFP+TN,TPR=TPTP+FN.
receinll=TPTP+FN=TPR,precichsichÖn=TPTP+FP

Die Präzision wird direkt vom Klassengleichgewicht beeinflusst, da betroffen ist, wohingegen TPR nur von Positiven abhängt. Aus diesem Grund erfassen ROC-Kurven solche Effekte nicht.FP

Precision-Recall-Kurven sind besser, um Unterschiede zwischen Modellen für stark unausgeglichene Datensätze hervorzuheben. Wenn Sie verschiedene Modelle in unausgeglichenen Einstellungen vergleichen möchten, weist der Bereich unter der PR-Kurve wahrscheinlich größere Unterschiede als der Bereich unter der ROC-Kurve auf.

Allerdings sind ROC-Kurven viel häufiger (auch wenn sie weniger geeignet sind). Abhängig von Ihrer Zielgruppe können ROC-Kurven die Verkehrssprache sein. Daher ist die Verwendung dieser Kurven wahrscheinlich die sicherere Wahl. Wenn ein Modell ein anderes Modell im PR-Bereich vollständig dominiert (z. B. immer eine höhere Genauigkeit über den gesamten Rückrufbereich), dominiert es auch im ROC-Bereich. Wenn sich die Kurven in einem Raum kreuzen, kreuzen sie sich auch im anderen. Mit anderen Worten, die wichtigsten Schlussfolgerungen sind ähnlich, unabhängig davon, welche Kurve Sie verwenden.


Schamlose Werbung . Als zusätzliches Beispiel können Sie sich eine meiner Arbeiten ansehen , in denen ich sowohl ROC- als auch PR-Kurven in einem unausgeglichenen Umfeld berichte. Abbildung 3 enthält ROC- und PR-Kurven für identische Modelle, die den Unterschied zwischen beiden deutlich zeigen. Um den Bereich unter PR mit dem Bereich unter ROC zu vergleichen, können Sie die Tabellen 1-2 (AUPR) und 3-4 (AUROC) vergleichen, wobei Sie sehen, dass AUPR zwischen einzelnen Modellen viel größere Unterschiede aufweist als AUROC. Dies unterstreicht noch einmal die Eignung von PR-Kurven.

Marc Claesen
quelle
Danke für die Erklärung. Die Frage ist nun, warum PR-Kurven für unausgeglichene Daten aussagekräftiger sind. Für mich sollte ROC informativer sein, da es sowohl TPR als auch FPR berücksichtigt.
MM
1
@MA hat meine Antwort bearbeitet, um dies zu klären.
Marc Claesen
1
Ich denke, es gibt eine Verwechslung in der Gleichung für den Rückruf zwischen TPR und FPR, nicht wahr?
Simon Thordal
Du hast recht, es sollte sein: Recall = ... = TPR, nicht FPR. @ Marc Claesen, ich denke, nur Sie können das ändern, denn wenn ich es versuche, werde ich informiert: "Änderungen sollten mindestens 6 Zeichen haben", so dass es unmöglich ist, kleine Tippfehler wie diesen zu korrigieren.
9.
6

ROC-Kurven zeichnen TPR auf der y-Achse und FPR auf der x-Achse, es hängt jedoch davon ab, was Sie darstellen möchten. Sofern es keinen Grund gibt, dies in Ihrem Studienbereich anders darzustellen, sind TPR / FPR-ROC-Kurven der Standard für die Darstellung von operativen Kompromissen, und ich glaube, sie würden am besten angenommen.

Präzision und Rückruf allein können irreführend sein, da sie keine echten Negative berücksichtigen.

Underminer
quelle
0

Ich betrachte den größten Unterschied zwischen ROC und PR AUC als die Tatsache, dass der ROC bestimmt, wie gut Ihr Modell die positive Klasse UND die negative Klasse "berechnen" kann, wobei die PR AUC wirklich nur Ihre positive Klasse betrachtet. In einer ausgeglichenen Klassensituation und wenn Sie sich sowohl für negative als auch für positive Klassen interessieren, funktioniert die ROC AUC-Metrik hervorragend. Wenn Sie eine unausgeglichene Situation haben, wird es bevorzugt, die PR AUC zu verwenden. Denken Sie jedoch daran, dass nur bestimmt wird, wie gut Ihr Modell die positive Klasse "berechnen" kann!

David
quelle