Warum ist Genauigkeit nicht das beste Maß für die Beurteilung von Klassifizierungsmodellen?

107

Dies ist eine allgemeine Frage, die hier indirekt mehrmals gestellt wurde, aber es fehlt eine einzige maßgebliche Antwort. Es wäre großartig, eine ausführliche Antwort auf diese Frage als Referenz zu haben.

Die Genauigkeit , der Anteil der korrekten Klassifizierungen an allen Klassifizierungen, ist sehr einfach und sehr "intuitiv" zu messen, kann jedoch ein schlechtes Maß für unausgeglichene Daten sein . Warum führt uns unsere Intuition hier fehl und gibt es andere Probleme mit dieser Maßnahme?

Tim
quelle

Antworten:

112

Die meisten anderen Antworten beziehen sich auf das Beispiel unausgeglichener Klassen. Ja, das ist wichtig. Ich behaupte jedoch, dass die Genauigkeit selbst bei ausgeglichenen Klassen problematisch ist.

Frank Harrell hat darüber in seinem Blog geschrieben: Klassifizierung vs. Vorhersage und Schaden, die durch Klassifizierungsgenauigkeit und andere diskontinuierliche Regeln für die Bewertung unkorrekter Genauigkeit verursacht werden .

Sein Argument ist im Wesentlichen, dass die statistische Komponente Ihrer Übung endet, wenn Sie für jede Klasse Ihrer neuen Stichprobe eine Wahrscheinlichkeit ausgeben. Abbildung dieser vorhergesagten Wahrscheinlichkeiten auf einer 0-1 - Klassifizierung, um einen Schwellenwert der Auswahl über die hinaus eine neue Beobachtung als 1 vs. 0 klassifizieren ist nicht Bestandteil der Statistik mehr . Es ist Teil der Entscheidungskomponente . Und hier benötigen Sie die probabilistische Ausgabe Ihres Modells - aber auch Überlegungen wie:(p^,1p^)

  • Welche Konsequenzen hat die Entscheidung, eine neue Beobachtung als Klasse 1 gegen 0 zu behandeln? Sende ich dann eine günstige Marketing-Mail an alle 1s? Oder wende ich eine invasive Krebsbehandlung mit großen Nebenwirkungen an?
  • Welche Konsequenzen hat die Behandlung einer "wahren" 0 als 1 und umgekehrt? Werde ich einen Kunden abhaken? Jemanden unnötig medizinisch behandeln lassen?
  • Sind meine "Klassen" wirklich diskret? Oder gibt es tatsächlich ein Kontinuum (z. B. Blutdruck), bei dem klinische Schwellenwerte in Wirklichkeit nur kognitive Abkürzungen sind? Wenn ja, wie weit über einer Schwelle ist der Fall, dass ich gerade "klassifiziere"?
  • Oder bedeutet eine niedrige, aber positive Wahrscheinlichkeit, Klasse 1 zu sein, tatsächlich "mehr Daten abrufen", "einen weiteren Test durchführen"?

Abhängig von den Konsequenzen Ihrer Entscheidung verwenden Sie einen anderen Schwellenwert, um die Entscheidung zu treffen. Wenn es sich um eine invasive Operation handelt, ist die Wahrscheinlichkeit, dass der Patient unter etwas leidet, sehr viel höher, als wenn zwei Aspirine empfohlen werden. Oder Sie haben sogar drei verschiedene Entscheidungen, obwohl es nur zwei Klassen gibt (krank oder gesund): "Geh nach Hause und mach dir keine Sorgen" oder "Führe einen anderen Test durch, weil der, den wir haben, nicht schlüssig ist" oder "operiere sofort". .

Die korrekte Methode zur Bewertung der vorhergesagten Wahrscheinlichkeiten besteht nicht darin, sie mit einem Schwellenwert zu vergleichen, sie auf der Grundlage des Schwellenwerts auf abzubilden und dann die transformierte bewerten Klassifizierung. Stattdessen sollte man die richtigen . Dies sind Verlustfunktionen, die vorhergesagte Wahrscheinlichkeiten und entsprechende beobachtete Ergebnisse auf Verlustwerte abbilden, deren Erwartung durch die wahren Wahrscheinlichkeiten minimiert wird . Die Idee ist, dass wir den Durchschnitt über die Bewertungsregel, die anhand mehrerer (am besten: vieler) beobachteter Ergebnisse bewertet wurde, und die entsprechenden vorhergesagten Wahrscheinlichkeiten für die Zugehörigkeit zu einer Klasse als Schätzung der Erwartung der Bewertungsregel heranziehen.(p^,1p^)(0,1)(0,1)(p,1p)

Beachten Sie, dass "richtig" hier eine genau definierte Bedeutung hat - es gibt falsche Bewertungsregeln sowie richtige Bewertungsregeln und schließlich genau richtige Bewertungsregeln . Bewertungsregeln als solche sind Verlustfunktionen von prädiktiven Dichten und Ergebnissen. Richtige Bewertungsregeln sind Bewertungsregeln, deren Erwartungswert minimiert wird, wenn die prädiktive Dichte der tatsächlichen Dichte entspricht. Streng korrekte Bewertungsregeln sind Bewertungsregeln, die nur dann in der Erwartung minimiert werden, wenn die prädiktive Dichte die wahre Dichte ist.

Wie Frank Harrell feststellt , ist Genauigkeit eine falsche Bewertungsregel. (Genauer gesagt, Genauigkeit ist nicht einmal eine Bewertungsregel : Siehe meine Antwort auf Ist Genauigkeit eine falsche Bewertungsregel in einer binären Klassifizierung? ) Dies kann zum Beispiel beobachtet werden, wenn wir überhaupt keine Prädiktoren haben und nur eine Umkehrung von eine unfaire Münze mit Wahrscheinlichkeiten . Die Genauigkeit wird maximiert, wenn wir alles als die erste Klasse klassifizieren und die 40% ige Wahrscheinlichkeit, dass ein Ergebnis in der zweiten Klasse vorliegt, vollständig ignorieren. (Hier sehen wir, dass die Genauigkeit selbst für ausgeglichene Klassen problematisch ist.) Richtige bevorzugen eine gegenüber der(0.6,0.4)(0.6,0.4)(1,0) eins in Erwartung. Insbesondere ist die Genauigkeit der Schwelle diskontinuierlich: Wenn Sie die Schwelle um ein kleines Stück verschieben, kann eine (oder mehrere) Vorhersagen die Klassen ändern und die gesamte Genauigkeit um einen bestimmten Betrag ändern. Das macht wenig Sinn.

Weitere Informationen finden Sie in Franks zwei Blog-Posts, die oben verlinkt sind, sowie in Kapitel 10 von Frank Harrells Regressionsmodellierungsstrategien .

(Dies ist schamlos aus einer früheren Antwort von mir abgeschnitten .)


BEARBEITEN. Meine Antwort auf Beispiel, wenn Genauigkeit als Ergebnismaß verwendet wird, führt zu einer falschen Schlussfolgerung. Dies ist ein hoffentlich anschauliches Beispiel, bei dem die Maximierung der Genauigkeit zu falschen Entscheidungen führen kann, selbst für ausgeglichene Klassen .

Stephan Kolassa
quelle
6
@ Tim Franks Punkt (den er in zahlreichen Antworten auf unserer Website und anderswo besprochen hat) ist meines Wissens, dass, wenn ein Klassifizierungsalgorithmus keine Wahrscheinlichkeiten zurückgibt, es Müll ist und nicht verwendet werden sollte. Um ehrlich zu sein, geben die meisten häufig verwendeten Algorithmen Wahrscheinlichkeiten zurück.
Amöbe
6
Ich würde sagen, dass ein Algorithmus, der frühere Beobachtungen berücksichtigt und nur Klassifikationen ausgibt, ohne die oben genannten Punkte zu berücksichtigen (z. B. Kosten für Fehlentscheidungen), den statistischen und den Entscheidungsaspekt miteinander verbindet. Es ist, als würde Ihnen jemand einen bestimmten Autotyp empfehlen, ohne Sie vorher zu fragen, ob Sie ein kleines Baseballteam, ein paar Baumaterialien oder nur sich selbst transportieren möchten. Also würde ich auch sagen, ein solcher Algorithmus wäre Müll.
Stephan Kolassa
8
Ich wollte eine Antwort schreiben, musste es aber nicht. Bravo. Ich diskutiere dies mit meinen Studenten als "Trennung der Bedenken" zwischen statistischer Modellierung und Entscheidungsfindung. Diese Art von Konzept ist sehr tief in der Ingenieurkultur verwurzelt.
Matthew Drury
8
@chainD: Wenn Ihr Klassifikator (denken Sie daran, es ist der mit der höchsten Genauigkeit ) sagt, dass "jeder in dieser Stichprobe gesund ist", welcher Arzt oder Analytiker würde dann glauben, dass die Geschichte mehr enthält? Ich stimme zu, dass es letztendlich ein Aufruf für den Analysten ist, aber "Jeder ist gesund" ist für den Analysten weitaus weniger hilfreich als etwas, das auf Restunsicherheit wie die 95% / 5% -Vorhersage aufmerksam macht.
Stephan Kolassa
11
@StephanKolassas Antwort und Kommentare sind hervorragend. Ein anderer Kommentar implizierte, dass es einen Unterschied in der Sichtweise gibt, je nachdem, welcher Kultur Sie angehören. Dies ist nicht wirklich der Fall; Es ist nur so, dass sich einige Fachgebiete die Mühe machten, die Literatur zu verstehen und andere nicht. Die Wettervorhersage zum Beispiel war an vorderster Front und hat seit mindestens 1951 angemessene Bewertungsregeln für die Bewertung der Prognosegenauigkeit angewendet.
Frank Harrell,
78

Wenn wir Genauigkeit verwenden, weisen wir falsch positiven und falsch negativen Ergebnissen die gleichen Kosten zu. Wenn diese Datenmenge unausgewogen ist - beispielsweise 99% der Instanzen in einer Klasse und nur 1% in der anderen - können die Kosten erheblich gesenkt werden. Sagen Sie voraus, dass jede Instanz zur Mehrheitsklasse gehört, erhalten Sie eine Genauigkeit von 99% und gehen Sie früh nach Hause.

Das Problem beginnt, wenn die tatsächlichen Kosten, die wir jedem Fehler zuweisen, nicht gleich sind. Wenn wir uns mit einer seltenen, aber tödlich verlaufenden Krankheit befassen, sind die Kosten für die Nichtdiagnose der Krankheit einer kranken Person viel höher als die Kosten für die Versendung einer gesunden Person zu mehr Tests.

Im Allgemeinen gibt es kein allgemeines bestes Maß. Das beste Maß ergibt sich aus Ihren Bedürfnissen. In gewissem Sinne handelt es sich nicht um eine maschinelle Lernfrage, sondern um eine Geschäftsfrage. Es ist üblich, dass zwei Personen denselben Datensatz verwenden, jedoch aufgrund unterschiedlicher Ziele unterschiedliche Metriken auswählen.

Genauigkeit ist eine großartige Messgröße. Tatsächlich sind die meisten Metriken großartig und ich mag es, viele Metriken auszuwerten. Irgendwann müssen Sie sich jedoch für Modell A oder B entscheiden. Dort sollten Sie eine einzelne Metrik verwenden, die Ihren Anforderungen am besten entspricht.

Für zusätzliche Gutschriften wählen Sie diese Metrik vor der Analyse aus, damit Sie bei der Entscheidung nicht abgelenkt werden.

DaL
quelle
3
Tolle Antwort - Ich habe ein paar Änderungen vorgeschlagen, um den Anfängern des maschinellen Lernens (auf die sich diese Frage bezieht) den Sinn zu verdeutlichen.
nekomatic
1
Ich würde nicht zustimmen, dass es kein Problem des maschinellen Lernens ist. Um dies zu beheben, müsste jedoch das Meta-Problem maschinell erlernt werden, und die Maschine müsste über die grundlegenden Klassifizierungsinformationen hinaus auf bestimmte Daten zugreifen können.
Shufflepants
3
Ich sehe es nicht nur als eine Funktion der Daten, da unterschiedliche Ziele mit unterschiedlichen Kosten / Modellen / Leistungen / Metriken verbunden sein können. Ich stimme zu, dass die Kostenfrage im Allgemeinen mathematisch behandelt werden kann. Fragen wie die Kosten für die Behandlung von Patienten beruhen jedoch auf völlig unterschiedlichen Informationen. Diese Informationen, die für die Metadaten benötigt werden, sind normalerweise nicht für die maschinelle Lernmethode geeignet, sodass sie die meiste Zeit mit unterschiedlichen Methoden verarbeitet werden.
12.
2
Mit "Fehldiagnose einer erkrankten Person" meinen Sie "Fehldiagnose einer erkrankten Person ( die die Krankheit nicht hat)", richtig? Weil dieser Satz so oder so interpretiert werden könnte.
Tanner Swett
Sie haben Recht, Tanner. Ich habe den Test geändert, um ihn klarer zu machen.
13.
20

Das Problem mit der Genauigkeit

Die Standardgenauigkeit ist definiert als das Verhältnis der korrekten Klassifizierungen zur Anzahl der durchgeführten Klassifizierungen.

accuracy:=correct classificationsnumber of classifications

Es ist also ein Gesamtmaß für alle Klassen, und wie wir gleich sehen werden, ist es kein gutes Maß, ein Orakel von einem tatsächlichen nützlichen Test zu unterscheiden. Ein Orakel ist eine Klassifizierungsfunktion, die für jede Stichprobe eine zufällige Schätzung zurückgibt. Ebenso wollen wir die Klassifizierungsleistung unserer Klassifizierungsfunktion bewerten können. Genauigkeit \ textit {kann ein nützliches Maß sein, wenn wir die gleiche Anzahl von Stichproben pro Klasse haben, aber wenn wir einen unausgeglichenen Satz von Stichproben haben, ist Genauigkeit überhaupt nicht nützlich. Darüber hinaus kann ein Test eine hohe Genauigkeit aufweisen, jedoch schlechter abschneiden als ein Test mit einer geringeren Genauigkeit.

Wenn wir eine Verteilung der Stichproben haben, bei der 90% der Stichproben zur Klasse , 5% zu und weitere 5% zu dann die folgende Klassifizierungsfunktion wird eine Genauigkeit von :ABC0.9

classify(sample):={Aif 

Angesichts der Tatsache, dass wir wissen, wie funktioniert, ist es offensichtlich, dass dies die Klassen überhaupt nicht auseinanderhalten kann. Ebenso können wir eine Klassifikationsfunktion konstruierenclassify

classify(sample):=guess{Awith p =0.96Bwith p =0.02Cwith p =0.02

die eine Genauigkeit von und nicht immer vorhersagt, aber dennoch vorausgesetzt , dass wir wissen, wie funktioniert, ist es offensichtlich, dass es Klassen nicht unterscheiden kann. Die Genauigkeit in diesem Fall sagt uns nur, wie gut unsere Klassifizierungsfunktion zu schätzen ist. Dies bedeutet, dass Genauigkeit kein gutes Maß ist, um ein Orakel von einem nützlichen Test zu unterscheiden.0.960.9+0.020.052=0.866Aclassify

Genauigkeit pro Klasse

Wir können die Genauigkeit individuell pro Klasse berechnen, indem wir unserer Klassifizierungsfunktion nur Stichproben derselben Klasse zuweisen und die Anzahl der korrekten Klassifizierungen und falschen Klassifizierungen merken und zählen. Dann berechnen wir die . Wir wiederholen dies für jede Klasse. Wenn wir eine Klassifizierungsfunktion haben, die die Klasse genau erkennt, aber eine zufällige Schätzung für die anderen Klassen ausgibt, ergibt dies eine Genauigkeit von für und eine Genauigkeit vonaccuracy:=correct/(correct+incorrect)A1.00A0.33für die anderen Klassen. Dies bietet uns bereits eine viel bessere Möglichkeit, die Leistung unserer Klassifizierungsfunktion zu beurteilen. Ein Orakel, das immer dieselbe Klasse errät, ergibt eine Genauigkeit von pro Klasse für diese Klasse, jedoch für die andere Klasse. Wenn unser Test nützlich ist, sollten alle Genauigkeiten pro Klasse . Ansonsten ist unser Test nicht besser als der Zufall. Die Genauigkeit pro Klasse berücksichtigt jedoch keine falsch positiven Ergebnisse. Obwohl unsere Klassifizierungsfunktion eine Genauigkeit von 100% für die Klasse gibt es auch falsche Positive für (z. B. ein fälschlicherweise als klassifiziert wurde ).1.000.00>0.5AABA

Sensitivität und Spezifität

In medizinischen Tests wird Empfindlichkeit definiert als das Verhältnis zwischen den Personen, bei denen die Krankheit richtig erkannt wurde, und der Anzahl der Personen, die tatsächlich an der Krankheit leiden. Spezifität ist definiert als das Verhältnis zwischen korrekt als gesund identifizierten Personen und der Anzahl der tatsächlich gesunden Personen. Die Anzahl der tatsächlich erkrankten Personen entspricht der Anzahl der zutreffend positiven Testergebnisse plus der Anzahl der falsch negativen Testergebnisse. Die Anzahl der tatsächlich gesunden Menschen entspricht der Anzahl der wahrhaft negativen Testergebnisse plus der Anzahl der falsch positiven Testergebnisse.

Binäre Klassifikation

Bei binären Klassifizierungsproblemen gibt es zwei Klassen und . bezieht sich auf die Anzahl der Proben, die korrekt als zur Klasse gehörend identifiziert wurden, und bezieht sich auf die Anzahl der Proben, die fälschlicherweise als zur Klasse gehörend identifiziert wurden . In diesem Fall sind Sensitivität und Spezifität wie folgt definiert:PNTnnFnn

sensitivity:=TPTP+FNspecificity:=TNTN+FP

TP sind die wahren Positiven sind die falschen Negative, sind die wahren Negative und sind die falschen Positiven . In Bezug auf Negative und Positive zu denken ist für medizinische Tests in Ordnung, aber um eine bessere Intuition zu erhalten, sollten wir nicht in Bezug auf Negative und Positive denken, sondern in generischen Klassen und . Dann können wir sagen , dass die Menge der Proben korrekt identifiziert als zu ist und die Menge der Proben , die tatsächlich gehören zu istFNTNFPαβαTααTα+Fβ. Die Menge der Proben, die korrekt als nicht zu gehörend identifiziert wurden, ist und die Menge der Proben, die tatsächlich nicht zu ist . Dies gibt uns die Sensitivität und Spezifität für , aber wir können auch die gleiche Sache auf die Klasse anwenden . Die Menge der Proben, die korrekt als zu gehörend identifiziert wurden, ist und die Menge der Proben, die tatsächlich zu ist . Die Menge der Proben, die korrekt als nicht zu gehörend identifiziert wurden, istαTβαTβ+FααββTββTβ+FαβTαund die Menge der Proben, die tatsächlich nicht zu ist . Wir erhalten so eine Sensibilität und Spezifität pro Klasse:βTα+Fβ

sensitivityα:=TαTα+Fβspecificityα:=TβTβ+Fαsensitivityβ:=TβTβ+Fαspecificityβ:=TαTα+Fβ

Wir beobachten jedoch, dass und . Das heißt, wenn wir nur zwei Klassen haben, brauchen wir keine Sensitivität und Spezifität pro Klasse.sensitivityα=specificityβspecificityα=sensitivityβ

N-Ary-Klassifikation

Sensitivität und Spezifität pro Klasse sind nicht sinnvoll, wenn wir nur zwei Klassen haben, aber wir können sie auf mehrere Klassen ausweiten. Sensitivität und Spezifität sind definiert als:

sensitivity:=true positivestrue positives+false negativesspecificity:=true negativestrue negatives+false-positives

Das wahre Positive ist einfach , das falsche Negative ist einfach und das falsche Positive ist einfach . Das Auffinden der wahren Negative ist viel schwieriger, aber wir können sagen, dass, wenn wir etwas korrekt als zu einer anderen Klasse als gehörend klassifizieren, es als wahres Negativ zählt. Das heißt , wir haben zumindest wahr Negative. Dies sind jedoch nicht alle Negative. Alle falschen Klassifikationen für eine andere Klasse als sind ebenfalls echte Negative, da sie nicht korrekt als zu gehörig identifiziert wurden . Tni(Fn,i)i(Fi,n)ni(Ti)T(n)nni(k(Fi,k))repräsentiert alle falschen Klassifikationen. Daraus müssen wir die Fälle subtrahieren , wo die Eingangsklasse wurde bedeutet , dass wir die falschen Negativ subtrahieren haben , die ist , aber wir müssen auch die Fehlalarme subtrahieren weil es sich um falsch positive und nicht um wahr negative handelt, müssen wir auch subtrahieren und schließlich . Zusammenfassend haben wir:nni(Fn,i)ni(Fi,n)i(Ti)T(n)+i(k(Fn,i))i(Fn,i)i(Fi,n)

true positives:=Tntrue negatives:=i(Ti)T(n)+i(k(Fn,i))i(Fn,i)i(Fi,n)false positives:=i(Fi,n)false negatives:=i(Fn,i)

sensitivity(n):=TnTn+i(Fn,i)specificity(n):=i(Ti)Tn+i(k(Fi,k))i(Fn,i)i(Fi,n)i(Ti)Tn+i(k(Fi,k))i(Fn,i)

Vertrauen einführen

Wir definieren ein das ein Maß dafür ist, wie sicher wir sein können, dass die Antwort unserer Klassifizierungsfunktion tatsächlich korrekt ist. sind alle Fälle, in denen die Klassifizierungsfunktion mit geantwortet hat, von denen jedoch nur korrekt ist. Wir definieren alsoconfidenceTn+i(Fi,n)nTn

confidence(n):=TnTn+i(Fi,n)

Aber können wir auch ein definieren das ein Maß dafür ist, wie sicher wir sein können, dass unsere Klassifizierungsfunktion, wenn sie mit einer anderen Klasse als antwortet , tatsächlich kein ?confidencenn

Nun, wir erhalten Ausnahme von . Wir definieren alsoi(k(Fi,k))i(Fi,n)+i(Ti)Tni(Fn,i)

confidence(n)=i(k(Fi,k))i(Fi,n)+i(Ti)Tni(Fn,i)i(k(Fi,k))i(Fi,n)+i(Ti)Tn

mroman
quelle
Können Sie uns bitte ein Beispiel für die Berechnung der mittleren Genauigkeit mit Hilfe der Verwirrungsmatrix geben?
Aadnan Farooq A
Eine ausführlichere Beschreibung mit Beispielen finden Sie hier: mroman.ch/guides/sensspec.html
mroman
Beim erneuten Durchlesen ist ein Fehler in der Definition von confidence_false aufgetreten. Ich bin überrascht, dass das niemand gesehen hat. Ich werde das in den nächsten Tagen beheben.
Mroman
8

Unausgeglichene Klassen in Ihrem Datensatz

Um es kurz zu machen: Stellen Sie sich vor, 99% einer Klasse (z. B. Äpfel) und 1% einer anderen Klasse befinden sich in Ihrem Datensatz (z. B. Bananen). Mein Super-Duper-Algorithmus erreicht eine erstaunliche Genauigkeit von 99% für diesen Datensatz.

return "it's an apple"

Er hat in 99% der Fälle Recht und erhält daher eine Genauigkeit von 99%. Kann ich dir meinen Algorithmus verkaufen?

Lösung: Verwenden Sie kein absolutes Maß (Genauigkeit), sondern ein Maß für jede Klasse (es gibt eine Menge, wie ROC AUC).

Mayou36
quelle
Nein, AUC ist auch nicht für unausgeglichene Datensätze geeignet.
SiXUlm
@SiXUlm, kannst du das näher erläutern?
17.
AUC ist die Fläche unter der ROC-Kurve. Die ROC-Kurve ist die Auftragung von TPR gegen FPR. In der Bayes'schen Einstellung ist das Ungleichgewicht die ungerade der vorherigen Wahrscheinlichkeit: . Der TPR kann als und der FPR als . Die vorherige Wahrscheinlichkeit hat nichts mit der Wahrscheinlichkeit zu tun. P(D)/P(DC)P(T|D)P(F|DC)
SiXUlm
Eine übersichtlichere Darstellung finden Sie hier: quora.com/… . Schauen Sie sich die Antwort von Jerry Ma an.
SiXUlm
Ich verstehe deinen Standpunkt immer noch nicht. Ist das nicht (einschließlich der Quora) das, was ich in der Lösung sage und meine Antwort genau unterstütze? Der Punkt ist, dass die Prioritäten die Metrik, die die Leistung des Netzwerks misst, nicht beeinflussen sollten. Was ist angemessen , hängt ganz von Ihrem Problem, zum Beispiel das Beste für zu optimieren , ist jede mögliche Schnitt . Lassen Sie mich also wissen: a) Warum ist das unangemessen, da es für die Vorgesetzten unveränderlich, aber für die Aufführung empfindlich ist ? b) was sonst würden Sie denken , ist angemessen oder welche Eigenschaften erforderlich ist ?
19.
2

DaL Antwort ist genau das. Ich werde es mit einem sehr einfachen Beispiel über ... den Verkauf von Eiern veranschaulichen.

Sie besitzen einen Eierladen und jedes Ei, das Sie verkaufen, erzielt einen Nettoertrag von Dollar. Jeder Kunde, der den Laden betritt, kann entweder ein Ei kaufen oder gehen, ohne eines zu kaufen. Für einige Kunden können Sie sich für einen Rabatt entscheiden und Sie erhalten nur Dollar-Einnahmen, aber dann kauft der Kunde immer.21

Sie stecken eine Webcam ein, die das Kundenverhalten mit Funktionen wie "Schnüffeln der Eier", "Halten eines Buches mit Omelettrezepten" analysiert ... und sie in "Kaufwünsche zu Dollar" (positiv) und "Kaufwünsche" einteilt erst bei dollar "(negativ) bevor er geht.21

Wenn Ihr Klassifikator keinen Fehler macht, erhalten Sie den maximalen Ertrag, den Sie erwarten können. Wenn es nicht perfekt ist, dann:

  • Für jedes falsche Positiv verlieren Sie Dollar, weil der Kunde abreist und Sie nicht versucht haben, einen erfolgreichen Rabatt zu erzielen1
  • Für jedes falsche Negativ verlieren Sie Dollar, weil Sie einen unbrauchbaren Rabatt machen1

Dann ist die Genauigkeit Ihres Klassifikators genau, wie nahe Sie am maximalen Ertrag sind. Es ist das perfekte Maß.

Aber jetzt, wenn der Rabatt Dollar ist. Die Kosten betragen:a

  • falsch positiv:a
  • falsch negativ:2a

Dann benötigen Sie eine mit diesen Zahlen gewichtete Genauigkeit als Maß für die Effizienz des Klassifikators. Wenn beispielsweise , ist das Maß völlig anders. Diese Situation hängt wahrscheinlich mit unausgeglichenen Daten zusammen: Wenige Kunden sind bereit, zu zahlen , während die meisten zahlen würden . Es ist dir egal, dass du viele falsche Positive bekommst, um ein paar weitere wahre Positive zu bekommen. Sie können den Schwellenwert des Klassifikators entsprechend anpassen.a=0.00120.001

Wenn es dem Klassifikator beispielsweise darum geht, relevante Dokumente in einer Datenbank zu finden, können Sie die Zeitverschwendung beim Lesen eines irrelevanten Dokuments mit der Suche nach einem relevanten Dokument vergleichen.

Benoit Sanchez
quelle
1

Die Klassifizierungsgenauigkeit ist die Anzahl der korrekten Vorhersagen geteilt durch die Gesamtanzahl der Vorhersagen.

Genauigkeit kann irreführend sein. Beispielsweise kann ein Modell bei einem Problem mit einem großen Klassenungleichgewicht den Wert der Mehrheitsklasse für alle Vorhersagen vorhersagen und eine hohe Klassifizierungsgenauigkeit erzielen. Daher sind weitere Leistungsmessungen erforderlich, wie z. B. der F1-Score und der Brier-Score.

jeza
quelle
-3

Sie können Genauigkeit als das der Klassifikation ansehen : eine anfangs ansprechende Metrik, mit der Modelle verglichen werden können.R2

In beiden Fällen kann eine Überanpassung ein großes Problem darstellen. So wie im Fall eines hohen Werts möglicherweise eher das Rauschen als das Signal modelliert wird, ist eine hohe Genauigkeit möglicherweise ein Hinweis darauf, dass Ihr Modell zu streng auf Ihren Testdatensatz angewendet wurde und keine allgemeine Anwendbarkeit hat. Dies ist besonders problematisch, wenn Sie stark unausgewogene Klassifizierungskategorien haben. Das genaueste Modell ist möglicherweise ein triviales Modell, bei dem alle Daten als eine Kategorie klassifiziert werden (mit einer Genauigkeit, die dem Anteil der häufigsten Kategorie entspricht). Diese Genauigkeit nimmt jedoch spektakulär ab, wenn Sie einen Datensatz mit einer anderen wahren Verteilung von Kategorien klassifizieren müssen .R2

Wie andere angemerkt haben, ist ein weiteres Problem mit der Genauigkeit eine implizite Gleichgültigkeit gegenüber dem Preis des Scheiterns - dh eine Annahme, dass alle Fehlklassifizierungen gleich sind. In der Praxis ist dies nicht der Fall, und die Kosten für eine falsche Klassifizierung hängen in hohem Maße vom jeweiligen Thema ab. Möglicherweise ziehen Sie es vor, eine bestimmte Art von Unrichtigkeit zu minimieren, anstatt die Genauigkeit zu maximieren.

James
quelle
2
Summen. (1) Ich würde davon ausgehen, dass die Bewertung der Genauigkeit oder einer anderen Metrik außerhalb der Stichprobe verstanden wird, sodass ich nicht wirklich sehe, wie genau ein spezifisches Problem der Überanpassung ist . (2) Wenn Sie ein Modell anwenden, das für Population A auf eine andere Population B trainiert wurde , dann vergleichen Sie Äpfel mit Orangen, und ich verstehe wiederum nicht wirklich, dass dies ein spezifisches Problem für die Genauigkeit ist .
Stephan Kolassa
(1) Es ist dennoch ein Problem für die Genauigkeit, und es geht um die Verwendung der Genauigkeit als Goldstandard. (2) Der Zweck des Baus eines Klassifikators besteht darin, ihn auf den Orangen zu verwenden, nicht nur auf den Äpfeln. Es sollte allgemein genug sein, um die wesentlichen Signale in den Daten zu erfassen (so dass sie existieren), anstatt ein Katechismus für Ihre Trainingsdaten zu sein.
James