Donner un sens à l'analyse en composantes principales, aux vecteurs propres et aux valeurs propres


976

Dans la classe actuelle de reconnaissance des formes, mon professeur a parlé de PCA, de vecteurs propres et de valeurs propres.

J'ai compris les mathématiques de celui-ci. Si on me demande de trouver des valeurs propres, etc., je le ferai correctement comme une machine. Mais je n'ai pas compris . Je n'ai pas compris le but. Je n'ai pas eu la sensation.

Je crois fermement en la citation suivante:

Vous ne comprenez pas vraiment quelque chose à moins de pouvoir l'expliquer à votre grand-mère. -- Albert Einstein

Eh bien, je ne peux pas expliquer ces concepts à un profane ou à une grand-mère.

  1. Pourquoi PCA, vecteurs propres et valeurs propres? Quelle était la nécessité de ces concepts?
  2. Comment expliqueriez-vous cela à un profane?

95
Bonne question. Je suis aussi d'accord avec la citation. Je crois qu'il y a beaucoup de gens en statistique et en mathématiques qui sont très intelligents et qui peuvent s'investir profondément dans leur travail, mais ne comprennent pas vraiment ce sur quoi ils travaillent. Ou ils le font, mais ils sont incapables de l'expliquer aux autres. Je me donne tout mon possible pour fournir des réponses ici en anglais simple et poser des questions qui exigent des réponses en anglais.
Neil McGuigan

7
Cela a été demandé sur le site de mathématiques en juillet, mais pas aussi bien et cela n’a pas donné beaucoup de réponses (ce qui n’est pas surprenant compte tenu de l’intérêt différent qu’il ya ici). math.stackexchange.com/questions/1146/...
whuber

6
Semblable à l'explication de Zuur et al dans Analyse de données écologiques où ils parlent de projeter votre main sur un rétroprojecteur. Vous continuez à faire pivoter votre main pour que la projection sur le mur ressemble à ce que vous pensez qu'une main devrait ressembler.
Roman Luštrik le

12
Cette question m'a conduit à un bon article, et même si je pense que c'est une excellente citation, il ne vient pas d'Einstein. Ceci est une erreur d'attribution, et la citation originale la plus probable est probablement celle d'Ernest Rutherford qui a déclaré: "Si vous ne pouvez pas expliquer votre physique à une serveuse, ce n'est probablement pas une très bonne physique." Tout de même merci pour commencer ce fil.
Gavaletz

23
Alice Calaprice, l'ultime cotable d'Einstein , Princeton UP 2011 identifie la citation ici comme l'un des nombreux "Probablement pas d'Einstein". Voir p.482.
Nick Cox

Réponses:


1293

Imaginez un grand dîner en famille, où tout le monde commence à vous poser des questions sur la PCA. D'abord, vous l'expliquez à votre arrière-grand-mère; alors à toi grand-mère; ensuite à ta mère; ensuite à votre conjoint; enfin, à votre fille (qui est mathématicienne). Chaque fois, la personne suivante est moins profane. Voici comment la conversation pourrait se dérouler.

Arrière-grand-mère: J'ai entendu dire que vous étudiez "Pee-See-Ay". Je me demande ce que c'est...

Vous: Ah, c'est juste une méthode pour résumer certaines données. Regardez, nous avons quelques bouteilles de vin debout ici sur la table. Nous pouvons décrire chaque vin par sa couleur, sa force, son âge, etc. (voir cette très belle visualisation des propriétés du vin prises ici ). Nous pouvons composer toute une liste de caractéristiques différentes de chaque vin de notre cave. Mais beaucoup d'entre eux mesureront des propriétés connexes et seront donc redondants. Si tel est le cas, nous devrions pouvoir résumer chaque vin avec moins de caractéristiques! C'est ce que fait la PCA.

Grand-mère: C'est intéressant! Donc, cette chose PCA vérifie quelles caractéristiques sont redondantes et les rejette?

Vous: Excellente question, mamie! Non, la PCA ne sélectionne pas certaines caractéristiques et ne rejette pas les autres. Au lieu de cela, il construit de nouvelles caractéristiques qui s'avèrent bien résumer notre liste de vins. Bien entendu, ces nouvelles caractéristiques sont construites à l'aide des anciennes. par exemple, une nouvelle caractéristique peut être calculée comme étant l'âge du vin moins le niveau d'acidité du vin ou une autre combinaison de ce type (nous les appelons combinaisons linéaires ).

En fait, PCA trouve les meilleures caractéristiques possibles, celles qui résument la liste des vins aussi bien que possible (parmi toutes les combinaisons linéaires imaginables). C'est pourquoi c'est si utile.

Mère: Hmmm, ça sonne bien, mais je ne suis pas sûr de comprendre. Que voulez-vous dire en réalité lorsque vous dites que ces nouvelles caractéristiques de la PCA "résument" la liste des vins?

Vous: Je suppose que je peux donner deux réponses différentes à cette question. La première réponse est que vous recherchez des propriétés du vin (caractéristiques) très différentes d’un vin à l’autre. En effet, imaginez que vous obteniez une propriété identique pour la plupart des vins. Cela ne serait pas très utile, n'est-ce pas? Les vins sont très différents, mais votre nouvelle propriété les rend tous identiques! Ce serait certainement un mauvais résumé. PCA recherche plutôt des propriétés présentant autant de variations que possible entre les vins.

La deuxième réponse est que vous recherchez les propriétés qui vous permettraient de prédire ou de "reconstruire" les caractéristiques originales du vin. Encore une fois, imaginez que vous obteniez une propriété qui n’ait aucun rapport avec les caractéristiques originales; si vous n'utilisez que cette nouvelle propriété, il est impossible de reconstruire les propriétés d'origine! Ceci, encore une fois, serait un mauvais résumé. PCA recherche donc des propriétés permettant de reconstruire au mieux les caractéristiques originales.

Étonnamment, il s’avère que ces deux objectifs sont équivalents et que l’ACP peut donc faire d'une pierre deux coups.

Conjoint: Mais chérie, ces deux "objectifs" de la PCA ont un son si différent! Pourquoi seraient-ils équivalents?

Vous: Hmmm. Je devrais peut-être faire un petit dessin (prend une serviette et commence à gribouiller) . Choisissons deux caractéristiques du vin, peut-être l’obscurité et la teneur en alcool du vin. Je ne sais pas si elles sont corrélées, mais imaginons qu’elles le soient. Voici à quoi pourrait ressembler un nuage de points de différents vins:

Données exemplaires de la PCA

Chaque point dans ce "nuage de vin" montre un vin particulier. Vous voyez que les deux propriétés ( x et y sur cette figure) sont corrélées. Une nouvelle propriété peut être construite en traçant une ligne au centre de ce nuage de vin et en projetant tous les points sur cette ligne. Cette nouvelle propriété sera donnée par une combinaison linéaire w1x+w2y , où chaque ligne correspond à des valeurs particulières de w1 et w2 .

Maintenant, regardez très attentivement - voici comment se présentent ces projections pour différentes lignes (les points rouges sont des projections des points bleus):

Animation PCA: variance et erreur de reconstruction

Comme je l'ai dit précédemment, PCA trouvera la "meilleure" ligne en fonction de deux critères différents de ce qui est "le meilleur". Premièrement, la variation des valeurs le long de cette ligne devrait être maximale. Faites attention à la façon dont la "propagation" (nous l'appelons "variance") des points rouges change pendant que la ligne tourne; pouvez-vous voir quand il atteint son maximum? Deuxièmement, si nous reconstruisons les deux caractéristiques originales (position d’un point bleu) à partir de la nouvelle (position d’un point rouge), l’erreur de reconstruction sera donnée par la longueur de la ligne rouge de connexion. Observez l'évolution de la longueur de ces lignes rouges pendant leur rotation. pouvez-vous voir quand la longueur totale atteint le minimum?

Si vous regardez cette animation pendant un certain temps, vous remarquerez que "la variance maximale" et "l'erreur minimale" sont atteintes en même temps, notamment lorsque la ligne pointe vers les tiques magenta que j'ai marquées des deux côtés du nuage de vin. . Cette ligne correspond à la nouvelle propriété viticole qui sera construite par PCA.

À propos, PCA signifie "analyse en composantes principales" et cette nouvelle propriété est appelée "première composante principale". Et au lieu de dire "propriété" ou "caractéristique", nous disons habituellement "caractéristique" ou "variable".

Fille: Très gentil papa! Je pense comprendre pourquoi les deux objectifs donnent le même résultat: c'est essentiellement à cause du théorème de Pythagore, n'est-ce pas? Quoi qu'il en soit, j'ai entendu dire que la PCA est en quelque sorte liée aux vecteurs propres et aux valeurs propres; où sont-ils sur cette photo?

Vous: Observation brillante. Mathématiquement, la dispersion des points rouges est mesurée en tant que distance moyenne au carré du centre du nuage de vin à chaque point rouge; comme vous le savez, cela s'appelle la variance . D'autre part, l'erreur totale de reconstruction est mesurée par la longueur au carré moyenne des lignes rouges correspondantes. Mais comme l'angle entre les lignes rouges et la ligne noire est toujours 90, la somme de ces deux quantités est égale à la distance moyenne au carré entre le centre du nuage de vin et chaque point bleu; c'est précisément le théorème de Pythagore. Bien sûr, cette distance moyenne ne dépend pas de l'orientation de la ligne noire, donc plus l'erreur est grande, plus l'erreur est faible (car leur somme est constante). Cet argument à la main peut être précisé ( voir ici ).

À propos, vous pouvez imaginer que la ligne noire est une tige solide et que chaque ligne rouge est un ressort. L'énergie du ressort est proportionnelle à sa longueur au carré (c'est la loi de Hooke en physique), de sorte que la tige s'orientera de manière à minimiser la somme de ces distances au carré. J'ai fait une simulation de ce à quoi cela va ressembler, en présence de frottements visqueux:

Animation PCA: pendule

Concernant les vecteurs propres et les valeurs propres. Vous savez ce qu'est une matrice de covariance . dans mon exemple, c'est une matrice 2×2 qui est donnée par

(1.070.630.630.64).
Cela signifie que la variance de la variable x est 1.07 , la variance de la variable y est 0.64 et la covariance entre elles est de 0.63 . S'agissant d'une matrice à symétrie carrée, il est possible de la diagonaliser en choisissant un nouveau système de coordonnées orthogonales, donné par ses vecteurs propres (d'ailleurs, on l'appelle théorème spectral).) les valeurs propres correspondantes seront alors situées sur la diagonale. Dans ce nouveau système de coordonnées, la matrice de covariance est diagonale et ressemble à ceci:
(1.52000.19),
ce qui signifie que la corrélation entre les points est maintenant nulle. Il devient clair que la variance de toute projection sera donnée par une moyenne pondérée des valeurs propres (je ne fais que dessiner ici l'intuition). Par conséquent, la variance maximale possible ( 1.52 ) sera atteinte si nous prenons simplement la projection sur le premier axe de coordonnées. Il s'ensuit que la direction de la première composante principale est donnée par le premier vecteur propre de la matrice de covariance. ( Plus de détails ici. )

Vous le voyez également sur la figure en rotation: il y a une ligne grise orthogonale à la ligne noire; ensemble, ils forment un cadre de coordonnées rotatif. Essayez de remarquer que les points bleus ne sont plus corrélés dans ce cadre en rotation. La réponse, encore une fois, est que cela se produit précisément lorsque la ligne noire pointe vers les tiques magenta. Maintenant, je peux vous dire comment je les ai trouvés: ils marquent la direction du premier vecteur propre de la matrice de covariance, qui dans ce cas est égal à (0.81,0.58) .


À la demande générale, j'ai partagé le code Matlab pour produire les animations ci-dessus .


79
+1 Beau conte et illustrations. ...then to your mother; then to your wife; finally, to your daughter (who is a mathematician)...Je continuerais: et après le dîner - à vous-même. Et là , vous avez été soudainement coincé ...
ttnphns

68
J'adore les illustrations que vous faites pour ces réponses.
shadowtalker

57
Normalement, je navigue simplement dans Cross Validated pour lire des articles, mais je n’ai jamais eu de raison de créer un compte ... principalement parce que le genre de questions ici ne relève pas de mes compétences et que je ne peux pas vraiment y répondre. En général, je suis uniquement sur StackOverflow et cela fait environ un an que je suis sur le réseau StackExchange. Cependant, j'ai seulement décidé de créer un compte aujourd'hui, principalement pour relancer votre publication. C’est probablement la meilleure exposition de la PCA que j’ai jamais lue, et j’en ai lu beaucoup. Merci pour cet article merveilleux - l'excellent récit narratif, les graphismes, et c'est si facile à lire! +1
rayryeng

14
Note pour moi: ma réponse a actuellement 100 votes positifs, celle de JDLong a 220 votes positifs; si nous supposons une croissance constante, alors le mien a 100 votes positifs / an et le sien a 40 votes positifs / an. Ou plutôt 55 / an si calculé car il a passé 100 votes positifs (a obtenu un badge en or) en janvier 2014. Cela signifie que je rattraperai mon retard dans 2,5–3 ans, soit vers la fin de 2018. Voyons :-)
amoeba

3
Note pour moi suite: je dois mettre à jour mon estimation. Un mois plus tard, cette réponse a reçu 18 votes positifs contre 5 pour JDLong. Cela indique que je pourrais rattraper dans moins d'un an à partir de maintenant. Fait intéressant, 5 / mois est très proche de mon estimation supérieure à 55 / an, mais 18 / mois est plus de deux fois supérieure à 100 / an. Comme ma réponse n’a pas changé, il semble que passer à la deuxième place a accéléré l’augmentation du vote (probablement en raison de la visibilité accrue).
amibe

376

Le manuscrit "Un tutoriel sur l’analyse en composantes principales" de Lindsay I Smith m'a vraiment aidé à prendre le virage PCA. Je pense que c'est encore trop complexe pour expliquer à votre grand-mère, mais ce n'est pas mal. Vous devez sauter les premiers bits sur le calcul des eigens, etc. Passez à l'exemple du chapitre 3 et examinez les graphiques.

J'ai quelques exemples où j'ai travaillé à travers quelques exemples de jouets afin de pouvoir comprendre la régression linéaire entre PCA et MCO. Je vais essayer de les déterrer et de les poster également.

edit: Vous n'avez pas vraiment posé de question sur la différence entre les moindres carrés ordinaires (OLS) et PCA, mais depuis que j'ai retrouvé mes notes, j'ai écrit un article à ce sujet dans un blog . La version très courte est OLS de y ~ x minimise l'erreur perpendiculaire à l'axe indépendant comme ceci (les lignes jaunes sont des exemples de deux erreurs):

texte alternatif

Si vous deviez régresser x ~ y (par opposition à y ~ x dans le premier exemple), l'erreur serait minimisée comme ceci:

texte alternatif

et PCA minimise efficacement l’erreur orthogonale au modèle lui-même, comme ceci:

texte alternatif

Plus important encore, comme d’autres l’ont déjà dit, dans une situation où vous avez une multitude de variables indépendantes, PCA vous aide à déterminer les combinaisons linéaires de ces variables qui importent le plus. Les exemples ci-dessus permettent simplement de visualiser à quoi ressemble le premier composant principal dans un cas très simple.

Dans mon article de blog, j'ai le code R pour créer les graphiques ci-dessus et pour calculer le premier composant principal. Il serait peut-être intéressant de jouer avec pour construire votre intuition autour de PCA. J'ai tendance à ne pas posséder quelque chose tant que je n'ai pas écrit le code qui le reproduit. 


9
Bon appel au manuscrit de Lindsay I Smith - lisez-le aujourd'hui; très utile.
Stedy

7
La PCA est-elle équivalente au total des moindres carrés si elle optimise les distances orthogonales des points à la ligne d’ajustement?
Marcin

3
@Marcin - c'est correct. Vous pouvez reformuler PCA comme trouver le meilleur rang estimation ( 1 m p ) de l'original p variables ( x i jm1mpp ), avec une fonction objective de Σ n i = 1 Σ p j = 1 ( x i j - x i j ) 2 . Choisir le nombre de PC équivaut à choisir le rang des prédictions. x^iji=1,,nj=1,,pi=1nj=1p(xijx^ij)2
probabilityislogic

3
Petite erreur mathématique dans Smith: "tous les vecteurs propres d'une matrice sont perpendiculaires ... peu importe le nombre de dimensions dont vous disposez" ne s'applique qu'aux matrices symétriques, en voici une qui est à 45 degrés l'une de l'autre . Smith note la symétrie des matrices de covariance plus tôt, mais pas l’implication: la symétrie assure des nvecteurs propres perpendiculaires. En fait, toutes les n x nmatrices réelles ne possèdent même pas de valeurs propres réelles (par exemple, {{0,1}, {- 1,0}}) et, dans le cas de celles qui le possèdent, toutes ne possèdent pas de nvecteurs propres indépendants (par exemple, {{1,1}, {0 ,1}})! La symétrie compte!
Silverfish

8
En tant que mathématicien enseignant des vecteurs propres, je dois faire la grimace lorsque je lis ce manuscrit de Lindsay Smith. "... le vecteur résultant est un multiple entier de l'original ..." - à quoi sert-il de mentionner un entier ? Un vecteur propre de la matrice A est tout vecteur X tel que AX est un multiple de X. Pas un multiple entier, mais un multiple! Un multiple non entier est également correct! Jeez pourquoi créer une confusion inutile où il n'y en a pas?
Dmitri Zaitsev

144

Faisons (2) en premier. PCA adapte un ellipsoïde aux données. Un ellipsoïde est une généralisation multidimensionnelle de formes sphériques déformées telles que des cigares, des pancakes et des œufs. Celles-ci sont toutes décrites avec précision par les directions et les longueurs de leurs axes principaux, tels que l'axe du cigare ou de l'œuf ou le plan de la crêpe. Quelle que soit la manière dont l'ellipsoïde est tourné, les vecteurs propres pointent dans ces directions principales et les valeurs propres vous donnent les longueurs. Les valeurs propres les plus petites correspondent aux directions les plus minces présentant la moindre variation. Par conséquent, les ignorer (ce qui les réduit à plat) perd relativement peu d'informations: il s'agit de la PCA.

(1) Outre la simplification (ci-dessus), nous avons des besoins en termes de description détaillée, de visualisation et de perspicacité. Pouvoir réduire les dimensions est une bonne chose: cela facilite la description des données et, si nous avons la chance de les réduire à trois ou moins, nous permet de dessiner. Parfois, nous pouvons même trouver des moyens utiles d’interpréter les combinaisons de données représentées par les coordonnées de l’image, ce qui peut donner un aperçu du comportement commun des variables.


La figure montre quelques nuages ​​de points chacun, ainsi que des ellipsoïdes contenant 50% de chaque nuage et des axes alignés avec les directions principales. Dans la première rangée, les nuages ​​ont essentiellement une composante principale représentant 95% de la variance: ce sont les formes de cigares. Dans la deuxième rangée, les nuages ​​ont essentiellement deux composantes principales, l’une environ deux fois plus grande que l’autre, qui représentent ensemble 95% de la variance: c’est la forme des galettes. Dans la troisième rangée, les trois composantes principales sont importantes: il s’agit des formes de l’œuf.200

Les figures

Tout nuage de points 3D "cohérent" dans le sens où il ne présente pas de grappes, de vrilles ou de valeurs aberrantes ressemblera à l'un d'entre eux. N'importe quel nuage de points 3D - à condition que tous les points ne coïncident pas - peut être décrit par l'une de ces figures comme un point de départ initial pour l'identification de nouveaux regroupements ou modèles.

L'intuition que vous développez en contemplant de telles configurations peut être appliquée à des dimensions plus élevées, même s'il est difficile ou impossible de visualiser ces dimensions.


2
Pour ajouter à cela, lorsque vous avez des semi-axes égaux (presque) égaux (c'est-à-dire que l'ellipsoïde a une tranche (presque) circulaire), cela indique que les deux données correspondant à ces axes ont une dépendance (presque); on peut parler des axes principaux d'une ellipse, mais les cercles n'ont qu'un rayon. :)
JM n'est pas statisticien le

6
Je serais plus prudent ici, JM Tout d’abord, pour préciser, par «quasi-dépendance», il faut dire «presque indépendant». Cela serait vrai pour une variable multinormale, mais dans de nombreux cas, la PCA est réalisée avec des données qui sont nettement non normales. En effet, les analyses de regroupement qui suivent certains calculs de la PCA peuvent être considérées comme un moyen d’évaluer une forme forte de non-normalité. Mathématiquement, les cercles ne sont les axes principaux, mais ils sont tout simplement pas déterminés de manière unique: vous pouvez choisir une paire de rayons orthogonaux que leurs axes principaux.
whuber

1
Oui, désolé, je suppose que "les axes principaux d’un cercle sont indéterminés" aurait été une meilleure façon de le dire.
JM n'est pas un statisticien le

2
Très belle interprétation! En essayant de mieux le comprendre… où en mathématiques PCA peut-on voir que "PCA correspond à un ellipsoïde aux données"?
Kochede

4
@ Kochede Un ellipsoïde est un contour de forme quadratique. La matrice de covariance est une forme quadratique. PCA identifie ses axes et leurs longueurs.
whuber

106

Hmm, voici une version complètement non mathématique de la PCA ...

Imaginez que vous venez d'ouvrir une cidrerie. Vous avez 50 variétés de cidre et vous voulez savoir comment les répartir sur des étagères, de sorte que les cidres au goût similaire soient placés sur la même étagère. Dans le cidre, il existe de nombreux goûts et textures: douceur, acidité, amertume, couleur de la levure, fruité, clarté, pétillant, etc. Vous devez donc répondre aux deux questions suivantes:

1) Quelles sont les qualités les plus importantes pour identifier des groupes de cidres? Par exemple, la classification basée sur la douceur facilite-t-elle le regroupement de vos cidres en groupes ayant un goût similaire par rapport à la classification basée sur le fruité?

2) Pouvons-nous réduire notre liste de variables en combinant certaines d’entre elles? Par exemple, existe-t-il une variable qui associe "levure, clarté et fizziness" et constitue une très bonne échelle pour la classification des variétés?

C’est essentiellement ce que fait la PCA. Les principales composantes sont des variables qui expliquent utilement la variation dans un ensemble de données - dans ce cas, différencient utilement entre les groupes. Chaque composant principal est l'une de vos variables explicatives d'origine ou une combinaison de certaines de vos variables explicatives d'origine.


4
Qu'en est-il des vecteurs propres et des valeurs propres?
λίας Le

3
D'accord: la valeur propre associée à chaque composante principale vous indique la variation dans l'ensemble de données qu'elle explique (dans mon exemple, la séparation des bouteilles dans des groupes). Ils sont généralement exprimés en pourcentage de la variation totale dans l'ensemble de données. En ce qui concerne les vecteurs propres, eh bien, c’est là que, comme dit Claws, je suis le résultat d’une analyse comme une machine;) Dans ma tête, ils sont liés à la façon dont vous faites pivoter le portable de Vince dans sa meilleure orientation, bonne façon de penser à eux.
Freya Harrison

17
Les vecteurs propres ne sont que les combinaisons linéaires des variables d'origine (dans l'espace facteur simple ou en rotation); ils ont décrit comment les variables "contribuent" à chaque axe de facteur. En gros, considérez l’ACP comme un moyen de construire de nouveaux axes qui indiquent les directions de la variance maximale (dans l’espace variable initial), exprimés par la valeur propre, et comment les contributions des variables sont pondérées ou transformées linéairement dans ce nouvel espace.
chl

à quoi ressemblerait la matrice de covariance de ce problème? Que nous dit-il sur les variables (douceur, acidité, amertume, levure, fruité, clarté, pétillant, etc.)?
JustCurious

1
Je ne sais pas ce qu'il en est des statisticiens et des boissons alcoolisées, mais Whisky Classified le fait exactement pour les whiskies écossais ...
nekomatic

96

Je répondrais en termes "simples" en disant que PCA vise à ajuster les lignes droites aux points de données (tout le monde sait ce qu'est une ligne droite). Nous appelons ces lignes droites "composants principaux". Il y a autant de composantes principales que de variables. Le premier composant principal est la meilleure ligne droite que vous puissiez adapter aux données. La deuxième composante principale est la meilleure ligne droite que vous pouvez adapter aux erreurs de la première composante principale. La troisième composante principale est la meilleure ligne droite que vous puissiez adapter aux erreurs des première et deuxième composantes principales, etc., etc.

Si quelqu'un vous demande ce que vous entendez par "meilleur" ou "erreurs", cela vous indique alors qu'il ne s'agit pas d'un "profane" et que vous pouvez entrer dans des détails un peu plus techniques tels que des erreurs perpendiculaires, mais vous ne savez pas où se trouve l'erreur. De plus, si vous évitez de faire référence à la régression MLS (que le "profane" ne comprendra probablement pas non plus), l'explication est plus facile.

Les vecteurs propres et les valeurs propres ne sont pas des concepts nécessaires en soi, mais plutôt des concepts mathématiques qui existaient déjà. Lorsque vous résolvez le problème mathématique de la PCA, cela revient à trouver les valeurs propres et les vecteurs propres de la matrice de covariance.


8
+1, c'est vraiment "un profane", et je sais que vous pourriez le tirer très rigoureusement si vous le vouliez!
gung

2
La meilleure réponse à ce jour, je dirais. Et j'utilise beaucoup PCA.
a11msp

2
Wow - c'est vraiment une explication simple et géniale! Je vous remercie!
Nick

52

Je peux vous donner ma propre explication / preuve de la PCA, qui, à mon avis, est très simple et élégante, et ne nécessite rien d’autre que des connaissances de base en algèbre linéaire. Cela a été assez long, parce que je voulais écrire dans un langage simple et accessible.

Supposons que nous ayons quelques échantillons de données provenant d'un espace à n dimensions. Maintenant, nous voulons projeter ces données sur quelques lignes dans l’ espace à n dimensions, de manière à conserver le plus de variance possible (c’est-à-dire que la variance des données projetées doit être aussi grande que celle des données originales. possible).Mnn

Maintenant, observons que si nous traduisons (déplacer) tous les points par un vecteur , la variance reste le même, puisque le déplacement tous les points par β se déplaceront leur moyenne arithmétique par β ainsi, et la variance est linéairement proportionnelle à Σ M i = 1x i - μ 2 . Nous traduisons donc tous les points par - μ , de sorte que leur moyenne arithmétique devienne 0 , pour le confort de calcul. Notons les points traduits par x i = x i - μβββi=1Mxiμ2μ0xi=xiμ. Nous allons aussi observer, que la variance peut maintenant être exprimé simplement comme .i=1Mxi2

Maintenant le choix de la ligne. Nous pouvons décrire toute ligne comme un ensemble de points satisfaisant l’équation , pour certains vecteurs v , w . Notez que si nous déplaçons la ligne par un vecteur γ orthogonal à v , toutes les projections sur la ligne seront également déplacées par γ , de sorte que la moyenne des projections sera déplacée par γx=αv+wv,wγvγγla variance des projections restera donc inchangée. Cela signifie que nous pouvons déplacer la ligne parallèlement à elle-même et ne pas modifier la variance des projections sur cette ligne. Encore une fois pour des raisons de commodité, limitons-nous aux lignes passant par le point zéro (cela signifie les lignes décrites par ).x=αv

Bon, supposons maintenant que nous avons un vecteur qui décrit la direction d’une ligne qui est un candidat possible pour la ligne que nous recherchons. Nous devons calculer la variance des projections sur la droite α v . Nous aurons besoin de points de projection et de leur moyenne. De l' algèbre linéaire , nous savons que dans ce cas simple la projection de x ' i sur α v est x i , v /v 2 . Limitons-nous désormais aux seuls vecteurs unitaires v . Cela signifie que nous pouvons écrire la longueur de la projection du point x 'vαvxiαvxi,v/v2v survsimplementx ' i ,v.xivxi,v

Dans certaines des réponses précédentes, quelqu'un a dit que PCA minimise la somme des carrés de distances par rapport à la ligne choisie. Nous pouvons maintenant voir que c’est vrai, car la somme des carrés des projections plus la somme des carrés des distances de la ligne choisie est égale à la somme des carrés des distances du point . En maximisant la somme des carrés des projections, nous minimisons la somme des carrés des distances et inversement, mais il ne s'agissait que d'une digression réfléchie, pour en revenir à la preuve.0

En ce qui concerne la moyenne des projections, observons que fait partie de certaines bases orthogonales de notre espace, et que si nous projetons nos points de données sur chaque vecteur de cette base, leur somme s’annulera (c’est comme ça parce que la projection sur la les vecteurs de la base sont comme écrire les points de données dans la nouvelle base orthogonale). Donc, la somme de toutes les projections sur le vecteur v (appelons la somme S v ) et la somme des projections sur les autres vecteurs de la base (appelons-la S o ) est 0, car c'est la moyenne des points de données. Mais S v est orthogonal à S o ! Cela signifie que S o = S vvvSvSoSvSo .So=Sv=0

La moyenne de nos projections est donc . 0Bien, c'est pratique, car cela signifie que la variance est simplement la somme des carrés des longueurs des projections, ou dans les symboles

i=1M(xiv)2=i=1MvTxiTxiv=vT(i=1MxiTxi)v.

Et bien, tout à coup, la matrice de covariance est apparue. Nous allons noterons simplement par . Cela signifie que nous cherchons maintenant un vecteur unité v qui maximise v TX v , pour une matrice définie semi-positif X .XvvTXvX

Prenons maintenant les vecteurs propres et les valeurs propres de la matrice et notons-les par e 1 , e 2 , , e n et λ 1 , , λ n , tels que λ 1λ 2 , λ 3 . Si les valeurs λ ne se dupliquent pas, les vecteurs propres forment une base orthonormée. S'ils le font, nous choisissons les vecteurs propres de manière à ce qu'ils forment une base orthonormale.Xe1,e2,,enλ1,,λnλ1λ2,λ3λ

Maintenant , nous allons Calculons un vecteur propre e i . Nous avons e T iX e i = e T i( λ i e i ) = λ i ( e i 2 ) 2 = λ i .vTXvei

eiTXei=eiT(λiei)=λi(ei2)2=λi.

Assez bien, cela nous donne pour e 1 . Prenons maintenant un vecteur arbitraire v . Depuis forment une base des vecteurs propres orthonormé, on peut écrire v = Σ n i = 1 e iv , e i , et nous avons Σ n i = 1v , e i 2 = 1 . Nous allons désignent β i = v , e i .λ1e1vv=i=1neiv,eii=1nv,ei2=1βi=v,ei

Maintenant , nous allons compter . On réécrit v comme une combinaison linéaire de e i , et a : ( n Σ i = 1 β i e i ) TX ( n Σ i = 1 β i e i ) = ( n Σ i = 1 β i e i ) ( n Σ ivTXvvei

(i=1nβiei)TX(i=1nβiei)=(i=1nβiei)(i=1nλiβiei)=i=1nλi(βi)2(ei2)2.

La dernière équation vient du fait que les vecteurs propres ont été choisis orthogonaux par paires, de sorte que leurs produits de points sont nuls. Maintenant, parce que tous les vecteurs propres sont également d' une unité de longueur, on peut écrire , où β 2 i sont tous positifs, et la somme de 1 .vTXv=i=1nλiβi2βi21

Cela signifie que la variance de la projection est une moyenne pondérée de valeurs propres. Certes, il est toujours inférieur à la plus grande valeur propre, raison pour laquelle nous devrions choisir le premier vecteur PCA.

lin(e2,e3,,en)e2

i=1kλi/i=1nλi

kkv1,,vk

j=1ki=1nλiβij2=i=1nλiγi
γi=j=1kβij2.

eiv1,,vku1,,unkei=j=1kβijvj+j=1nkθjei,ujei2=1j=1kβij2+j=1nkθj2=1γi1i

i=1nλiγiγi1i=1nγi=ki=1kλik


2
+1 Très belle réponse! Je ne l'ai pas encore lu complètement, mais votre réponse est celle que je cherchais. Toutes les étapes expliquées =)
jjepsuomi

9
Montrez-moi un profane qui connaît l'algèbre linéaire de base et je vous montrerai un étudiant en mathématiques.
probabilityislogic

xiαvxi,v/v2xi,v/v

1
Je pense que c'est de loin la meilleure explication de la PCA que j'ai jamais vue. Je vous remercie.
Nimitz14

1
C'est l'explication que je préfère qui montre également pourquoi les vecteurs propres maximisent la variance.
Romwell

47

Bon, je vais essayer. Il y a quelques mois, j'ai fouillé dans une bonne quantité de littérature pour trouver une explication intuitive que je pourrais expliquer à un non-statisticien. J'ai trouvé les dérivations utilisant les multiplicateurs de Lagrange les plus intuitives.

Disons que nous avons des données de haute dimension - disons 30 mesures effectuées sur un insecte. Les bogues ont des génotypes différents et des caractéristiques physiques légèrement différentes dans certaines de ces dimensions, mais avec des données de dimensions aussi élevées, il est difficile de savoir quels insectes appartiennent à quel groupe.

PCA est une technique permettant de réduire les dimensions en:

  1. Prendre des combinaisons linéaires des variables d'origine.
  2. Chaque combinaison linéaire explique le plus de variance possible dans les données.
  3. Chaque combinaison linéaire est décorrélée des autres

Ou, en termes mathématiques:

  1. Yj=ajx
  2. k>jV(Yk)<V(Yj)
  3. akaj=0

La recherche de combinaisons linéaires satisfaisant ces contraintes nous conduit à des valeurs propres. Pourquoi?

Je recommande de consulter le livre Introduction à l'analyse de données multivariées pour obtenir la dérivation complète (p. 49), mais l'idée de base est d'optimiser les problèmes successifs (maximiser la variance) de telle sorte que a'a = 1 pour les coefficients a quand la variance pourrait être infinie) et contrainte de s’assurer que les coefficients sont orthogonaux.

Cela conduit à une optimisation avec les multiplicateurs de Lagrange, ce qui permet de comprendre pourquoi les valeurs propres sont utilisées. Je suis trop paresseux pour le taper (désolé!), Mais ce PDF passe assez bien à travers la preuve.

Je n’essaierai jamais d’expliquer cela à ma grand-mère, mais si je devais parler de manière générale des techniques de réduction des dimensions, je citerais cet exemple de projection trivial (pas PCA). Supposons que votre mobile Calder soit très complexe. Certains points proches les uns des autres dans un espace 3D, d'autres non. Si nous avons suspendu ce mobile au plafond et l'avons éclairé d'un angle, nous obtenons une projection sur un plan de dimension inférieure (un mur 2D). Maintenant, si ce mobile est principalement large dans un sens, mais maigre dans l'autre sens, nous pouvons le faire pivoter pour obtenir des projections dont l'utilité est différente. Intuitivement, une forme maigre dans une dimension projetée sur un mur est moins utile - toutes les ombres se chevauchent et ne nous donnent pas beaucoup d'informations. Cependant, si nous la tournons de manière à ce que la lumière brille sur le côté le plus large, nous obtenons une meilleure image des données de dimension réduite - les points sont plus dispersés. C'est souvent ce que nous voulons. Je pense que ma grand-mère pourrait comprendre ça :-)


6
C'est très laïque ;-)

2
C'est un peu mathématique, mais le meilleur moyen de comprendre quelque chose est de le déduire.
Vince

29
Vous avez une grand-mère exceptionnellement bien éduquée :-).
whuber

7
j'aime l'explication avec la lumière qui brille sur une structure
tridimensionnelle

(+1) Toutes sont d'excellentes réponses mais c'est celle que je donnerais aussi.
Digio

37

Essayer d'être non technique ... Imaginons que vous disposiez de données multivariées, d'un nuage de points multidimensionnel. Lorsque vous calculez la matrice de covariance de ceux sur lesquels vous centrez réellement le nuage, c'est-à-dire que vous définissez l'origine comme moyenne multidimensionnelle, les axes du système de coordonnées se croisent maintenant au centre du nuage, b) chiffrez les informations relatives à la forme du nuage et comment il est orienté dans l'espace au moyen d'entrées de variance-covariance. Ainsi, la plupart des informations importantes sur la forme des données dans leur ensemble sont stockées dans la matrice de covariance.

Ensuite, vous effectuez une décomposition propre de cette matrice et obtenez la liste des valeurs propres et le nombre correspondant de vecteurs propres. Maintenant, la 1ère composante principale est la nouvelle variable latente qui peut être affichée comme axe passant par l'origine et orientée dans la direction de la variance maximale (épaisseur) du nuage. La variance le long de cet axe, c’est-à-dire la variance des coordonnées de tous les points, estla première valeur propre, et l'orientation de l'axe dans l'espace référencée aux axes d'origine (les variables) est définie par le 1er vecteur propre: ses entrées sont les cosinus qui le séparent de ces axes d'origine. Les coordonnées susmentionnées des points de données sur la 1ère composante sont les valeurs de la 1ère composante principale, ou scores des composantes; ils sont calculés comme le produit de la matrice de données (centrée) et du vecteur propre.

"Après" le 1er pr. composante a été mesurée, elle est, pour ainsi dire, "retirée" du nuage avec toute la variance qu’elle a prise en compte, et la dimensionnalité du nuage chute de un. Ensuite, tout est répété avec la deuxième valeur propre et le deuxième vecteur propre - le deuxième pr. composant est en cours d’enregistrement, puis "supprimé". Etc.

Donc, encore une fois: les vecteurs propres sont des cosinus de direction pour les composantes principales, alors que les valeurs propres sont la magnitude (la variance) des composantes principales. La somme de toutes les valeurs propres est égale à la somme des variances situées sur la diagonale de la matrice de variance-covariance. Si vous transférez les informations "magnitudinales" stockées dans les valeurs propres sur des vecteurs propres pour les ajouter aux informations "d'orientation" stockées, vous obtenez ce que l'on appelle des chargements de composants principaux ; ces chargements - parce qu'ils contiennent les deux types d'informations - sont les covariances entre les variables d'origine et les composantes principales.

Par la suite, je voudrais surtout souligner deux fois la différence terminologique entre vecteurs propres et charges . De nombreuses personnes et certains packages (y compris certains R) utilisent indifféremment les deux termes de manière interchangeable. C'est une mauvaise pratique car les objets et leur signification sont différentes. Les vecteurs propres sont les cosinus de direction, l'angle de la "rotation" orthogonale à laquelle PCA revient. Les chargements sont des vecteurs propres inoculés avec les informations sur la variabilité ou la magnitude des données pivotées. Les chargements sont les coefficients d'association entre les composants et les variables et ils sont directement comparables aux coefficients d'association calculés entre les variables - covariances, corrélations ou autres produits scalaires.1). Les vecteurs propres sont les coefficients permettant de prédire les variables en fonction des scores des composantes brutes. Les chargements sont les coefficients permettant de prédire les variables en fonction des scores de composants mis à l'échelle (normalisés) (rien d'étonnant à ce que les chargements aient précipité des informations sur la variabilité, par conséquent, les composants utilisés doivent en être privés). Une autre raison de ne pas mélanger vecteurs propres et charges est que d'autres techniques de réduction de dimensionnalité que l'ACP, telles que certaines formes d'analyse factorielle, calculent directement les charges, en contournant les vecteurs propres. Les vecteurs propres sont le produit de la décomposition propre ou de la décomposition en valeurs singulières; certaines formes d'analyse factorielle n'utilisent pas ces décompositions et aboutissent à des chargements d'une autre manière. Enfin, ce sont les chargements, et non les vecteurs propres, par lesquels vous interprétez les composants ou les facteurs (si vous devez les interpréter). Le chargement concerne la contribution d'un composant dans une variable: dans PCA (ou analyse factorielle), le composant / facteur se charge lui-même sur la variable, et non l'inverse. Les résultats complets de l’ACP doivent indiquer les vecteurs propres et les charges, comme indiqué, par exemple:ici ou ici .

Voir aussi à propos des chargements vs vecteurs propres.


1


@ amoeba, je n'insiste pas et vous pouvez utiliser la terminologie à laquelle vous êtes habitué. J'ai clairement expliqué pourquoi je pense qu'il est préférable de séparer les termes "charges" et "vecteurs propres". Je suis la tradition classique, comme dans Harman. Analyse factorielle moderne, si seulement je me souviens bien de la tradition.
ttnphns

Quoi qu'il en soit, vous savez vous-même que le terme "charges", bien que très douteux, n'est cependant pas mélangé avec le "vecteur propre" dans d'autres analyses multivariées, telles que l'analyse discriminante, par exemple. Une fois encore, comme je l'ai dit, dans les chargements PCA: 1) incorporer des informations sur l'ampleur de la variation; 2) Sont les covariances / corrélations, et sont donc utilisés pour l'interprétation. Les valeurs de vecteur propre - ne le sont pas.
ttnphns

2
+1 J'ai lu vos messages sur la PCA et d'autres sujets connexes et j'ai beaucoup appris.
Antoni Parellada

29

OK, une réponse totalement non mathématique:

Si vous avez un tas de variables sur un tas de sujets et que vous voulez le réduire à un nombre plus petit de variables, tout en perdant le moins d'informations possible, alors l'ACP est un outil pour le faire.

Elle diffère de l’analyse factorielle, bien qu’elle donne souvent des résultats similaires, en ce sens que l’AF tente de récupérer un petit nombre de variables latentes à partir d’un plus grand nombre de variables observées supposées être liées aux variables latentes.


Salut Peter! C'est bon de te voir ici. Ceci est une très bonne, simple, aucune réponse mathématique.
JD Long

3
+1 pour mentionner FA, que personne ne semble discuter, et vers lequel les explications de certaines personnes semblent se confondre.
gung

Il ne semble pas y avoir de différence entre les objectifs de PCA et de FA - les deux ont pour objectif de faire pivoter la rotation de manière à pouvoir visualiser les facteurs les plus importants (vecteurs latents, eigendimensions ou vecteurs singuliers, etc.). Mais FA ne semble pas être un algorithme mais une famille de techniques apparentées (entre elles, SVD et PCA) avec des objectifs correspondants mal définis (c'est-à-dire diverses et mutuellement incompatibles, de sorte que différentes variantes «optimisent» différentes choses).
David MW Powers

Serait-il exact de dire que l’ACP est l’un des nombreux moyens possibles de procéder à une analyse factorielle?
Abalter

La terminologie dans ce domaine est notoirement incohérente.
Peter Flom

29

Il est plus facile de faire le calcul en 2D.

Chaque matrice correspond à une transformation linéaire. Les transformations linéaires peuvent être visualisées en prenant une figure mémorable dans le plan et en voyant comment cette dernière est déformée par la transformation linéaire:

transformations linéaires (photo: Flanigan et Kazdan )

  • mona lisa vecteurs propresshear
  • ×1
  • PCA football
    1=23%[1]+46%[2]+39%[3]

f(ax+by)=af(x)+bf(y)+abxyà partir d'un espace intéressant. Par exemple :

visages

La PCA elle-même est un autre exemple, le plus familier des statisticiens. Certaines des autres réponses, comme celle de Freya, donnent des applications réelles de la PCA.

similar how?x42.8%[x]57.2%[y]


2
En fait, c’est un peu une coïncidence si les rotations sont linéaires et donc un moyen pratique de décrire ce qui se passe pour des données non géométriques. La coïncidence concerne la nature quadratique de l'espace cartésien / euclidien et du théorème de la limite centrale / gaussiennes. Viz. Les sigmas s'additionnent de manière quadratique comme les dimensions orthogonales, d'où provient notre terminologie rotationnelle / orthogonale ND, par analogie avec les espaces 2D et 3D.
David MW Powers

@DavidMWPowers Intéressant. Je pense aux rotations du point de vue de l'algèbre linéaire.
isomorphismes

27

Après l'excellent message de JD Long dans ce fil de discussion, j'ai cherché un exemple simple et le code R nécessaire pour produire la PCA, puis revenir aux données d'origine. Cela m'a donné une intuition géométrique de première main et je veux partager ce que j'ai. L'ensemble de données et le code peuvent être directement copiés et collés dans la forme R. Github .

J'ai utilisé un ensemble de données que j'ai trouvé en ligne sur des semi-conducteurs ici , et je l'ai réduit à deux dimensions seulement - "numéro atomique" et "point de fusion" - pour faciliter le traçage.


Comme mise en garde, l’idée est purement illustrative du processus de calcul: la PCA est utilisée pour réduire plus de deux variables à quelques composantes principales dérivées, ou pour identifier la colinéarité également dans le cas de caractéristiques multiples. Donc, il ne trouverait pas beaucoup d'application dans le cas de deux variables, pas plus qu'il ne serait nécessaire de calculer les vecteurs propres des matrices de corrélation comme l'a souligné @amoeba.


De plus, j'ai tronqué les observations de 44 à 15 pour faciliter le suivi des points individuels. Le résultat final était un cadre de données squelette ( dat1):

compounds   atomic.no      melting.point
AIN         10             498.0
AIP         14             625.0
AIAs        23             1011.5
...         ...            ... 

La colonne "Composés" indique la constitution chimique du semi-conducteur et joue le rôle de nom de ligne.

Ceci peut être reproduit comme suit (prêt à copier et coller sur la console R):

dat              <- read.csv(url("http://rinterested.github.io/datasets/semiconductors"))
colnames(dat)[2] <- "atomic.no"
dat1             <- subset(dat[1:15,1:3])
row.names(dat1)  <- dat1$compounds
dat1             <- dat1[,-1]

Les données ont ensuite été mises à l'échelle:

X <- apply(dat1, 2, function(x) (x - mean(x)) / sd(x))
# This centers data points around the mean and standardizes by dividing by SD.
# It is the equivalent to `X <- scale(dat1, center = T, scale = T)`  

Les étapes de l'algèbre linéaire ont suivi:

C <- cov(X)                                           # Covariance matrix (centered data)

[at_nomelt_pat_no10.296melt_p0.2961]

La fonction de corrélation cor(dat1)donne le même résultat sur les données non mises à l'échelle que la fonction cov(X)sur les données mises à l'échelle.

lambda        <- eigen(C)$values                      # Eigenvalues
lambda_matrix <- diag(2)*eigen(C)$values              # Eigenvalues matrix

[λPC1λPC21.296422000.7035783]

e_vectors     <- eigen(C)$vectors                     # Eigenvectors

12[PC1PC21111]

[0.7,0.7][0.7,0.7]

e_vectors[,1] = - e_vectors[,1]; colnames(e_vectors) <- c("PC1","PC2")

1.29642170.703578364.8%eigen(C)$values[1]/sum(eigen(C)$values) * 10065%35.2%

entrez la description de l'image ici

Nous allons inclure les deux vecteurs propres, compte tenu de la petite taille de cet exemple de jeu de données de jouets, car nous comprenons qu'exclure l'un des vecteurs propres entraînerait une réduction de la dimensionnalité - l'idée qui sous-tend l'ACP.

La matrice de score a été déterminée comme étant la multiplication matricielle des données mises à l' échelle ( X) par la matrice de vecteurs propres (ou "rotations") :

score_matrix <-  X %*% e_vectors    
# Identical to the often found operation: t(t(e_vectors) %*% t(X))

X[0.7,0.7]TPC1[0.7,0.7]TPC2

entrez la description de l'image ici

[0.7,0.7]

entrez la description de l'image ici

1

> apply(e_vectors, 2, function(x) sum(x^2))
PC1 PC2 
  1   1 

alors que les ( charges ) sont les vecteurs propres mis à l'échelle par les valeurs propres (malgré la terminologie confuse dans les fonctions R intégrées présentées ci-dessous). Par conséquent, les chargements peuvent être calculés comme suit:

> e_vectors          %*% lambda_matrix
          [,1]      [,2]
[1,] 0.9167086  0.497505
[2,] 0.9167086 -0.497505

> prcomp(X)$rotation %*% diag(princomp(covmat = C)$sd^2)
                   [,1]      [,2]
atomic.no     0.9167086  0.497505
melting.point 0.9167086 -0.497505

Il est intéressant de noter que le nuage de données pivoté (le tracé de score) aura une variance le long de chaque composant (PC) égale aux valeurs propres:

> apply(score_matrix, 2, function(x) var(x))
       PC1        PC2 
53829.7896   110.8414 
> lambda
[1] 53829.7896   110.8414

En utilisant les fonctions intégrées, les résultats peuvent être répliqués:

# For the SCORE MATRIX:
  prcomp(X)$x
# or...
  princomp(X)$scores # The signs of the PC 1 column will be reversed.

# and for EIGENVECTOR MATRIX:
  prcomp(X)$rotation
# or...
  princomp(X)$loadings

# and for EIGENVALUES:
  prcomp(X)$sdev^2
# or...
  princomp(covmat = C)$sd^2

UΣVTprcomp()

svd_scaled_dat <-svd(scale(dat1))
eigen_vectors <- svd_scaled_dat$v
eigen_values <- (svd_scaled_dat$d/sqrt(nrow(dat1) - 1))^2
scores<-scale(dat1) %*% eigen_vectors

Le résultat est présenté ci-dessous, avec en premier lieu les distances des points individuels au premier vecteur propre, et sur un second tracé, les distances orthogonales au second vecteur propre:

entrez la description de l'image ici

Si au lieu de cela nous traçons les valeurs de la matrice de scores (PC1 et PC2) - non plus "point de fusion" et "atomique.no", mais bien un changement de base des coordonnées du point avec les vecteurs propres comme base, ces distances seraient: conservés, mais deviendraient naturellement perpendiculaires à l’axe xy:

entrez la description de l'image ici

L'astuce consistait maintenant à récupérer les données d'origine . Les points ont été transformés par une simple multiplication de matrice par les vecteurs propres. Maintenant, les données ont été retournées en les multipliant par l' inverse de la matrice de vecteurs propres avec un changement marqué résultant de l'emplacement des points de données. Par exemple, remarquez le changement du point rose "GaN" dans le quadrant supérieur gauche (cercle noir dans le graphique de gauche, en bas), pour revenir à sa position initiale dans le quadrant inférieur gauche (cercle noir dans le graphique de droite, en bas).

Maintenant, nous avons enfin récupéré les données d'origine dans cette matrice "décompressée":

entrez la description de l'image ici

Au-delà du changement de coordonnées de rotation des données dans PCA, les résultats doivent être interprétés, et ce processus tend à impliquer un biplot, sur lequel les points de données sont tracés par rapport aux nouvelles coordonnées du vecteur propre, et les variables d'origine se superposent ainsi: vecteurs. Il est intéressant de noter l’équivalence de la position des points entre les tracés de la deuxième rangée de graphes de rotation ci-dessus ("Scores avec xy Axis = Vecteurs propres") (à gauche dans les tracés suivants), et biplotle droite):

entrez la description de l'image ici

La superposition des variables d'origine sous forme de flèches rouges permet d'interpréter PC1sous forme de vecteur dans la direction (ou avec une corrélation positive) les deux atomic noet melting point; et en PC2tant que composante le long de valeurs croissantes atomic nomais corrélées négativement avec melting point, cohérentes avec les valeurs des vecteurs propres:

PCA$rotation
                    PC1        PC2
atomic.no     0.7071068  0.7071068
melting.point 0.7071068 -0.7071068

Ce didacticiel interactif de Victor Powell donne un retour immédiat sur les modifications apportées aux vecteurs propres lors de la modification du nuage de données.


1
+1 pour l'effort et en particulier pour l'animation! Mais il faut garder à l’esprit que PCA sur la matrice de corrélation de deux variables est un cas un peu spécial car toutes les matrices de corrélation de deux variables ont des vecteurs propres identiques : l’un d’eux sera toujours [0.7 0.7] (0.7 étant un 1 / sqrt) (2)). Ce n'est pas le cas pour les matrices de covariance, ni pour les matrices de corrélation dans les dimensions supérieures.
amibe

14

Voici un exemple tiré de mon propre domaine des neurosciences: quelqu'un qui a beaucoup utilisé PCA (et essayé de l'expliquer à quelques personnes également) est un exemple.

Lorsque nous enregistrons à partir du cuir chevelu d'une personne, nous le faisons avec 64 électrodes. Donc, en réalité, nous avons 64 numéros dans une liste qui représente la tension émise par le cuir chevelu. Maintenant, puisque nous enregistrons avec une précision de l'ordre de la microseconde, si nous avons une expérience d'une heure (souvent 4 heures), cela nous donne 1e6 * 60 ^ 2 == 3,600,000,000 points de temps où une tension a été enregistrée à chaque électrode, de sorte que avoir une matrice de 3 600 000 000 x 64. Une hypothèse majeure de la PCA étant que vos variables soient corrélées, il est judicieux de réduire cette quantité ridicule de données en une quantité exploitable. Comme cela a déjà été dit à plusieurs reprises, les valeurs propres représentent la quantité de variance expliquée par les variables (colonnes). Dans ce cas, une valeur propre représente la variance de la tension à un moment donné apporté par une électrode particulière. Alors maintenant, nous pouvons dire: "Oh, bien électrodexà un moment donné, yc’est sur quoi nous devrions nous concentrer pour une analyse plus approfondie, car c’est là que le changement est le plus important ". J'espère que cela vous aidera. Aimer ces graphiques de régression!


12

Je suis peut-être une mauvaise personne pour répondre à cette question, car je suis la grand-mère proverbiale à qui le concept a été expliqué et pas beaucoup plus, mais voici:

Supposons que vous ayez une population. Une grande partie de la population meurt de crise cardiaque. Vous essayez de comprendre ce qui cause les crises cardiaques.

Vous avez deux données: la taille et le poids.

Maintenant, il est clair qu'il existe QUELQUE RAPPORT entre poids et crises cardiaques, mais la corrélation n'est pas vraiment forte. Il y a des personnes lourdes qui ont beaucoup de crises cardiaques, mais d'autres non.

Maintenant, vous faites une ACP, et cela vous dit que le poids divisé par la taille («masse corporelle») est un prédicteur de crises cardiaques beaucoup plus probable que le poids ou la taille, parce que, voilà, la «réalité» est que c'est masse corporelle qui provoque les crises cardiaques.

Vous faites essentiellement de la PCA parce que vous mesurez un grand nombre de choses et que vous ne savez pas vraiment si ce sont vraiment les principales composantes ou s'il existe une composante sous-jacente plus profonde que vous n'avez pas mesurée.

[S'il vous plaît n'hésitez pas à éditer ceci si c'est complètement hors de la base. Je ne comprends vraiment pas le concept plus profondément que cela].


1
Bienvenue sur le site de statistiques @Joel! Si vous en avez l'occasion, vous pouvez également contribuer à la discussion sur notre projet d'analyse de données StackExchange distribué proposé: stats.stackexchange.com/questions/2512/… .
Shane

9
Excellent exemple, mais, techniquement, PCA ne peut pas trouver l'explication de la masse corporelle car il ne peut trouver que des explications linéaires, c'est-à-dire des sommes pondérées des variables d'origine. Toutefois, si vous prenez des journaux de vos variables d’entrée, le rapport devient une différence et si c’est la bonne explication, la PCA sera en mesure de le trouver.
David MW Powers

10

En voici une pour grand-mère:

Dans notre ville, il y a des rues nord et sud, certaines est-ouest et même du nord-ouest et sud-est, du nord-ouest au sud-ouest. Un jour, un gars mesure tout le trafic dans toutes les rues. Il constate que la majeure partie du trafic se fait en diagonale, du nord-ouest au sud-est. Donc, il dessine un grand carré et met une grande ligne de gauche à droite et dit que c'est du nord-ouest au sud-est, puis trace une autre ligne verticalement de haut en bas au milieu. Il dit que c'est la deuxième direction la plus fréquentée pour le trafic (NE à SW). Le reste est petit et peut donc être ignoré.

La ligne gauche droite est le premier vecteur propre et la ligne haut-bas, le second vecteur propre. Le nombre total de voitures allant à gauche et à droite est la première valeur propre et celles qui montent et descendent sont la deuxième valeur propre.


1
Cette analogie semble s'effondrer à l'examen. Que se passe-t-il si la direction la plus grande et la deuxième plus grandes ne sont pas orthogonales? Comment votre analogie nous aide-t-elle à comprendre un PCA dans un tel cas?
whuber

Je suppose que grand-mère comprend ce que signifie orthogonal? Oui, il y a quelques défauts mais c'est un début. Je trouve ça génial qu’il y ait eu tant de réponses ici.
BajaBob

2
Que «grand-mère» comprenne ou non un message, celui-ci doit être raisonnablement clair et correct. Votre analogie ne semble atteindre aucun de ces objectifs. C'est peut-être parce que je ne comprends pas l'analogie: je ne peux pas le connecter à ce que l'APC est ou fait. Peut-être pourriez-vous clarifier le fonctionnement de l'analogie afin que les autres lecteurs ne deviennent pas aussi mystifiés que moi.
whuber

Le fait qu'ils ne soient pas orthogonaux signifie que vous avez besoin d'ICA ou de FA et non de PCA. Si grand-mère regardait Star Trek (oui, c'est sa génération) quand ils montraient le navire handicapé sous un angle - PCA aurait tendance à récupérer le plan de référence correspondant à l'échelle et à la vue (le plan galactique ou les axes du navire).
David MW Powers

-1. Je suis d'accord avec @whuber que cette analogie ne fonctionne pas. Quelles sont les données supposées ici, à quelle matrice de covariance appartiennent ces "vecteurs propres"? Je ne comprends pas du tout.
amibe

10

Cette réponse donne une interprétation intuitive et non mathématique:

La PCA vous donnera un ensemble de vecteurs orthogonaux dans un nuage de points de grande dimension. L'ordre des vecteurs est déterminé par les informations transmises après la projection de tous les points sur les vecteurs.

En d'autres termes: le premier vecteur de composant principal vous en dit le plus sur le nuage de points après avoir projeté tous les points sur le vecteur. Ceci est une interprétation intuitive bien sûr.

Regardez cet ellipsoïde (suivez le lien pour un modèle 3D) :

entrez la description de l'image ici

Si vous deviez choisir un vecteur formant un sous-espace unidimensionnel sur lequel les points des points ellipsoïdes seront projetés. Lequel choisiriez-vous car il contient le plus d'informations sur l'ensemble d'origine en 3 dimensions?

Je devine le rouge le long du plus long axe. Et c'est en fait la 1ère composante principale calculée! Lequel ensuite - je choisirais le bleu le long du prochain axe le plus long.

Généralement, vous souhaitez projeter un ensemble de points à partir d'un espace de grande dimension sur un plan à deux dimensions ou dans un espace à trois dimensions .

entrez la description de l'image ici


http://www.joyofdata.de/blog/illustration-of-principal-component-analysis-pca/


10

Bien que de nombreux exemples soient fournis pour fournir une compréhension intuitive de la CPA, ce fait peut presque rendre la compréhension plus difficile à saisir au début, du moins c'était le cas pour moi.

"Quelle était la chose à propos de PCA que tous ces différents exemples de différentes disciplines ont en commun ??"

Ce qui m'a aidé à comprendre intuitivement, ce sont quelques parallèles mathématiques, car il est évident que les mathématiques sont la partie la plus facile pour vous, bien que cela n'aide pas à l'expliquer à votre grand-mère ...

Pensez à un problème de régularisation en essayant d’obtenir

||XBY||=0

YY

YYXkBYXBkSVSVT

AA


9

Voici une réponse mathématique: la première composante principale est la plus longue dimension des données. Regardez et demandez: où sont les données les plus larges? C'est le premier composant. Le composant suivant est la perpendiculaire. Ainsi, un cigare de données a une longueur et une largeur. Cela a du sens pour tout ce qui est un peu oblong.


6
Malheureusement, l'exactitude de cette réponse dépend de la manière dont l'expression vague "plus longue" est interprétée. De nombreuses interprétations naturelles et pertinentes, telles que le diamètre , seraient fausses.
whuber

En fait, PCA fonctionne assez bien avec différents types de moyens naturels pour mesurer la dimension / taille. Il vous suffit de remplacer la matrice de covariance par une matrice pour mesurer la "dimension" dans n’importe quelle direction (la matrice doit simplement être définie positivement ou symétrique). C’est comme si QuickSort fonctionnait pour différents opérateurs, mais vous obtiendrez des résultats différents. pour différents opérateurs de commande.
James LI

9

La façon dont je comprends les composantes principales est la suivante: les données avec plusieurs variables (taille, poids, âge, température, longueur d’onde, pourcentage de survie, etc.) peuvent être présentées en trois dimensions pour établir la relation de tracé.

Maintenant, si vous voulez donner un sens aux "données 3D", vous voudrez peut-être savoir quels plans 2D (sections) de ces données 3D contiennent le plus d'informations pour une suite donnée de variables. Ces plans 2D sont les composantes principales, qui contiennent une proportion de chaque variable.

Considérez les composantes principales comme des variables elles-mêmes, avec des caractéristiques composites à partir des variables d'origine (cette nouvelle variable pourrait être décrite comme étant le poids, la hauteur, l'âge de la pièce, etc.). Lorsque vous tracez un composant principal (X) contre un autre (Y), vous créez une carte 2D pouvant décrire géométriquement les corrélations entre les variables d'origine. Maintenant la partie utile: puisque chaque sujet (observation) comparé est associé à des valeurs pour chaque variable, les sujets (observations) se trouvent également quelque part sur cette carte XY. Leur emplacement est basé sur les contributions relatives de chaque variable sous-jacente (une observation peut être fortement affectée par l'âge et la température, tandis qu'une autre peut être davantage affectée par la taille et le poids).


8

Je donnerai une réponse non mathématique et une vue plus détaillée de la motivation par le calcul dans la seconde partie.


Non mathy:

L'explication non mathématique est que PCA aide les données de grandes dimensions en vous permettant de voir dans quelles directions vos données ont le plus de variance. Ces directions sont les composantes principales . Une fois que vous avez ces informations, vous pouvez, dans certains cas, décider d’utiliser les composantes principales en tant que variables significatives elles-mêmes et de réduire considérablement la dimensionnalité de vos données en ne conservant que les composantes principales présentant le plus de variance ( pouvoir explicatif ).

Par exemple, supposons que vous distribuiez un questionnaire de sondage politique avec 30 questions, chacune pouvant recevoir une réponse de 1 ( pas du tout d'accord ) à 5 ( tout à fait d'accord ). Vous obtenez des tonnes de réponses et maintenant vous avez des données en 30 dimensions et vous ne pouvez pas en faire des têtes ou des queues. Alors, en désespoir de cause, vous pensez exécuter PCA et découvrir que 90% de votre variance provient d’une direction, et que cette direction ne correspond à aucun de vos axes. Après un examen plus approfondi des données, vous concluez que ce nouvel axe hybride correspond au spectre politique gauche-droite, c’est-à-dire le spectre démocrate / républicain, et vous examinez ensuite les aspects plus subtils des données.


Mathy:

Il est parfois utile de faire un zoom arrière et de regarder la motivation mathématique pour éclaircir le sens.

Il existe une famille spéciale de matrices qui peuvent être transformées en matrices diagonales simplement en modifiant l’axe de vos coordonnées. Naturellement, on les appelle les matrices diagonalisables et, assez élégamment, les nouveaux axes de coordonnées nécessaires pour le faire sont bien les vecteurs propres.

Comme il s’avère que les matrices de covariance sont symétriques et seront toujours diagonalisables ! Dans ce cas, les vecteurs propres sont appelés composants principaux et lorsque vous écrivez la matrice de covariance en coordonnées de vecteurs propres, les entrées en diagonale (les seules restantes) correspondent à la variance dans la direction de vos vecteurs propres. Cela nous permet de savoir quelles directions ont le plus de variance. De plus, puisque la matrice de covariance est diagonale dans ces coordonnées, vous avez intelligemment éliminé toute corrélation entre vos variables.

Comme cela est courant dans les applications pratiques, nous supposons que nos variables sont normalement distribuées et il est donc tout à fait naturel d'essayer de modifier nos coordonnées pour obtenir une image plus simple. En connaissant vos composants principaux et leurs valeurs propres respectives (variance), vous serez en mesure de réduire la dimensionnalité de vos données si nécessaire et d'avoir également un résumé général rapide de la variation de vos données.

Mais au bout du compte, toute cette opportunité tient au fait que les matrices diagonales sont beaucoup plus faciles à gérer par rapport à leurs cousins ​​plus confus, plus généraux.


2
Nous vous remercions de votre contribution. Il semble toutefois aborder une interprétation inutilement restrictive de la CPA. (1) L’APC a été appliquée avec succès à des jeux de données très non gaussiens. (2) la PCA n'est pas une procédure paramétrique formelle; il vaut peut-être mieux penser à cela comme à un esprit exploratoire. (3) Toutes les matrices de covariance, de tout type de distribution multivariée ou de données, sont diagonalisables. Ni la gaussianité (normalité) ni la non-dégénérescence ne sont des exigences. (La symétrie de la matrice et la présence de composants réels garantissent la diagonalisabilité .)
whuber

Je dois admettre que je suis gêné d'avoir oublié, mais bon point sur le fait que les matrices de covariance soient diagonalisables en général. Je vais modifier pour refléter cela. Aussi, pourriez-vous élaborer sur le point (2)? Je ne suis pas familier avec la différence entre les procédures paramétriques et non paramétriques.
Christian Bueno

7

Je considère PCA comme un outil géométrique. Si on vous donne un tas de points dans 3 espaces qui sont à peu près tous sur une ligne droite et que vous voulez comprendre l'équation de cette ligne, vous l'obtenez via PCA (prenez le premier composant). Si vous avez un tas de points dans 3 espaces qui sont principalement plans, et que vous voulez découvrir l'équation de ce plan, faites-le via PCA (prenez le vecteur composant le moins significatif et qui devrait être normal au plan).


7

Pourquoi tant de valeurs propres / vecteurs propres?

Lorsque vous effectuez une ACP, vous souhaitez calculer une base orthogonale en maximisant la variance projetée sur chaque vecteur de base.

Après avoir calculé les vecteurs de base précédents, vous souhaitez que le prochain soit:

  • orthogonale à la précédente
  • norme 1
  • maximiser la variance projetée, c'est-à-dire avec la norme de covariance maximale

Il s’agit d’un problème d’optimisation sous contrainte, et les multiplicateurs de Lagrange (pour l’intuition géométrique, voir page wikipedia) indiquent que les gradients de l’objectif (variance projetée) et la contrainte (norme de l’unité) doivent être «parallèles» à l’optimium.

Cela revient à dire que le vecteur de base suivant devrait être un vecteur propre de la matrice de covariance. Le meilleur choix à chaque étape est de choisir celui qui a la plus grande valeur propre parmi les valeurs restantes.


5
Certainement pas une explication à un profane - vecteurs à base orthogonale? maximiser la variance de projection? problème d'optimisation contrainte? Multiplicateur de Lagrange? Ce sont des termes hautement "jargonés". Montrez un profane qui comprend ce que cela veut dire et je vous montrerai un mathématicien / statisticien
probabilislogic

6

Fondamentalement, PCA trouve de nouvelles variables qui sont des combinaisons linéaires des variables d'origine, de sorte que dans le nouvel espace, les données ont moins de dimensions. Pensez à un ensemble de données constitué des points en 3 dimensions situés à la surface d’une plaque plate maintenue en angle. Dans les axes x, y et z d'origine, vous avez besoin de 3 dimensions pour représenter les données, mais avec la bonne transformation linéaire, vous n'avez besoin que de 2.

Fondamentalement ce que @Joel a dit, mais seulement des combinaisons linéaires des variables d'entrée.


6

Il y a quelque temps, j'ai essayé de comprendre cet algorithme PCA et je voulais faire une remarque sur les vecteurs propres et les valeurs propres. Ce document indiquait que le but des véhicules électriques est de convertir un modèle du modèle de grande taille en un modèle de très petite taille.

Par exemple, au lieu de construire d'abord le pont de taille réelle, puis de faire des expériences et des tests, il est possible d'utiliser des véhicules électriques pour créer un pont de très petite taille où tous les facteurs / quantités seront réduits de la même marge et, de plus, Le résultat réel des tests et des tests liés aux contraintes effectués peut être calculé et agrandi de manière appropriée en fonction des besoins du modèle d'origine. D'une certaine manière, les véhicules électriques aident à créer des résumés de l'original .

Pour moi, cette explication avait un sens profond à ce que j'essayais de faire! J'espère que ça vous aide aussi!


-1. Je n’ai peut-être pas bien compris l’analogie, mais cela me semble assez trompeur. En fait, PCA permet (en quelque sorte) de "convertir" un "grand" modèle en un "petit" modèle, mais cela se fait en réduisant la dimensionnalité de l'ensemble de données. Mais comment est le petit pont de dimensionnalité inférieure que le grand?! Ils sont tous les deux en 3D, n'est-ce pas?
amibe

@ amoeba: cet extrait est tiré d'un papier que j'ai lu, ce ne sont pas exactement mes mots. Je n’ai plus étudié ce sujet depuis longtemps et j’ai perdu la trace.
Rorschach

6

Imagine que grand-mère vient de prendre ses premières photos et ses premiers films sur l'appareil photo numérique que vous lui avez offert pour Noël. Malheureusement, elle laisse tomber sa main droite alors qu'elle appuie sur le bouton pour prendre des photos. Elle tremble également pendant le tournage. Elle remarque que les gens, les arbres, les clôtures, les bâtiments, les portes, les meubles, etc. ne sont pas droits, que le sol, la terre, la mer, l'horizon ne sont pas bien horizontaux, et bien les films sont plutôt tremblants. Elle demande si vous pouvez l'aider à les réparer, toutes les 3000 photos de vacances et environ 100 vidéos à la maison et sur la plage (elle est australienne), ouvrant des cadeaux, marchant dans le pays. Elle a ce logiciel photo qui te permet de faire ça, dit-elle. Vous lui dites que cela prendrait des jours et que, de toute façon, les vidéos ne fonctionneraient pas, mais vous connaissez des techniques appelées PCA et ICA qui pourraient vous aider. Vous expliquez que votre recherche implique en fait ce type de rotation des données dans les dimensions naturelles, que ces techniques trouvent les directions les plus importantes dans les données, la photo dans ce cas, et tournent de manière à ce que la plus importante soit horizontale, la seconde. est vertical (et cela peut même durer pour plus de dimensions que nous ne pouvons pas bien imaginer, bien que le temps soit aussi une dimension dans les films).

-

Côté technique. En fait, vous pourriez probablement obtenir votre doctorat en faisant cela pour elle, et il existe un important article de Bell et Sejnowski (1997) sur les composants indépendants des images correspondant aux contours. Pour relier cela à la PCA: ICA utilise PCA ou SVD comme première étape pour réduire la dimensionnalité et les approximations initiales, mais les améliore ensuite en prenant en compte non seulement les erreurs de second ordre (SSE) comme PCA, mais également les erreurs de rang élevé, le cas échéant ICA, tous les ordres supérieurs, bien que de nombreux algorithmes se limitent à 3ème ou 4ème. Les composantes PCA d'ordre bas ont tendance à être fortement influencées par les horizontales et les verticales. Traiter le mouvement de la caméra pour les films peut également utiliser PCA / ICA. Pour les photos 2D et les films 2½D, vous avez besoin de quelques astuces de représentation pour y parvenir.

Une autre application que vous pourriez expliquer à grand-mère est celle des surfaces propres - les vecteurs propres d’ordre supérieur peuvent approximer les «7 émotions de base» (le visage moyen de chacune d’elles et la «rotation graduée» ou la combinaison linéaire permettant de faire la moyenne), mais nous trouvons souvent des composants qui: sont liés au sexe et à la race, et certains pourraient distinguer des individus ou des caractéristiques individuelles (lunettes, barbe, etc.). C'est ce qui se produit si vous avez peu de photos d'un individu et de nombreuses émotions / expressions, mais vous obtenez un biais différent si vous avez plusieurs visages avec des expressions neutres. Utiliser ICA au lieu de PCA ne semble pas vraiment aider beaucoup pour les émotions de base, mais Bartlett et Sejnowsiki (1997) ont montré qu'il avait trouvé des fonctionnalités utiles pour la reconnaissance faciale.


1
J'apprécie l'effort de communiquer avec des exemples et par analogie. L'utilisation d'images, cependant, est regrettable en raison de la forte probabilité que grand-mère ne comprenne pas que votre sens de "rotation" a peu à voir avec la rotation des axes d'une image , et elle ne comprendra probablement pas que vous utilisez la "dimension". "dans un sens abstrait dans lequel les photos ont des millions de dimensions et pas seulement deux.
whuber

Oui, vous devez le représenter sous forme de nuage de points, comme pour les images des autres réponses. Un prétraitement avec une forme de détection de bord et / ou de seuillage ferait probablement partie des "astuces" que j'ai mentionnées. Mais pour opérer sur une photo complexe, il faut un doctorat.
David MW Powers

@whuber J'ai effectivement utilisé PCA (ainsi SVD) pour trouver ces rotations lors du calibrage d'image stéréo! C'est certainement le même sens de la rotation.
David MW Powers

2

Je pense que tout le monde commence à expliquer PCA du mauvais bout: à partir de vecteurs propres. Ma réponse commence au bon endroit: système de coordonnées. Les vecteurs propres, et le problème propre en général, constituent l'outil mathématique utilisé pour résoudre le problème réel, à savoir un système de coordonnées incorrect. Je vais t'expliquer.

Commençons par une ligne. Qu'est-ce qu'une ligne? C'est un objet unidimensionnel. Vous n'avez donc besoin que d'une dimension pour passer d'un point à un autre. Sur un plan, vous attachez deux coordonnées à n’importe quel point d’une ligne. En effet, le système de coordonnées est choisi arbitrairement pour une ligne. Je dirais que le système de coordonnées ne reflète pas la nature unidimensionnelle interne de la ligne. Si seulement je mettais toujours l'origine de mon système de coordonnées cartésien sur la ligne et le tournais de sorte que son axe x soit sur la ligne, je n'aurais plus besoin de l'axe y! Tous mes points sont sur un axe, car une ligne est un objet à une dimension.

C’est là que les explications de la PCA devraient commencer. Le problème eigen est un outil qui effectue la rotation que j'ai décrite et la dé-signification des variables place l'origine sur la ligne. PCA aide à révéler les véritables dimensions des données si longtemps que les relations entre les variables sont linéaires .


1

Rappelez-vous qu'un vecteur propre est un vecteur dont la transformation est parallèle au même vecteur d'entrée. Ainsi, un vecteur propre avec une valeur propre élevée signifie que le vecteur propre présente un degré élevé de «parallélisme» avec les données, ce qui signifie que vous pouvez représenter les données avec ce vecteur uniquement et vous attendre à une faible erreur dans la nouvelle représentation. Si vous choisissez des vecteurs propres supplémentaires avec des valeurs propres plus basses, vous pourrez représenter plus de détails des données car vous représenterez d'autres "parallélités" - qui ne sont pas aussi importantes que le premier en raison de valeurs propres plus basses.


0

La PCA est fondamentalement une projection d'un espace de dimension supérieure dans un espace de dimension inférieure tout en préservant autant d'informations que possible.

J'ai écrit un article de blog où j'explique PCA via la projection d'une théière 3D ...

entrez la description de l'image ici

... sur un plan 2D tout en préservant le plus d'informations possible:

entrez la description de l'image ici

Les détails et le code R complet peuvent être trouvés dans le post:
http://blog.ephorie.de/intuition-for-principal-component-analysis-pca


1
Malgré les images, il s’agit pour le moment d’un commentaire plutôt que d’une réponse. Pourriez-vous développer, peut-être en donnant un résumé des informations sur le lien? Les postes du réseau SE sont censés être autonomes.
gung

@gung: assez bien - l'essentiel est que PCA est fondamentalement une projection d'un espace de dimension supérieure (dans ce cas une théière 3D) sur un espace de dimension inférieure (dans ce cas, un plan 2D) tout en préservant autant d'informations possible. Cela changera dans la réponse.
vonjd

C'est certainement vrai (et expliqué dans de nombreuses autres réponses existantes sur ce fil), mais il devrait généralement y avoir davantage de réponses postées dans le système SE, et elles devraient pouvoir se débrouiller toutes seules si, par exemple, le lien disparaissait.
gung

1
L'exemple de la théière est intéressant. Vous dites que PCA est une projection vers un espace dimensionnel inférieur tout en préservant autant d'informations. Mais .... qu'est-ce que l'information? Dans le cas de la PCA, cela signifie que la variance totale doit être aussi élevée que possible. L’exemple de la théière revient plutôt à affirmer que l’information est «la mieux conservée» en utilisant une projection dans un plan particulier, mais cela explique peu comment PCA le fait et si c’est aussi le «meilleur» choix d’information ». Par exemple, LDA est également une projection qui a pour objectif de préserver les informations, mais pas la même chose que PCA.
Martijn Weterings le

Si votre théière aurait été plus ronde / circulaire (moins grande) que PCA n'aurait choisi une intersection différente pour conserver la plupart des "informations".
Martijn Weterings le

-4

Peut-être à la fin de ces analyses, l'hypothèse implicite selon laquelle les données du groupe I diffèrent de celles du groupe II, et on essaie de déterminer quelle composante est probablement le principal facteur contribuant à la différence.

Effectuer une analyse PCA qui aboutit à des ellipsoïdes identiques pour 2 jeux différents vous indique alors que les deux jeux ne sont pas différents en fonction des paramètres que vous avez mesurés.


2
Je me demande si vous pensez à MANOVA. Si vous exécutiez deux PCA distincts, vous ne feriez que montrer que la structure de corrélation était similaire.
gung

2
-1. C'est une réponse complètement trompeuse, pour la raison exposée par @gung. En outre, il ne tente même pas d'expliquer ce qu'est la PCA.
amibe
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.