Quelles sont les différences entre l'analyse factorielle et l'analyse en composantes principales?


215

Il semble qu'un certain nombre de progiciels statistiques que j'utilise réunissent ces deux concepts. Cependant, je me demande s'il existe différentes hypothèses ou «formalités» de données qui doivent être vraies pour pouvoir être utilisées l'une par rapport à l'autre. Un exemple réel serait incroyablement utile.


2
Les chapitres sur l'analyse en composantes principales et l'analyse factorielle du livre suivant, disponible dans la plupart des bibliothèques universitaires, répondent exactement à votre question: apa.org/pubs/books/4316510.aspx
user31256

3
En plus des réponses ci-dessous, vous pouvez également lire ceci et cela du mien.
mardi

2
Et une autre bonne question comme "devrais-je utiliser PCA ou FA": stats.stackexchange.com/q/123063/3277 .
ttnphns

3
@ttnphns: Je vous encourage à donner une réponse dans ce fil de discussion, consistant peut-être en une liste annotée de vos réponses dans d'autres threads connexes. Cela pourrait remplacer vos commentaires ci-dessus (actuellement quatre commentaires avec des liens) et serait plus pratique, en particulier si vous annotiez brièvement chaque lien. Par exemple, regardez ici pour l'explication de ce problème, cherchez-le pour une explication de ce problème, etc. Il ne s'agit que d'une suggestion, mais je crois que ce fil en bénéficierait grandement! Un avantage particulier est que vous pouvez toujours ajouter plus de liens à cette réponse.
amibe

2
Une question similaire a été posée sur MathOverflow et a reçu ce que je considérerais comme une excellente réponse: mathoverflow.net/questions/40191/…
Daniel Moskovich

Réponses:


156

L’analyse en composantes principales consiste à extraire des composites linéaires de variables observées.

L'analyse factorielle est basée sur un modèle formel permettant de prédire les variables observées à partir de facteurs latents théoriques.

En psychologie, ces deux techniques sont souvent appliquées dans la construction d’essais multi-échelles pour déterminer quels objets chargent à quelles échelles. Elles aboutissent généralement à des conclusions de fond similaires (pour une discussion, voir Comrey (1988), Méthodes analytique factorielle du développement d'échelles en psychologie de la personnalité et clinique). Cela aide à expliquer pourquoi certains logiciels de statistiques semblent les regrouper. J'ai aussi vu des situations où "l'analyse en composantes principales" est mal étiquetée "analyse factorielle".

En termes simples , je vous suggérerais:

  1. Exécutez une analyse factorielle si vous supposez ou souhaitez tester un modèle théorique de facteurs latents à l'origine des variables observées.

  2. Exécuter l'analyse en composantes principales Si vous souhaitez simplement réduire vos variables observées corrélées à un plus petit ensemble de variables composites indépendantes importantes.


5
La règle de base est très utile. Merci pour ça.
Brandon Bertelsen

1
En ce qui concerne la règle empirique (1): Ne testerais-je pas un modèle théorique de facteurs latents avec une analyse factorielle de confirmation plutôt que de manière exploratoire?
Romain

1
@roman Oui. Un CFA vous donne beaucoup plus de contrôle sur le modèle que l'EFA. Par exemple, vous pouvez limiter les chargements à zéro; assimiler les chargements; avoir des résidus corrélés; ajouter des facteurs d'ordre supérieur; etc.
Jeromy Anglim

3
@ Jeromy Anglim Est-il vraiment correct de dire que la PCA crée un "plus petit ensemble de variables composites indépendantes importantes". Ou devriez-vous vraiment dire «plus petit ensemble de variables composites importantes non corrélées». Si les données sous-jacentes utilisées dans PCA ne sont pas (multivariées) normalement distribuées, les données dimensionnelles réduites seront uniquement décorrélées?
FXQuantTrader

1
Le deuxième pouce de la règle est facile à obtenir, mais comment puis-je appliquer le premier? Cela semble peut-être étrange, mais quand est-ce que je sais que je veux utiliser un modèle factoriel en fonction des variables observées?
Ben

48

De ma réponse ici:

PCA suivi d’une rotation (telle que varimax) est-il toujours PCA?

L'analyse en composantes principales (ACP) et l'analyse factorielle commune (CFA) sont des méthodes distinctes. Souvent, ils produisent des résultats similaires et la PCA est utilisée comme méthode d'extraction par défaut dans les routines d'analyse de facteur SPSS. Cela entraîne sans aucun doute une grande confusion quant à la distinction entre les deux.

L'essentiel, c'est que ce sont deux modèles différents, conceptuellement. En ACP, les composants sont des combinaisons linéaires orthogonales réelles qui maximisent la variance totale. En FA, les facteurs sont des combinaisons linéaires qui maximisent la partie partagée de la variance - "constructions latentes" sous-jacentes. C’est pourquoi on parle souvent d’analyse par facteurs communs. FA utilise diverses routines d’optimisation et le résultat, contrairement à PCA, dépend de la routine d’optimisation utilisée et des points de départ de ces routines. Simplement, il n’existe pas une solution unique.

Dans R, la fonction factanal () fournit à CFA une extraction du maximum de vraisemblance. Vous ne devez donc pas vous attendre à ce qu'il reproduise un résultat SPSS basé sur une extraction PCA. Ce n'est tout simplement pas le même modèle ou la même logique. Je ne suis pas sûr que vous obtiendriez le même résultat si vous utilisiez l'extraction du maximum de vraisemblance de SPSS, car ils pourraient ne pas utiliser le même algorithme.

Pour le meilleur ou pour le pire dans R, vous pouvez toutefois reproduire "l'analyse factorielle" confondue fournie par SPSS par défaut. Voici le processus décrit dans R. Avec ce code, je suis en mesure de reproduire le résultat "Analyse factorielle" de la composante principale de SPSS à l'aide de cet ensemble de données. (À l'exception du signe, qui est indéterminé). Ce résultat pourrait également être soumis à une rotation en utilisant l'une des méthodes de rotation disponibles de R.

data(attitude)
# Compute eigenvalues and eigenvectors of the correlation matrix.
pfa.eigen <- eigen(cor(attitude))
# Print and note that eigenvalues are those produced by SPSS.
# Also note that SPSS will extract 2 components as eigenvalues > 1 = 2.
pfa.eigen$values
# Set a value for the number of factors (for clarity)
kFactors <- 2
# Extract and transform two components.
pfa.eigen$vectors[, seq_len(kFactors)]  %*% 
  diag(sqrt(pfa.eigen$values[seq_len(kFactors)]), kFactors, kFactors)

5
Notez que vous obtiendrez les mêmes résultats avec principal(attitude, 2, rotate="none")le psychpackage et que la règle de Kayser (ev> 1) n'est pas la méthode la plus recommandée pour tester la dimensionnalité (elle surestime le nombre de facteurs).
chl

5
Oui, je sais que le principal principal psychique termine la discussion. Mon but était de montrer ce que "l'analyse factorielle" de SPSS faisait en utilisant la méthode d'extraction en composants principaux. Je conviens que la règle de la valeur propre est un mauvais moyen de sélectionner le nombre de facteurs. Mais, c’est exactement ce que SPSS fait par défaut et c’est ce que j’ai démontré.
Brett

1
factanal()fournit EFA pas CFA. De plus, d'après mon expérience, l'extraction du maximum de vraisemblance de SPSS devrait donner le même résultat factanal()que s'il n'y avait pas de rotation oblique.
pe-pe-rry

2
Que signifient les expressions suivantes: 'Dans FA, les facteurs sont des combinaisons linéaires qui maximisent la partie partagée de la variance - les "constructions latentes" sous-jacentes. '?
conjectures

Notez également que CFA peut représenter une confirmation FA (par opposition à une explication FA ) au lieu d' une FA commune .
Richard Hardy

33

Vous avez raison sur votre premier point, même si dans FA vous travaillez généralement avec les deux (unicité et communauté). Le choix entre PCA et FA est un débat de longue date parmi les psychométriciens. Je ne suis pas tout à fait vos points, cependant. La rotation des axes principaux peut être appliquée quelle que soit la méthode utilisée pour construire des facteurs latents. En fait, il s’agit généralement de la rotation VARIMAX (rotation orthogonale, en tenant compte des facteurs non corrélés), pour des raisons pratiques (interprétation la plus facile, règles de notation les plus simples ou interprétation des scores des facteurs, etc.), bien que la rotation oblique (par exemple PROMAX ) pourrait probablement mieux refléter la réalité (les constructions latentes sont souvent corrélées les unes aux autres), au moins dans la tradition de FA où vous supposez qu'une construction latente est vraiment au cœur des inter-corrélations observées entre vos variables. Le fait est que la PCA suivie de la rotation VARIMAX fausse quelque peu l'interprétation des combinaisons linéaires des variables d'origine dans la tradition de "l'analyse des données" (voir les travaux de Michel Tenenhaus). D'un point de vue psychométrique, les modèles d'AF doivent être préférés, car ils prennent en compte explicitement les erreurs de mesure, alors que l'ACP ne s'en soucie pas. En résumé, en utilisant PCA, vous exprimez chaque composante (facteur) sous forme de combinaison linéaire des variables, alors que dans FA, ce sont les variables qui sont exprimées sous forme de combinaisons linéaires des facteurs (y compris les composantes de communalités et d'unicité, comme vous l'avez dit). Le fait est que la PCA suivie de la rotation VARIMAX fausse quelque peu l'interprétation des combinaisons linéaires des variables d'origine dans la tradition de "l'analyse des données" (voir les travaux de Michel Tenenhaus). D'un point de vue psychométrique, les modèles d'AF doivent être préférés car ils prennent en compte explicitement les erreurs de mesure, alors que l'ACP ne s'en soucie pas. En résumé, en utilisant PCA, vous exprimez chaque composante (facteur) sous forme de combinaison linéaire des variables, alors que dans FA, ce sont les variables qui sont exprimées sous forme de combinaisons linéaires des facteurs (y compris les composantes de communalités et d'unicité, comme vous l'avez dit). Le fait est que la PCA suivie de la rotation VARIMAX fausse quelque peu l'interprétation des combinaisons linéaires des variables d'origine dans la tradition de "l'analyse des données" (voir les travaux de Michel Tenenhaus). D'un point de vue psychométrique, les modèles d'AF doivent être préférés car ils prennent en compte explicitement les erreurs de mesure, alors que l'ACP ne s'en soucie pas. En résumé, en utilisant PCA, vous exprimez chaque composante (facteur) sous forme de combinaison linéaire des variables, alors que dans FA, ce sont les variables qui sont exprimées sous forme de combinaisons linéaires des facteurs (y compris les composantes de communalités et d'unicité, comme vous l'avez dit). Les modèles FA doivent être préférés car ils prennent explicitement en compte les erreurs de mesure, alors que PCA ne s'en soucie pas. En résumé, en utilisant PCA, vous exprimez chaque composante (facteur) sous forme de combinaison linéaire des variables, alors que dans FA, ce sont les variables qui sont exprimées sous forme de combinaisons linéaires des facteurs (y compris les composantes de communalités et d'unicité, comme vous l'avez dit). Les modèles FA doivent être préférés car ils prennent explicitement en compte les erreurs de mesure, alors que PCA ne s'en soucie pas. En résumé, en utilisant PCA, vous exprimez chaque composante (facteur) sous forme de combinaison linéaire des variables, alors que dans FA, ce sont les variables qui sont exprimées sous forme de combinaisons linéaires des facteurs (y compris les composantes de communalités et d'unicité, comme vous l'avez dit).

Je vous recommande de lire d'abord les discussions suivantes sur ce sujet:


7
Juste pour dire que ma réponse peut paraître un peu hors sujet puisque cette question a été fusionnée avec une autre, stats.stackexchange.com/questions/3369/… (je répondais initialement à ce dernier).
chl

6
Ah, je me demandais pourquoi vous avez lié à cette question, dans cette question ... :)
Brandon Bertelsen

1
PCA followed by VARIMAX rotation somewhat distorts the interpretation of the linear combinations of the original variables in the "data analysis" tradition. Chl, pourriez-vous l'expliquer? C'est intéressant.
ttnphns

32

Il existe de nombreuses définitions suggérées sur le Web. Voici un extrait d'un glossaire en ligne sur l'apprentissage statistique :

Analyse des composants principaux

Construire de nouvelles fonctionnalités qui sont les composants principaux d'un ensemble de données. Les principales composantes sont des variables aléatoires de la variance maximale construites à partir de combinaisons linéaires des entités en entrée. De manière équivalente, ce sont les projections sur les axes des composantes principales, qui sont des lignes qui minimisent la distance au carré moyenne à chaque point de l'ensemble de données. Pour garantir l'unicité, tous les axes de la composante principale doivent être orthogonaux. La PCA est une technique de maximum de vraisemblance pour la régression linéaire en présence de bruit gaussien sur les entrées et les sorties. Dans certains cas, PCA correspond à une transformation de Fourier, telle que la DCT utilisée dans la compression d'image JPEG. Voir "Zones propres pour la reconnaissance" (Turk & Pentland, J Cognitive Neuroscience 3 (1), 1991), Bishop, "

Analyse factorielle

Une généralisation de la CPA basée explicitement sur le maximum de vraisemblance. À l'instar de l'ACP, chaque point de données est supposé provenir de l'échantillonnage d'un point dans un sous-espace, puis de sa perturbation avec un bruit gaussien de dimension complète. La différence est que l’analyse factorielle permet au bruit d’avoir une matrice de covariance diagonale arbitraire, alors que l’ACP suppose que le bruit est sphérique. En plus d'estimer le sous-espace, l'analyse factorielle estime la matrice de covariance du bruit. Voir "L'algorithme EM pour les mélanges d'analyseurs de facteurs" pour le choix de la dimensionnalité pour PCA ".


2
La description de l'analyse factorielle prend le point principal (covariance diagonale), mais n'a pas été développée historiquement comme une généralisation de la PCA.
conjectures

1
Donc, fondamentalement, dans PCA un DVD est la matrice de covariance et dans FA la matrice de corrélation? Il m'est toujours difficile de trouver le calcul réel une fois que les méthodes ont construit beaucoup de terminologie à partir du domaine où elles sont appliquées. (Hors sujet: il m'a déjà fallu un après-midi complet pour comprendre ce que la modélisation du chemin a fait avant de trouver un (1) article des années 70 qui énonçait l'équation matricielle derrière.)
Mark van der Loo Le

28

La réponse principale dans ce fil suggère que PCA est davantage une technique de réduction de dimensionnalité, alors que FA est davantage une technique de variable latente. C'est sensu stricto correct. Mais beaucoup de réponses ici et de nombreux traitements ailleurs présentent la PCA et la FA comme deux méthodes complètement différentes, avec des objectifs, des méthodes et des résultats différents sinon opposés. Je ne suis pas d'accord; Je pense que lorsque l’ACP est considérée comme une technique de variable latente, elle est assez proche de l’AF et devrait plutôt être considérée comme une méthode très similaire.

J'ai fourni mon propre récit des similitudes et des différences entre PCA et FA dans le fil suivant: Existe - t-il une bonne raison d'utiliser PCA au lieu de EFA? En outre, l’ACP peut-elle remplacer l’analyse factorielle? Je soutiens que, pour de simples raisons mathématiques, on peut s’attendre à ce que les résultats de PCA et de FA soient assez similaires, étant donné que le nombre de variables n’est pas très petit (peut-être plus d’une douzaine). Voir ma réponse [long!] Dans le fil de discussion associé pour obtenir des détails mathématiques et des simulations de Monte Carlo. Pour une version beaucoup plus concise de mon argument, voir ici: Dans quelles conditions PCA et FA obtiennent-elles des résultats similaires?

Ici, je voudrais montrer sur un exemple. J'analyserai l'ensemble de données sur le vin à partir du référentiel UCI Machine Learning. C'est un ensemble de données assez bien connu avec vins de trois raisins différents décrits par variables. Voici à quoi ressemble la matrice de corrélation: p = 13n=178p=13

Matrice de corrélation du jeu de données vin

J'ai exécuté les analyses PCA et FA et ai montré les projections 2D des données sous forme de bi-parcelles pour les deux sur la figure ci-dessous (PCA à gauche, FA à droite). Les axes horizontaux et verticaux indiquent les scores des 1er et 2ème composants / facteurs. Chacun des points correspond à un vin et les points sont colorés en fonction du groupe (voir légende):n=178

Analyse PCA et FA de l'ensemble de données sur le vin

Les chargements de la 1ère et 2ème composante / facteur sur chacune des variables d'origine sont représentés par des lignes noires. Ils sont égaux aux corrélations entre chacune des variables d'origine et les deux composantes / facteurs. Bien entendu, les corrélations ne peuvent pas dépasser , aussi toutes les lignes de chargement sont-elles contenues dans le "cercle de corrélation" indiquant la corrélation maximale possible. Tous les chargements et le cercle sont arbitrairement mis à l'échelle par un facteur de , sinon ils seraient trop petits pour être vus (le rayon du cercle est donc de et non de ).1 3 3 1p=131331

Notez qu'il n'y a pratiquement aucune différence entre PCA et FA! Il y a de petits écarts ici et là, mais le tableau général est presque identique, et tous les chargements sont très similaires et vont dans le même sens. C'est exactement ce à quoi on s'attendait de la théorie et ce n'est pas une surprise. encore, il est instructif d'observer.

PS Pour un biplot PCA beaucoup plus joli du même jeu de données, voir cette réponse de @vqv .

PPS. Alors que les calculs PCA sont standard, les calculs FA peuvent nécessiter un commentaire. Les chargements de facteurs ont été calculés par un algorithme de "facteurs principaux itérés" jusqu'à la convergence (9 itérations), les communautés étant initialisées avec des corrélations partielles. Une fois que les chargements ont convergé, les scores ont été calculés selon la méthode de Bartlett. Cela donne des scores standardisés; Je les ai augmentés en fonction des variances respectives des facteurs (données par les longueurs de chargement).


1
Quel logiciel avez-vous utilisé pour créer les graphiques PCA et d'analyse factorielle?
rnso

1
J'ai utilisé Matlab. Je pensais coller le code dans ma réponse (comme d'habitude, c'est mon habitude), mais je ne voulais pas encombrer encore plus ce fil occupé. Mais à bien y penser, je devrais l'afficher sur un site Web externe et laisser un lien ici. Je le ferai.
amibe

2
Il est vrai que PCA et FA donnent parfois rarement des résultats similaires (chargements). C’est pourquoi l’ACP peut être considérée comme un cas spécifique d’AF, lorsque l’analyse factorielle est définie de manière large. Pourtant, FA (sensu stricto) et PCA sont théoriquement très différents.
ttnphns

2
(suite) Les facteurs sont des traits latents transcendants; pr. les composants sont des dérivations immanentes. Bien que vos deux parcelles de chargement semblent pratiquement similaires, elles sont théoriquement fondamentalement différentes. Le plan des composants à gauche a été produit comme un sous-espace des variables qui se projettent sur celui-ci. Le plan factoriel a été produit comme un espace différent de celui des variables et celles-ci se projettent sur un espace "extraterrestre" dans le bon tracé.
ttnphns

3
(suite) Mais la photo de droite (FA) n’est en réalité pas une véritable biplot , mais plutôt une superposition de deux diagrammes de dispersion distincts, des espaces différents: la courbe de chargement (où les axes sont des facteurs vrais) et la courbe de scores des objets les facteurs estimés en tant que scores). L'espace facteur réel dépasse l'espace variable "parental", mais l'espace de scores factoriel est son sous-espace. Vous avez superposé deux paires d'axes hétérogènes, mais elles portent les mêmes étiquettes ("facteur1" et "facteur2" dans les deux paires), ce qui est fortement trompeur et nous persuade de penser qu'il s'agit d'un véritable biplot , comme celui de gauche.
ttnphns

25

Explication de base, mais en quelque sorte laborieuse, de l' analyse PCA vs Factor à l'aide de diagrammes de dispersion, en étapes logiques. (Je remercie @amoeba qui, dans son commentaire à la question, m'a encouragé à poster une réponse au lieu de créer des liens vers d'autres sites. Voici donc une réponse tardive.)

PCA en tant que résumé de variables (extraction de caractéristiques)

J'espère que vous avez déjà une compréhension de la PCA. Pour revivre maintenant.

entrez la description de l'image ici

Supposons que nous ayons des variables de corrélation et . Nous les centrons (soustrayons la moyenne) et faisons un diagramme de dispersion. Ensuite, nous effectuons la PCA sur ces données centrées. PCA est une forme de rotation des axes qui propose les axes P1 et P2 au lieu de V1 et V2. La propriété clé de la PCA est que P1 - appelé 1er composant principal - est orienté de manière à maximiser la variance des points de données le long de celle-ci. Les nouveaux axes sont de nouvelles variables dont les valeurs sont calculables tant que nous connaissons les coefficients de rotation (fourni par PCA) [ Eq.1 ]:V1V2a

P1=a11V1+a12V2

P2=a21V1+a22V2

Ces coefficients sont des cosinus de rotation (= cosinus de direction, directions principales) et comprennent ce qu'on appelle des vecteurs propres, tandis que les valeurs propres de la matrice de covariance sont les variances des composantes principales. En PCA, nous ignorons généralement les derniers composants faibles: nous résumons ainsi les données en quelques premiers composants extraits, avec une perte d'informations minime.

Covariances
        V1       V2 
V1  1.07652   .73915 
V2   .73915   .95534 

----PCA---- 
Eigenvalues      % 
P1  1.75756   86.500 
P2   .27430   13.500 

Eigenvectors
        P1       P2
V1   .73543  -.67761 
V2   .67761   .73543

Avec nos données tracées, les valeurs de la composante P1 (scores) P1 = .73543*V1 + .67761*V2et la composante P2, nous les rejetons. La variance de P1 est 1.75756la 1ère valeur propre de la matrice de covariance, et P1 explique donc 86.5%la variance totale qui est égale à (1.07652+.95534) = (1.75756+.27430).

PCA en tant que prédiction variable (fonctionnalité "latente")

Nous avons donc jeté P2 et nous nous attendons à ce que P1 seul puisse raisonnablement représenter les données. Cela revient à dire que peut raisonnablement bien "reconstruire" ou prédire et [ Eq.2 ]:P1 V1V2

V1=a11P1+E1

V2=a12P1+E2

où les coefficients sont ce que nous savons déjà et les erreurs (imprévisibilité). Il s'agit en fait d'un "modèle de régression" dans lequel les variables observées sont prédites (en retour) par la variable latente (si elle permet d'appeler une composante "latente") P1 extraite de ces mêmes variables. Regardez le graphique Fig.2 , ce n’est rien d’autre que Fig.1 , seulement détaillé:aE

entrez la description de l'image ici

L’axe P1 est indiqué en mosaïque avec ses valeurs (scores P1) en vert (ces valeurs sont les projections des points de données sur P1). Certains points de données arbitraires étaient étiquetés A, B, ... et leur départ (erreur) par rapport à P1 correspond à des connecteurs noirs en gras. Pour le point A, les détails sont indiqués: les coordonnées du score P1 (A vert) sur les axes V1 et V2 sont les valeurs de V1 et V2 reconstruites selon Eq.2 , et . Les erreurs de reconstruction et sont également affichées en beige. La longueur "erreur" du connecteur au carré est la somme des deux erreurs au carré, selon Pythagore.V1^=a11P1V2^=a12P1E1=V1V1^E2=V2V2^

Maintenant, ce qui est caractéristique de la PCA, c'est que si nous calculons E1 et E2 pour chaque point des données et traçons ces coordonnées - c'est-à-dire que nous établissons le diagramme de dispersion des erreurs uniquement, les "données d'erreur" du nuage coïncideront avec la composante P2 éliminée. Et c'est le cas: le nuage est tracé sur la même image que le nuage beige - et vous voyez qu'il forme réellement l'axe P2 (de la Fig.1 ) en mosaïque avec les scores de la composante P2.

Pas étonnant, vous pouvez dire. C’est tellement évident: dans la PCA , le ou les composant (s) junior (s) mis (s) au rebut est ce qui se décompose précisément dans les erreurs de prédiction E, dans le modèle qui explique (restaure) les variables originales V par la ou les caractéristiques latentes P1. Les erreurs E ensemble ne constituent que le ou les composants laissés. Voici où l' analyse factorielle commence à différer de la PCA.

L'idée d'une FA commune (trait latent)

Formellement, le modèle prédisant les variables manifestes en fonction de la ou des caractéristiques latentes extraites est le même dans FA que dans PCA; [ Eq.3 ]:

V1=a1F+E1

V2=a2F+E2

où F est le facteur commun latent extrait des données et remplaçant ce qui était P1 dans Eq.2 . La différence dans le modèle est que dans FA, contrairement à PCA, les variables d'erreur (E1 et E2) doivent être décorrélées les unes des autres .

Digression . Ici, je veux interrompre l’histoire et me faire une idée de ce que sont des coefficients . Dans l’ACP, nous avons dit que c’étaient des entrées de vecteurs propres trouvés dans l’ACP (par décomposition de valeurs propres ou singulières). Tandis que P1 latent avait sa variance native. Si nous choisissons de normaliser la variance de P1 en unité, nous devrons compenser en augmentant de manière appropriée les coefficients , afin de prendre en charge l'équation. Cette mise à l'échelle d' s s'appelle des chargements ; elles présentent un intérêt numérique car ce sont les covariances (ou corrélations) entre les variables latentes et observables et peuvent donc aider à interpréter la caractéristique latente. Dans les deux modèles - Eq.2 et Eq.3aaa- vous êtes libre de décider, sans nuire à l'équation, de quelle manière les termes sont mis à l'échelle. Si F (ou P1) est considéré comme une unité mise à l'échelle, est en cours de chargement; tandis que si F (P1) doit avoir son échelle native (variance), alors devrait être réduit en conséquence - dans PCA, les entrées de vecteurs propres seront égales, mais dans FA, elles seront différentes et ne seront généralement pas appelées "vecteurs propres". Dans la plupart des textes sur l' analyse des facteurs, F sont supposées variance unitaires , de façon sont - ils des charges . Dans la littérature ACP, P1 est généralement d' avoir sa variance discuté réelle et ainsi sont des vecteurs propres.aaaa

OK, revenons au fil. E1 et E2 ne sont pas corrélés dans l'analyse factorielle; ainsi, ils devraient former un nuage d’erreurs soit rond, soit elliptique mais non orienté en diagonale. Alors qu’en PCA, leur nuage formait une ligne droite qui coïncidait avec un P2 en diagonale. Les deux idées sont démontrées sur la photo:

entrez la description de l'image ici

Notez que les erreurs sont des nuages ​​ronds (non allongés en diagonale) dans FA. Le facteur (latent) dans l’AF est orienté quelque peu différemment, c’est-à-dire qu’il n’est pas juste que le premier composant principal soit le "latent" dans PCA. Sur la photo, la courbe des facteurs est étrangement conique - on comprendra pourquoi au final.

Quel est le sens de cette différence entre PCA et FA? Les variables corrélées sont visibles dans la forme elliptique en diagonale du nuage de données. P1 écrémé la variance maximale, l'ellipse est donc co-dirigée vers P1. En conséquence, P1 a expliqué par elle-même la corrélation; mais cela n'expliquait pas suffisamment la corrélation existante ; il a semblé expliquer la variation des points de données et non la corrélation. En réalité, il a sur-pris en compte la corrélation, ce qui a eu pour résultat l’apparition d’un nuage d’erreurs en diagonale et corrélée qui compense le surdénombrement. P1 à lui seul ne peut expliquer la force de la corrélation / covariation de manière exhaustive. Facteur F peutfais le tout seul; et la condition quand il devient capable de le faire est exactement où les erreurs peuvent être forcées pour être décorrélées. Étant donné que le nuage d'erreur est arrondi, aucune corrélation - positive ou négative - n'est restée après l'extraction du facteur; c'est donc le facteur qui a tout écrémé.

En tant que réduction de dimensionnalité, PCA explique la variance mais explique les corrélations de manière imprécise. FA explique les corrélations mais ne peut pas expliquer (par les facteurs communs) autant de variations de données que l’ACP. Le (s) facteur (s) dans FA tiennent compte de la partie de la variabilité qui est la partie corrélationnelle nette, appelée communalité ; et par conséquent, les facteurs peuvent être interprétés comme des forces / caractéristiques / traits réels, mais non observables, qui cachent "dans" ou "derrière" les variables d'entrée pour les amener à les corréler. Parce qu'ils expliquent bien la corrélation mathématiquement. Les principales composantes (quelques premières premières) ne l'expliquent pas aussi mathématiquement et peuvent donc être qualifiées de "trait latent" (ou une telle caractéristique) seulement à un moment ou à un autre et provisoirement .

La multiplication des chargements est ce qui explique (restaure) la corrélation, ou la corrélation sous la forme de covariance - si l'analyse était basée sur la matrice de covariance (comme dans notre exemple) plutôt que sur la matrice de corrélation. L’analyse factorielle que j’ai faite avec les données a donné a_1=.87352, a_2=.84528, donc le produit a_1*a_2 = .73837est presque égal à la covariance .73915. Par contre, les charges de PCA ont été surestimées de a1_1=.97497, a1_2=.89832manière considérable.a1_1*a1_2 = .87584.73915

Après avoir expliqué la principale distinction théorique entre PCA et FA, revenons à nos données pour illustrer l’idée.

FA: solution approximative (scores factoriels)

Ci-dessous, le diagramme de dispersion montrant les résultats de l'analyse que nous appellerons provisoirement "analyse factorielle sous-optimale", Fig.3 .

A technical detail (you may skip): PAF method used for factor extraction.
Factor scores computed by Regression method.
Variance of the factor scores on the plot was scaled to the true
factor variance (sum of squared loadings).

entrez la description de l'image ici

Voir les départs de la Fig.2 de la PCA. Le nuage beige des erreurs n’est pas rond, il est elliptique en diagonale - mais il est évidemment beaucoup plus gros que la mince ligne diagonale qui s’est produite dans PCA. Notez également que les connecteurs d'erreur (indiqués pour certains points) ne sont plus parallèles (dans PCA, ils étaient par définition parallèles à P2). De plus, si vous regardez, par exemple, les points "F" et "E" qui sont symétriquement symétriques sur l' axe F du facteur , vous découvrirez que, de manière inattendue, leurs scores de facteurs correspondants sont des valeurs très différentes. En d'autres termes, les scores factoriels ne sont pas simplement des scores en composantes principales transformés linéairement: le facteur F se trouve à sa manière différent de celui de P1. Et leurs axes ne coïncident pas complètement s'ils sont montrés ensemble sur le même tracé. Fig.4 :

entrez la description de l'image ici

En dehors de cela, ils sont un peu différemment orientés, F (en mosaïque avec les scores) est plus court, c’est-à-dire qu’il représente une variance plus petite que les comptes P1. Comme indiqué précédemment, les facteurs ne rendent compte que de la variabilité qui est responsable de la corrélation de V1, V2, c'est-à-dire la partie de la variance totale suffisante pour amener les variables de la covariance primitive 0à la covariance factuelle .73915.

FA: solution optimale (vrai facteur)

Une solution factorielle optimale consiste à utiliser des nuages ​​elliptiques arrondis ou non diagonaux: E1 et E2 sont totalement non corrélés . L'analyse factorielle renvoie en réalité une solution optimale. Je ne l'ai pas montré sur un simple diagramme de dispersion comme ceux ci-dessus. Pourquoi ai-je? - Ce serait la chose la plus intéressante, après tout.

La raison en est qu’il serait impossible de montrer suffisamment sur un diagramme de dispersion, même en adoptant un tracé en 3D. C'est théoriquement un point assez intéressant. Afin de rendre E1 et E2 complètement décorrélés, il apparaît que ces trois variables, F, E1, E2, ne doivent pas se trouver dans l'espace (plan) défini par V1, V2; et les trois doivent être non corrélés les uns avec les autres . Je pense qu’il est possible de dessiner un tel diagramme de dispersion en 5D (et peut-être avec un gadget - en 4D), mais nous vivons dans un monde en 3D, hélas. Le facteur F doit être non corrélé à E1 et à E2 (alors que les deux le sont également), car F est censé être la seule (complète) source de corrélation dans les données observées. L’analyse factorielle divise la variance totale de lapvariables d'entrée en deux parties non corrélées (non superposées): la partie communalité ( m-dimensionnelle, où mrègle des facteurs communs) et la partie unique ( p-dimensionnelle, où les erreurs sont, également appelées facteurs uniques, non corrélées mutuellement).

Donc, pardon pour ne pas montrer le facteur réel de nos données sur un diagramme de dispersion ici. Il pourrait être visualisé de manière tout à fait adéquate via des vecteurs dans "l'espace sujet" comme cela est fait ici sans montrer les points de données.

Ci-dessus, dans la section "L'idée de FA commun (caractéristique latente)", j'ai affiché le facteur (axe F) comme un coin afin d'avertir que l'axe du facteur réel ne se situe pas sur le plan V1 V2. Cela signifie que, contrairement à la composante principale P1, le facteur F en tant qu'axe n'est pas une rotation de l'axe V1 ou V2 dans leur espace, et F en tant que variable n'est pas une combinaison linéaire des variables V1 et V2. Par conséquent, F est modélisé (extrait des variables V1 v2) comme une variable externe indépendante, et non une dérivation de celles-ci. Les équations telles que Eq.1 à partir desquelles PCA commence, ne sont pas applicables pour calculer le facteur réel (optimal) en analyse factorielle, alors que les équations formellement isomorphes Eq.2 et Eq.3sont valables pour les deux analyses. En d’autres termes, dans l’ACP, les variables génèrent des composants et les composants prennent en compte les variables prédites; en FA facteur (s) générer / prédire les variables, et non arrière - modèle de facteur commun suppose théoriquement si , même si techniquement les facteurs sont extraites des variables observées.

Non seulement le facteur vrai n'est pas une fonction des variables manifestes, les valeurs du facteur vrai ne sont pas définies de manière unique . En d'autres termes, ils sont simplement inconnus. Tout cela est dû au fait que nous sommes dans l’espace analytique excessif 5D et non dans notre espace 2D personnel des données. Seules de bonnes approximations (un certain nombre de méthodes existent ) de vraies valeurs factorielles, appelées scores factoriels , existent pour nous. Les scores factoriels ne se situent dans le plan V1 V2, comme les scores principaux composants sont, ils sont calculés comme les fonctions linéaires de V1, V2, aussi, et étaient - ilsque j'ai tracé dans la section "FA: solution approximative (scores factoriels)". Les scores des composantes principales sont des valeurs de composantes vraies; les scores factoriels ne sont qu'une approximation raisonnable des valeurs de facteurs réels indéterminées.

FA: résumé de la procédure

Pour rassembler dans un petit caillot ce que les deux sections précédentes ont dit, et ajouter les derniers coups. En fait, FA peut ( si vous le faites bien, et voyez également les hypothèses de données ) trouver la solution du facteur réel (par "vrai", je veux dire ici optimal pour l'échantillon de données). Cependant, il existe différentes méthodes d’extraction (elles diffèrent par certaines contraintes secondaires qu’elles mettent). La véritable solution de facteur est à chargements seule. Ainsi, les charges sont des facteurs optimaux et vrais. Les scores factoriels - si vous en avez besoin - sont calculables à partir de ces chargements de différentes manières et renvoient des approximations aux valeurs factorielles.a

Ainsi, la "solution factorielle" affichée par moi dans la section "FA: solution approximative (scores factoriels)" reposait en réalité sur des chargements optimaux, c'est-à-dire sur de vrais facteurs. Mais les scores n'étaient pas optimaux, par destin. Les scores sont calculés comme une fonction linéaire des variables observées, comme les scores des composants, afin de pouvoir les comparer tous les deux sur un diagramme de dispersion.

Méfiez-vous lorsque vous tracez sur les mêmes chargements de facteurs biplot avec des scores de facteurs dans "l'espace des facteurs", soyez conscient que les chargements appartiennent à de vrais facteurs alors que les scores se rapportent à des facteurs de substitution (voir mes commentaires à cette réponse dans ce fil).

La rotation des facteurs (charges) aide à interpréter les caractéristiques latentes. La rotation des chargements peut également être effectuée dans PCA si vous utilisez PCA comme si l'analyse factorielle (c'est-à-dire, voir PCA en tant que prédiction de variable). La PCA tend à converger dans les résultats avec FA à mesure que le nombre de variables augmente (voir le fil extrêmement riche sur les similitudes et les différences conceptuelles pratiques et conceptuelles entre les deux méthodes). Voir ma liste des différences entre PCA et FA à la fin de cette réponse . Les calculs étape par étape de PCA vs FA sur le jeu de données iris se trouvent ici . Il existe un nombre considérable de bons liens vers les réponses des autres participants sur le sujet en dehors de ce fil; Je suis désolé, je n'ai utilisé que quelques-uns d'entre eux dans la réponse actuelle.

Voir aussi la liste ci- dessous des différences entre PCA et FA ici .


1
+1 C'est bien que vous ayez écrit ce fil, il manquait définitivement une réponse de votre part. J'ai voté avant de lire (ce que je fais rarement) et j'ai certainement apprécié la lecture ultérieure. J'en parlerai peut-être un peu plus tard, mais pour le moment, une petite erreur: vous avez écrit à plusieurs reprises que, dans FA, le nuage d'erreur devrait être "rond". Mais en réalité, il pourrait bien être elliptique (car les unicité de V1 et de V2 peuvent avoir des variances différentes), il doit simplement avoir des corrélations nulles. Je suppose que vous ne voulez pas confondre les lecteurs avec ce détail.
amibe

1
@ amoeba J'ai un doute naïf quant à l'impossibilité mathématique de représenter les valeurs optimales F, E1, E2 dans l'espace (plan) défini par V1, V2. Je peux penser à un exemple de compteur pour ceci: Dites et , où - Utilisez maintenant ces relations pour générer des échantillons de V1 et V2. Une fois que V1 et V2 sont générés, si nous devions réaliser le FA optimal, nous devrions obtenir des estimations presque précises de (E1, E2) et cela formerait un nuage elliptique. De plus, F, E1, E2 peuvent maintenant être représentés dans le même plan que V1 et V2. V 2 = a 2 F + E 2 ( E 1 , E 2 ) = N ( 0 , I )V1=a1F+E1V2=a2F+E2(E1,E2)=N(0,I)
Kasa

@ kasa, votre commentaire a-t-il salué ma réponse ou le commentaire d'une amibe? Si votre commentaire va à l'encontre de ma prétention principale selon laquelle, dans FA, les trois variables latentes ne se trouvent pas dans l'espace initial et que vous pouvez le montrer, pourquoi ne pas émettre une réponse le montrant? Cependant, veuillez noter que dans une FA optimale, les erreurs sont exactement non corrélées, pas qu’elles pourraient être imaginées comme provenant d’ une population normale non corrélée.
ttnphns

@ttnphns: Désolé pour la confusion, je doutais de votre revendication principale. Je vais essayer de montrer comme une réponse dans quelques jours. Merci!
kasa

21

Les différences entre l'analyse factorielle et l'analyse en composantes principales sont les suivantes:

• Dans l’analyse factorielle, il existe un modèle structuré et certaines hypothèses. À cet égard, il s’agit d’une technique statistique qui ne s’applique pas à l’analyse en composantes principales, qui est une transformation purement mathématique.

• Le but de l'analyse en composantes principales est d'expliquer la variance, tandis que l'analyse factorielle explique la covariance entre les variables.

L'une des principales raisons de la confusion entre les deux est liée au fait que l'une des méthodes d'extraction de facteurs de l'analyse factorielle s'appelle "méthode des composantes principales". Cependant, utiliser PCA est une chose et utiliser la méthode des composants principaux dans FA. Les noms peuvent être similaires, mais il existe des différences significatives. La première est une méthode d’analyse indépendante, tandis que la seconde n’est qu’un outil d’extraction de facteurs.


13

Pour moi (et j'espère que cela sera utile), l'analyse factorielle est beaucoup plus utile que la PCA.

Récemment, j'ai eu le plaisir d'analyser une échelle au moyen d'une analyse factorielle. Cette échelle (bien qu’elle soit largement utilisée dans l’industrie) a été développée à l’aide de PCA et, à ma connaissance, n’a jamais été analysée.

Lorsque j'ai effectué l'analyse factorielle (axe principal), j'ai découvert que les communalités de trois des articles étaient inférieures à 30%, ce qui signifie que plus de 70% de la variance des articles n'était pas analysée. PCA transforme simplement les données en une nouvelle combinaison et ne se soucie pas des points communs. Ma conclusion était que l'échelle n'était pas très bonne d'un point de vue psychométrique et je l'ai confirmé avec un échantillon différent.

Essentiellement, si vous souhaitez prédire l’utilisation des facteurs, utilisez PCA, tandis que si vous souhaitez comprendre les facteurs latents, utilisez Analyse factorielle.


11

Développer la réponse de @ StatisticsDocConsulting: la différence de chargement entre EFA et PCA est non négligeable avec un petit nombre de variables. Voici une fonction de simulation pour le démontrer dans R:

simtestit=function(Sample.Size=1000,n.Variables=3,n.Factors=1,Iterations=100)
{require(psych);X=list();x=matrix(NA,nrow=Sample.Size,ncol=n.Variables)
for(i in 1:Iterations){for(i in 1:n.Variables){x[,i]=rnorm(Sample.Size)}
X$PCA=append(X$PCA,mean(abs(principal(x,n.Factors)$loadings[,1])))
X$EFA=append(X$EFA,mean(abs(factanal(x,n.Factors)$loadings[,1])))};X}

Par défaut, cette fonction exécute 100 opérations Iterations, dans chacune desquelles elle produit des échantillons aléatoires, normalement distribués ( ) de trois variables, et extrait un facteur en utilisant PCA et ML-EFA. Il produit une liste de vecteurs de deux longueurs composés des amplitudes moyennes des chargements de variables simulées sur la première composante non pivotée de la PCA et le facteur général de l'EPT, respectivement. Il vous permet de jouer avec la taille de l' échantillon et le nombre de variables et facteurs à prendre en fonction de votre situation, dans les limites des et fonctions et votre ordinateur.Sample.Size=1000Iterationsprincipal()factanal()

À l'aide de ce code, j'ai simulé des échantillons de 3 à 100 variables avec 500 itérations chacune pour produire des données:

Y=data.frame(n.Variables=3:100,Mean.PCA.Loading=rep(NA,98),Mean.EFA.Loading=rep(NA,98))
for(i in 3:100)
{X=simtestit(n.Variables=i,Iterations=500);Y[i-2,2]=mean(X$PCA);Y[i-2,3]=mean(X$EFA)}

... pour un graphique de la sensibilité des charges moyennes (à travers les variables et les itérations) au nombre de variables:

Cela montre à quel point il faut interpréter différemment la force des charges dans les analyses PCA et EFA. Les deux dépendent un peu du nombre de variables, mais les charges sont biaisées à la hausse beaucoup plus fortement dans la PCA. La différence entre les chargements moyens de ces méthodes diminue avec l’augmentation du nombre de variables, mais même avec 100 variables, les chargements PCA sont en moyenne supérieurs aux chargements EFA dans des données normales aléatoires. Cependant, notez que les charges moyennes seront généralement plus élevées dans les applications réelles, car on utilise généralement ces méthodes sur des variables plus corrélées. Je ne sais pas comment cela pourrait affecter la différence des chargements moyens..067


10

On peut penser à une ACP comme à une AF dans laquelle les communalités sont supposées être égales à 1 pour toutes les variables. Dans la pratique, cela signifie que les éléments qui auraient une charge en facteurs relativement faible dans les FA en raison d'une faible communalité auront des charges plus élevées en PCA. Ce n'est pas une caractéristique souhaitable si le but principal de l'analyse est de couper la longueur d'un article et de nettoyer une batterie d'articles de ceux avec des charges faibles ou équivoques, ou d'identifier des concepts qui ne sont pas bien représentés dans le pool d'articles.


10

Une citation d'un très bon manuel (Brown, 2006, p. 22, italiques ajoutés).
PCA = analyse en composantes principales
EFA = analyse factorielle exploratoire
CFA = analyse factorielle confirmatoire

Bien qu’elle soit liée à l’EPT, l’analyse en composantes principales (ACP) est souvent mal catégorisée en tant que méthode d’estimation de l’analyse factorielle commune. Contrairement aux estimateurs évoqués dans le paragraphe précédent (ML, PF), la CPA repose sur un ensemble différent de méthodes quantitatives qui ne sont pas basées sur le modèle à facteurs communs. La PCA ne différencie pas la variance commune et unique. PCA vise plutôt à prendre en compte la variance dans les mesures observées plutôt qu’à expliquer les corrélations entre elles. Ainsi, l’ACP est utilisée de manière plus appropriée en tant que technique de réduction de données afin de réduire un ensemble plus large de mesures à un nombre plus petit et plus facile à gérer de variables composites à utiliser dans des analyses ultérieures. Certains méthodologistes ont toutefois fait valoir que la PCA constituait une alternative raisonnable, voire supérieure, à l'EPT, compte tenu du fait que la PCA possède plusieurs propriétés statistiques souhaitables (par exemple, des calculs plus simples, non susceptibles de solutions inappropriées, produisent souvent des résultats similaires à ceux de EFA, la capacité de la PCA à calculer le score d'un participant pour une composante principale alors que la nature indéterminée de EFA complique de tels calculs). Bien que le débat sur cette question se poursuive, Fabrigar et al. (1999) invoquent plusieurs arguments pour justifier la place de la PCA dans l'analyse factorielle. Ces auteurs soulignent les situations dans lesquelles EFA et PCA produisent des résultats différents. par exemple, lorsque les communalités sont faibles ou lorsqu'il n'y a que peu d'indicateurs d'un facteur donné (cf. Widaman, 1993). produit souvent des résultats similaires à ceux de EFA, la capacité de la PCA à calculer le score d’un participant pour une composante principale alors que la nature indéterminée de EFA complique ces calculs). Bien que le débat sur cette question se poursuive, Fabrigar et al. (1999) invoquent plusieurs arguments pour justifier la place de la PCA dans l'analyse factorielle. Ces auteurs soulignent les situations dans lesquelles EFA et PCA produisent des résultats différents. par exemple, lorsque les communalités sont faibles ou lorsqu'il n'y a que peu d'indicateurs d'un facteur donné (cf. Widaman, 1993). produit souvent des résultats similaires à ceux de EFA, la capacité de la PCA à calculer le score d’un participant pour une composante principale alors que la nature indéterminée de EFA complique ces calculs). Bien que le débat sur cette question se poursuive, Fabrigar et al. (1999) invoquent plusieurs arguments pour justifier la place de la PCA dans l'analyse factorielle. Ces auteurs soulignent les situations dans lesquelles EFA et PCA produisent des résultats différents. par exemple, lorsque les communalités sont faibles ou lorsqu'il n'y a que peu d'indicateurs d'un facteur donné (cf. Widaman, 1993). (1999) invoquent plusieurs arguments pour justifier la place de la PCA dans l'analyse factorielle. Ces auteurs soulignent les situations dans lesquelles EFA et PCA produisent des résultats différents. par exemple, lorsque les communalités sont faibles ou lorsqu'il n'y a que peu d'indicateurs d'un facteur donné (cf. Widaman, 1993). (1999) invoquent plusieurs arguments pour justifier la place de la PCA dans l'analyse factorielle. Ces auteurs soulignent les situations dans lesquelles EFA et PCA produisent des résultats différents. par exemple, lorsque les communalités sont faibles ou lorsqu'il n'y a que peu d'indicateurs d'un facteur donné (cf. Widaman, 1993).Quoi qu’il en soit, si la logique primordiale et les objectifs empiriques d’une analyse sont conformes au modèle à facteurs communs, il est incohérent sur le plan conceptuel et mathématique de procéder à une ACP. En d'autres termes, l'EPT est plus approprié si l'objectif déclaré est de reproduire les intercorrélations d'un ensemble d'indicateurs présentant un nombre moins élevé de dimensions latentes, en reconnaissant l'existence d'une erreur de mesure dans les mesures observées.Floyd et Widaman (1995) soulignent que les estimations fondées sur l'EPT ont plus de chances de se généraliser à la FCA que celles obtenues de la PCA en ce que, contrairement à la PCA, l'EFA et la FCA sont basés sur le modèle à facteurs communs. Il convient de noter cette considération à la lumière du fait que l’EPT est souvent utilisé comme précurseur de la CFA dans le développement à l’échelle et la validation de la construction. On trouvera une démonstration détaillée des différences de calcul entre PCA et EFA dans des manuels d'analyse à variables multiples et factorielles (par exemple, Tabachnick & Fidell, 2001).

Brown, TA (2006). Analyse des facteurs de confirmation pour la recherche appliquée. New York: Guilford Press.


6

Dans un article de Tipping et Bischop, on discute de la relation étroite entre l’ACP probabalistique (PPCA) et l’analyse factorielle. La PPCA est plus proche de la FA que la PCA classique. Le modèle commun est

y=μ+Wx+ϵ

où , et . x ~ N ( 0 , I ) ε ~ N ( 0 , Ψ )WRp,dxN(0,I)ϵN(0,Ψ)

  • L'analyse factorielle suppose que est diagonal.Ψ
  • PPCA suppose queΨ=σ2I

Michael E. Tipping, Christopher M. Bishop (1999). Analyse probabiliste en composantes principales , Journal de la Société royale de statistique, volume 61, numéro 3, pages 611–622


2
+1 Oui. Je crois que la compréhension de la PPCA est nécessaire pour comprendre la relation entre la PCA et la FA. Mais vous pourriez améliorer votre réponse en discutant de la relation PCA / PPCA.
amibe

3

Aucune de ces réponses n'est parfaite. FA ou PCA a quelques variantes. Nous devons clairement indiquer quelles variantes sont comparées. Je comparerais l’analyse du facteur de vraisemblance maximale à l’ACP de Hotelling. Les premiers supposent que la variable latente suit une distribution normale, mais PCA n’a pas cette hypothèse. Cela a conduit à des différences, telles que la solution, l'imbrication des composants, l'unicité de la solution, les algorithmes d'optimisation.


1
Je me demande si vous pourriez développer un peu plus à ce sujet - vous avez dit qu'il y avait des différences dans la dernière phrase, mais vous ne donniez pas beaucoup d'informations sur ce que ces différences pourraient être, ou en quoi ces différences pourraient être importantes.
Silverfish

1
Sélectionner les deux méthodes les plus éloignées et prétendre qu'elles sont effectivement différentes - comme vous le faites - n'est pas une logique parfaite non plus. On devrait probablement trouver et signaler comment ces deux sont similaires. Alternativement, on peut choisir la plupart des méthodes similaires (telles que PCA simple vs PAF ) et indiquer en quoi elles sont différentes.
ttnphns

1
La PCA de Hotelling suppose des Gaussiens latents.
conjectures

1

Il y a beaucoup de bonnes réponses pour cet article, mais récemment, j'ai découvert une autre différence.

Le clustering est une application où PCA et FA donnent des résultats différents. Lorsque les données contiennent de nombreuses caractéristiques, vous pouvez essayer de trouver les directions PC les plus importantes et de projeter les données sur ces PC, puis de procéder à la mise en cluster. Cela perturbe souvent les grappes inhérentes aux données - il s'agit d'un résultat bien prouvé. Les chercheurs suggèrent d'utiliser des méthodes de regroupement de sous-espaces, qui recherchent des facteurs latents de faible dimension dans le modèle.

Juste pour illustrer cette différence, considérons le Crabsjeu de données R. Les crabes ont 200 lignes et 8 colonnes, décrivant 5 mesures morphologiques sur 50 crabes de deux formes colorées et de deux sexes de l’espèce - Il existe essentiellement 4 (2x2) classes différentes de Crabes.

library(MASS)
data(crabs)
lbl <- rep(1:4,each=50)
pc <- princomp(crabs[,4:8])
plot(pc) # produce the scree plot
X <- as.matrix(crabs[,4:8]) %*% pc$loadings
library(mclust)
res_12 <- Mclust(X[,1:2],G=4)
plot(res_12)


res_23 <- Mclust(X[,2:3],G=4)
plot(res_23)

Clustering à l'aide de PC1 et PC2: entrez la description de l'image ici

Clustering à l'aide de PC2 et PC3: entrez la description de l'image ici

#using PC1 and PC2:
     1  2  3  4
  1 12 46 24  5
  2 36  0  2  0
  3  2  1 24  0
  4  0  3  0 45

#using PC2 and PC3:
    1  2  3  4
  1 36  0  0  0
  2 13 48  0  0
  3  0  1  0 48
  4  1  1 50  2

Comme on peut le voir sur les graphiques ci-dessus, PC2 et PC3 contiennent davantage d'informations discriminantes que PC1.

Si l'on essaie de regrouper en utilisant les facteurs latents en utilisant un analyseur de mélange de facteurs, nous obtiendrons un résultat bien meilleur par rapport à l'utilisation des deux premiers PC.

mfa_model <- mfa(y, g = 4, q = 2)
  |............................................................| 100%
table(mfa_model$clust,c(rep(1,50),rep(2,50),rep(3,50),rep(4,50)))

     1  2  3  4
  1  0  0  0 45
  2 16 50  0  0
  3 34  0  0  0
  4  0  0 50  5

Je dois dire que je doute que cette réponse réponde vraiment à la question. La réponse concerne l'analyse des grappes après la PCA ou la FA, et non la PCA et la FA elles-mêmes. Mais même à cet égard, la réponse est sombre ou inachevée. Comment expliquer la différence que vous affichez?
ttnphns

@ttnphns Je suis d'accord avec la réponse concernant l'analyse par grappes. Cependant, OP avait également demandé un scénario réel avec PCA / FA dans lequel l'un devait être utilisé plutôt que l'autre. En règle générale, l'objectif final n'est pas le PCA ni le FA - par exemple, en sciences sociales, l'objectif final serait de segmenter les sujets en différents groupes / clusters. Ma réponse aborde de tels scénarios. Si vous pensez que ma réponse peut être améliorée, n'hésitez pas à le signaler.
kasa

Je pense que votre réponse peut devenir vraiment pertinente si vous expliquez votre conclusion. Vous affirmez que les différences entre PCA et FA sont intrinsèques pour les deux méthodes (seulement elles deviennent apparentes sous clustering). Je pense que vous devriez montrer ou du moins spéculer comment ou pourquoi les différences découlent théoriquement des différences entre les modèles de méthodes.
ttnphns
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.