Bei dieser Frage geht es hauptsächlich um Definitionen von PCA / FA, daher können sich die Meinungen unterscheiden. Meiner Meinung nach sollte PCA + varimax nicht als PCA oder FA bezeichnet werden, sondern eher explizit als "varimax-gedrehtes PCA" bezeichnet werden.
Ich sollte hinzufügen, dass dies ein ziemlich verwirrendes Thema ist. In dieser Antwort möchte ich erklären, was eine Rotation tatsächlich ist . Dies erfordert etwas Mathematik. Ein gelegentlicher Leser kann direkt zur Abbildung springen. Nur dann können wir diskutieren, ob PCA + Rotation als "PCA" bezeichnet werden soll oder nicht.
Eine Referenz ist Jolliffes Buch "Principal Component Analysis", Abschnitt 11.1 "Rotation von Hauptkomponenten", aber ich finde, es könnte klarer sein.
Sei eine n × p- Datenmatrix, von der wir annehmen, dass sie zentriert ist. PCA ergibt ( siehe meine Antwort hier ) eine Singulärwertzerlegung: X = U S V ⊤ . Es gibt zwei äquivalente, aber komplementäre Ansichten zu dieser Zerlegung: eine eher PCA-artige "Projektions" -Ansicht und eine eher FA-artige "latente Variablen" -Ansicht.Xn×pX=USV⊤
Gemäß der PCA-Stil - Ansicht, fanden wir eine Reihe von orthogonalen Richtungen (diese sind Eigenvektoren der Kovarianz - Matrix, die auch „Hauptrichtungen“ oder „Achsen“ bezeichnet), und „principal components“ U S (auch als Hauptbestandteil " Scores ") sind Projektionen der Daten in diese Richtungen. Hauptkomponenten sind unkorreliert, die erste hat maximal mögliche Varianz etc. kann man schreiben: X = U S ⋅ V ⊤ = Scores ⋅ Hauptrichtungen .VU S
X = U S ⋅ V⊤= Scores ⋅ Hauptrichtungen .
Nach Ansicht des FA-Stils fanden wir einige unkorrelierte "latente Faktoren" der Einheitsvarianz, die über "Ladungen" zu den beobachteten Variablen führen. Tatsächlich ist sind standardisierte Hauptkomponenten (unkorreliert und mit Einheitsvarianz), und wenn wir Belastungen alsL=VS/ √ definierenU˜= n - 1-----√U , dann ist X= √L = V S / n - 1-----√(Beachten Sie, dass S ⊤=S ist.) Beide Ansichten sind äquivalent. Beachten Sie, dass Ladungen Eigenvektoren sind, die mit den jeweiligen Eigenwerten (S/ √
X = n - 1-----√U ⋅( V S / n - 1-----√)⊤= U˜⋅ L⊤=Standardized scores⋅Loadings.
S⊤= S sind Eigenwerte der Kovarianzmatrix.
S / n - 1-----√
(Ich sollte in Klammern hinzufügen, dass PCA FA≠ ; FA explizit darauf abzielt, latente Faktoren zu finden, die über Ladevorgänge linear auf die beobachteten Variablen abgebildet werden. Es ist flexibler als PCA und liefert unterschiedliche Ladevorgänge. Aus diesem Grund ziehe ich es vor, das Obige zu bezeichnen. " FA-artige Ansicht auf PCA "und nicht FA, obwohl manche Leute es als eine der FA-Methoden ansehen.)
Was macht nun eine Rotation? ZB eine orthogonale Rotation wie Varimax. Erstens, es hält nur Komponenten, dh: X ≈ U k S k V ⊤ k = ~ U k L ⊤ k . Dann nimmt man eine quadratische orthogonale k × k- Matrix T und setzt T T ⊤ = I in diese Zerlegung ein: X ≈ U k S k V ⊤ k = Uk < p
X ≈ UkSkV⊤k= U˜kL⊤k.
k × kTT T⊤= Ich wobei gedrehte Belastungen durch
L r o t = L k T gegeben sind und gedrehte standardisierte Bewertungen durch
˜ U r o t = ˜ gegeben sind U k T . (Ziel ist es,
T sozu finden, dass
L r o tX ≈ UkSkV⊤k= UkT T⊤SkV⊤k= U˜r o tL⊤r o t,
Lr o t= LkTU˜r o t= U˜kTTLr o t wurde so knapp wie möglich, um seine Interpretation zu erleichtern.)
Es ist zu beachten, dass Folgendes gedreht wird: (1) standardisierte Bewertungen, (2) Ladungen. Aber nicht die rohen Noten und nicht die Hauptrichtungen! Die Rotation findet also im latenten Raum statt, nicht im ursprünglichen Raum. Das ist absolut entscheidend.
Aus Sicht des FA-Stils ist nicht viel passiert. (A) Die latenten Faktoren sind immer noch unkorreliert und standardisiert. (B) Sie werden weiterhin über (gedrehte) Ladungen auf die beobachteten Variablen abgebildet. (C) Die Menge der Varianz von jeder Komponente / Faktor erfaßt wird durch die Summe der quadrierten Werte der entsprechenden Beladungen Spalte in gegebenen . (D) Geometrisch überspannen Ladungen immer noch den gleichen k- dimensionalen Unterraum in R p (den von den ersten k PCA-Eigenvektoren aufgespannten Unterraum ). (E) Die Annäherung an X und der Rekonstruktionsfehler änderten sich überhaupt nicht. (F) Die Kovarianzmatrix approximiert wird noch ebenso gut: & Sigma; ≈ LLr o tkRpkX
& Sgr; & ap ; LkL⊤k= Lr o tL⊤r o t.
Aber die Sichtweise im PCA-Stil ist praktisch zusammengebrochen. Gedrehte Lasten entsprechen nicht mehr den orthogonalen Richtungen / Achsen in , dh Spalten von sind nicht orthogonal! Schlimmer noch, wenn Sie die Daten [orthogonal] auf die Richtungen projizieren, die durch die gedrehten Ladungen vorgegeben sind, erhalten Sie korrelierte (!) Projektionen und können die Ergebnisse nicht wiederherstellen. [Um die standardisierten Ergebnisse nach der Rotation zu berechnen, muss die Datenmatrix mit dem Pseudo-Inversen der Ladungen multipliziert werden. . Alternativ kann man einfach die ursprünglichen standardisierten Punktzahlen mit der Rotationsmatrix drehen:L R o t ~ U r o t = X ( L + R o t ) ⊤ ~ U r o t = ~ U T kkRpLr o tU˜r o t= X ( L+r o t)⊤U˜r o t= U˜T ] Außerdem erfassen die gedrehten Komponenten nicht nacheinander den maximalen Betrag der Varianz: Die Varianz wird zwischen den Komponenten (gerade) neu verteilt obwohl alle gedrehten Komponenten genau so viel Varianz erfassen wie alle ursprünglichen Hauptkomponenten).kk
Hier ist eine Illustration. Die Daten sind eine 2D-Ellipse, die sich entlang der Hauptdiagonale erstreckt. Die erste Hauptrichtung ist die Hauptdiagonale, die zweite ist orthogonal dazu. PCA-Ladevektoren (mit den Eigenwerten skalierte Eigenvektoren) werden in roter Farbe angezeigt, wobei sie in beide Richtungen weisen und für die Sichtbarkeit auch um einen konstanten Faktor gedehnt sind. Dann habe ich den Ladungen eine orthogonale Drehung um . Die resultierenden Ladevektoren werden in Magenta angezeigt. Beachten Sie, dass sie nicht orthogonal sind (!).30∘
Eine FA-artige Intuition ist hier wie folgt: Stellen Sie sich einen "latenten Raum" vor, in dem Punkte einen kleinen Kreis füllen (stammen aus einem 2D-Gaußschen mit Einheitsvarianzen). Diese Punkteverteilung wird dann entlang der PCA-Ladungen (rot) gestreckt , um die Datenellipse zu erhalten, die wir in dieser Abbildung sehen. Die gleiche Verteilung von Punkten kann jedoch gedreht und dann entlang der gedrehten PCA-Ladungen (Magenta) gestreckt werden, um die gleiche Datenellipse zu erhalten .
[Um zu sehen, dass eine orthogonale Rotation von Ladungen eine Rotation ist , muss ein PCA-Biplot betrachtet werden. dort drehen sich die Vektoren / Strahlen, die den ursprünglichen Variablen entsprechen, einfach.]
Fassen wir zusammen. Nach einer orthogonalen Drehung (z. B. Varimax) sind die Hauptachsen nicht orthogonal, und orthogonale Projektionen darauf sind nicht sinnvoll. Man sollte also eher diesen ganzen Achsen- / Projektionsgesichtspunkt fallen lassen. Es wäre seltsam, es immer noch PCA zu nennen (das sind Projektionen mit maximaler Varianz usw.).
Aus Sicht des FA-Stils haben wir einfach unsere (standardisierten und unkorrelierten) latenten Faktoren gedreht, was eine gültige Operation ist. Es gibt keine "Projektionen" in FA; Stattdessen erzeugen latente Faktoren die beobachteten Variablen über Ladungen. Diese Logik bleibt erhalten. Wir haben jedoch mit Hauptkomponenten begonnen, die eigentlich keine Faktoren sind (da PCA nicht mit FA identisch ist). Es wäre also seltsam, es auch FA zu nennen.
Anstatt zu diskutieren, ob man es lieber als PCA oder FA bezeichnen sollte, würde ich empfehlen, das genau verwendete Verfahren akribisch zu spezifizieren: "PCA gefolgt von einer Varimax-Rotation".
T T⊤U SV⊤