Beste Antwort
Ich bin in der Literatur auf eine Reihe möglicher Anwendungen von Ranking-SVMs gestoßen:
* Ordinale Regression * AUC-Optimierung * Klassenungleichgewicht * Lernen, Probleme zu bewerten
Ursprünglich wurden sie für die ordinale Regression vorgeschlagen. Die AUC-Optimierung ist nur ein Sonderfall davon (zwei Klassen). Das Klassenungleichgewicht hängt mit der AUC-Optimierung zusammen, da die AUC eine angemessene Leistungsmetrik für Probleme mit dem Klassenungleichgewicht darstellt. Ranking-SVMs wurden auch für Learning 2 Rank-Probleme im Zusammenhang mit dem Abrufen von Informationen vorgeschlagen. Sie passen meiner Meinung nach nicht gut zusammen, da AUC zwar auch als Ranking-Metrik angesehen werden kann, sich jedoch von Standard-Ranking-Leistungsmetriken wie NDCG und Mean Average Precision unterscheidet: Letztere sind kopflastig; Das heißt, sie legen großen Wert auf die ersten Beispiele in der Rangliste (häufig spielen Beispiele unter Rang 10 und 20 überhaupt keine Rolle), während die AUC alle Positionen in der Rangliste gleich behandelt.
Davon abgesehen, ich “ Ich habe Ranking SVM für alle oben genannten Probleme verwendet und meiner Meinung nach wurden sie nie als nützlich erwiesen – z. Nach meiner Erfahrung funktioniert die Beispielgewichtung normalerweise besser bei Klassenungleichgewichten und beim Lernen, einfache Regressionen anhand der Relevanzwerte (+ ein nichtlineares Modell) zu bewerten, was bei den meisten L2R-Benchmarks zu einer besseren Leistung führt. Der Unterschied in der AUC-Leistung zwischen gewöhnlichem SVM und Ranking-SVM ist meiner Meinung nach vernachlässigbar.
Die interessanteste Anwendung von Ranking-SVM, auf die ich gestoßen bin, war von Thorsten Joachims und seiner Gruppe, bei der implizites Feedback von Benutzern einer Websuchmaschine verwendet wurde (dh der Benutzer hat zuerst auf Position 2 und nicht auf 1 geklickt), um „Beispielpaare“ (doc\_2 – doc\_1) zu generieren, die in das Ranking-SVM eingespeist werden. Trainingssignale dieser Form funktionieren nur für paarweise Ansätze wie das Ranking-SVM.
Antwort
Wofür steht AUC und was ist das? :
Abkürzungen
- AUC = Fläche unter der Kurve.
- AUROC = Fläche unter der Betriebskennlinie des Empfängers .
AUC wird meistens als AUROC verwendet, was eine schlechte Praxis ist, da, wie Marc Claesen betonte, AUC ist mehrdeutig (kann eine beliebige Kurve sein), während AUROC dies nicht ist.
Interpreti ng the AUROC
Der AUROC hat mehrere äquivalente Interpretationen :
- Die Erwartung, dass Ein gleichmäßig gezogenes zufälliges Positiv wird vor einem einheitlich gezogenen zufälligen Negativ eingestuft.
- Der erwartete Anteil der Positiven wird vor einem einheitlich gezogenen zufälligen Negativ eingestuft.
- Die erwartete wahre positive Rate, wenn das Ranking lautet Teilung kurz vor einem einheitlich gezogenen zufälligen Negativ.
- Der erwartete Anteil der Negative, der nach einem einheitlich gezogenen zufälligen Positiv eingestuft wird.
- Die erwartete Falsch-Positiv-Rate, wenn die Rangfolge unmittelbar nach einem einheitlich gezeichneten zufällig positiv gezogen.
Berechnung der AUROC
Nehmen wir an haben einen probabilistischen, binären Klassifikator wie die logistische Regression. Vor der Darstellung der ROC-Kurve (= Empfänger-Betriebskennlinie) muss das Konzept der Verwirrungsmatrix verstanden werden. Wenn wir eine binäre Vorhersage machen, können dies 4 Arten von Fehlern sein:
- Wir sagen 0 voraus, während die Klasse tatsächlich 0 sein sollte: Dies wird als True Negative , dh wir sagen korrekt voraus, dass die Klasse negativ ist (0). Beispielsweise hat ein Antivirus eine harmlose Datei nicht als Virus erkannt.
- Wir sagen 0 voraus, während die Klasse tatsächlich 1 sein sollte: Dies wird als Falsch negativ , dh wir sagen fälschlicherweise voraus, dass die Klasse negativ ist (0). Ein Antivirus konnte beispielsweise keinen Virus erkennen.
- Wir sagen 1 voraus, während die Klasse tatsächlich 0 sein sollte: Dies wird als False Positive
, dh wir sagen fälschlicherweise voraus, dass die Klasse positiv ist (1). Ein Antivirenprogramm betrachtet beispielsweise eine harmlose Datei als Virus. - Wir sagen 1 voraus, während die Klasse tatsächlich 1 sein sollte: Dies wird als bezeichnet True Positive , dh wir sagen korrekt voraus, dass die Klasse positiv ist (1). Zum Beispiel hat ein Antivirus 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 4 Fehlertypen auftreten:
In diesem Beispiel einer Verwirrungsmatrix sind unter den 50 klassifizierten Datenpunkten 45 korrekt klassifiziert und Die 5 sind falsch klassifiziert.
Da es zum Vergleichen zweier verschiedener Modelle oft bequemer ist, eine einzelne Metrik als mehrere zu haben, berechnen wir zwei Metriken aus der Verwirrungsmatrix, die wir später zu einer kombinieren werden:
- Echte positive Rate ( TPR ), aka. Empfindlichkeit, Trefferquote und Rückruf , definiert als TPTP + FN. Intuitiv entspricht diese Metrik dem Anteil positiver Datenpunkte, die in Bezug auf alle positiven Datenpunkte korrekt als positiv betrachtet werden. Mit anderen Worten, je höher der TPR, desto weniger positive Datenpunkte werden uns fehlen.
- Falsch positive Rate ( FPR ), aka. Fallout , definiert als FPFP + TN. Intuitiv entspricht diese Metrik dem Anteil negativer Datenpunkte, die fälschlicherweise als positiv angesehen werden, in Bezug auf alle negativen Datenpunkte. Mit anderen Worten, je höher der FPR, desto mehr negative Datenpunkte werden falsch klassifiziert.
Um den FPR und den TPR zu einer einzigen Metrik zu kombinieren, berechnen wir zunächst die beiden früheren Metriken mit vielen verschiedenen Schwellenwert (z. B. 0,00; 0,01,0,02,…, 1,00) für die logistische Regression, und zeichnen Sie sie dann in einem einzelnen Diagramm mit den FPR-Werten auf der Abszisse und den TPR-Werten auf der Ordinate auf. Die resultierende Kurve wird als ROC-Kurve bezeichnet, und die Metrik, die wir betrachten, ist die AUC dieser Kurve, die wir AUROC nennen.
Die folgende Abbildung zeigt die AUROC grafisch:
In dieser Abbildung entspricht der blaue Bereich dem Bereich unter der Kurve der Empfänger-Betriebscharakteristik (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 häufig als Basis verwendet, um festzustellen, ob das Modell nützlich ist.
Wenn Sie Erfahrungen aus erster Hand sammeln möchten: