Het lijkt erop dat een aantal van de statistische pakketten die ik gebruik deze twee concepten samen verpakken. Ik vraag me echter af of er verschillende aannames of gegevensformaliteiten zijn die waar moeten zijn om de ene boven de andere te gebruiken. Een echt voorbeeld zou ongelooflijk nuttig zijn.
Opmerkingen
- De hoofdstukken over de belangrijkste componentenanalyse en factoranalyse in het volgende boek, dat beschikbaar is in de meeste universiteitsbibliotheken, behandelen uw vraag exact: apa.org/ pubs / books / 4316510.aspx
- Naast de onderstaande antwoorden zou je ook kunnen lezen en dit van mij.
- En nog een goede vraag zoals ” moet ik gebruiken PCA of FA “: stats.stackexchange.com/q/123063/3277 .
- @ttnphns: ik zou je willen aanmoedigen om een antwoord in deze thread te geven, misschien bestaande uit een geannoteerde lijst van je antwoorden in andere gerelateerde threads. Dit zou je bovenstaande opmerkingen kunnen vervangen (momenteel vier co mments met links), en zou praktischer zijn, vooral als u elke link kort annoteert. Bijv. kijk hier voor de uitleg van dit probleem, kijk daar voor een uitleg van dat probleem, etc. Het is slechts een suggestie, maar ik denk dat deze thread er veel baat bij zou hebben! Een bijzonder voordeel is dat u altijd meer links aan dat antwoord kunt toevoegen.
- Een soortgelijke vraag werd gesteld op MathOverflow, en ontving wat ik als een uitstekend antwoord zou beschouwen: mathoverflow.net/questions/40191/ …
Antwoord
Analyse van hoofdcomponenten omvat het extraheren van lineaire samenstellingen van waargenomen variabelen.
Factoranalyse is gebaseerd op een formeel model dat geobserveerde variabelen voorspelt op basis van theoretische latente factoren.
In de psychologie technieken worden vaak toegepast bij de constructie van multi-scale tests om te bepalen welke items op welke weegschaal worden geladen. Ze leveren doorgaans vergelijkbare inhoudelijke conclusies op (voor een bespreking zie Comrey (1988) Factor-Analytic Methods of Scale Development in Personality and Clinical Psychology). Dit helpt te verklaren waarom sommige statistiekenpakketten ze lijken te bundelen. Ik heb ook situaties gezien waarin “principale componentanalyse” ten onrechte wordt aangeduid als “factoranalyse”.
In termen van een eenvoudige vuistregel , ik “zou u willen voorstellen:
-
Factoranalyse uitvoeren als u een theoretisch model aanneemt of wilt testen van latente factoren die waargenomen variabelen veroorzaken.
-
Hoofdcomponentanalyse uitvoeren Als u eenvoudig uw gecorreleerde waargenomen variabelen wilt terugbrengen tot een kleinere set van belangrijke onafhankelijke samengestelde variabelen.
Reacties
- De vuistregel daar is zeer nuttig. Bedankt daarvoor.
- Betreffende vuistregel (1): Wouldn ‘ t Ik test een theoretisch model van latente factoren met een bevestigende factoranalyse in plaats van een verkennende fa?
- @roman Ja. Een CFA geeft je veel meer controle over het model dan EFA. U kunt bijvoorbeeld ladingen tot nul beperken, ladingen gelijkstellen, residua hebben gecorreleerd ls; factoren van hogere orde toevoegen; etc.
- @ Jeromy Anglim Is het echt correct om te zeggen dat PCA een ” kleinere set van belangrijke onafhankelijke samengestelde variabelen maakt. ” Of zou je eigenlijk moeten zeggen ” kleinere set van belangrijke niet-gecorreleerde samengestelde variabelen “. Als de onderliggende gegevens die worden gebruikt in PCA niet (multivariate) normaal verdeeld zijn, zullen de gereduceerde dimensionale gegevens alleen ongecorreleerd zijn?
- De tweede duim van de regel is gemakkelijk te verkrijgen, maar hoe pas ik de eerste toe? Klinkt misschien vreemd, maar wanneer weet ik dat ik ‘ een factormodel wil uitvoeren tegen waargenomen variabelen?
Antwoord
Van mijn antwoord hier:
Wordt PCA gevolgd door een rotatie (zoals varimax) nog steeds PCA?
Principal Component Analysis (PCA) en Common Factor Analysis (CFA) zijn verschillende methoden. Vaak produceren ze vergelijkbare resultaten en wordt PCA gebruikt als de standaard extractiemethode in de SPSS-factoranalyseroutines. Dit leidt ongetwijfeld tot veel verwarring over het onderscheid tussen beide.
Waar het op neerkomt is dat dit conceptueel twee verschillende modellen zijn. In PCA zijn de componenten feitelijke orthogonale lineaire combinaties die de totale variantie maximaliseren.In FA zijn de factoren lineaire combinaties die het gedeelde deel van de variantie – onderliggende “latente constructen” maximaliseren. Daarom wordt FA vaak “gemeenschappelijke factoranalyse” genoemd. FA gebruikt een verscheidenheid aan optimalisatieroutines en het resultaat is, in tegenstelling tot PCA, afhankelijk van de gebruikte optimalisatieroutine en de uitgangspunten voor die routines. Er is gewoon geen enkele unieke oplossing.
In R geeft de factanal () functie CFA een maximale waarschijnlijkheidsextractie. Je moet dus niet verwachten dat het een SPSS-resultaat reproduceert dat is gebaseerd op een PCA-extractie. Het is gewoon niet hetzelfde model of dezelfde logica. Ik weet niet zeker of u hetzelfde resultaat zou krijgen als u de Maximum Likelihood-extractie van SPSS zou gebruiken, aangezien ze misschien niet hetzelfde algoritme gebruiken.
Voor beter of slechter in R, je kunt echter de verwisselde “factoranalyse” reproduceren die SPSS standaard biedt. Hier is het proces in R. Met deze code kan ik “de SPSS-hoofdcomponent reproduceren” Factoranalyse “resultaat met behulp van deze dataset. (Met uitzondering van het teken, dat onbepaald is). Dat resultaat kan vervolgens ook worden geroteerd met een van de beschikbare rotatiemethoden van 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)
Reacties
- Merk op dat u dezelfde resultaten krijgt met
principal(attitude, 2, rotate="none")
van depsych
pakket en die Kayser ‘ regel (ev > 1) is niet de meest aanbevolen manier om te testen voor dimensionaliteit (het overschat het aantal factoren). - Ja, ik ken psych p de opdrachtgever rondt dit af. Mijn doel was om te laten zien wat SPSS ” factoranalyse ” deed bij het gebruik van de belangrijkste extractiemethode voor componenten. Ik ben het ermee eens dat de eigenwaarde-regel een slechte manier is om het aantal factoren te selecteren. Maar dat is precies wat SPSS standaard doet en dit was wat ik demonstreerde.
-
factanal()
biedt EFA niet CFA. Vanuit mijn ervaring zou SPSS ‘ s Maximale waarschijnlijkheid extractie hetzelfde resultaat moeten geven alsfactanal()
aangezien er geen schuine rotatie is. - Wat betekent het volgende: ‘ In FA zijn de factoren lineaire combinaties die het gedeelde deel van de variantie maximaliseren – onderliggende ” latente constructies “. ‘?
- Merk ook op dat CFA kan staan voor bevestigende FA (in tegenstelling tot verklarende FA ) in plaats van gewone FA .
Antwoord
Er zijn talloze voorgestelde definities op de web. Hier is er een uit een online woordenlijst over statistisch leren :
Hoofdcomponent Analyse
Nieuwe functies construeren die de belangrijkste componenten zijn van een dataset. De belangrijkste componenten zijn willekeurige variabelen met maximale variantie die zijn opgebouwd uit lineaire combinaties van de invoerfuncties. Op equivalente wijze zijn het de projecties op de hoofdcomponentassen, die lijnen zijn die de gemiddelde kwadraatafstand tot elk punt in de gegevensverzameling minimaliseren. Om uniekheid te garanderen, moeten alle hoofdcomponentassen orthogonaal zijn. PCA is een techniek met maximale waarschijnlijkheid voor lineaire regressie in aanwezigheid van Gaussische ruis op zowel inputs als outputs. In sommige gevallen komt PCA overeen met een Fourier-transformatie, zoals de DCT die wordt gebruikt bij JPEG-beeldcompressie. Zie “Eigenfaces voor herkenning” (Turk & Pentland, J Cognitive Neuroscience 3 (1), 1991), Bishop, “Probabilistic Principal Component Analysis”, en “Automatic choice of dimensionality for PCA “.keuze van dimensionaliteit voor PCA”.
Factoranalyse
Een generalisatie van PCA die expliciet is gebaseerd op maximale waarschijnlijkheid. Net als PCA wordt aangenomen dat elk gegevenspunt voortkomt uit steekproeven een punt in een deelruimte en het vervolgens verstoren met volledig dimensionale Gaussische ruis. Het verschil is dat factoranalyse ervoor zorgt dat de ruis een willekeurige diagonale covariantiematrix heeft, terwijl PCA aanneemt dat de ruis bolvormig is. Naast het schatten van de deelruimte, factoranalyse schat de ruiscovariantiematrix. Zie “Het EM-algoritme voor mengsels van factoranalysers” .keuze van dimensionaliteit voor PCA “.
Reacties
- De beschrijving van de factoranalyse krijgt het hoofdpunt (diagonale covariantie), maar historisch gezien s niet ontwikkeld als een generalisatie van PCA.
- Dus eigenlijk is in PCA één svd ‘ de covariantiematrix en in FA de correlatiematrix? Het is altijd moeilijk voor mij om de eigenlijke wiskunde te vinden nadat methoden veel terminologie hebben opgebouwd uit het veld waarin ze worden toegepast.(off-topic: het kostte me eens een hele middag om te begrijpen wat het padmodelleren is, totdat ik een (1) paper vond uit de 70 ‘ s waarin de matrixvergelijking erachter stond. )
Antwoord
Je hebt gelijk over je eerste punt, hoewel je in FA over het algemeen met beide werkt (uniciteit en gemeenschappelijkheid). De keuze tussen PCA en FA is een al lang bestaand debat onder psychometristen. Ik volg je punten echter niet helemaal. Rotatie van hoofdassen kan worden toegepast, ongeacht de methode die wordt gebruikt om latente factoren te construeren. In feite is dit meestal de VARIMAX-rotatie (orthogonale rotatie, rekening houdend met niet-gecorreleerde factoren). gebruikt, om praktische redenen (gemakkelijkste interpretatie, gemakkelijkste scoringsregels of interpretatie van factorscores, enz.), hoewel schuine rotatie (bijvoorbeeld PROMAX) waarschijnlijk beter de realiteit weerspiegelt (latente constructen zijn vaak gecorreleerd met elkaar), althans in de traditie van FA waarbij je aanneemt dat een latent construct echt de kern vormt van de waargenomen onderlinge correlaties tussen je variabelen. Het punt is dat PCA gevolgd door VARIMAX-rotatie de interpretatie van de lineaire combinaties van de oorspronkelijke variabelen in de data analyse “traditie (zie het werk van Michel Tenenhaus). Vanuit een psychometrisch perspectief verdienen FA-modellen de voorkeur omdat ze expliciet rekening houden met meetfouten s, terwijl PCA daar niets om geeft. Kort gezegd, met PCA drukt u elke component (factor) uit als een lineaire combinatie van de variabelen, terwijl dit in FA de variabelen zijn die worden uitgedrukt als lineaire combinaties van de factoren (inclusief gemeenschappelijkheid en uniciteitscomponenten, zoals u zei). / p>
Ik raad je aan om eerst de volgende discussies over dit onderwerp te lezen:
- Wat zijn de verschillen tussen Factoranalyse en Principal Componentanalyse
- Over het gebruik van schuine rotatie na PCA – zie de verwijzing daarin
Opmerkingen
- Om maar te zeggen dat mijn antwoord er misschien een beetje off-topic uitziet aangezien deze vraag is samengevoegd met een andere, stats.stackexchange.com/questions/3369/… (ik beantwoord in eerste instantie het laatste).
- Ah, Ik vroeg me af waarom je naar deze queston linkt, in deze vraag … 🙂
- . Chl, kun je het uitleggen? Dat ‘ is interessant.
Antwoord
Het beste antwoord in deze thread suggereert dat PCA meer een techniek is om de dimensionaliteit te verminderen, terwijl FA meer een latente variabele techniek is. Dit is sensu stricto correct. Maar veel antwoorden hier en veel behandelingen elders presenteren PCA en FA als twee totaal verschillende methoden, met ongelijke, zo niet tegengestelde doelen, methoden en resultaten. Ik ben het er niet mee eens; Ik geloof dat wanneer PCA wordt beschouwd als een latente variabele techniek, het vrij dicht bij FA ligt en dat ze beter als zeer vergelijkbare methoden moeten worden gezien.
Ik heb mijn eigen verslag gegeven van de overeenkomsten en verschillen tussen PCA en FA in de volgende thread: Is er een goede reden om PCA te gebruiken in plaats van EFA? Kan PCA ook een vervanging zijn voor factoranalyse? Daar beargumenteer ik dat om eenvoudige wiskundige redenen de uitkomst van PCA en FA naar verwachting vrij gelijkaardig zal zijn, alleen gezien het feit dat het aantal variabelen niet erg klein is (misschien meer dan een dozijn). Zie mijn [lange!] Antwoord in de gekoppelde thread voor wiskundige details en Monte Carlo-simulaties. Zie hier voor een veel beknoptere versie van mijn argument: Onder welke omstandigheden leveren PCA en FA vergelijkbare resultaten op?
Hier zou ik willen om het met een voorbeeld te laten zien. Ik analyseer de wijndataset van de UCI Machine Learning Repository. Het is een redelijk bekende dataset met $ n = 178 $ wijnen van drie verschillende druiven beschreven door $ p = 13 $ variabelen. Hier is hoe de correlatiematrix eruit ziet:
Ik heb zowel PCA- als FA-analyse uitgevoerd en 2D-projecties van de gegevens als dubbeldekkers voor beide op de onderstaande figuur (PCA links, FA rechts). Horizontale en verticale assen geven scores van de 1e en 2e component / factor weer. Elk van de $ n = 178 $ punten komt overeen met één wijn, en de punten zijn gekleurd volgens de groep (zie legenda):
De ladingen van de 1e en 2e component / factor op elk van de $ p = 13 $ originele variabelen worden weergegeven als zwarte lijnen. Ze zijn gelijk aan correlaties tussen elk van de oorspronkelijke variabelen en de twee componenten / factoren.Natuurlijk mogen correlaties niet hoger zijn dan $ 1 $, dus alle laadregels bevinden zich binnen de “correlatiecirkel” en geven de maximale mogelijke correlatie weer. Alle ladingen en de cirkel worden willekeurig geschaald met een factor $ 3 $, anders zouden ze te klein zijn om gezien te worden (dus de straal van de cirkel is $ 3 $ en niet $ 1 $).
Merk op dat er is nauwelijks een verschil tussen PCA en FA! Er zijn hier en daar kleine afwijkingen, maar het algemene beeld is vrijwel identiek en alle belastingen lijken erg op elkaar en wijzen in dezelfde richting. Dit is precies wat van de theorie werd verwacht en is geen verrassing; toch is het leerzaam om te observeren.
PS. Voor een veel mooiere PCA-dubbeldekker van hetzelfde dataset, zie dit antwoord door @vqv .
PPS. Terwijl PCA-berekeningen standaard zijn, kan voor FA-berekeningen commentaar nodig zijn. Factorladingen werden berekend door een “iterated principal factors” -algoritme tot convergentie (9 iteraties), waarbij gemeenschappen werden geïnitialiseerd met gedeeltelijke correlaties. Nadat de ladingen waren geconvergeerd, werden de scores berekend met de methode van Bartlett. Dit levert gestandaardiseerde scores op; ik heb ze opgeschaald met de respectievelijke factorvarianties (gegeven door ladingslengtes).
Opmerkingen
- Welke software heb je gebruikt om de PCA- en factoranalyseplots te maken?
- Ik gebruikte Matlab. Ik dacht erover om de code in mijn antwoord te plakken (zoals normaal gesproken mijn gewoonte is ), maar ik wilde deze drukke thread niet nog meer overrompelen. Maar nu ik erover nadenk, zou ik het op een externe website moeten plaatsen en hier een link achterlaten. Dat zal ik doen.
- Het is waar dat PCA en FA soms en helemaal niet zelden vergelijkbare resultaten (ladingen) geven, en daarom kan PCA worden gezien als een specifiek geval van FA, wanneer factoranalyse breed gedefinieerd. Toch zijn FA (sensu stricto) en PCA theoretisch heel verschillend.
- (vervolg) Factoren zijn transcendente latente eigenschappen; pr. componenten zijn immanente afleidingen. Ondanks je twee laadplots app oor praktisch vergelijkbaar, theoretisch zijn ze fundamenteel verschillend. Het componentenvlak aan de linkerkant is geproduceerd als een deelruimte van de variabelen die erop projecteren. Het factorvlak is geproduceerd als een spatie die verschilt van de ruimte van de variabelen, en dus projecteren ze zichzelf op een ” alien ” spatie op de rechter plot.
- (vervolg) Maar de rechter foto (FA) is eigenlijk geen echte dubbeldekker , het is eerder een overlay van twee verschillende scatterplots, verschillende ruimtes: de laadplot (waarbij assen echte factoren zijn) en de objectscoresplot (waarbij assen de geschatte factoren als scores zijn). De werkelijke factorruimte overschrijdt de ” ouderlijke ” variabele ruimte, maar de factor-scoresruimte is de subruimte. U heeft twee heterogene paren assen over elkaar heen gelegd, maar ze dragen dezelfde labels (” factor1 ” en ” factor2 ” in beide paren) welke omstandigheid sterk misleidend is en ons overhaalt om te denken dat dit een bonafide dubbeldekker is, zoals de linker. / li>
Antwoord
Een eenvoudige, maar toch een soort nauwgezette uitleg van PCA versus factoranalyse met behulp van scatterplots, in logische stappen. (Ik bedank @amoeba die me in zijn opmerking op de vraag heeft aangemoedigd om een antwoord te posten in plaats van links naar elders te maken. Dus hier is een vrijblijvende, late reactie.)
PCA als variabele samenvatting (feature extractie)
Ik hoop dat je al kennis hebt van PCA. Om nu nieuw leven in te blazen.
Stel dat we correlerende variabelen hebben $ V_1 $ en $ V_2 $ . We centreren ze (trekken het gemiddelde af) en maken een scatterplot. Vervolgens voeren we PCA uit op deze gecentreerde gegevens. PCA is een vorm van asrotatie die assen P1 en P2 biedt in plaats van V1 en V2. De belangrijkste eigenschap van PCA is dat P1 – de eerste hoofdcomponent genoemd – zo georiënteerd wordt dat de variantie van de datapunten erlangs wordt gemaximaliseerd. De nieuwe assen zijn nieuwe variabelen waarvan de waarden berekenbaar zijn zolang we de rotatiecoëfficiënten kennen $ a $ (PCA levert ze) [ Eq.1 ]:
$ P1 = a1_1V_1 + a1_2V_2 $
$ P2 = a2_1V_1 + a2_2V_2 $
Die coëfficiënten zijn rotatiecoëfficiënten (= cosinusrichtingen, hoofdrichtingen) en omvatten zogenaamde eigenvectoren, terwijl eigenwaarden van de covariantiematrix zijn de belangrijkste componentvarianties. In PCA verwijderen we doorgaans zwakke laatste componenten: we vatten dus gegevens samen door enkele eerst geëxtraheerde componenten, met weinig informatieverlies.
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
Met onze geplotte gegevens, P1 componentwaarden (scores) P1 = .73543*V1 + .67761*V2
en component P2 verwijderen we. De variantie van P1 is 1.75756
, de eerste eigenwaarde van de covariantiematrix, en daarom verklaart P1 86.5%
van het totaal variantie die gelijk is aan (1.07652+.95534) = (1.75756+.27430)
.
PCA als variabele voorspelling (” latent ” feature)
We hebben P2 dus weggegooid en verwachten dat P1 alleen de gegevens redelijkerwijs kan weergeven. Dat is hetzelfde als te zeggen dat $ P1 $ kan redelijk goed ” reconstrueren ” of voorspellen $ V_1 $ en $ V_2 $ [ Eq.2 ]:
$ V_1 = a1_ {1} P1 + E_1 $
$ V_2 = a1_ {2} P1 + E_2 $
waarbij coëfficiënten $ a $ zijn wat we al weten en $ E $ zijn de fouten (onvoorspelbaarheid). Dit is eigenlijk een ” regressiemodel ” waar waargenomen variabelen worden voorspeld (terug) door de latente variabele (als u een component a ” latent ” one) P1 geëxtraheerd uit dezelfde variabelen. Kijk naar de plot Fig.2 , het is niets anders dan Fig .1 , alleen gedetailleerd:
P1-as wordt betegeld weergegeven met zijn waarden (P1-scores) in groen (deze waarden zijn de projecties van gegevenspunten op P1). Sommige willekeurige datapunten waren gelabeld A, B, …, en hun vertrek (fout) van P1 zijn vetgedrukte zwarte connectoren. Voor punt A worden details getoond: de coördinaten van de P1-score (groene A) op V1- en V2-assen zijn de P1-gereconstrueerde waarden van V1 en V2 volgens Eq.2 , $ \ hat {V_1} = a1_ {1} P1 $ en $ \ hat {V_2} = a1_ {2} P1 $ . De reconstructiefouten $ E_1 = V_1- \ hat {V_1} $ en $ E_2 = V_2- \ hat {V_2} $ worden ook weergegeven, in beige. De connector ” error ” lengte in het kwadraat is de som van de twee fouten in het kwadraat, volgens Pythagoras.
Nu, wat kenmerkend is voor PCA is dat als we E1 en E2 berekenen voor elk punt in de gegevens en deze coördinaten plotten, dwz alleen de scatterplot van de fouten, de cloud ” foutgegevens ” zullen samenvallen met de weggegooide component P2. En dat doet het: de wolk is uitgezet op dezelfde afbeelding als de beige wolk – en je ziet dat hij in feite as P2 vormt (van Fig.1 ) zoals betegeld met P2 component scores.
Geen wonder, zou je kunnen zeggen. Het is zo duidelijk: in PCA , de weggegooide junior component (en) is wat precies uiteenvalt (s) in de voorspellingsfouten E, in het model dat oorspronkelijke variabelen V verklaart (herstelt) door de latente eigenschap (pen) P1. Fouten E vormen samen gewoon de weggelaten component (en). Hier is waar factoranalyse begint te verschillen van PCA.
Het idee van gewone FA (latent kenmerk )
Formeel is het model dat manifest variabelen voorspelt door de geëxtraheerde latente eigenschap (pen) hetzelfde in FA als in PCA; [ Eq.3 ]:
$ V_1 = a_ {1} F + E_1 $
$ V_2 = a_ {2} F + E_2 $
waarbij F de latente common is factor geëxtraheerd uit de gegevens en vervangt wat P1 was in Vgl.2 .Het verschil in het model is dat in FA, in tegenstelling tot PCA, foutvariabelen (E1 en E2) vereist zijn om niet met elkaar gecorreleerd te zijn .
Digressie . Hier wil ik het verhaal plotseling onderbreken en een idee maken van wat zijn coëfficiënten $ a $ . In PCA, zeiden we, waren dit ingangen van eigenvectoren gevonden binnen PCA (via eigen- of singuliere-waarde-decompositie). Terwijl latente P1 zijn oorspronkelijke variantie had. Als we ervoor kiezen om P1 te standaardiseren naar eenheidsvariantie , moeten we dit compenseren door de coëfficiënten op de juiste manier op te schalen $ a $ , om de vergelijking. Die opgeschaalde $ a $ s worden ladingen genoemd; ze zijn numeriek interessant omdat ze de covarianties (of correlaties) zijn tussen de latente en de waarneembare variabelen en daarom kunnen helpen bij het interpreteren van het latente kenmerk. In beide modellen – Eq.2 en Eq.3 – u bent vrij om te beslissen, zonder de vergelijking te schaden , op welke manier de termen worden geschaald. Als F (of P1) wordt beschouwd als geschaalde eenheid, wordt $ a $ geladen; terwijl als F (P1) zijn native moet hebben schaal (variantie), dan moet $ a $ dienovereenkomstig worden ontschaald – in PCA is dat gelijk aan eigenvectorinvoer, b ut in FA zullen ze verschillend zijn en meestal niet genaamd ” eigenvectoren “. In de meeste teksten over factoranalyse wordt van F uitgegaan van eenheidsvariantie, dus $ a $ zijn ladingen . In PCA-literatuur wordt P1 typisch besproken met zijn reële variantie en dus zijn $ a $ eigenvectoren.
OK, terug naar de rode draad. E1 en E2 zijn niet gecorreleerd in factoranalyse; ze moeten dus een wolk van fouten vormen, hetzij rond of elliptisch, maar niet diagonaal georiënteerd. Terwijl in PCA hun wolk een rechte lijn vormde die samenviel met diagonaal gaande P2. Beide ideeën worden gedemonstreerd op de foto:
Merk op dat fouten ronde (niet diagonaal langwerpige) wolk in FA zijn. Factor (latent) in FA is enigszins anders georiënteerd, dwz het is niet juist de eerste hoofdcomponent die de ” latente ” in PCA is . Op de foto is de factorlijn vreemd een beetje conisch – het zal uiteindelijk duidelijk worden waarom.
Wat is de betekenis van dit verschil tussen PCA en FA? Variabelen gecorreleerd, wat te zien is in de diagonaal elliptische vorm van de datawolk. P1 heeft de maximale variantie afgeroomd, dus de ellips is mede gericht naar P1. Bijgevolg verklaarde P1 zelf de correlatie; maar het verklaarde de bestaande mate van correlatie niet adequaat; het leek variatie in gegevenspunten te verklaren, niet correlatie. In feite maakte het een overboeking voor de correlatie, met als resultaat het verschijnen van de diagonale, gecorreleerde foutenwolk die de overrekening compenseerde. P1 alleen kan de sterkte van correlatie / covariatie niet volledig verklaren. Factor F kan het alleen doen; en de toestand waarin het in staat wordt om het te doen, is precies waar fouten kunnen worden gedwongen om niet-gecorreleerd te zijn. Omdat de foutenwolk rond is, is er geen correlatie – positief of negatief – gebleven nadat de factor is geëxtraheerd, en daarom is het de factor die het allemaal heeft afgeroomd.
Als een dimensionaliteitsvermindering, PCA verklaart variantie maar legt correlaties onnauwkeurig uit. FA legt correlaties uit maar kan (door de gemeenschappelijke factoren) niet zoveel gegevensvariatie verklaren als PCA kan. Factor (en) in FA verklaren dat deel van de variabiliteit dat het netto correlationele deel is, genaamd gemeenschappelijkheid ; en daarom kunnen factoren worden geïnterpreteerd als echte maar niet-waarneembare krachten / kenmerken / eigenschappen die ” verbergen in ” of ” achter ” de invoervariabelen om ze met elkaar in verband te brengen. Omdat ze correlatie wiskundig goed verklaren. Hoofdcomponenten (enkele eerste) verklaren het wiskundig niet zo goed en daarom kan ” latent kenmerk (of zo) slechts op een bepaald punt en voorlopig .
Vermenigvuldiging van ladingen is wat (herstelt) de correlatie of correlatie in de vorm van covariantie – als de analyse was gebaseerd op covariantiematrix (zoals in ons voorbeeld) in plaats van correlatiematrix.Factoranalyse die ik heb uitgevoerd met de gegevens leverde a_1=.87352, a_2=.84528
op, dus product a_1*a_2 = .73837
is bijna gelijk aan de covariantie .73915
. Aan de andere kant waren PCA-ladingen a1_1=.97497, a1_2=.89832
, dus a1_1*a1_2 = .87584
overschat .73915
aanzienlijk.
Nu we het belangrijkste theoretische onderscheid tussen PCA en FA hebben uitgelegd, gaan we terug naar onze gegevens om het idee te illustreren.
FA: geschatte oplossing (factorscores)
Hieronder ziet u het scatterplot met de resultaten van de analyse die we “voorlopig ” suboptimale factoranalyse “, 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).
Bekijk de afwijkingen van Afb .2 van PCA. Beige wolk van fouten is niet rond, het is diagonaal elliptisch, maar het is duidelijk veel dikker dan de dunne diagonale lijn die is opgetreden in PCA. Merk ook op dat de foutconnectoren (weergegeven voor sommige punten) niet meer parallel zijn (in PCA waren ze per definitie parallel aan P2). Bovendien, als je bijvoorbeeld kijkt naar de punten ” F ” en ” E ” die symmetrisch spiegelend over de factor “s F -as, zult u” onverwachts ontdekken dat de bijbehorende factorscores behoorlijk verschillende waarden zijn. Met andere woorden, factorscores zijn niet alleen lineair getransformeerde hoofdcomponentscores: factor F wordt op zijn eigen manier anders gevonden vanaf P1-weg. En hun assen vallen niet volledig samen als ze samen op dezelfde plot worden weergegeven Fig.4 :
Afgezien daarvan zijn ze een beetje anders georiënteerd, F (zoals betegeld met scores) is korter, d.w.z. het verklaart kleinere variantie dan P1 verklaart. Zoals eerder opgemerkt, verklaart factor alleen variabiliteit die verantwoordelijk is voor de correlatie van V1 V2, dwz het deel van de totale variantie dat voldoende is om de variabelen van de oorspronkelijke covariantie 0
naar de feitelijke covariantie te brengen .73915
.
FA: optimale oplossing (echte factor)
Een optimale factoroplossing is wanneer fouten ronde of niet-diagonale elliptische wolk zijn : E1 en E2 zijn volledig ongecorreleerd . Factoranalyse geeft in feite zon optimale oplossing terug. Ik heb het niet laten zien op een eenvoudig scatterplot zoals hierboven. Waarom deed ik? – want het zou tenslotte het meest interessante zijn geweest.
De reden is dat het onmogelijk zou zijn om voldoende op een scatterplot te laten zien, zelfs niet door een 3D-plot aan te nemen. In theorie is het een behoorlijk interessant punt. Om E1 en E2 volledig ongecorreleerd te maken, blijkt dat al deze drie variabelen, F, E1, E2 niet hoeven te liggen in de ruimte (vlak) gedefinieerd door V1, V2; en de drie moeten niet met elkaar zijn gecorreleerd . Ik geloof dat het mogelijk is om zon scatterplot in 5D te tekenen (en misschien met een trucje – in 4D), maar we leven helaas in een 3D-wereld. Factor F moet niet gecorreleerd zijn met zowel E1 als E2 (terwijl ze twee ook niet gecorreleerd zijn) omdat F verondersteld wordt alleen te zijn (schoon) en volledig bron van correlatie in de waargenomen gegevens. Factoranalyse splitst de totale variantie van de p
invoervariabelen op in twee niet-gecorreleerde (niet-overlappende ) delen: gemeenschappelijkheid deel (m
-dimensional, waarbij m
regel voor gemeenschappelijke factoren) en uniciteit deel (p
-dimensionaal, waar fouten, ook wel unieke factoren genoemd, onderling niet gecorreleerd zijn).
Excuses voor het niet tonen van de ware factor van onze gegevens op een scatterplot hier. Het kan behoorlijk goed worden gevisualiseerd via vectoren in ” onderwerpruimte ” als hier gedaan zonder gegevenspunten weer te geven.
Hierboven, in de sectie ” Het idee van algemene FA (latent kenmerk) ” Ik heb factor (as F) als wig weergegeven om te waarschuwen dat de ware factoras niet op het vlak V1 V2 ligt. Dat betekent dat – in tegenstelling tot hoofdcomponent P1 – factor F als as geen rotatie is van as V1 of V2 in hun ruimte, en F als variabele geen lineaire combinatie van variabelen V1 en V2.Daarom wordt F gemodelleerd (geëxtraheerd uit variabelen V1 v2) als een externe, onafhankelijke variabele, niet als een afleiding ervan. Vergelijkingen zoals Eq.1 vanaf waar PCA begint, zijn niet van toepassing om de true (optimale) factor te berekenen in factoranalyse, terwijl formeel isomorfe vergelijkingen Eq.2 en Eq. 3 zijn geldig voor beide analyses. Dat wil zeggen, in PCA-variabelen genereren componenten en componenten terug voorspellende variabelen; in FA factor (en) genereren / voorspellen variabelen, en niet terug – het gemeenschappelijke-factormodel veronderstelt conceptueel dus , ook al worden technisch factoren uit de geobserveerde variabelen gehaald.
Niet alleen de true factor is niet een functie van de manifeste variabelen, de true factor “s waarden zijn niet uniek gedefinieerd . Met andere woorden, ze zijn gewoon onbekend. Dat komt allemaal door het feit dat we” bevinden zich in de buitensporige 5D-analytische ruimte en niet in onze huis 2D-ruimte van de gegevens. Alleen goede benaderingen (een aantal methoden bestaat ) voor echte factorwaarden, factorscores genoemd, zijn er voor ons. Factorscores liggen in het vlak V1 V2, net als de scores van hoofdcomponenten, ze worden ook berekend als de lineaire functies van V1, V2, en het waren ze die ik in de sectie ” FA: geschatte oplossing (factorscores) “. Hoofdcomponentscores zijn echte componentwaarden; Factorscores zijn slechts een redelijke benadering van de onbepaalde werkelijke factorwaarden.
FA: samenvatting van de procedure
In een klein stolsel verzamelen wat de twee vorige secties zeiden, en laatste slagen toevoegen . Feitelijk kan FA ( als je het goed doet, en zie ook aannames van gegevens ) de ware factoroplossing vinden (door ” true ” Ik bedoel hier optimaal voor het gegevensvoorbeeld). Er bestaan echter verschillende extractiemethoden (ze verschillen in enkele secundaire beperkingen die ze stellen). De echte factoroplossing is maximaal $ a $ . Belastingen zijn dus van optimale, echte factoren. Factorscores – als je ze nodig hebt – kunnen op verschillende manieren uit die ladingen worden berekend en worden geretourneerd benaderingen van factorwaarden.
Dus, ” factoroplossing ” wordt door mij weergegeven in sectie ” FA: geschatte oplossing (factorscores) ” was eigenlijk gebaseerd op optimale belastingen, dwz op werkelijke factoren. Maar de scores waren niet optimaal, volgens het lot. De scores worden berekend om een lineaire functie te zijn van de geobserveerde variabelen, zoals de scores van de componenten, dus ze konden allebei worden vergeleken op een scatterplot en ik deed het in didactisch streven om te laten zien dat het een geleidelijke overgang was van het PCA-idee naar het FA-idee. / p>
Men moet voorzichtig zijn bij het plotten op dezelfde biplot factorladingen met factorscores in de ” ruimte van factoren “, wees u ervan bewust dat ladingen betrekking hebben op echte factoren, terwijl scores betrekking hebben op surrogaatfactoren (zie mijn opmerkingen bij dit antwoord in deze thread).
Rotatie van factoren (ladingen) helpen bij het interpreteren van de latente kenmerken. Rotatie van ladingen kan ook in PCA worden gedaan als u PCA gebruikt alsof factoranalyse (dat wil zeggen, PCA als variabele voorspelling ziet). PCA heeft de neiging om te convergeren in resultaten met FA naarmate het aantal variabelen toeneemt (zie de extreem rijke thread over praktische en conceptuele overeenkomsten en verschillen tussen de twee methoden). Zie mijn lijst met verschillen tussen PCA en FA aan het einde van dit antwoord . Stap voor stap berekeningen van PCA versus FA op de iris dataset zijn hier te vinden. Er is een aanzienlijk aantal goede links naar antwoorden van andere deelnemers over het onderwerp buiten deze thread; het spijt me dat ik er maar een paar heb gebruikt in het huidige antwoord.
Zie ook een lijst met opsommingstekens van de verschillen tussen PCA en FA hier .
Reacties
- +1. Het ‘ is geweldig dat je het hebt opgeschreven, deze thread had absoluut geen antwoord van jou. Ik stemde vóór het lezen op (wat ik zelden doe), en vond het zeker leuk om daarna te lezen. Ik zou later meer kunnen reageren, maar een kleine muggenzifterij voor nu: je schreef verschillende keren dat in FA de foutwolk ” rond ” zou moeten zijn .Maar in feite zou het elliptisch kunnen zijn (omdat uniciteit voor V1 en V2 verschillende varianties kan hebben), het hoeft alleen nul correlaties te hebben. Ik denk dat je de lezers niet met dit detail wilde verwarren.
- @amoeba Ik heb een naïeve twijfel over de wiskundige onmogelijkheid om de optimale F, E1, E2 weer te geven in de ruimte (vlak) gedefinieerd door V1, V2. Ik kan hiervoor een tegenvoorbeeld bedenken: zeg $ V_1 = a_ {1} F + E_1 $ en $ V_2 = a_ {2} F + E_2 $, waarbij $ (E_1, E_2) = \ mathcal {N} (0 , \ Bbb {I}) $ – Gebruik deze relaties nu om samples van V1 en V2 te genereren. Als V1 en V2 eenmaal zijn gegenereerd en we de optimale FA zouden uitvoeren, zouden we bijna nauwkeurige schattingen van (E1, E2) moeten krijgen, en het zal een elliptische wolk vormen. Bovendien kunnen F, E1, E2 nu worden weergegeven in hetzelfde vlak als V1 en V2.
- @kasa, was je opmerking mijn antwoord of amoebe ‘ s commentaar? Als uw opmerking in tegenspraak is met mijn voornaamste bewering dat in FA de drie latente variabelen niet in de oorspronkelijke ruimte liggen en u het kunt laten zien, waarom zou u dan geen antwoord geven door het te tonen? Maar houd er rekening mee dat in optimale FA de fouten exact niet gecorreleerd zijn, niet dat ze kunnen worden voorgesteld als afkomstig van een normale niet-gecorreleerde populatie.
- @ttnphns : Sorry voor de verwarring, ik twijfelde aan uw hoofdclaim. Ik zal proberen om het over een paar dagen als antwoord te laten zien. Bedankt!
Antwoord
Verschillen tussen factoranalyse en principale componentanalyse zijn:
• Bij factoranalyse is er een gestructureerd model en enkele aannames. In dit opzicht is het een statistische techniek die niet van toepassing is op principale componentenanalyse, die een puur wiskundige transformatie is.
• Het doel van de principale componentanalyse is om de variantie te verklaren, terwijl factoranalyse de covariantie tussen de variabelen.
Een van de grootste redenen voor de verwarring tussen de twee heeft te maken met het feit dat een van de factorextractiemethoden in Factoranalyse de “methode van hoofdcomponenten” wordt genoemd. Het gebruik van PCA is echter één ding en het gebruik van de -methode van hoofdcomponenten in FA is één ding. De namen kunnen vergelijkbaar zijn, maar er zijn significante verschillen. De eerste is een onafhankelijke analytische methode, terwijl dit laatste is slechts een hulpmiddel voor het extraheren van factoren.
Antwoord
Voor mij (en ik hoop dat dit nuttig is) is factoranalyse veel nuttiger dan PCA.
Onlangs had ik het genoegen een schaal te analyseren door middel van factoranalyse. Deze schaal (hoewel deze veel wordt gebruikt in de industrie) is ontwikkeld met behulp van PCA, en voor zover ik weet nooit factor geanalyseerd.
Toen ik de factoranalyse (hoofdas) uitvoerde, ontdekte ik dat de gemeenschappelijkheden voor drie van de items minder dan 30% waren, wat betekent dat meer dan 70% van de variantie van de items niet werd geanalyseerd. PCA transformeert de gegevens gewoon in een nieuwe combinatie en geeft niets om gemeenschappelijkheid. Mijn conclusie was dat de schaal vanuit psychometrisch oogpunt niet erg goed was, en ik “heb dit bevestigd met een andere steekproef.
In wezen, als je wilt voorspellen met behulp van de factoren, gebruik dan PCA , maar als je de latente factoren wilt begrijpen, gebruik dan factoranalyse.
Answer
Uitbreiding op het antwoord van @StatisticsDocConsulting: het verschil in ladingen tussen EFA en PCA is niet triviaal met een klein aantal variabelen. Hier “een simulatiefunctie om dit te demonstreren in 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}
Standaard voert deze functie 100 Iterations
uit, in elk daarvan produceert het willekeurige, normaal verdeelde monsters (Sample.Size
$ = 1000 $) van drie variabelen, en extraheert het één factor met behulp van PCA en ML-EFA. Het geeft een lijst van twee Iterations
-lange vectoren samengesteld uit de gemiddelde magnitudes van de gesimuleerde variabelen “ladingen op de niet-geroteerde eerste component van PCA en algemene factor van EFA, respectievelijk. Hiermee kunt u spelen met de steekproefomvang en het aantal variabelen en factoren die bij uw situatie passen, binnen de limieten van principal()
en factanal()
functies en uw computer.
Met behulp van deze code heb ik voorbeelden gesimuleerd van 3-100 variabelen met elk 500 iteraties om gegevens te produceren:
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)}
… voor een plot van de gevoeligheid van gemiddelde ladingen (tussen variabelen en iteraties) voor het aantal variabelen:
Dit toont aan hoe verschillend een moet de sterkte van ladingen in PCA versus EFA interpreteren. Beide zijn enigszins afhankelijk van het aantal variabelen, maar ladingen zijn veel sterker naar boven vertekend in PCA. Het verschil tussen gemiddelde ladingen die deze methoden nemen, neemt af naarmate het aantal variabelen toeneemt, maar zelfs met 100 variabelen, PCA-ladingen zijn gemiddeld $ 0,067 $ hoger dan EFA-ladingen in willekeurige normale gegevens.Houd er echter rekening mee dat de gemiddelde belasting meestal hoger zal zijn in echte toepassingen, omdat men deze methoden over het algemeen gebruikt voor meer gecorreleerde variabelen. Ik weet niet zeker hoe dit het verschil in gemiddelde belasting zou kunnen beïnvloeden.
Antwoord
Een citaat uit een heel mooi leerboek ( Brown, 2006, blz. 22, nadruk toegevoegd).
PCA = principale componentenanalyse
EFA = verkennende factoranalyse
CFA = bevestigende factoranalyse
Hoewel het verband houdt met EFA, wordt de principale componentenanalyse (PCA) vaak verkeerd gecategoriseerd als een schattingsmethode voor gemeenschappelijke factoranalyse. In tegenstelling tot de schatters die in de vorige paragraaf zijn besproken (ML, PF), vertrouwt PCA op een andere reeks kwantitatieve methoden die niet zijn gebaseerd op het gemeenschappelijke-factormodel. PCA maakt geen onderscheid tussen algemene en unieke variantie. In plaats daarvan probeert PCA de variantie in de waargenomen metingen te verklaren in plaats van de onderlinge correlaties te verklaren. PCA wordt dus beter gebruikt als een datareductietechniek om een grotere reeks maatregelen terug te brengen tot een kleiner, beter beheersbaar aantal te gebruiken samengestelde variabelen in daaropvolgende analyses. Sommige methodologen hebben echter aangevoerd dat PCA een redelijk of misschien superieur alternatief is voor EFA, gezien het feit dat PCA verschillende wenselijke statistische eigenschappen bezit (bijv. Rekenkundig eenvoudiger, niet vatbaar voor onjuiste oplossingen, levert vaak resultaten op die vergelijkbaar zijn met die van EFA , het vermogen van PCA om de score van een deelnemer op een hoofdcomponent te berekenen, terwijl de onbepaalde aard van EFA dergelijke berekeningen compliceert). Hoewel het debat over deze kwestie voortduurt, Fabrigar et al. (1999) geven verschillende redenen die zich verzetten tegen het argument voor de plaats van PCA in factoranalyse. Deze auteurs onderstrepen de situaties waarin EFA en PCA verschillende resultaten opleveren; bijvoorbeeld als de gemeenschappen laag zijn of als er maar een paar indicatoren zijn van een bepaalde factor (cf. Widaman, 1993). Ongeacht, als de doorslaggevende grondgedachte en empirische doelstellingen van een analyse in overeenstemming zijn met het gemeenschappelijke factormodel, dan is het conceptueel en wiskundig inconsistent om PCA uit te voeren; dat wil zeggen, EFA is geschikter als het vermelde doel is om de onderlinge correlaties van een reeks indicatoren te reproduceren met een kleiner aantal latente dimensies, waarbij het bestaan van meetfouten in de waargenomen metingen wordt erkend. Floyd en Widaman (1995) wijzen erop dat schattingen op basis van EFA eerder geneigd zijn om te generaliseren naar CFA dan die verkregen van PCA, aangezien EFA en CFA, in tegenstelling tot PCA, gebaseerd zijn op het model van gemeenschappelijke factoren. Dit is een opmerkelijke overweging in het licht van het feit dat EFA vaak wordt gebruikt als een voorloper van CFA bij schaalontwikkeling en constructvalidatie. Een gedetailleerde demonstratie van de computationele verschillen tussen PCA en EFA is te vinden in multivariate en factoranalyse-handboeken (bijv. Tabachnick & Fidell, 2001).
Brown, TA (2006). Bevestigende factoranalyse voor toegepast onderzoek. New York: Guilford Press.
Antwoord
Men kan denken van een PCA als zijnde als een FA waarin de gemeenschappelijkheid verondersteld wordt gelijk te zijn aan 1 voor alle variabelen. In de praktijk betekent dit dat items die relatief lage factorladingen in FA zouden hebben vanwege lage gemeenschappelijkheid, hogere ladingen in PCA zullen hebben. Dit is geen wenselijke functie als het primaire doel van de analyse is om de lengte van het item te verkleinen en een reeks items op te schonen met een lage of twijfelachtige lading, of om concepten te identificeren die niet goed vertegenwoordigd zijn in de itempool.
Antwoord
In een paper van Tipping en Bischop wordt de nauwe relatie tussen probabalistische PCA (PPCA) en factoranalyse besproken. PPCA is dichter bij FA dan de klassieke PCA. Het algemene model is
$$ \ mathbf {y} = \ mu + \ mathbf {Wx} + \ epsilon $$
waarbij $ \ mathbf {W} \ in \ mathbb {R} ^ {p, d} $, $ \ mathbf {x} \ sim \ mathcal {N} (\ mathbf {0}, \ mathbf {I}) $ en $ \ epsilon \ sim \ mathcal {N} ( \ mathbf {0}, \ mathbf {\ Psi}) $.
- Factoranalyse gaat ervan uit dat $ \ mathbf {\ Psi} $ diagonaal is.
- PPCA gaat ervan uit dat $ \ mathbf {\ Psi} = \ sigma ^ 2 \ mathbf {I} $
Michael E. Tipping, Christopher M. Bishop (1999). Probabilistic Principal Component Analysis , Journal of the Royal Statistical Society, Volume 61, Issue 3, Pages 611-622
Commentaren
- + 1. Ja. Ik geloof dat het begrijpen van PPCA nodig is om de relatie tussen PCA en FA te begrijpen. Maar je zou je antwoord kunnen verbeteren door de PCA / PPCA-relatie te bespreken.
Antwoord
Geen van deze reacties is perfect. Ofwel FA of PCA heeft enkele varianten. We moeten duidelijk aangeven welke varianten worden vergeleken. Ik zou de maximale waarschijnlijkheidsfactoranalyse en de PCA van Hotelling vergelijken.De eerste gaan ervan uit dat de latente variabele een normale verdeling volgt, maar PCA heeft een dergelijke aanname niet. Dit heeft geleid tot verschillen, zoals de oplossing, het nesten van de componenten, het unieke van de oplossing, de optimalisatie-algoritmen.
Opmerkingen
- Ik vraag me af of je hier een beetje op zou kunnen uitweiden – je hebt gezegd dat er verschillen zijn in de laatste zin, maar je hebt niet veel informatie gegeven over wat die verschillen zouden kunnen zijn, of op welke manier die verschillen belangrijk zouden kunnen zijn?
- Om twee verste methoden te selecteren en te beweren dat ze inderdaad verschillend zijn – zoals jij doet – is ook geen perfecte logica . Men zou waarschijnlijk moeten uitzoeken en rapporteren hoe deze twee op elkaar lijken. Als alternatief zou men de meest vergelijkbare methoden kunnen kiezen (zoals gewone PCA versus PAF ) en rapporteren op welke manier ze verschillen.
- Hotelling ‘ s PCA gaat uit van latente gaussianen.
Antwoord
Er zijn veel goede antwoorden voor dit bericht, maar onlangs kwam ik een ander verschil tegen.
Clustering is een toepassing waarbij PCA en FA verschillende resultaten opleveren. Als de gegevens veel functies bevatten, kan worden geprobeerd de bovenste pc-aanwijzingen te vinden en de gegevens op deze pcs te projecteren, en vervolgens door te gaan met clusteren. Dit verstoort vaak de inherente clusters in de gegevens – Dit is een goed bewezen resultaat. Onderzoekers stellen voor om verder te gaan met clustermethoden voor subruimten, die zoeken naar laagdimensionale latente factoren in het model.
Om dit verschil te illustreren, overweeg dan eens de Crabs
dataset in R. Crabs dataset heeft 200 rijen en 8 kolommen, die 5 morfologische metingen beschrijft aan 50 krabben van elk twee kleuren vormen en beide geslachten, van de soort – In wezen zijn er 4 (2×2) verschillende klassen krabben.
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 met behulp van PC2 en PC3:
#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
Zoals we kunnen zien in de bovenstaande grafieken, bevatten PC2 en PC3 meer onderscheidende informatie dan PC1.
Als men probeert te clusteren met behulp van de latente factoren met behulp van een mengsel van factoranalysers, zien we een veel beter resultaat vergeleken met het gebruik van de eerste twee pcs.
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
Opmerkingen
- Ik moet zeggen dat ik betwijfel of dit antwoord de vraag echt beantwoordt. Het antwoord gaat over clusteranalyse na PCA of FA, niet over PCA en FA zelf. Maar zelfs in dat opzicht is het antwoord vaag of onvoltooid. Hoe het verschil dat u laat zien, moet worden verklaard?
- @ttnphns Ik ben het ermee eens dat het antwoord gaat over clusteranalyse. OP had echter ook om een real-life scenario met PCA / FA gevraagd, waarbij het ene boven het andere moet worden gebruikt. Meestal is PCA of FA nooit het einddoel – bijvoorbeeld In de sociale wetenschappen zou het uiteindelijke doel zijn om de onderwerpen in verschillende clusters / groepen te verdelen. Mijn antwoord gaat over dergelijke scenarios. Mocht u denken dat mijn antwoord verbeterd kan worden, wees dan gerust.
- Ik denk dat uw antwoord echt relevant kan worden als u uw bevindingen uitlegt. U beweert dat de verschillen tussen PCA en FA intrinsiek zijn voor de twee methoden (alleen worden ze duidelijk onder clustering). Ik denk dat je moet laten zien of op zijn minst moet speculeren hoe of waarom de verschillen theoretisch voortkomen uit de verschillen tussen de methoden ‘ modellen.