Quels sont les scores principaux composant?


71

Réponses:


66

Premièrement, définissons un score.

John, Mike et Kate obtiennent les pourcentages suivants pour les examens en mathématiques, en sciences, en anglais et en musique, comme suit:

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

Dans ce cas, il y a 12 scores au total. Chaque note représente les résultats de l'examen pour chaque personne dans une matière donnée. Ainsi, dans ce cas, un score est simplement une représentation de l'endroit où une ligne et une colonne se croisent.

Définissons maintenant de manière informelle une composante principale.

Dans le tableau ci-dessus, pouvez-vous facilement tracer les données dans un graphique 2D? Non, car il y a quatre matières (ce qui signifie quatre variables: mathématiques, sciences, anglais et musique), à ​​savoir:

  • Vous pouvez tracer deux sujets de la même manière que vous le feriez avec les et dans un graphique 2D.yxy
  • Vous pouvez même tracer trois sujets de la même manière que vous traceriez , et dans un graphe 3D (bien que cela soit généralement une mauvaise pratique, car une certaine distorsion est inévitable dans la représentation 2D des données 3D).y zxyz

Mais comment pourriez-vous tracer 4 sujets?

Pour le moment, nous avons quatre variables qui représentent chacune un seul sujet. Donc, une méthode autour de cela pourrait consister à combiner d'une manière ou d'une autre les sujets dans peut-être juste deux nouvelles variables que nous pouvons ensuite tracer. Ceci est connu sous le nom de mise à l'échelle multidimensionnelle .

L’analyse en composantes principales est une forme de mise à l’échelle multidimensionnelle. Il s’agit d’une transformation linéaire des variables en un espace dimensionnel inférieur qui conserve une quantité maximale d’informations sur les variables. Par exemple, cela signifierait que nous pourrions examiner les types de sujets auxquels chaque élève est peut-être plus adapté.

Une composante principale est donc une combinaison des variables d'origine après une transformation linéaire. En R, c'est:

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)

Ce qui vous donnera quelque chose comme ceci (les deux premières composantes principales uniquement pour des raisons de simplicité):

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

La première colonne montre les coefficients de la combinaison linéaire qui définit la composante principale n ° 1, et la seconde colonne présente les coefficients de la composante principale n ° 2.

Alors, quel est le score de la composante principale?

C'est un score du tableau à la fin de ce post (voir ci-dessous).

La sortie ci-dessus de R signifie que nous pouvons maintenant tracer le score de chaque personne pour tous les sujets dans un graphique 2D comme suit. Tout d'abord, nous devons centrer les variables d'origine, ma colonne de soustraction signifie:

      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

Et ensuite pour former des combinaisons linéaires pour obtenir les scores PC1 et PC2 :

      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

Ce qui simplifie à:

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

Le tableau ci-dessus présente six scores en composantes principales . Vous pouvez maintenant tracer les scores dans un graphique 2D pour avoir une idée du type de sujet auquel chaque élève est peut-être plus adapté.

Le même résultat peut être obtenu dans R en tapant prcomp(DF, scale = FALSE)$x.

EDIT 1: Hmm, j'aurais probablement pu trouver un meilleur exemple et il y a plus que ce que j'ai mis ici, mais j'espère que vous avez compris.

EDIT 2: remerciements à @drpaulbrewer pour son commentaire sur l'amélioration de cette réponse.


10
L'effort est louable - MAIS - ni PC1 ni PC2 ne vous disent qui a fait le mieux dans tous les domaines. Pour ce faire, les coefficients du sujet PC devraient tous être positifs. PC1 a un poids positif pour les mathématiques et la musique mais négatif pour les sciences et l'anglais. PC2 a des poids positifs pour les mathématiques et l'anglais mais négatif pour les sciences et la musique. Ce que les PJ vous disent, c'est où réside la plus grande variance dans l'ensemble de données. Donc, en pondérant les sujets par les coefficients de PC1 et en les utilisant pour noter les élèves, vous obtenez la plus grande variance ou la plus grande dispersion dans le comportement des élèves. Il peut classer les types mais pas les performances.
Paul

+1 bon commentaire, à la vôtre. Vous avez bien sûr raison, j'aurais dû mieux l'écrire et j'ai maintenant modifié la ligne fautive pour la rendre claire, j'espère.
Tony Breyal

Vous pouvez normaliser les vars, donc calculer la somme, afin de voir qui est le meilleur, ou si vous préférez, en R:apply(dtf, 1, function(x) sum(scale(x)))
aL3xa

2
@JohnPrior Les quatre variables (colonnes) sont Maths, Science, Anglais et Musique, et les lignes représentent les individus. Le terme "sujet" devient parfois ambigu, car il y a cinq ans, j'ai choisi un terrible exemple pour y répondre.
Tony Breyal

1
@ Tony, je suis allé de l'avant et édité votre réponse pour centrer les variables avant de calculer les scores. Maintenant, les scores calculés correspondent à quels prcomprésultats. Avant ce n'était pas le cas.
amibe dit de réintégrer Monica

23

L’analyse en composantes principales (ACP) est l’une des méthodes classiques d’analyse de la variance lorsque vous traitez avec des données multivariées. Vous avez des variables aléatoires X1, X2, ... Xn qui sont toutes corrélées (positivement ou négativement) à des degrés divers, et vous souhaitez mieux comprendre ce qui se passe. La PCA peut aider.

La PCA vous donne un changement de variable en Y1, Y2, ..., Yn (c'est-à-dire le même nombre de variables) qui sont des combinaisons linéaires des X. Par exemple, vous pourriez avoir Y1 = 2.1 X1 - 1.76 X2 + 0.2 X3 ...

Le Ys la belle propriété que chacun de ceux-ci ont une corrélation nulle les uns avec les autres. Mieux encore, vous les obtenez par ordre décroissant de variance. Donc, Y1 "explique" un gros morceau de la variance des variables d'origine, Y2 un peu moins et ainsi de suite. Habituellement, après les premiers Y, les variables deviennent quelque peu dénuées de sens. Le score PCA pour l'un des Xi est juste son coefficient dans chacun des Y. Dans mon exemple précédent, le score de X2 dans la première composante principale (Y1) est de 1,76.

La manière dont PCA fait cette magie consiste à calculer les vecteurs propres de la matrice de covariance.

Pour donner un exemple concret, imaginons X1, ... X10, les variations des rendements des obligations du Trésor à 1 an, 2 ans, ..., 10 ans sur une certaine période. Lorsque vous calculez PCA, vous constatez généralement que le premier composant a des scores pour chaque lien du même signe et du même signe. Cela vous indique que l'essentiel de la variance des rendements obligataires provient de tout ce qui bouge de la même manière: des "décalages parallèles" à la hausse ou à la baisse. La deuxième composante montre typiquement "accentuation" et "aplatissement" de la courbe et présente des signes opposés pour X1 et X10.


Comment une valeur Y supérieure "explique-t-elle" une plus grande partie de la variance? Est-ce ainsi que la PCA est calculée? Si c'est le cas, je pense que j'ai une autre question à poster;)
vrish88

1
C'est vrai - si la variance de PC est, disons 3,5, alors ce PC "explique" la variabilité de 3,5 variables de l'ensemble initial. Puisque les PC sont additifs, PC1 > PC2 > ... > PCnet que la somme de leurs variances est égale à la somme des variances de la variable initiale, PCA étant calculée sur une matrice de covariance, les variables sont normalisées (SD = 1, VAR = 1).
aL3xa

6

Supposons que vous ayez un nuage de N points en 3D, par exemple (qui peut être répertorié dans un tableau 100x3). Ensuite, l’analyse en composantes principales (ACP) intègre un ellipsoïde à orientation arbitraire dans les données. Le score de composant principal est la longueur des diamètres de l'ellipsoïde.

Dans le sens où le diamètre est grand, les données varient beaucoup, tandis que dans le sens où le diamètre est petit, les données varient légèrement. Si vous souhaitez projeter les données Nd dans un diagramme de dispersion 2D, vous les tracez le long des deux principales composantes principales, car avec cette approche, vous affichez la majeure partie de la variance dans les données.


Y aurait-il un avantage ou pourriez-vous les représenter sur un diagramme de dispersion 3-D?
vrish88

6

J'aime penser que les partitions principales sont "fondamentalement sans signification" jusqu'à ce que vous leur donniez une signification. Interpréter les partitions de PC en termes de "réalité" est une tâche délicate - et il n’existe vraiment aucun moyen unique de le faire. Cela dépend de ce que vous savez sur les variables particulières qui entrent dans la PCA et de la manière dont elles sont liées les unes aux autres en termes d’interprétations.

En mathématiques, j'aime interpréter les scores PC comme les coordonnées de chaque point, par rapport aux principaux axes de la composante. Donc, dans les variables brutes que vous avezxi =(x1i,x2i,,xpi)x1x1izi =(z1i,z2i,,zpi)=A(xix¯)Ap×px¯

Vous pouvez donc penser que les vecteurs propres décrivent où se trouvent les "lignes droites" décrivant les PC. Ensuite, les scores en composantes principales décrivent où chaque point de données se trouve sur chaque ligne droite, par rapport au "centriod" des données. Vous pouvez également considérer les scores PC combinés aux pondérations / vecteurs propres comme une série de prédictions de rang 1 pour chacun des points de données d'origine, qui ont la forme suivante:

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

x^ji(k)ijk


4

Les principales composantes d'une matrice de données sont les paires vecteur propre-valeur propre de sa matrice de variance-covariance. En substance, ce sont les pièces décorrélées de la variance. Chacune est une combinaison linéaire des variables pour une observation - supposons que vous mesuriez w, x, y, z sur chacun des sujets. Votre premier PC pourrait bien ressembler à quelque chose comme

0.5w + 4x + 5y - 1.5z

Les chargements (vecteurs propres) sont ici (0.5, 4, 5, -1.5). Le score (valeur propre) de chaque observation correspond à la valeur obtenue lorsque vous substituez à la valeur observée (w, x, y, z) et calculez le total.

Cela s'avère pratique lorsque vous projetez des éléments sur leurs composants principaux (pour, par exemple, la détection des valeurs aberrantes), car vous tracez simplement les scores sur chacun d'eux comme vous le feriez avec d'autres données. Cela peut en apprendre beaucoup sur vos données si une grande partie de la variance est corrélée (== dans les premiers PC).


Par souci de clarté, lorsque vous dites "supposons que vous mesuriez w, x, y, z sur chacun des sujets", vous ne faites pas référence aux "sujets" de la réponse de @TonyBreyal ci-dessus, n'est-ce pas? Vous utilisez le mot "sujets" pour être synonyme de "observations" / "enregistrements" / "lignes de données"?
Ryan Chase

4

i=1,,Nj=1,,M

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

cY

Z1=(Z1,1,...,ZN,1

Une sortie de R sur PCA (un faux exemple) ressemble à ceci. PC1, PC2 ... sont des composants principaux 1, 2 ... L'exemple ci-dessous ne montre que les 8 premiers composants principaux (sur 17). Vous pouvez également extraire d'autres éléments de la PCA, tels que les chargements et les scores.

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
Désolé, mais que sont les chargements (c dans votre formule) et comment les déterminez-vous?
vrish88

@ vrish88 Je crois que les c sont les "chargements" des vecteurs propres. D'après ce que j'ai compris, il s'agit essentiellement des pondérations que vous attribuez à chacune des variables. Tim l'explique bien dans sa réponse.
Ryan Chase

3

Les scores en composantes principales sont un groupe de scores obtenus à la suite d'une analyse en composantes principales (ACP). En ACP, les relations entre un groupe de scores sont analysées de manière à créer un nombre égal de nouvelles variables "imaginaires" (ou composantes principales). La première de ces nouvelles variables imaginaires est corrélée au maximum avec l'ensemble du groupe de variables d'origine. La suivante est un peu moins corrélée, et ainsi de suite jusqu'à ce que si vous utilisiez toutes les notes en composantes principales pour prédire une variable donnée du groupe initial, vous seriez en mesure d'expliquer toute sa variance. La manière dont la PCA procède est complexe et comporte certaines restrictions. Parmi celles-ci, il y a la restriction selon laquelle la corrélation entre deux composantes principales quelconques (c.-à-d. Des variables imaginaires) est égale à zéro; donc ça ne '

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.