Wie wählt man eine Fehlermetrik bei der Bewertung eines Klassifikators?


15

Ich habe verschiedene Fehlermetriken gesehen, die in den Kaggle-Wettbewerben verwendet wurden: RMS, Mean-Square, AUC, unter anderem. Was ist die allgemeine Faustregel bei der Auswahl einer Fehlermetrik, dh woher wissen Sie, welche Fehlermetrik für ein bestimmtes Problem verwendet werden soll? Gibt es irgendwelche Richtlinien?

Antworten:


12

Der Pool an Fehlermetriken, aus dem Sie auswählen können, unterscheidet sich zwischen Klassifizierung und Regression. Bei letzterem versuchen Sie, einen kontinuierlichen Wert vorherzusagen, und bei der Klassifizierung sagen Sie diskrete Klassen wie "gesund" oder "nicht gesund" voraus. Aus den von Ihnen erwähnten Beispielen würde der quadratische Mittelwertfehler für die Regression und die AUC für die Klassifizierung mit zwei Klassen gelten.

Lassen Sie mich die Klassifizierung etwas näher erläutern. Als Maß haben Sie AUC genannt, die Fläche unter der ROC-KurveDies gilt normalerweise nur für binäre Klassifizierungsprobleme mit zwei Klassen. Es gibt zwar Möglichkeiten, eine ROC-Kurve für mehr als zwei Klassen zu erstellen, sie verlieren jedoch die Einfachheit der ROC-Kurve für zwei Klassen. Außerdem können ROC-Kurven nur erstellt werden, wenn der Klassifikator der Wahl eine Art Punktzahl ausgibt, die mit jeder Vorhersage verknüpft ist. Beispielsweise gibt Ihnen die logistische Regression Wahrscheinlichkeiten für jede der beiden Klassen. Zusätzlich zu ihrer Einfachheit haben ROC-Kurven den Vorteil, dass sie nicht durch das Verhältnis zwischen positiv und negativ gekennzeichneten Instanzen in Ihren Datensätzen beeinflusst werden und Sie nicht gezwungen werden, einen Schwellenwert auszuwählen. Es wird jedoch empfohlen, nicht nur die ROC-Kurve, sondern auch andere Visualisierungen zu betrachten. Ich würde empfehlen, einen Blick auf Präzisionsrückrufkurven und Kostenkurven zu werfen.eine wahre Fehlermessung, sie haben alle ihre Stärken und Schwächen.

Literatur, die ich in dieser Hinsicht hilfreich fand, sind:

Wenn Ihr Klassifikator keine Bewertung liefert, müssen Sie auf die grundlegenden Kennzahlen zurückgreifen, die aus einer Verwirrungsmatrix mit der Anzahl der wahren Positiven, falschen Positiven, wahren Negativen und falschen Negativen erhalten werden können. Die oben genannten Visualisierungen (ROC, Precision-Recall, Kostenkurve) basieren alle auf diesen Tabellen, die unter Verwendung eines anderen Schwellenwerts für die Punktzahl des Klassifikators erhalten wurden. Das beliebteste Maß in diesem Fall ist wahrscheinlich das F1-MaßNN×NN 2×2EINEIN


1
NN×NN 2×2

Vielen Dank, dass Sie auf diesen Fehler hingewiesen haben. Ich habe ihn in der obigen Antwort korrigiert.
13.

5

Lassen Sie mich noch ein paar Gedanken zu den bereits vorhandenen Antworten hinzufügen.

  • Die meisten Klassifikatoren haben in der Tat eine kontinuierliche Zwischenbewertung, auf die normalerweise ein Schwellenwert für die Zuweisung von harten Klassen (unter t: Klasse a, über: Klasse b) angewendet wird. Wenn Sie diesen Schwellenwert ändern, erhalten Sie den ROC.
  • Im Allgemeinen ist es keine gute Idee, eine solche Kurve in eine Zahl zu komprimieren . Siehe z. B. den Fall gegen die Genauigkeitsschätzung für den Vergleich von Induktionsalgorithmen.
    Es gibt viele verschiedene ROCs mit derselben AUC, und die Nützlichkeit kann für eine bestimmte Anwendung stark variieren.
  • Umgekehrt: Die Wahl des Schwellenwerts kann ziemlich stark von der Anwendung abhängen, die Sie haben.
  • Sie müssen die Klassifikatorleistung nicht außerhalb dieser Grenzen betrachten und wenn Sie möchten eine Metrik , sollte diese zumindest nur den relevanten Bereich der begrenzten anderen Metriken zusammenfassen.
  • Abhängig von Ihrem Studiendesign kann der Gesamtanteil der korrekt oder falsch klassifizierten Stichproben eine angemessene Zusammenfassung sein oder nicht, und die Schlussfolgerungen, die Sie daraus ziehen können, hängen auch vom Studiendesign ab: Geben Ihre Testdaten die vorherigen Wahrscheinlichkeiten (Prävalenzen) der Klassen? Für die Bevölkerung, für die Ihr Klassifikator verwendet werden soll? Wurde es geschichtet gesammelt? Dies hängt eng mit der Tatsache zusammen, dass die meisten Benutzer eines Klassifikators mehr an den Vorhersagewerten interessiert sind, Sensitivität und Spezifität jedoch viel einfacher zu messen sind.

  • Sie fragen nach allgemeinen Richtlinien. Eine allgemeine Richtlinie ist, dass Sie wissen müssen

    • Welche Art von Leistung Sie benötigen (Sensitivität, Spezifität, Vorhersagewerte usw.). Beantworten Sie spezifische Fragen zum Verhalten Ihres Klassifikators. Sehen Sie, was ich hier geschrieben habe )
    • Welche zulässigen Arbeitsbereiche für diese Leistungsmerkmale gelten für Ihre Anwendung?
      Diese können sehr unterschiedlich sein: Sie sind möglicherweise bereit, einige falsche Negative bei der Spam-Erkennung zu akzeptieren, aber dies wäre keine akzeptable Vorgehensweise für die HIV-Diagnose ...

Ich denke, Sie werden keinen nützlichen finden können Metrik finden können, wenn Sie diese Fragen nicht beantworten können.

Es ist auch ein bisschen so, als gäbe es bei der Validierung von Klassifikatoren kein kostenloses Mittagessen.


2

Die erwartete Fehlklassifizierungsfehlerrate ist die Methode, die ich am häufigsten verwendet und gesehen habe. Die AUC der Republik China ist ein Maß für eine Reihe von Klassifizierungsregeln. Wenn die Idee besteht, einen bestimmten Klassifikator mit einem anderen zu vergleichen, ist die AUC nicht geeignet. Eine Form von Klassifizierungsfehlern ist am sinnvollsten, da sie die Leistung der Klassifizierungsregel am unmittelbarsten widerspiegeln.

Aufgrund der großen Verzerrung der Resubstitutionsschätzung und der hohen Varianz des Auslassens wurden große Anstrengungen unternommen, um gute Schätzungen der Klassifizierungsfehlerrate zu finden. Bootstrap und Smooth Estimators wurden in Frage gestellt. Siehe zum Beispiel Efrons Artikel in JASA 1983 über Bootstrap-Verbesserungen gegenüber der Kreuzvalidierung.

Hier ist ein technischer Bericht der Stanford University von 1995 von Efron und Tibshirami, der die Literatur einschließlich einiger meiner eigenen Arbeiten zusammenfasst.


Ein weiterer Streitpunkt ist der Vergleich der Leistung von zwei Klassifikatoren mit demselben Datensatz. Insbesondere bei ROC und AUC gibt es einige Methoden, um entweder die ROC-Kurven als Ganzes oder die AUC-Schätzungen zu vergleichen. Dies sind im Wesentlichen statistische Tests mit der Nullhypothese, dass sich der ROC / AUC nicht unterscheidet. Cross-Validation vs. Bootstrap ist ein weiteres interessantes Thema. Ich habe kürzlich einen Artikel darüber gesehen ( dx.doi.org/10.1016/j.csda.2010.03.004 ). Ich denke, wenn man alle Aspekte auf einmal betrachtet, kann es ziemlich einschüchternd werden.
13.
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.