Ich habe einen Klassifikator, für den ich eine Kreuzvalidierung durchführe, und ungefähr hundert Features, für die ich eine Vorauswahl vornehme, um optimale Kombinationen von Features zu finden. Ich vergleiche dies auch mit der Durchführung der gleichen Experimente mit PCA, bei denen ich die potenziellen Merkmale nehme, SVD anwende, die ursprünglichen Signale in den neuen Koordinatenraum transformiere und die Top- Merkmale in meinem Vorwärtsauswahlprozess verwende.
Meine Intuition war, dass PCA die Ergebnisse verbessern würde, da die Signale "informativer" wären als die ursprünglichen Merkmale. Führt mich mein naives Verständnis von PCA in Schwierigkeiten? Kann jemand einige der häufigsten Gründe dafür nennen, warum PCA die Ergebnisse in bestimmten Situationen verbessern, in anderen Situationen jedoch verschlechtern kann?
quelle
Antworten:
Stellen Sie sich einen einfachen Fall vor, der aus einem großartigen und unterbewerteten Artikel "Ein Hinweis zur Verwendung von Hauptkomponenten in der Regression" hervorgeht .
Angenommen, Sie haben nur zwei (skalierte und nicht gemittelte) Merkmale. Bezeichnen Sie diese mit und mit einer positiven Korrelation von 0,5, ausgerichtet in , und einer dritten Antwortvariablen Sie klassifizieren möchten. Angenommen, die Klassifikation von wird vollständig durch das Vorzeichen von .x 2 x y y x 1 - x 2x1 x2 X Y Y x1−x2
Das Ausführen von PCA auf führt zu den neuen (nach Varianz geordneten) Features , da . Wenn Sie also Ihre Dimension auf 1 reduzieren, dh die erste Hauptkomponente, werfen Sie die exakte Lösung für Ihre Klassifizierung weg![ x 1 + x 2 , x 1 - x 2 ] Var ( x 1 + x 2 ) = 1 + 1 + 2 ρ > Var ( x 1 - x 2 ) = 2 - 2 ρX [x1+x2,x1−x2] Var(x1+x2)=1+1+2ρ>Var(x1−x2)=2−2ρ
Das Problem tritt auf, weil PCA für agnostisch ist . Leider kann man in die PCA aufnehmen, da dies zu Datenlecks führt.YY Y
Datenverlust tritt auf, wenn Ihre Matrix unter Verwendung der fraglichen Zielvorhersagen konstruiert wird, sodass Vorhersagen außerhalb der Stichprobe unmöglich sind.X
Zum Beispiel: In Finanzzeitreihen ist der Versuch, den europäischen Tagesabschluss, der um 11:00 Uhr EST stattfindet, unter Verwendung amerikanischer Tagesabschlusszeiten, um 16:00 Uhr EST, vorherzusagen, ein Datenverlust, seitdem der Amerikaner geschlossen hat , die Stunden später auftreten, haben die Preise der europäischen Abschlüsse einbezogen.
quelle
Es gibt eine einfache geometrische Erklärung. Versuchen Sie das folgende Beispiel in R und erinnern Sie sich, dass die erste Hauptkomponente die Varianz maximiert.
PCA hilft
Die Richtung der maximalen Varianz ist horizontal und die Klassen sind horizontal getrennt.
PCA tut weh
Die Richtung der maximalen Varianz ist horizontal, aber die Klassen sind vertikal getrennt
quelle
PCA ist linear. Es tut weh, wenn Sie nicht lineare Abhängigkeiten sehen möchten.
PCA auf Bildern als Vektoren:
Ein nichtlinearer Algorithmus (NLDR), der Bilder auf 2 Dimensionen, Drehung und Maßstab reduziert:
Weitere Informationen: http://en.wikipedia.org/wiki/Nonlinear_dimensionality_reduction
quelle
Ich sehe, dass die Frage bereits eine akzeptierte Antwort hat, wollte aber dieses Papier teilen , in dem es um die Verwendung von PCA für die Feature-Transformation vor der Klassifizierung geht .
Die Nachricht zum Mitnehmen (die in der Antwort von @ vqv wunderschön dargestellt wird) lautet:
Wenn Sie sich Abschnitt 4 ansehen, sehen Sie sich die Ergebnisse der Experimente an . Sie vergleichen die Klassifizierungsgenauigkeiten mit 1) den Originalmerkmalen, 2) den PCA-transformierten Merkmalen und 3) der Kombination aus beiden, was für mich neu war.
Meine Schlussfolgerung:
Mithilfe von PCA-basierten Feature-Transformationen können die Informationen einer großen Anzahl von Features in einer begrenzten Anzahl von Komponenten zusammengefasst werden, dh in linearen Kombinationen der ursprünglichen Features. Die Hauptkomponenten sind jedoch oft schwer zu interpretieren (nicht intuitiv), und wie die empirischen Ergebnisse in diesem Artikel zeigen, verbessern sie in der Regel die Klassifizierungsleistung nicht.
PS: Ich stelle fest, dass eine der Beschränkungen des Papiers, die aufgeführt wurden, die Tatsache war, dass die Autoren die Leistungsbewertung der Klassifikatoren nur auf „Genauigkeit“ beschränkten, was ein sehr voreingenommener Leistungsindikator sein kann.
quelle
Nehmen wir einen einfachen Fall mit 3 unabhängigen Variablen und der Ausgabe und nehmen wir nun an, dass und Sie in der Lage sein sollten, ein 0-Fehlermodell zu erhalten. y x 3 = yx1,x2,x3 y x3=y
Nehmen wir nun an, dass in der Trainingsmenge die Variation von sehr klein ist und damit auch die Variation von . x 3y x3
Wenn Sie nun PCA ausführen und nur zwei Variablen auswählen, erhalten Sie eine Kombination aus und . Die Information von , die die einzige Variable war, die erklären konnte, geht verloren.x 2 x 3 yx1 x2 x3 y
quelle