Warum funktioniert der Ridge-Regressionsklassifikator für die Textklassifizierung recht gut?

17

Während eines Experiments zur Textklassifizierung habe ich Ergebnisse gefunden, die die Tests unter den Klassifizierern, die häufiger erwähnt und für Text-Mining-Aufgaben wie SVM, NB, kNN usw. angewendet werden, ständig übertreffen zur Optimierung jedes Klassifikators für diese spezielle Textklassifizierungsaufgabe, mit Ausnahme einiger einfacher Änderungen an den Parametern.

Ein solches Ergebnis wurde auch Dikran Beuteltier erwähnt .

Nachdem ich einige Materialien online durchgelesen habe, kann ich die Hauptgründe dafür immer noch nicht herausfinden. Könnte jemand einen Einblick in ein solches Ergebnis geben?

Flocke
quelle

Antworten:

16

Textklassifizierungsprobleme sind in der Regel sehr hochdimensional (viele Features) und hochdimensionale Probleme sind wahrscheinlich linear trennbar (da Sie alle d + 1-Punkte in einem d-dimensionalen Raum mit einem linearen Klassifikator trennen können, unabhängig davon, wie die Punkte lauten gekennzeichnet sind). Lineare Klassifikatoren, ob Ridge-Regression oder SVM mit einem linearen Kernel, dürften also gut abschneiden. In beiden Fällen wird die Komplexität des Klassifikators durch den Ridge-Parameter oder C für die SVM (als tdc-Erwähnung +1) gesteuert und eine Überanpassung vermieden, indem die Muster der einzelnen Klassen durch große Ränder getrennt werden (dh die Entscheidungsfläche verläuft entlang der SVM) Mitte der Lücke zwischen den beiden Punktesammlungen). Um jedoch eine gute Leistung zu erzielen, müssen die Kamm- / Regularisierungsparameter richtig eingestellt werden (ich verwende eine einmalige Kreuzvalidierung, da sie billig ist).

Der Grund, warum die Gratregression gut funktioniert, ist, dass nichtlineare Methoden zu leistungsfähig sind und es schwierig ist, eine Überanpassung zu vermeiden. Es mag einen nichtlinearen Klassifikator geben, der eine bessere Verallgemeinerungsleistung bietet als das beste lineare Modell, aber es ist zu schwierig, diese Parameter unter Verwendung der uns vorliegenden endlichen Stichprobe von Trainingsdaten abzuschätzen. Je einfacher das Modell in der Praxis ist, desto weniger Probleme haben wir bei der Schätzung der Parameter, sodass die Tendenz zur Überanpassung geringer ist und wir in der Praxis bessere Ergebnisse erzielen.

Ein weiteres Problem ist die Feature-Auswahl. Die Ridge-Regression vermeidet eine Überanpassung, indem die Gewichte reguliert werden, um sie klein zu halten. Die Modellauswahl ist einfach, da Sie nur den Wert eines einzelnen Regressionsparameters auswählen müssen. Wenn Sie versuchen, eine Überanpassung zu vermeiden, indem Sie den optimalen Satz von Merkmalen auswählen, wird die Modellauswahl schwierig, da für jedes Merkmal ein Freiheitsgrad (eine Art) besteht, mit dem Sie das Merkmalauswahlkriterium überanpassen können Am Ende stehen eine Reihe von Funktionen zur Verfügung, die für diese bestimmte Datenprobe optimal sind, jedoch eine schlechte Generalisierungsleistung bieten. Wenn Sie die Feature-Auswahl nicht durchführen und die Regularisierung nicht verwenden, kann dies häufig zu einer besseren Prognoseleistung führen.

Ich verwende oft Bagging (bilden Sie ein Komitee von Modellen, die auf bootstraped Samples aus dem Trainingssatz trainiert wurden) mit Ridge-Regression-Modellen, was häufig zu einer Leistungsverbesserung führt. Da alle Modelle linear sind, können Sie sie kombinieren, um ein einziges lineares Modell zu bilden Es gibt also keine Leistungseinbußen im Betrieb.

Dikran Beuteltier
quelle
Meinen Sie Punkte in einem dimensionalen Raum? Wenn Sie z. B. 3 Punkte in einem 2D-Raum haben, wobei zwei Punkte der Klasse 1 und einer der Klasse 2 sind und alle auf einer Linie liegen und der Punkt der Klasse 2 zwischen den beiden anderen liegt, können diese nicht mit getrennt werden eine Linie (1-D-Hyperebene)dd-1d
tdc
Es wird normalerweise davon ausgegangen, dass sich die Punkte in der "allgemeinen Position" befinden, so dass sie (zum Beispiel) nicht auf einer geraden Linie liegen. In diesem Fall können Sie in einem 2D-Raum 3 beliebige Punkte trennen. Wenn alle Punkte in einer geraden Linie liegen, dann bewohnen sie tatsächlich einen 1-d-Unterraum, der in einen 2-d-Raum eingebettet ist.
Dikran Marsupial
Auf Wikipedia gibt es die Aussage "Da die Methode mehrere Prädiktoren mittelt, ist es nicht nützlich, um lineare Modelle zu verbessern", obwohl ich nicht sicher bin, warum dies wahr sein sollte.
tdc
Ich verstehe auch nicht, warum das so sein sollte. Ich vermute, dass ein lineares Modell in Sackware genau durch ein einzelnes lineares Modell dargestellt werden kann. Das Problem ist jedoch die Schätzung der Parameter des einzelnen Modells und nicht die Form des Modells. Ich habe festgestellt, dass das Absacken die Verallgemeinerung verbessert, aber der Gewinn ist im Allgemeinen gering, es sei denn, Sie haben viel mehr Merkmale als Beobachtungen (so dass die Schätzung des Modells instabil ist und eine kleine Änderung der Daten eine große Änderung des Modells bewirkt).
Dikran Marsupial
Vielleicht solltest du die Wikipedia-Seite aktualisieren! Sie klingen sachkundig in der Sache ...
tdc
6

Die Ridge-Regression ist, wie der Name schon sagt, eher eine Methode zur Regression als zur Klassifikation. Vermutlich verwenden Sie einen Schwellenwert, um ihn in einen Klassifikator zu verwandeln. In jedem Fall lernen Sie einfach einen linearen Klassifikator, der durch eine Hyperebene definiert ist. Der Grund, warum es funktioniert, ist, dass die vorliegende Aufgabe im Wesentlichen linear trennbar ist - dh eine einfache Hyperebene ist alles, was zum Trennen der Klassen erforderlich ist. Der "ridge" -Parameter ermöglicht es, in Fällen zu arbeiten, die nicht vollständig linear trennbar sind, oder bei Problemen, bei denen der Rang fehlt (in diesem Fall wäre die Optimierung degeneriert).

In diesem Fall gibt es keinen Grund, warum andere Klassifizierer ebenfalls keine gute Leistung erbringen sollten, vorausgesetzt, sie wurden korrekt implementiert. Zum Beispiel findet die SVM die "optimale Trennungs-Hyperebene" (dh die Hyperebene, die den Rand oder die Lücke zwischen den Klassen maximiert). Der CParameter des SVM ist ein Kapazitätssteuerungsparameter, der dem Kammparameter analog ist und einige Fehlklassifizierungen (Ausreißer) zulässt. Unter der Annahme, dass der Parameterauswahlprozess sorgfältig durchgeführt wurde, würde ich erwarten, dass die beiden Methoden auf einem solchen Datensatz fast genau die gleichen Ergebnisse liefern.

tdc
quelle
2
Ich erinnere mich, dass beim Lesen gezeigt werden kann, dass die binäre Klassifizierung von LS-SVM der Ridge-Regression auf -1,1-Labels entspricht, da ihre Formulierung identisch ist.
Firebug
Denken Sie, Sie könnten Recht haben
tdc