Wie heißt dieses Diagramm, das falsche und wahre positive Raten anzeigt, und wie wird es generiert?


22

Das Bild unten zeigt eine kontinuierliche Kurve von falsch-positiven Raten gegenüber wahr-positiven Raten:

Bildbeschreibung hier eingeben

Ich verstehe jedoch nicht sofort, wie diese Sätze berechnet werden. Wenn eine Methode auf einen Datensatz angewendet wird, weist sie eine bestimmte FP-Rate und eine bestimmte FN-Rate auf. Bedeutet das nicht, dass jede Methode einen einzelnen Punkt anstelle einer Kurve haben sollte? Natürlich gibt es mehrere Möglichkeiten, eine Methode zu konfigurieren und mehrere verschiedene Punkte zu erzeugen, aber mir ist nicht klar, wie es dieses Kontinuum von Raten gibt oder wie es erzeugt wird.


2
Es würde mich interessieren, woher das kommt. Es scheint zu behaupten, dass Baidu zu 100% perfekt (und besser als Menschen) darin ist, Gesichter zu erkennen. Entweder das oder es verwendet Baidus Ergebnisse als Grundwahrheit und nicht als menschliche Kategorisierung, was auch sehr seltsam ist.
Hören Sie auf, Monica am


OK, sie mischten die Ergebnisse verschiedener Experimente und rundeten ihre Quelldaten falsch. Baidu sollte 0,9977 ± 0,0006 sein
Hör auf, Monica am

2
Übrigens haben Sie verpasst, dass Ihre Quelle die Antwort hatte: "Weitere Informationen zum Lesen der ROC-Kurve finden Sie in Wikipedia."
Hör auf, Monica am

2
@OrangeDog 0,9977 ± 0,0006 ist Baidus Genauigkeit auf der LFW-Ergebnisseite , nicht AUC. Dies ist verwirrend, da die LFW-Ergebnisseite keine Überschrift für die Spalte enthält, aus der diese stammt. In ihrem v4 arxiv-Papier wird diese Zahl jedoch als Genauigkeit angegeben. In dieser Funktion habe ich die AUC für ihre Kurve berechnet . Obwohl die AUC von 1.000 verwirrend ist, glaube ich, dass meine Technik gültig ist.
Brandon Amos

Antworten:


27

Die Darstellung ist eine ROC-Kurve und die Punkte (False Positive Rate, True Positive Rate) werden für verschiedene Schwellenwerte berechnet. Angenommen, Sie haben eine einheitliche Nutzfunktion, dann ist der optimale Schwellenwert derjenige für den Punkt, der am nächsten an (0, 1) liegt.


Diese Art von Kurve erfordert also, dass die Methode einen relaxierbaren Schwellwertparameter hat.
Axoren

2
Ja, aber der Schwellenwert kann viele Dinge sein, z. B. die logarithmische Wahrscheinlichkeit für ein trainiertes Modell bei gegebenen Testdaten oder die Entfernung zur Trennhyperebene für eine SVM.
Morten

1
Beispielsweise ist die diagonale Linie ein Zufallsschätzungsalgorithmus; der Parameter wird "mit welcher Wahrscheinlichkeit sollen wir WAHR erraten?"
Hören Sie auf, Monica am

21

So generieren Sie ROC-Kurven (= Receiver Operating Characteristic Curves):

Angenommen, wir haben einen probabilistischen, binären Klassifikator wie die logistische Regression. Vor der Darstellung der ROC-Kurve muss das Konzept der Verwirrungsmatrix verstanden werden. Wenn wir eine binäre Vorhersage machen, kann es 4 Arten von Fehlern geben:

  • Wir sagen 0 voraus, während die Klasse eigentlich 0 sein sollte: Dies wird als wahres Negativ bezeichnet , dh wir sagen richtig voraus, dass die Klasse negativ ist (0). Ein Virenschutzprogramm hat beispielsweise keine harmlose Datei als Virus erkannt.
  • Wir sagen 0 voraus, während die Klasse eigentlich 1 sein sollte: Dies wird False Negative genannt , dh wir sagen fälschlicherweise voraus, dass die Klasse negativ ist (0). Ein Virenschutzprogramm konnte beispielsweise keinen Virus erkennen.
  • Wir sagen 1 voraus, während die Klasse eigentlich 0 sein sollte: Dies wird als falsch positiv bezeichnet , dh wir sagen fälschlicherweise voraus, dass die Klasse positiv ist (1). Ein Virenschutzprogramm beispielsweise betrachtet eine harmlose Datei als Virus.
  • Wir sagen 1 voraus, während die Klasse eigentlich 1 sein sollte: Dies wird als True Positive bezeichnet , dh wir sagen korrekt voraus, dass die Klasse positiv ist (1). Ein Virenschutzprogramm hat beispielsweise einen Virus zu Recht erkannt.

Um die Verwirrungsmatrix zu erhalten, gehen wir alle vom Modell gemachten Vorhersagen durch und zählen, wie oft jeder dieser vier Fehlertypen auftritt:

Bildbeschreibung hier eingeben

In diesem Beispiel einer Verwirrungsmatrix werden von den 50 klassifizierten Datenpunkten 45 korrekt klassifiziert und die 5 falsch klassifiziert.

Da es für den Vergleich zweier verschiedener Modelle oft praktischer ist, eine einzige Metrik anstelle mehrerer zu haben, berechnen wir zwei Metriken aus der Verwirrungsmatrix, die wir später zu einer kombinieren werden:

  • TPTP+FN
  • False Positive Rate ( FPR ), auch bekannt als. Ausfall , der als definiert istFPFP+TN

0,00;0,01,0,02,,1.00

Bildbeschreibung hier eingeben

In dieser Abbildung entspricht der blaue Bereich dem Bereich unter der Kurve der Empfänger-Betriebskennlinie (AUROC). Die gestrichelte Linie in der Diagonale zeigt die ROC-Kurve eines zufälligen Prädiktors: Sie hat eine AUROC von 0,5. Der zufällige Prädiktor wird üblicherweise als Basis verwendet, um festzustellen, ob das Modell nützlich ist.

Wenn Sie Erfahrungen aus erster Hand sammeln möchten:


9

Mortens Antwort adressiert die Frage im Titel richtig - die Zahl ist in der Tat eine ROC-Kurve. Es wird erstellt, indem eine Folge von falsch-positiven Raten (FPR) gegen die entsprechenden wahr-positiven Raten geplottet wird.

Ich möchte jedoch auf die Frage antworten, die Sie in Ihrem Beitrag stellen.

Wenn eine Methode auf einen Datensatz angewendet wird, weist sie eine bestimmte FP-Rate und eine bestimmte FN-Rate auf. Bedeutet das nicht, dass jede Methode einen einzelnen Punkt anstelle einer Kurve haben sollte? Natürlich gibt es mehrere Möglichkeiten, eine Methode zu konfigurieren und mehrere verschiedene Punkte zu erzeugen, aber mir ist nicht klar, wie es dieses Kontinuum von Raten gibt oder wie es erzeugt wird.

Viele Methoden des maschinellen Lernens haben einstellbare Parameter. Beispielsweise ist die Ausgabe einer logistischen Regression eine vorhergesagte Wahrscheinlichkeit einer Klassenzugehörigkeit. Eine Entscheidungsregel zum Klassifizieren aller Punkte mit vorhergesagten Wahrscheinlichkeiten über einem bestimmten Schwellenwert für eine Klasse und der Rest für eine andere Klasse kann einen flexiblen Bereich von Klassifizierern mit jeweils unterschiedlichen TPR- und FPR-Statistiken erstellen. Das Gleiche kann im Fall von zufälligen Wäldern durchgeführt werden, bei denen die Stimmen der Bäume berücksichtigt werden, oder bei SVM, bei denen die signierte Entfernung von der Hyperebene berücksichtigt wird.

Wenn Sie eine Kreuzvalidierung durchführen, um die Leistung außerhalb der Stichprobe abzuschätzen, wird in der Regel anhand der Vorhersagewerte (Stimmen, Wahrscheinlichkeiten, vorzeichenbehaftete Abstände) eine Folge von TPR und FPR generiert. Dies sieht normalerweise wie eine Sprungfunktion aus, da in der Regel nur ein Punkt von TP nach FN oder von FP nach FN bei jedem vorhergesagten Wert verschoben wird (dh alle außerhalb der Stichprobe vorhergesagten Werte sind eindeutig). In diesem Fall sind die TPR- und FPR-Funktionen nicht kontinuierlich , obwohl es ein Kontinuum von Optionen für die Berechnung von TPR und FPR gibt, da es nur endlich viele Punkte außerhalb des Abtastwerts gibt, sodass die resultierenden Kurven ein stufenartiges Aussehen haben .


0

Aus Wikipedia:

Die ROC-Kurve wurde zum ersten Mal während des Zweiten Weltkriegs von Elektrotechnikern und Radartechnikern zur Erkennung feindlicher Objekte auf Schlachtfeldern entwickelt und bald in die Psychologie eingeführt, um die Wahrnehmung von Reizen zu berücksichtigen. Die ROC-Analyse wird seitdem in der Medizin, Radiologie, Biometrie und anderen Bereichen seit vielen Jahrzehnten eingesetzt und wird zunehmend im Bereich des maschinellen Lernens und der Data-Mining-Forschung eingesetzt.

Der ROC wird auch als relative Betriebskennlinie bezeichnet, da es sich um einen Vergleich zweier Betriebskennlinien (TPR und FPR) handelt, wenn sich das Kriterium ändert.

Sie können sich die beiden Achsen als Kosten vorstellen, die anfallen müssen, damit der Binärklassifikator funktioniert. Idealerweise möchten Sie eine möglichst niedrige Falsch-Positiv-Rate für eine möglichst hohe True-Positiv-Rate erzielen. Das heißt, Sie möchten, dass der Binärklassifizierer so wenig False Positives wie möglich für so viele True Positives aufruft.

Um es konkret zu machen, stellen Sie sich einen Klassifikator vor, der durch Messung der Menge eines Biomarkers erkennen kann, ob eine bestimmte Krankheit vorliegt. Stellen Sie sich vor, der Biomarker hätte einen Wert im Bereich von 0 (nicht vorhanden) bis 1 (gesättigt). Welche Stufe maximiert die Erkennung der Krankheit? Es könnte der Fall sein, dass der Biomarker ab einem gewissen Grad einige Menschen als krank einstuft, die Krankheit jedoch nicht haben. Dies sind falsche Positive. Dann gibt es natürlich diejenigen, die als erkrankt eingestuft werden, wenn sie tatsächlich erkrankt sind. Dies sind die wahren Vorteile.

Der ROC bewertet den Anteil der wahren Positiven aller Positiven gegenüber dem Anteil der falschen Positiven unter Berücksichtigung aller möglichen Schwellenwerte.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.