Angenommen, ich habe einen dimensionalen Datensatz, in dem die N- Dimensionen ungefähr orthogonal sind (Korrelation Null haben).
Gibt es einen Nutzen in Bezug auf:
- Visualisierung
- Darstellung (für Klassifizierereffizienz)
- Oder andere Kriterien
Dimensionsreduktion an den Daten durchführen?
pca
dimensionality-reduction
user1172468
quelle
quelle
Antworten:
Ich wollte einen Kommentar klarstellen, den ich unter der Antwort von @ Peter-Flom hinterlassen habe, aber es lohnt sich wahrscheinlich, eine Antwort zu schreiben. Inwieweit können Sie Dimensionen reduzieren, indem Sie PCA für nahezu orthogonale Daten ausführen? Die Antwort lautet "es hängt davon ab", ob Sie die PCA für die Korrelations- oder Kovarianzmatrix durchführen .
Wenn Sie PCA für die Korrelationsmatrix verwenden, gibt es eine sphärische Symmetrie, die alle Richtungen "gleichermaßen informativ" macht, da sich diese nur geringfügig von der Identitätsmatrix unterscheidet. Das Neuskalieren der Varianzen Ihrer Variablen auf eins vor der PCA ist ein mathematisch äquivalenter Ansatz, der zum gleichen Ergebnis führt. Während die PCA-Ausgabe einige Komponenten mit einer geringfügig geringeren Varianz als andere identifiziert, kann dies (wenn wir eine Nullkorrelation in der Grundgesamtheit annehmen) auf nichts anderes als eine zufällige Variation in der Stichprobe zurückgeführt werden. Dies wäre also kein guter Grund, diese zu verwerfen Komponenten. Tatsächlich sollte sich diese Ungleichheit zwischen Standardabweichungen von Komponenten verringern, wenn wir die Stichprobengröße erhöhen. Wir können dies in einer Simulation bestätigen.
Ausgabe:
Wenn Sie jedoch eine PCA mit der Kovarianzmatrix anstelle der Korrelationsmatrix durchführen (äquivalent: Wenn wir die Standardabweichungen vor der Anwendung der PCA nicht auf 1 skalieren), hängt die Antwort von der Verteilung Ihrer Variablen ab. Wenn Ihre Variablen dieselbe Varianz haben, haben wir immer noch eine sphärische Symmetrie, sodass es keine "privilegierte Richtung" gibt und keine Dimensionsreduktion erreicht werden kann.
Bei einer Mischung aus Variablen mit hoher und niedriger Varianz ähnelt die Symmetrie jedoch eher einem Ellipsoid mit einigen breiten Achsen und anderen dünnen. In dieser Situation werden Komponenten mit hoher Varianz auf die Variablen mit hoher Varianz (wo das Ellipsoid breit ist) und Komponenten mit niedriger Varianz auf die Variablen mit niedriger Varianz (in welche Richtungen das Ellipsoid schmal ist) geladen.
Wenn die Variablen sehr unterschiedliche Varianzen aufweisen (wieder geometrisch ein Ellipsoid, wobei sich jedoch alle Achsen unterscheiden), kann der erste PC durch Orthogonalität sehr stark auf die Variable mit der höchsten Varianz und so weiter geladen werden.
In den letzten beiden Fällen gab es Komponenten mit geringer Varianz, die Sie möglicherweise wegwerfen könnten, um eine Dimensionsreduzierung zu erzielen. Dies entspricht jedoch genau dem Wegwerfen der Variablen mit der niedrigsten Varianz . Im Wesentlichen können Sie mit der Orthogonalität Komponenten mit geringer Varianz mit Variablen mit geringer Varianz identifizieren. Wenn Sie also die Dimensionalität auf diese Weise reduzieren möchten, ist es nicht klar, ob Sie von der Verwendung von PCA profitieren würden.
Hinweis: Die Zeitspanne, die für die Erörterung des Falls aufgewendet wird, in dem die Variablen nicht auf Einheitsvarianz skaliert werden - dh die Verwendung der Kovarianz anstelle der Korrelationsmatrix -, sollte nicht als Hinweis darauf verstanden werden, dass dieser Ansatz irgendwie wichtiger ist und schon gar nicht ist besser". Die Symmetrie der Situation ist einfach subtiler und erfordert daher eine längere Diskussion.
quelle
Sie können eine allgemeinere nichtlineare Lernmethode zur Reduzierung der Dimensionalität ausprobieren , z. B. lokal lineare Einbettung, Laplace-Eigenkarten oder t-SNE.
Es ist durchaus möglich, dass Ihre Daten einen unterdimensionalen Unterraum (Verteiler) enthalten, der eine Korrelation zwischen den N-Basis-Dimensionen von 0 lässt. Zum Beispiel ein Kreis von Punkten um den Ursprung oder die Wellenform, wie hier gezeigt . PCA wird dies nicht aufgreifen, andere Methoden jedoch.
Das Betrachten solcher Methoden ist besonders interessant und üblich für die Visualisierung und explorative Datenanalyse. Für die Verwendung in einem Klassifikator oder einem anderen Modell müssen Sie sich auf die Methoden beschränken, die für das Training geeignet sind und auf Tests angewendet werden können, bei denen viele dieser Methoden ausgeschlossen sind. Wenn dies Ihr Hauptinteresse ist, sollten Sie sich auch mit Methoden für unbeaufsichtigtes Pretraining und (überwachtes) Feature-Engineering befassen.
quelle
Wenn alle N Variablen ungefähr orthogonal sind, führt die Dimensionsreduzierung zu einer relativ geringen Reduzierung. ZB in
R
Im Wesentlichen impliziert "orthogonal" "bereits in seiner kleinsten Größe".
quelle
x1<-rnorm(100, sd=0.1)
undpcsol <- princomp(df1, cor=FALSE)
und es gibt einen Unterschied, insbesondere wenn wir uns das ansehensummary(pcsol)
. (Ich behaupte nicht, dass cov ein besserer Ansatz als cor ist, nur dass es möglich ist.)