Was sind Hauptkomponentenbewertungen?


71

Was sind Hauptkomponentenbewertungen (PC-Bewertungen, PCA-Bewertungen)?


Der Chefkoch hat hier eine kurze Antwort -> stats.stackexchange.com/questions/146/… . HTH
Roman Luštrik



Antworten:


66

Definieren wir zunächst eine Punktzahl.

John, Mike und Kate erhalten die folgenden Prozentsätze für Prüfungen in Mathematik, Naturwissenschaften, Englisch und Musik:

      Maths    Science    English    Music    
John  80        85          60       55  
Mike  90        85          70       45
Kate  95        80          40       50

In diesem Fall gibt es insgesamt 12 Punkte. Jede Punktzahl repräsentiert die Prüfungsergebnisse für jede Person in einem bestimmten Fach. Eine Punktzahl in diesem Fall ist also einfach eine Darstellung der Schnittmenge zwischen einer Zeile und einer Spalte.

Definieren wir nun informell eine Hauptkomponente.

Können Sie die Daten in der obigen Tabelle einfach in einem 2D-Diagramm darstellen? Nein, denn es gibt vier Fächer (dh vier Variablen: Mathematik, Naturwissenschaften, Englisch und Musik):

  • Sie können zwei Objekte genau so zeichnen, wie Sie es mit den und -Koordinaten in einem 2D-Diagramm tun würden.xy
  • Sie können sogar drei Motive auf die gleiche Weise zeichnen wie , und in einem 3D-Diagramm (obwohl dies im Allgemeinen eine schlechte Praxis ist, da bei der 2D-Darstellung von 3D-Daten eine gewisse Verzerrung unvermeidbar ist).xyz

Aber wie würden Sie 4 Themen darstellen?

Im Moment haben wir vier Variablen, die jeweils nur ein Thema repräsentieren. Eine Methode, die dies betrifft, könnte darin bestehen, die Subjekte in zwei neue Variablen zu kombinieren, die wir dann zeichnen können. Dies wird als mehrdimensionale Skalierung bezeichnet .

Die Hauptkomponentenanalyse ist eine Form der mehrdimensionalen Skalierung. Es ist eine lineare Transformation der Variablen in einen Raum mit niedrigeren Dimensionen, in dem die maximale Menge an Informationen über die Variablen erhalten bleibt. Dies würde zum Beispiel bedeuten, dass wir uns die Fächertypen ansehen könnten, für die jeder Schüler möglicherweise besser geeignet ist.

Eine Hauptkomponente ist daher eine Kombination der ursprünglichen Variablen nach einer linearen Transformation. In R ist dies:

DF<-data.frame(Maths=c(80, 90, 95), Science=c(85, 85, 80), English=c(60, 70, 40), Music=c(55, 45, 50))
prcomp(DF, scale = FALSE)

Das gibt Ihnen so etwas (die ersten beiden Hauptkomponenten nur der Einfachheit halber):

                PC1         PC2
Maths    0.27795606  0.76772853 
Science -0.17428077 -0.08162874 
English -0.94200929  0.19632732 
Music    0.07060547 -0.60447104 

Die erste Spalte zeigt hier die linearen Kombinationskoeffizienten, die die Hauptkomponente Nr. 1 definieren, und die zweite Spalte zeigt die Koeffizienten für die Hauptkomponente Nr. 2.

Was ist ein Hauptkomponenten-Score?

Es ist eine Punktzahl aus der Tabelle am Ende dieses Beitrags (siehe unten).

Die obige Ausgabe von R bedeutet, dass wir jetzt die Punktzahl jeder Person über alle Themen in einem 2D-Diagramm wie folgt darstellen können. Zuerst müssen wir die ursprünglichen Variablen zentrieren, die meine Subtraktionsspalte bedeutet:

      Maths    Science    English    Music    
John  -8.33       1.66       3.33       5  
Mike   1.66       1.66      13.33      -5
Kate   6.66       -3.33    -16.66       0

Und dann, um lineare Kombinationen zu bilden, um PC1- und PC2- Scores zu erhalten :

      x                                                    y
John -0.28*8.33 + -0.17*1.66 + -0.94*3.33  + 0.07*5   -0.77*8.33 + -0.08*1.66 + 0.19*3.33   + -0.60*5 
Mike 0.28*1.66  + -0.17*1.66 + -0.94*13.33 + -0.07*5   0.77*1.66 + -0.08*1.66 + 0.19*13.33  + -0.60*5
Kate 0.28*6.66  + 0.17*3.33  + 0.94*16.66  + 0.07*0    0.77*6.66 +  0.08*3.33 + -0.19*16.66 + -0.60*0

Welches vereinfacht zu:

        x       y
John   -5.39   -8.90
Mike  -12.74    6.78
Kate   18.13    2.12

In der obigen Tabelle sind sechs Hauptkomponentenbewertungen aufgeführt . Sie können die Ergebnisse jetzt in einem 2D-Diagramm darstellen, um einen Eindruck von den Fächern zu erhalten, für die die einzelnen Schüler möglicherweise besser geeignet sind.

Die gleiche Ausgabe erhalten Sie in R durch Eingabe prcomp(DF, scale = FALSE)$x.

EDIT 1: Hmm, ich hätte mir wahrscheinlich ein besseres Beispiel ausdenken können, und es steckt mehr dahinter als das, was ich hier angegeben habe, aber ich hoffe, dass Sie auf die Idee kommen.

EDIT 2: Volle Anerkennung an @drpaulbrewer für seinen Kommentar zur Verbesserung dieser Antwort.


10
Anstrengung ist lobenswert - ABER - weder PC1 noch PC2 sagen Ihnen, wer in allen Fächern am besten abgeschnitten hat. Dazu müssten alle PC-Subjektkoeffizienten positiv sein. PC1 hat positive Gewichte für Mathematik und Musik, aber negative für Naturwissenschaften und Englisch. PC2 hat positive Gewichte für Mathematik und Englisch, aber negative für Naturwissenschaften und Musik. Was Ihnen die PCs sagen, ist, wo die größte Varianz im Datensatz liegt. Wenn Sie also die Themen mit den Koeffizienten in PC1 gewichten und diese zur Bewertung der Schüler verwenden, erhalten Sie die größte Varianz oder Streuung im Verhalten der Schüler. Es kann Typen klassifizieren, aber nicht die Leistung.
Paul

+1 guter Kommentar, Prost. Sie haben natürlich Recht, ich hätte das besser schreiben und jetzt die beleidigende Zeile editieren sollen, um es klar zu machen, hoffe ich.
Tony Breyal

Sie könnten die Variablen standardisieren und daher die Summe berechnen, um zu sehen, wer die beste ist, oder wenn Sie es vorziehen, in R:apply(dtf, 1, function(x) sum(scale(x)))
aL3xa

2
@JohnPrior Die vier Variablen (Spalten) lauten Mathematik, Naturwissenschaften, Englisch und Musik, und die Zeilen stehen für Einzelpersonen. Der Begriff "Thema" wird manchmal mehrdeutig, weil ich vor fünf Jahren ein schreckliches Beispiel für eine Antwort gewählt habe.
Tony Breyal

1
@ Tony, ich habe Ihre Antwort bearbeitet, um die Variablen zu zentrieren, bevor ich die Scores berechnet habe. Nun passen die berechneten Scores zu welchen prcompAusgaben. Davor nicht.
Amöbe sagt Reinstate Monica

23

Die Hauptkomponentenanalyse (PCA) ist ein gängiger Ansatz zur Varianzanalyse bei multivariaten Daten. Sie haben Zufallsvariablen X1, X2, ... Xn, die alle in unterschiedlichem Maße (positiv oder negativ) korreliert sind, und Sie möchten ein besseres Verständnis der Vorgänge erlangen. PCA kann helfen.

Was PCA gibt, ist eine Änderung der Variablen in Y1, Y2, ..., Yn (dh die gleiche Anzahl von Variablen), die Linearkombinationen der Xs sind. Zum Beispiel könnte Y1 = 2,1 X1 - 1,76 X2 + 0,2 X3 sein ...

Das Ys die nette Eigenschaft, dass jedes von diesen null Korrelation miteinander hat. Besser noch, Sie erhalten sie in abnehmender Reihenfolge der Varianz. Also "erklärt" Y1 einen großen Teil der Varianz der ursprünglichen Variablen, Y2 etwas weniger und so weiter. In der Regel werden die Variablen nach den ersten paar Jahren etwas bedeutungslos. Die PCA-Punktzahl für eines der Xi ist nur der Koeffizient in jedem der Ys. In meinem früheren Beispiel beträgt die Punktzahl für X2 in der ersten Hauptkomponente (Y1) 1,76.

Die Art und Weise, wie PCA diese Magie ausführt, besteht darin, Eigenvektoren der Kovarianzmatrix zu berechnen.

Um ein konkretes Beispiel zu geben, stellen Sie sich vor, X1, ... X10 sind Veränderungen der Renditen von 1, 2, ... und 10-jährigen Schatzanleihen über einen bestimmten Zeitraum. Wenn Sie PCA berechnen, stellen Sie im Allgemeinen fest, dass die erste Komponente Punktzahlen für jede Bindung mit demselben Vorzeichen und ungefähr demselben Vorzeichen aufweist. Dies zeigt, dass die meisten Schwankungen der Anleiherenditen auf alles zurückzuführen sind, was sich auf die gleiche Weise bewegt: "Parallelverschiebungen" nach oben oder unten. Die zweite Komponente zeigt typischerweise eine "Versteilung" und eine "Abflachung" der Kurve und hat entgegengesetzte Vorzeichen für X1 und X10.


Wie erklärt ein höherer Y-Wert einen größeren Teil der Varianz? Wie wird die PCA berechnet? Wenn ja, denke ich, ich habe eine andere Frage zu posten;)
vrish88

1
Das ist richtig - wenn die Varianz von PC beispielsweise 3,5 ist, dann "erklärt" dieser PC die Variabilität von 3,5 Variablen aus der ursprünglichen Menge. Da PCs additiv sind PC1 > PC2 > ... > PCnund die Summe ihrer Varianzen gleich der Summe der Varianzen des anfänglichen Variablensatzes ist, wird PCA auf der Grundlage einer Kovarianzmatrix berechnet, dh Variablen werden standardisiert (SD = 1, VAR = 1).
aL3xa

6

Angenommen, Sie haben eine Wolke von N Punkten in beispielsweise 3D (die in einem 100x3-Array aufgelistet werden kann). Anschließend passt die Hauptkomponentenanalyse (PCA) ein willkürlich ausgerichtetes Ellipsoid in die Daten ein. Die Hauptkomponentenbewertung ist die Länge der Durchmesser des Ellipsoids.

In der Richtung, in der der Durchmesser groß ist, variieren die Daten stark, während in der Richtung, in der der Durchmesser klein ist, die Daten geringfügig variieren. Wenn Sie Nd-Daten in ein 2D-Streudiagramm projizieren möchten, zeichnen Sie sie entlang der beiden größten Hauptkomponenten auf, da bei diesem Ansatz der größte Teil der Abweichungen in den Daten angezeigt wird.


Wäre dies von Vorteil oder könnten Sie sie auf einem 3D-Streudiagramm darstellen?
vrish88

6

Ich stelle mir Hauptkomponenten-Scores so lange als "im Grunde genommen bedeutungslos" vor, bis Sie ihnen tatsächlich eine Bedeutung geben. Das Interpretieren von PC-Ergebnissen in Bezug auf "Realität" ist eine knifflige Angelegenheit - und es kann wirklich keinen einzigartigen Weg geben, dies zu tun. Es hängt davon ab, was Sie über die einzelnen Variablen wissen, die in die PCA aufgenommen werden, und wie sie sich in Bezug auf Interpretationen zueinander verhalten.

Soweit es die Mathematik betrifft, interpretiere ich PC-Punkte gerne als Koordinaten jedes Punktes in Bezug auf die Hauptkomponentenachsen. In den Rohvariablen haben Sie also was ein "Punkt" im p-dimensionalen Raum ist. In diesen Koordinaten bedeutet dies, dass der Punkt entlang der -Achse einen Abstand vom Ursprung entfernt ist. Eine PCA beschreibt diesen "Punkt" im Grunde genommen anders als die "Rohvariablen". Wir haben also , wobei ist dasxi =(x1i,x2i,,xpi)x1x1izi =(z1i,z2i,,zpi)=A(xix¯)Ap×pMatrix der Hauptkomponentengewichte (dh Eigenvektoren in jeder Zeile) und ist der "Schwerpunkt" der Daten (oder der mittlere Vektor der Datenpunkte).x¯

Die Eigenvektoren beschreiben also, wo sich die "Geraden" befinden, die die PCs beschreiben. Die Hauptkomponentenbewertungen beschreiben dann, wo jeder Datenpunkt auf jeder geraden Linie relativ zum "Mittelpunkt" der Daten liegt. Sie können sich die PC-Scores in Kombination mit den Gewichten / Eigenvektoren auch als eine Reihe von Rang-1-Vorhersagen für jeden der ursprünglichen Datenpunkte vorstellen, die folgende Form haben:

x^ji(k)=x¯j+zkiAkj

Wobei die Vorhersage für die te Beobachtung für die te Variable unter Verwendung des ten PC ist.x^ji(k)ijk


4

Die Hauptkomponenten einer Datenmatrix sind die Eigenvektor-Eigenwert-Paare ihrer Varianz-Kovarianz-Matrix. Im Wesentlichen sind sie die dekorrelierten Teile der Varianz. Jedes ist eine lineare Kombination der Variablen für eine Beobachtung - nehmen Sie an, Sie messen w, x, y, z an jedem von einer Reihe von Themen. Ihr erster PC könnte so ähnlich aussehen

0,5 w + 4 x + 5 y - 1,5 z

Die Belastungen (Eigenvektoren) betragen hier (0,5, 4, 5, -1,5). Die Punktzahl (Eigenwert) für jede Beobachtung ist der resultierende Wert, wenn Sie in der Beobachtung (w, x, y, z) substituieren und die Summe berechnen.

Dies ist praktisch, wenn Sie Dinge auf ihre Hauptkomponenten projizieren (z. B. für die Erkennung von Ausreißern), da Sie die Bewertungen wie bei allen anderen Daten nur auf jeder grafisch darstellen. Dies kann viel über Ihre Daten aussagen, wenn ein großer Teil der Varianz korreliert ist (== in den ersten paar PCs).


Wenn Sie aus Gründen der Klarheit "Angenommen, Sie messen w, x, y, z an jedem von einer Reihe von Themen" sagen, beziehen Sie sich nicht auf die "Themen" aus der obigen Antwort von @TonyBreyal, oder? Sie verwenden das Wort "Probanden" als Synonym für "Beobachtungen" / "Aufzeichnungen" / "Datenreihen"?
Ryan Chase

4

Sei indexiere die Zeilen und indexiere die Spalten. Angenommen, Sie linearisieren die Kombination von Variablen (Spalten):i=1,,Nj=1,,M

Zi,1=ci,1Yi,1+ci,2Yi,2+...+ci,MYi,M

Die obige Formel besagt grundsätzlich, dass Zeilenelemente mit einem bestimmten Wert (Ladungen) multipliziert und nach Spalten summiert werden sollen. Resultierende Werte ( Werte mal Beladung) sind Scores.YcY

Eine Hauptkomponente (PC) ist eine Linearkombination ) (Werte durch Spalten, die als Punktzahlen bezeichnet werden). Im Wesentlichen sollte der PC die wichtigsten Merkmale von Variablen (Spalten) darstellen. Ergo können Sie so viele PCs extrahieren, wie Variablen (oder weniger) vorhanden sind.Z1=(Z1,1,...,ZN,1

Eine Ausgabe von R auf PCA (ein falsches Beispiel) sieht folgendermaßen aus. PC1, PC2 ... sind Hauptkomponenten 1, 2 ... Das folgende Beispiel zeigt nur die ersten 8 Hauptkomponenten (von 17). Sie können auch andere Elemente aus der PCA extrahieren, z. B. Ladevorgänge und Partituren.

Importance of components:
                          PC1    PC2    PC3    PC4    PC5    PC6    PC7    PC8
Standard deviation     1.0889 1.0642 1.0550 1.0475 1.0387 1.0277 1.0169 1.0105
Proportion of Variance 0.0697 0.0666 0.0655 0.0645 0.0635 0.0621 0.0608 0.0601
Cumulative Proportion  0.0697 0.1364 0.2018 0.2664 0.3298 0.3920 0.4528 0.5129

1
Entschuldigung, aber was sind Ladungen (c in Ihrer Formel) und wie bestimmen Sie sie?
vrish88

@ vrish88 Ich glaube die c's sind die "Ladungen" der Eigenvektoren. Ich verstehe, dass dies im Wesentlichen nur die Gewichtungen sind, die Sie für jede der Variablen angeben. Tim erklärt dies gut in seiner Antwort.
Ryan Chase

3

Hauptkomponentenbewertungen sind eine Gruppe von Bewertungen, die nach einer Hauptkomponentenanalyse (PCA) erhalten werden. In PCA werden die Beziehungen zwischen einer Gruppe von Bewertungen so analysiert, dass eine gleiche Anzahl neuer "imaginärer" Variablen (auch als Hauptkomponenten bezeichnet) erstellt wird. Die erste dieser neuen imaginären Variablen korreliert maximal mit allen ursprünglichen Variablengruppen. Das nächste ist etwas weniger korreliert und so weiter, bis Sie, wenn Sie alle Hauptkomponenten-Scores zur Vorhersage einer bestimmten Variablen aus der Anfangsgruppe verwenden, in der Lage wären, alle ihre Varianz zu erklären. Die Art und Weise, wie PCA vorgeht, ist komplex und unterliegt gewissen Einschränkungen. Dazu gehört die Einschränkung, dass die Korrelation zwischen zwei Hauptkomponenten (dh imaginären Variablen) Null ist; so tut es nicht

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.