ROC vs Precision-Recall-Kurven bei unausgeglichenem Datensatz

16

Ich habe gerade das Lesen dieses Diskussion . Sie argumentieren, dass PR AUC bei unausgeglichenen Datensätzen besser ist als ROC AUC.

Zum Beispiel haben wir 10 Proben im Testdatensatz. 9 Proben sind positiv und 1 ist negativ. Wir haben ein schreckliches Modell, das alles Positive vorhersagt. Wir haben also eine Metrik, die TP = 9, FP = 1, TN = 0, FN = 0 ist.

Dann ist Präzision = 0,9, Rückruf = 1,0. Die Präzision und der Rückruf sind beide sehr hoch, aber wir haben einen schlechten Klassifikator.

Andererseits ist TPR = TP / (TP + FN) = 1,0, FPR = FP / (FP + TN) = 1,0. Da der FPR sehr hoch ist, können wir feststellen, dass dies kein guter Klassifikator ist.

Bei unausgeglichenen Datensätzen ist ROC eindeutig besser als PR. Kann jemand erklären, warum PR besser ist?

Maschinenlerner
quelle
1
Precision und Recall ignorieren beide False Negatives. Die übliche Rechtfertigung für die Verwendung des PR-Kompromisses (Kurven oder F-Score) ist, dass die Anzahl der Negative und False Negative im Vergleich zu TP und FP sehr groß ist. Also TNR-> 1 und FPR-> 0 (Summe zu 1 mit demselben | Negs | Nenner). In diesem Fall spiegelt PR den Kompromiss zwischen TP und FP wider (verstärken oder vergrößern), aber dies ist nicht sinnvoll und relevant ist eine Erhöhung des Youden J-Index (Informiertheit = TPR-FPR = TPR + TNR-1) = Empfindlichkeit + Spezifität-1), was der doppelten Fläche zwischen der dreieckigen Einzelbetriebspunktkurve und der ROC-Zufallslinie entspricht.
David MW Powers
2
@DavidMWPowers, warum nicht eine offizielle Antwort daraus machen? Das scheint mir eine sehr informative Antwort zu sein.
Gung - Reinstate Monica
2
Präzision, Rückruf, Empfindlichkeit und Spezifität sind unangemessene diskontinuierliche willkürliche Genauigkeitsbewertungen, bei denen Informationen verloren gehen, und sollten nicht verwendet werden. Sie können unter Ungleichgewicht besonders problematisch sein. Dasc-Index (Konkordanzwahrscheinlichkeit; AUROC) funktioniert gut unter extremer Balance. Besser: Verwenden Sie eine korrekte Regel für die Genauigkeitsbewertung in Bezug auf die Log-Wahrscheinlichkeit oder den Brier-Score.
Frank Harrell

Antworten:

7

Erstens ist die Behauptung auf dem Kaggle-Posten falsch. Das Papier, auf das sie verweisen, " Die Beziehung zwischen Präzisionsrückruf und ROC-Kurven ", behauptet niemals, dass PR AUC besser ist als ROC AUC. Sie vergleichen einfach ihre Eigenschaften, ohne ihren Wert zu beurteilen.

ROC-Kurven können in einigen sehr unausgeglichenen Anwendungen manchmal irreführend sein. Eine ROC-Kurve kann immer noch ziemlich gut aussehen (dh besser als zufällig), während die meisten oder alle Minderheitenklassen falsch klassifiziert werden.

Im Gegensatz dazu sind PR-Kurven speziell auf die Erkennung seltener Ereignisse zugeschnitten und in diesen Szenarien sehr nützlich. Sie zeigen, dass Ihr Klassifikator eine geringe Leistung aufweist, wenn er die meisten oder alle Minderheitenklassen falsch klassifiziert. Aber sie lassen sich nicht gut auf ausgewogenere Fälle oder Fälle übertragen, in denen Negative selten sind.

Da sie empfindlich auf die Grundwahrscheinlichkeit positiver Ereignisse reagieren, lassen sie sich nicht gut verallgemeinern und gelten nur für den spezifischen Datensatz, auf dem sie erstellt wurden, oder für Datensätze mit genau demselben Gleichgewicht. Dies bedeutet, dass es im Allgemeinen schwierig ist, PR-Kurven aus verschiedenen Studien zu vergleichen, was deren Nützlichkeit einschränkt.

Wie immer ist es wichtig, die Tools zu verstehen, die Ihnen zur Verfügung stehen, und das richtige für die richtige Anwendung auszuwählen. Ich schlage vor, die Frage ROC vs. Präzisions- und Rückrufkurven hier im Lebenslauf zu lesen .

Calimo
quelle
3

Ihr Beispiel ist definitiv richtig.

Ich denke jedoch, dass im Zusammenhang mit Kaggle-Wettbewerb / realer Anwendung ein verzerrter Datensatz normalerweise einen Datensatz mit viel weniger positiven als negativen Stichproben bedeutet. Nur in diesem Fall ist PR AUC "aussagekräftiger" als ROC AUC.

Stellen Sie sich einen Detektor mit TP = 9, FN = 1, TN = 900, FP = 90 vor, bei dem 10 positive und 990 negative Proben vorhanden sind. TPR = 0,9, FPR = 0,1, was einen guten ROC-Wert anzeigt, jedoch Präzision = 0,1, was einen schlechten PR-Wert anzeigt.

user2512796
quelle
0

Du bist auf halbem Weg.

Wenn ich unausgeglichene Modelle mache, zum Teufel sogar ausgeglichene Modelle, schaue ich normalerweise auf PR für ALLE meine Klassen.

In Ihrem Beispiel hat Ihre positive Klasse P = 0,9 und R = 1,0. Aber was Sie sich ansehen sollten, sind ALLE Ihre Klassen. Für Ihre negative Klasse ist also P = 0 und R = 0. Normalerweise betrachten Sie PR-Ergebnisse nicht nur einzeln. Sie möchten sich den F1-Score (F1-Makro oder F1-Mikro, je nach Problem) ansehen, der ein harmonischer Durchschnitt Ihrer PR-Scores für Klasse 1 und Klasse 0 ist. Ihr PR-Score für Klasse 1 ist super gut, aber kombinieren Sie das mit Ihre Klasse 0 PR-Punktzahl, Ihre F1-Punktzahl wird SCHRECKLICH sein, was die richtige Schlussfolgerung für Ihr Szenario ist.

TL, DR: Sehen Sie sich die PR-Ergebnisse für ALLE Ihre Klassen an und kombinieren Sie sie mit einer Metrik wie dem F1-Ergebnis, um eine realistische Schlussfolgerung über Ihre Modellleistung zu erhalten. Der F1-Score für Ihr Szenario ist SCHRECKLICH, was die richtige Schlussfolgerung für Ihr Szenario ist.

Schweres Atmen
quelle