Je voudrais savoir s'il est logique d'effectuer une analyse en composantes principales (ACP) et une analyse factorielle exploratoire (ALE) sur le même ensemble de données. J'ai entendu des professionnels recommander expressément:
- Comprendre le but de l'analyse et choisir PCA ou EFA pour l'analyse des données;
- Après avoir fait une analyse, il n'est pas nécessaire de faire l'autre analyse.
Je comprends les différences de motivation entre les deux, mais je me demandais simplement s'il y avait quelque chose de mal à interpréter les résultats fournis par l'APC et l'EPT en même temps?
pca
factor-analysis
user42538
la source
la source
Réponses:
Les deux modèles - à composante principale et à facteur commun - sont des modèles de régression linéaire simples similaires prédisant les variables observées par des variables latentes. Ayons des variables centrées V1 V2 ... Vp et nous avons choisi d'extraire 2 composantes / facteurs FI et FII . Ensuite, le modèle est le système d'équations:
où le coefficient a est une charge, F est un facteur ou une composante et la variable E est des résidus de régression. Ici, le modèle FA diffère du modèle PCA par le fait que FA impose l'exigence: les variables E1 E2 ... Ep (les termes d'erreur qui ne sont pas corrélés avec les F s) ne doivent pas être corrélés entre eux ( voir photos ). Ces variables d'erreur FA appellent des "facteurs uniques"; leurs variances sont connues («unicité»), mais leurs valeurs de même ne le sont pas. Par conséquent, les scores factoriels F sont calculés uniquement comme de bonnes approximations, ils ne sont pas exacts.
(Une présentation en algèbre matricielle de ce modèle d'analyse factorielle commune se trouve dans la note de bas de page 1. )1
Alors qu'en PCA, les variables d'erreur de prédiction de différentes variables peuvent être librement corrélées: rien ne leur est imposé. Ils représentent ce "scories" pour lequel nous avons pris les dimensions p-2 laissées pour compte. Nous connaissons les valeurs de E et nous pouvons donc calculer les scores des composants F en tant que valeurs exactes.
C'était la différence entre le modèle PCA et le modèle FA.
C'est en raison de cette différence décrite ci-dessus, que FA est capable d'expliquer les corrélations par paires (covariances). PCA ne peut généralement pas le faire (sauf si le nombre de composants extraits = p ); il ne peut expliquer que la variance multivariée 2 . Ainsi, tant que le terme «analyse factorielle» est défini via le but d'expliquer les corrélations, l'ACP n'est pas l' analyse factorielle. Si l '"analyse factorielle" est définie plus largement comme une méthode fournissant ou suggérant des "traits" latents qui pourraient être interprétés, l'ACP peut être considérée comme une forme spéciale et la plus simple d' analyse factorielle.2
Parfois - dans certains ensembles de données sous certaines conditions - l'ACP laisse des termes E qui ne sont presque pas intercorrélés. L'ACP peut alors expliquer les corrélations et devenir comme FA. Ce n'est pas très rare avec des ensembles de données avec de nombreuses variables. Cela a amené certains observateurs à affirmer que les résultats de l'ACP se rapprochent des résultats de l'AF à mesure que les données augmentent. Je ne pense pas que ce soit une règle, mais la tendance peut en effet être. Quoi qu'il en soit, compte tenu de leurs différences théoriques, il est toujours bon de choisir la méthode consciemment. L'AF est un modèle plus réaliste si vous voulez réduire les variables aux latences que vous allez considérer comme de véritables traits latents se tenant derrière les variables et les corrélant.
Mais si vous avez un autre objectif - réduire la dimensionnalité tout en gardant autant que possible les distances entre les points du nuage de données - PCA est meilleur que FA. (Cependant, la procédure de mise à l'échelle multidimensionnelle itérative (MDS) sera encore meilleure. PCA équivaut à MDS métrique non itératif.) que possible, par quelques dimensions - PCA est un choix optimal.
Modèle de données d'analyse factorielle: V = F A ′ + E d i a g ( u ) , où V est desdonnées analysées (colonnes centrées ou normalisées), F estdes valeurs de facteur communes (les vraies inconnues, pas des scores de facteur) avec l'unité variance, A est unematrice de chargements de facteurs communs (matrice de motifs), E estdes valeurs de facteurs uniques (inconnues), u est levecteur des chargements de facteurs uniques égal à la racine carrée des particularités ( u 2 ). Portion1 V = F A′+ E di a g( u ) V F UNE E u u2 E" pour plus de simplicité, comme c'est le cas dans les formules ouvrant la réponse. pourrait simplement être étiqueté comme "E di a g( u )
n cases x p variables
n x m
p x m
n x p
p
Hypothèses principales du modèle:
Il résulte dumodèle d'analyse factoriellecommuneque les charges A demfacteurs communs (m<pvariables), également notées A ( m ) , devraient reproduire fidèlement les covariances (ou corrélations) observées entre les variables, Σ . De sorte que si les facteurs sont orthogonaux, lethéorèmefondamental desfacteursstipule que2 UNE UNE( m ) Σ
etΣ≈ Σ +diag(u2),Σ^= A A′ Σ ≈ Σ^+ d i a g ( u2)
où Σ est la matrice des covariances reproduites (ou corrélations) avec des écarts ordinaires ( les « points communs ») sur sa diagonale; et les variances uniques ("unicité") - qui sont des variances moins les communautés - sont le vecteur u 2 . L'écart hors diagonale ( ≈ ) est dû au fait que le facteur est un modèle théorique générant des données, et en tant que tel, il est plus simple que les données observées sur lesquelles il a été construit. Les principales causes de l'écart entre les covariances (ou corrélations) observées et reproduites peuvent être: (1) le nombre de facteurs m n'est pas statistiquement optimal; (2) corrélations partielles (ce sontΣ^ u2 ≈
p(p-1)/2
facteurs qui n'appartiennent pas à des facteurs communs) sont prononcés; (3) les communautés n'étaient pas bien évaluées, leurs valeurs initiales avaient été médiocres; (4) les relations ne sont pas linéaires, l'utilisation d'un modèle linéaire est discutable; (5) le "sous-type" du modèle produit par la méthode d'extraction n'est pas optimal pour les données (voir les différentes méthodes d'extraction ). En d'autres termes, certaines hypothèses de données FA ne sont pas entièrement satisfaites.Quant au PCA simple , il reproduit les covariances par les chargements exactement lorsque m = p (tous les composants sont utilisés) et il ne le fait généralement pas si m < p (seuls quelques premiers composants sont conservés). Le théorème des facteurs pour l'ACP est:
,Σ = A A′( p )= A A′( m )+ A A′( p - m )
les charges et les charges A ( p - m ) abandonnées sont donc des mélanges de communautés et d'unicité et ni individuellement ne peuvent aider à rétablir les covariances. Plus m est proche de p , mieux l'APC restaure les covariances, en règle générale, mais un petit m (qui est souvent de notre intérêt) n'aide pas. Ceci est différent de FA, qui vise à rétablir les covariances avec un nombre optimal de facteurs assez petit. Si A A ′ ( p - m ) s'approche de la diagonalité, PCA devient comme FA, avec AUNE( m ) UNE( p - m ) A A′( p - m ) restaurer toutes les covariances. Cela arrive occasionnellement avec PCA, comme je l'ai déjà mentionné. Mais PCA n'a pas la capacité algorithmique de forcer une telle diagonalisation. Ce sont les algorithmes FA qui le font.UNE( m )
FA, et non PCA, est un modèle de génération de données: il suppose peu de «vrais» facteurs communs (de nombre généralement inconnu, donc vous essayez m dans une plage) qui génèrent des valeurs «vraies» pour les covariances. Les covariances observées sont les "vraies" + petits bruits aléatoires. (C'est en raison de la diagonalisation effectuée qui a laissé le seul restaurateur de toutes les covariances, que le bruit ci-dessus peut être petit et aléatoire.) Essayer de faire correspondre plus de facteurs que les quantités optimales à une tentative de sur-ajustement, et pas nécessairement une tentative de sur-ajustement efficace .UNE( m )
Les deux FA et PCA visent à maximiser , mais pour PCA c'est le seul objectif; pour FA, c'est l'objectif concomitant, l'autre étant de diagonaliser les particularités. Cette trace est la somme des valeurs propres de l'ACP. Certaines méthodes d'extraction dans l'AF ajoutent des objectifs plus concomitants au détriment de la maximisation de la trace, il n'est donc pas d'une importance capitale.t r a c e ( A′UNE( m ))
Pour résumer les différences expliquées entre les deux méthodes. FA vise ( directement ou indirectement ) à minimiser les différences entre les éléments individuels hors diagonale correspondants de et A A ′ . Un modèle d'AF réussi est celui qui laisse des erreurs pour les covariances petites et aléatoires (normales ou uniformes autour de 0, pas de valeurs aberrantes / queues grasses). L'ACP maximise seulement t r a c e ( A A ′ ) qui est égal à t r a c e ( A ′ A ) (etΣ A A′ t r a c e ( A A′) t r a c e ( A′A ) est égal à la matrice de covariance des composantes principales, qui est la matrice diagonale). L'ACP n'est donc pas "occupée" par toutes les covariances individuelles: elle ne peut tout simplement pas, étant simplement une forme de rotation orthogonale des données.UNE′UNE
Grâce à la maximisation de la trace - la variance expliquée par m composants - l'ACP tient compte des covariances, car la covariance est une variance partagée. En ce sens, l'ACP est une "approximation de bas rang" de toute la matrice de covariance des variables. Et vue du point de vue des observations, cette approximation est l’approximation de la matrice d’observations à distance euclidienne (c’est pourquoi la PCA est une MDS métrique appelée «analyse des coordonnées principales). Ce fait ne devrait pas nous faire oublier que la PCA ne modélise pas matrice de covariance (chaque covariance) générée par quelques traits latents vivants imaginables comme transcendants vers nos variables; l'approximation PCA reste immanente, même si elle est bonne: c'est la simplification des données.
Si vous voulez voir des calculs étape par étape effectués en PCA et FA, commentés et comparés, veuillez regarder ici .
la source
J'ai fourni mon propre compte rendu des similitudes et des différences entre PCA et FA dans le fil suivant: Y a - t-il une bonne raison d'utiliser PCA au lieu de EFA? De plus, l'ACP peut-elle se substituer à l'analyse factorielle?
Notez que mon compte est quelque peu différent de celui de @ttnphns (comme présenté dans sa réponse ci-dessus). Ma principale affirmation est que PCA et FA ne sont pas aussi différents qu'on le pense souvent. Ils peuvent en effet fortement différer lorsque le nombre de variables est très faible, mais tendent à donner des résultats assez similaires une fois le nombre de variables dépassé une dizaine. Voir ma réponse [longue!] Dans le fil de discussion pour les détails mathématiques et les simulations de Monte Carlo. Pour une version beaucoup plus concise de mon argumentation, voir ici: Dans quelles conditions PCA et FA produisent-ils des résultats similaires?
Ici, je voudrais répondre explicitement à votre question principale: y a-t-il quelque chose de mal à effectuer PCA et FA sur le même ensemble de données? Ma réponse à cela est: Non.
Lorsque vous exécutez PCA ou FA, vous ne testez aucune hypothèse. Les deux sont des techniques exploratoires utilisées pour mieux comprendre les données. Alors pourquoi ne pas explorer les données avec deux outils différents? En fait, faisons-le!
Exemple: ensemble de données sur le vin
la source
If the results turn out to be very similar, then you can decide to stick with only one approach
. Sûr. Combien similaires alors?If the results turn out to be very different, then maybe it tells you something about your data
C'est parfaitement mystique et ésotérique.