Apa perbedaan antara Analisis Faktor dan Analisis Komponen Utama?

215

Tampaknya sejumlah paket statistik yang saya gunakan membungkus kedua konsep ini bersama-sama. Namun, saya bertanya-tanya apakah ada asumsi atau data 'formalitas' yang berbeda yang harus benar digunakan satu sama lain. Contoh nyata akan sangat berguna.

Brandon Bertelsen
sumber
2
Analisis komponen utama dan bab analisis faktor dalam buku berikut ini, yang tersedia di sebagian besar perpustakaan perguruan tinggi, menjawab pertanyaan Anda dengan tepat: apa.org/pubs/books/4316510.aspx
user31256
3
Selain jawaban di bawah ini, Anda mungkin juga membaca ini dan ini milik saya.
ttnphns
2
Dan pertanyaan bagus lainnya seperti "haruskah saya menggunakan PCA atau FA": stats.stackexchange.com/q/123063/3277 .
ttnphns
3
@ttnphns: Saya mendorong Anda untuk mengeluarkan jawaban di utas ini, mungkin terdiri dari daftar jawaban Anda yang beranotasi di utas terkait lainnya. Ini dapat menggantikan komentar Anda di atas (saat ini empat komentar dengan tautan), dan akan lebih praktis, terutama jika Anda memberi penjelasan singkat pada setiap tautan. Misalnya lihat di sini untuk penjelasan tentang masalah ini, lihat di sana untuk penjelasan tentang masalah itu, dll. Ini hanya saran, tetapi saya yakin utas ini akan sangat diuntungkan dari itu! Satu keuntungan khusus adalah Anda selalu dapat menambahkan lebih banyak tautan ke jawaban itu.
amoeba
2
Pertanyaan serupa diajukan pada MathOverflow, dan menerima apa yang saya anggap sebagai jawaban yang sangat baik: mathoverflow.net/questions/40191/…
Daniel Moskovich

Jawaban:

156

Analisis komponen utama melibatkan ekstraksi linier komposit dari variabel yang diamati.

Analisis faktor didasarkan pada model formal yang memprediksi variabel yang diamati dari faktor laten teoretis.

Dalam psikologi, kedua teknik ini sering diterapkan dalam pembangunan tes multi-skala untuk menentukan item mana yang memuat skala mana. Mereka biasanya menghasilkan kesimpulan substantif yang serupa (untuk diskusi lihat Comrey (1988) Factor-Analytic Metode Pengembangan Skala dalam Kepribadian dan Psikologi Klinis). Ini membantu menjelaskan mengapa beberapa paket statistik tampaknya menyatukannya. Saya juga telah melihat situasi di mana "analisis komponen utama" salah diberi label "analisis faktor".

Dalam hal aturan praktis yang sederhana , saya sarankan Anda:

  1. Jalankan analisis faktor jika Anda berasumsi atau ingin menguji model teoritis faktor laten yang menyebabkan variabel yang diamati.

  2. Jalankan analisis komponen utama Jika Anda hanya ingin mengurangi variabel yang diamati berkorelasi Anda ke satu set variabel komposit independen penting yang lebih kecil.

Jeromy Anglim
sumber
5
Aturan praktis di sana sangat bermanfaat. Terima kasih untuk itu.
Brandon Bertelsen
1
Mengenai aturan praktis (1): Tidakkah saya akan menguji model teoritis faktor laten dengan analisis faktor konfirmasi daripada fa eksplorasi?
Roman
1
@ dari Ya. CFA memberi Anda lebih banyak kontrol atas model daripada EFA. Misalnya, Anda dapat membatasi muatan menjadi nol; menyamakan pemuatan; memiliki residu yang berkorelasi; tambahkan faktor urutan yang lebih tinggi; dll.
Jeromy Anglim
3
@Jeromy Anglim Apakah benar mengatakan PCA membuat "seperangkat variabel komposit independen penting yang lebih kecil." Atau haruskah Anda benar-benar mengatakan "kumpulan variabel komposit penting yang tidak berkorelasi". Jika data dasar yang digunakan dalam PCA tidak (multivarian) terdistribusi normal, data dimensi yang dikurangi hanya akan tidak berkorelasi?
FXQuantTrader
1
Aturan praktis kedua mudah didapat, tetapi bagaimana cara menerapkan yang pertama? Kedengarannya mungkin aneh, tetapi kapan saya tahu saya ingin menjalankan model faktor terhadap variabel yang diamati?
Ben
48

Dari tanggapan saya di sini:

Apakah PCA diikuti oleh rotasi (seperti varimax) masih PCA?

Principal Component Analysis (PCA) dan Common Factor Analysis (CFA) adalah metode yang berbeda. Seringkali, mereka menghasilkan hasil yang serupa dan PCA digunakan sebagai metode ekstraksi standar dalam rutinitas Analisis Faktor SPSS. Ini tidak diragukan lagi menghasilkan banyak kebingungan tentang perbedaan antara keduanya.

Intinya adalah bahwa ini adalah dua model yang berbeda, secara konseptual. Dalam PCA, komponennya adalah kombinasi linear ortogonal aktual yang memaksimalkan total varians. Dalam FA, faktor-faktornya adalah kombinasi linear yang memaksimalkan bagian bersama dari varian - yang mendasari "konstruksi laten". Itu sebabnya FA sering disebut "analisis faktor umum". FA menggunakan berbagai rutin optimasi dan hasilnya, tidak seperti PCA, tergantung pada rutin optimasi yang digunakan dan titik awal untuk rutinitas tersebut. Sederhananya tidak ada solusi tunggal yang unik.

Dalam R, fungsi factanal () memberikan CFA dengan ekstraksi kemungkinan maksimum. Jadi, Anda seharusnya tidak mengharapkannya mereproduksi hasil SPSS yang didasarkan pada ekstraksi PCA. Ini bukan model atau logika yang sama. Saya tidak yakin apakah Anda akan mendapatkan hasil yang sama jika Anda menggunakan ekstraksi Maximum Likelihood SPSS karena mereka mungkin tidak menggunakan algoritma yang sama.

Baik atau buruk di R, Anda dapat, mereproduksi "analisis faktor" campuran yang disediakan SPSS sebagai standarnya. Inilah proses dalam R. Dengan kode ini, saya dapat mereproduksi hasil Komponen Utama SPSS "Analisis Faktor" menggunakan dataset ini. (Dengan pengecualian tanda, yang tidak tentu). Hasil itu juga dapat diputar menggunakan metode rotasi R yang tersedia.

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)
Brett
sumber
5
Perhatikan bahwa Anda akan mendapatkan hasil yang sama dengan principal(attitude, 2, rotate="none")dari psychpaket dan aturan Kayser (ev> 1) bukan cara yang paling direkomendasikan untuk menguji dimensi (ini melebih-lebihkan jumlah faktor).
chl
5
Ya, saya tahu kepala sekolah membungkus ini. Tujuan saya adalah untuk menunjukkan apa yang dilakukan "analisis faktor" SPSS ketika menggunakan metode ekstraksi komponen utama. Saya setuju bahwa aturan nilai eigen adalah cara yang buruk untuk memilih sejumlah faktor. Tapi, itulah yang dilakukan SPSS secara default dan inilah yang saya tunjukkan.
Brett
1
factanal()memberikan EFA bukan CFA. Juga, dari pengalaman saya, ekstraksi Maximum Likelihood SPSS harus memberikan hasil yang sama seperti yang factanal()diberikan bahwa tidak ada rotasi miring.
pe-pe-rry
2
Apa artinya yang berikut ini: 'Dalam FA, faktor-faktornya adalah kombinasi linear yang memaksimalkan bagian bersama dari varian - yang mendasari "konstruk laten". '
Dugaan
Perhatikan juga bahwa CFA dapat berarti FA konfirmatori (bukan FA eksplanatori ), bukan FA biasa .
Richard Hardy
33

Anda benar tentang poin pertama Anda, meskipun di FA Anda biasanya bekerja dengan keduanya (keunikan dan komunalitas). Pilihan antara PCA dan FA adalah perdebatan lama di antara para psikometri. Saya tidak cukup mengikuti poin Anda. Rotasi sumbu utama dapat diterapkan apa pun metode yang digunakan untuk membangun faktor laten. Bahkan, sebagian besar waktu ini adalah rotasi VARIMAX (rotasi ortogonal, mempertimbangkan faktor tidak berkorelasi) yang digunakan, untuk alasan praktis (interpretasi termudah, aturan penilaian termudah atau interpretasi skor faktor, dll.), Meskipun rotasi miring (misalnya PROMAX ) mungkin lebih baik mencerminkan kenyataan (konstruksi laten sering berkorelasi satu sama lain), setidaknya dalam tradisi FA di mana Anda mengasumsikan bahwa konstruk laten benar-benar merupakan inti dari inter-korelasi yang diamati antara variabel-variabel Anda. Intinya adalah bahwa PCA yang diikuti oleh rotasi VARIMAX agak mendistorsi interpretasi kombinasi linear dari variabel asli dalam tradisi "analisis data" (lihat karya Michel Tenenhaus). Dari perspektif psikometrik, model FA lebih disukai karena mereka secara eksplisit memperhitungkan kesalahan pengukuran, sementara PCA tidak peduli tentang itu. Secara singkat dinyatakan, dengan menggunakan PCA Anda menyatakan setiap komponen (faktor) sebagai kombinasi linear dari variabel, sedangkan di FA ini adalah variabel yang dinyatakan sebagai kombinasi linear dari faktor (termasuk komponen komunalitas dan keunikan, seperti yang Anda katakan). Intinya adalah bahwa PCA yang diikuti oleh rotasi VARIMAX agak mendistorsi interpretasi kombinasi linear dari variabel asli dalam tradisi "analisis data" (lihat karya Michel Tenenhaus). Dari perspektif psikometrik, model FA lebih disukai karena mereka secara eksplisit memperhitungkan kesalahan pengukuran, sementara PCA tidak peduli tentang itu. Secara singkat dinyatakan, dengan menggunakan PCA Anda menyatakan setiap komponen (faktor) sebagai kombinasi linear dari variabel, sedangkan di FA ini adalah variabel yang dinyatakan sebagai kombinasi linear dari faktor (termasuk komponen komunalitas dan keunikan, seperti yang Anda katakan). Intinya adalah bahwa PCA yang diikuti oleh rotasi VARIMAX agak mendistorsi interpretasi kombinasi linear dari variabel asli dalam tradisi "analisis data" (lihat karya Michel Tenenhaus). Dari perspektif psikometrik, model FA lebih disukai karena mereka secara eksplisit memperhitungkan kesalahan pengukuran, sementara PCA tidak peduli tentang itu. Secara singkat dinyatakan, dengan menggunakan PCA Anda menyatakan setiap komponen (faktor) sebagai kombinasi linear dari variabel, sedangkan di FA ini adalah variabel yang dinyatakan sebagai kombinasi linear dari faktor (termasuk komponen komunalitas dan keunikan, seperti yang Anda katakan). Model FA lebih disukai karena mereka secara eksplisit memperhitungkan kesalahan pengukuran, sementara PCA tidak peduli tentang itu. Secara singkat dinyatakan, dengan menggunakan PCA Anda menyatakan setiap komponen (faktor) sebagai kombinasi linear dari variabel, sedangkan di FA ini adalah variabel yang dinyatakan sebagai kombinasi linear dari faktor (termasuk komponen komunalitas dan keunikan, seperti yang Anda katakan). Model FA lebih disukai karena mereka secara eksplisit memperhitungkan kesalahan pengukuran, sementara PCA tidak peduli tentang itu. Secara singkat dinyatakan, dengan menggunakan PCA Anda menyatakan setiap komponen (faktor) sebagai kombinasi linear dari variabel, sedangkan di FA ini adalah variabel yang dinyatakan sebagai kombinasi linear dari faktor (termasuk komponen komunalitas dan keunikan, seperti yang Anda katakan).

Saya sarankan Anda untuk membaca terlebih dahulu diskusi berikut tentang topik ini:

chl
sumber
7
Hanya untuk mengatakan bahwa jawaban saya mungkin terlihat sedikit di luar topik karena pertanyaan ini telah digabungkan dengan yang lain, stats.stackexchange.com/questions/3369/… (saya awalnya menjawab yang terakhir).
chl
6
Ah, saya bertanya-tanya mengapa Anda menautkan ke pencarian ini, dalam pertanyaan ini ... :)
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, bisakah Anda menjelaskannya? Itu menarik.
ttnphns
32

Ada banyak definisi yang disarankan di web. Berikut ini adalah satu dari glosarium on-line tentang pembelajaran statistik :

Analisis Komponen Utama

Membangun fitur baru yang merupakan komponen utama dari kumpulan data. Komponen utama adalah variabel acak varians maksimal yang dibangun dari kombinasi linear dari fitur input. Secara ekuivalen, mereka adalah proyeksi ke sumbu komponen utama, yang merupakan garis yang meminimalkan jarak kuadrat rata-rata ke setiap titik dalam kumpulan data. Untuk memastikan keunikan, semua sumbu komponen utama harus ortogonal. PCA adalah teknik kemungkinan-maksimum untuk regresi linier dengan adanya noise Gaussian pada input dan output. Dalam beberapa kasus, PCA sesuai dengan transformasi Fourier, seperti DCT yang digunakan dalam kompresi gambar JPEG. Lihat "Eigenfaces untuk pengakuan" (Turk & Pentland, J Cognitive Neuroscience 3 (1), 1991), Uskup, "

Analisis faktor

Generalisasi PCA yang didasarkan secara eksplisit pada kemungkinan maksimum. Seperti PCA, setiap titik data diasumsikan muncul dari pengambilan sampel suatu titik dalam subruang dan kemudian mengganggunya dengan noise Gaussian dimensi penuh. Perbedaannya adalah bahwa analisis faktor memungkinkan kebisingan untuk memiliki matriks kovarians diagonal yang sewenang-wenang, sementara PCA menganggap kebisingan tersebut berbentuk bola. Selain memperkirakan subruang, analisis faktor memperkirakan matriks kovarians derau. Lihat "Algoritma EM untuk Campuran Analisis Faktor". Pilihan dimensi untuk PCA ".

Dirk Eddelbuettel
sumber
2
Deskripsi Analisis Faktor mendapatkan poin utama (kovarians diagonal), tetapi secara historis tidak dikembangkan sebagai generalisasi PCA.
dugaan
1
Jadi pada dasarnya, dalam PCA satu svd adalah matriks kovarians dan dalam FA matriks korelasi? Selalu sulit bagi saya untuk menemukan matematika yang sebenarnya setelah metode telah membangun banyak terminologi dari bidang di mana mereka diterapkan. (di luar topik: suatu saat saya butuh sepanjang sore memahami apa pemodelan jalur sampai saya menemukan satu (1) kertas dari 70-an yang menyatakan persamaan matriks di belakangnya.)
Mark van der Loo
28

Jawaban teratas di utas ini menunjukkan bahwa PCA lebih merupakan teknik reduksi dimensionalitas, sedangkan FA lebih merupakan teknik variabel laten. Ini senso stricto benar. Tetapi banyak jawaban di sini dan banyak perawatan di tempat lain menghadirkan PCA dan FA sebagai dua metode yang sama sekali berbeda, dengan tujuan, metode, dan hasil yang berbeda. Saya tidak setuju; Saya percaya bahwa ketika PCA dianggap sebagai teknik variabel laten, itu cukup dekat dengan FA, dan mereka harus dilihat sebagai metode yang sangat mirip.

Saya memberikan akun saya sendiri tentang persamaan dan perbedaan antara PCA dan FA di utas berikut: Apakah ada alasan bagus untuk menggunakan PCA daripada EFA? Juga, dapatkah PCA menjadi pengganti untuk analisis faktor? Di sana saya berpendapat bahwa untuk alasan matematis sederhana, hasil PCA dan FA dapat diharapkan cukup mirip, mengingat hanya bahwa jumlah variabel tidak terlalu kecil (mungkin lebih dari selusin). Lihat jawaban [panjang!] Saya di utas tertaut untuk detail matematis dan simulasi Monte Carlo. Untuk versi argumen saya yang jauh lebih ringkas lihat di sini: Dalam kondisi apa PCA dan FA menghasilkan hasil yang serupa?

Di sini saya ingin menunjukkannya pada contoh. Saya akan menganalisis dataset anggur dari UCI Machine Learning Repository. Ini adalah dataset yang cukup terkenal dengan anggur dari tiga anggur berbeda yang dijelaskan oleh variabel . Berikut adalah bagaimana matriks korelasi terlihat: p = 13n=178p=13

Matriks korelasi dari dataset anggur

Saya menjalankan analisis PCA dan FA dan menunjukkan proyeksi 2D data sebagai biplots untuk keduanya pada gambar di bawah ini (PCA di sebelah kiri, FA di sebelah kanan). Sumbu horizontal dan vertikal menunjukkan skor komponen / faktor 1 dan 2. Masing-masing dari titik sesuai dengan satu anggur, dan titik-titik diwarnai sesuai dengan kelompok (lihat legenda):n=178

Analisis PCA dan FA dari dataset anggur

Pemuatan komponen / faktor 1 dan 2 ke masing-masing variabel asli ditampilkan sebagai garis hitam. Mereka sama dengan korelasi antara masing-masing variabel asli dan dua komponen / faktor. Tentu saja korelasi tidak dapat melebihi , sehingga semua garis pemuatan terdapat di dalam "lingkaran korelasi" yang menunjukkan korelasi maksimal yang mungkin. Semua pembebanan dan lingkaran diskalakan sewenang-wenang oleh faktor , jika tidak mereka akan terlalu kecil untuk dilihat (jadi jari-jari lingkaran adalah dan bukan ).1 3 3 1p=131331

Perhatikan bahwa hampir tidak ada perbedaan antara PCA dan FA! Ada penyimpangan kecil di sana-sini, tetapi gambaran umum hampir identik, dan semua pemuatan sangat mirip dan menunjuk ke arah yang sama. Ini persis seperti yang diharapkan dari teori dan tidak mengejutkan; masih, itu adalah pelajaran untuk diamati.

PS. Untuk biplot PCA yang jauh lebih cantik dari dataset yang sama, lihat jawaban ini oleh @vqv .

PPS. Sedangkan perhitungan PCA adalah standar, perhitungan FA mungkin memerlukan komentar. Pemuatan faktor dihitung dengan algoritma "iterated principal factor" hingga konvergensi (9 iterasi), dengan komunitas diinisialisasi dengan korelasi parsial. Setelah pemuatan terkonvergensi, skor dihitung menggunakan metode Bartlett. Ini menghasilkan skor terstandarisasi; Saya meningkatkannya dengan varians faktor masing-masing (diberikan oleh panjang pemuatan).

amuba
sumber
1
Perangkat lunak apa yang Anda gunakan untuk membuat plot analisis faktor dan PCA?
rnso
1
Saya menggunakan Matlab. Saya berpikir untuk menempelkan kode ke dalam jawaban saya (seperti kebiasaan saya), tetapi tidak ingin mengacaukan utas sibuk ini. Tapi kalau dipikir-pikir, saya harus mempostingnya di beberapa situs web eksternal dan meninggalkan tautan di sini. Saya akan melakukan itu.
amoeba
2
Memang benar bahwa PCA dan FA kadang-kadang dan tidak sama sekali jarang memberikan hasil yang sama (memuat), dan PCA dapat dilihat sebagai kasus spesifik FA, ketika analisis faktor didefinisikan secara luas. Namun FA (sensu stricto) dan PCA secara teori sangat berbeda.
ttnphns
2
(lanjutan) Faktor adalah sifat laten transenden; pr. komponen adalah derivasi imanen. Meskipun dua plot pemuatan Anda tampak serupa, secara teori keduanya secara fundamental berbeda. Komponen pesawat di sebelah kiri diproduksi sebagai subruang dari variabel yang memproyeksikan diri di atasnya. Pesawat faktor diproduksi sebagai ruang yang berbeda dari ruang variabel, dan karenanya mereka memproyeksikan diri pada ruang "alien" di plot yang tepat.
ttnphns
3
(lanjt.) Tetapi gambar kanan (FA) sebenarnya bukan biplot yang sebenarnya , melainkan hamparan dua sebar plot yang berbeda, ruang yang berbeda: plot pemuatan (di mana sumbu merupakan faktor sebenarnya) dan plot skor objek (di mana sumbu berada faktor yang diperkirakan sebagai skor). Ruang faktor sebenarnya menimpa ruang variabel "parental" tetapi ruang skor faktor adalah subruangnya. Anda menumpangkan dua pasangan sumbu yang heterogen, tetapi mereka memiliki label yang sama ("faktor1" dan "faktor2" pada kedua pasangan) yang keadaannya sangat menyesatkan dan meyakinkan kita untuk berpikir bahwa itu adalah biplot yang bonafid , seperti yang kiri.
ttnphns
25

Penjelasan dasar, namun agak melelahkan, analisis PCA vs Factor dengan bantuan sebar, dalam langkah-langkah logis. (Saya berterima kasih kepada @amoeba yang, dalam komentarnya terhadap pertanyaan itu, telah mendorong saya untuk mengirim jawaban di tempat membuat tautan ke tempat lain. Jadi, inilah waktu luang, respons yang terlambat.)

PCA sebagai peringkasan variabel (ekstraksi fitur)

Semoga Anda sudah memiliki pemahaman tentang PCA. Untuk menghidupkan kembali sekarang.

masukkan deskripsi gambar di sini

Misalkan kita memiliki variabel yang berkorelasi dan . Kami memusatkan mereka (kurangi rata-rata) dan lakukan sebar. Kemudian kami melakukan PCA pada data terpusat ini. PCA adalah bentuk rotasi sumbu yang menawarkan sumbu P1 dan P2, bukan V1 dan V2. The properti kunci dari PCA adalah bahwa P1 - yang disebut komponen utama 1 - akan berorientasi sehingga varians dari titik data sepanjang itu dimaksimalkan. Sumbu baru adalah variabel baru yang nilai-nilai yang dihitung selama kita tahu koefisien rotasi (PCA menyediakan mereka) [ Eq.1 ]:V1V2a

P1=a11V1+a12V2

P2=a21V1+a22V2

Koefisien-koefisien tersebut adalah cosinus dari rotasi (= cosinus arah, arah utama) dan terdiri dari apa yang disebut vektor eigen, sedangkan nilai eigen dari matriks kovarians adalah varian komponen utama. Dalam PCA, kami biasanya membuang komponen terakhir yang lemah: dengan demikian kami meringkas data dengan beberapa komponen yang diekstraksi pertama, dengan sedikit kehilangan informasi.

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

Dengan data yang diplot, nilai komponen P1 (skor), P1 = .73543*V1 + .67761*V2dan komponen P2 kami buang. Varians P1 adalah 1.75756, nilai eigen 1 dari matriks kovarians, dan P1 menjelaskan 86.5%dari jumlah varians yang sama (1.07652+.95534) = (1.75756+.27430).

PCA sebagai prediksi variabel (fitur "laten")

Jadi, kami membuang P2 dan berharap bahwa P1 sendiri dapat mewakili data secara wajar. Itu sama dengan mengatakan bahwa dapat "merekonstruksi" dengan baik atau memprediksi dan [ Persamaan.2 ]:P1 V1V2

V1=a11P1+E1

V2=a12P1+E2

di mana koefisien adalah apa yang sudah kita ketahui dan adalah kesalahan (tidak dapat diprediksi). Ini sebenarnya adalah "model penyesalan" di mana variabel yang diamati diprediksi (kembali) oleh variabel laten (jika untuk memungkinkan memanggil komponen komponen "laten") P1 diekstraksi dari variabel yang sama. Lihatlah plot Gambar 2 , tidak lain adalah Gambar 1 , hanya detail:aE

masukkan deskripsi gambar di sini

Sumbu P1 ditunjukkan ubin dengan nilai-nilainya (skor P1) berwarna hijau (nilai-nilai ini adalah proyeksi titik data ke P1). Beberapa titik data sewenang-wenang diberi label A, B, ..., dan keberangkatan (kesalahan) mereka dari P1 adalah konektor hitam tebal. Untuk titik A, perinciannya diperlihatkan: koordinat skor P1 (hijau A) ke sumbu V1 dan V2 adalah nilai-nilai P1-direkonstruksi dari V1 dan V2 menurut Persamaan.2 , dan . Kesalahan rekonstruksi dan juga ditampilkan, berwarna krem. Konektor "kesalahan" panjang kuadrat adalah jumlah dari dua kesalahan kuadrat, menurut Pythagoras.V1^=a11P1V2^=a12P1E1=V1V1^E2=V2V2^

Sekarang, apa karakteristik PCA adalah bahwa jika kita menghitung E1 dan E2 untuk setiap titik dalam data dan memplot koordinat ini - yaitu membuat scatterplot dari kesalahan saja, "data kesalahan" awan akan bertepatan dengan komponen P2 yang dibuang. Dan memang demikian: awan diplot pada gambar yang sama dengan awan krem ​​- dan Anda melihatnya benar-benar membentuk sumbu P2 (dari Gambar.1 ) sebagai ubin dengan skor komponen P2.

Tidak heran, Anda bisa mengatakan. Sangat jelas: di PCA , komponen junior yang dibuang adalah yang tepat terurai dalam kesalahan prediksi E, dalam model yang menjelaskan (mengembalikan) variabel asli V oleh fitur laten (s) P1. Kesalahan E bersama hanya merupakan komponen yang tersisih. Di sinilah analisis faktor mulai berbeda dari PCA.

Gagasan umum FA (fitur laten)

Secara formal, model yang memprediksi variabel manifes oleh fitur laten yang diekstraksi adalah sama dalam FA seperti pada PCA; [ Persamaan 3 ]:

V1=a1F+E1

V2=a2F+E2

di mana F adalah faktor umum laten yang diekstraksi dari data dan menggantikan apa yang P1 dalam Persamaan.2 . Perbedaan dalam model adalah bahwa dalam FA, tidak seperti PCA, variabel kesalahan (E1 dan E2) dituntut untuk tidak berkorelasi satu sama lain .

Digresi . Di sini saya tiba-tiba ingin menyela cerita dan membuat gagasan tentang apa koefisien-koefisien . Dalam PCA, kami katakan, ini adalah entri vektor eigen yang ditemukan di dalam PCA (melalui dekomposisi nilai eigen atau singular). Sementara P1 laten memiliki varian aslinya. Jika kita memilih untuk menstandarisasi P1 ke unit variance kita harus mengkompensasinya dengan meningkatkan koefisien , untuk mendukung persamaan. Yang ditingkatkan s disebut beban ; mereka menarik secara numerik karena mereka adalah kovarian (atau korelasi) antara variabel laten dan yang dapat diamati dan karenanya dapat membantu menafsirkan fitur laten. Dalam kedua model - Persamaan.2 dan Persamaan.3aaa- Anda bebas untuk memutuskan, tanpa merusak persamaan, ke arah mana istilah tersebut diskalakan. Jika F (atau P1) dianggap sebagai unit yang diskalakan, memuat; sementara jika F (P1) harus memiliki skala asli (varians), maka harus diskalakan sesuai - dalam PCA yang akan sama dengan entri vektor eigen, tetapi dalam FA mereka akan berbeda dan biasanya tidak disebut "vektor eigen". Dalam kebanyakan teks pada analisis faktor, F diasumsikan Unit varians sehingga Are beban . Dalam literatur PCA, P1 biasanya dibahas memiliki varians sebenarnya dan adalah vektor eigen.aaaa

OK, kembali ke utas. E1 dan E2 tidak berkorelasi dalam analisis faktor; dengan demikian, mereka harus membentuk awan kesalahan baik bulat atau elips tetapi tidak berorientasi diagonal. Sementara di PCA awan mereka membentuk garis lurus bertepatan dengan P2 secara diagonal. Kedua ide tersebut ditunjukkan pada gambar:

masukkan deskripsi gambar di sini

Perhatikan bahwa galat adalah awan bulat (tidak memanjang secara diagonal) dalam FA. Faktor (laten) dalam FA berorientasi agak berbeda, yaitu tidak tepat komponen utama pertama yang merupakan "laten" dalam PCA. Pada gambar, garis faktor anehnya berbentuk kerucut - akan menjadi jelas mengapa pada akhirnya.

Apa arti perbedaan antara PCA dan FA ini? Variabel berkorelasi, yang terlihat dalam bentuk elips diagonal dari data cloud. P1 membaca skim varians maksimal, sehingga elips diarahkan langsung ke P1. Akibatnya P1 menjelaskan dengan sendirinya korelasi; tetapi tidak menjelaskan jumlah korelasi yang ada secara memadai; kelihatannya menjelaskan variasi dalam poin data, bukan korelasi. Sebenarnya, ini terlalu memperhitungkan korelasinya, yang hasilnya adalah kemunculan awan kesalahan yang berkorelasi diagonal, yang mengkompensasi kelebihan perhitungan. P1 sendiri tidak dapat menjelaskan kekuatan korelasi / kovarian secara komprehensif. Faktor F bisalakukan sendiri; dan kondisi ketika ia mampu melakukannya justru di mana kesalahan dapat dipaksa untuk tidak berkorelasi. Karena cloud error itu bulat, tidak ada korelasi - positif atau negatif - yang tetap setelah faktor diekstraksi, maka itu adalah faktor yang membaca sekilas semuanya.

Sebagai reduksi dimensi, PCA menjelaskan varians tetapi menjelaskan korelasi secara tidak tepat. FA menjelaskan korelasi tetapi tidak dapat memperhitungkan (dengan faktor umum) variasi data sebanyak yang PCA bisa. Faktor dalam akun FA untuk bagian variabilitas yang merupakan bagian korelasional bersih, yang disebut komunality ; dan karena itu faktor-faktor dapat diartikan sebagai kekuatan / fitur / sifat nyata yang tidak dapat diobservasi yang menyembunyikan "di" atau "di belakang" variabel input untuk membawanya berkorelasi. Karena mereka menjelaskan korelasi dengan baik secara matematis. Komponen utama (beberapa yang pertama) menjelaskannya secara matematis juga dan bisa disebut "sifat laten" (atau semacamnya) hanya pada beberapa bentangan dan sementara .

Penggandaan pembebanan adalah yang menjelaskan (mengembalikan) korelasi, atau berkorelasi dalam bentuk kovarians - jika analisis didasarkan pada matriks kovarians (seperti dalam contoh di luar) daripada matriks korelasi. Analisis faktor yang saya lakukan dengan data yang dihasilkan a_1=.87352, a_2=.84528, sehingga produk a_1*a_2 = .73837hampir sama dengan kovarians .73915. Di sisi lain, beban PCA a1_1=.97497, a1_2=.89832, jadi a1_1*a1_2 = .87584terlalu tinggi .73915.

Setelah menjelaskan perbedaan teoretis utama antara PCA dan FA, mari kembali ke data kami untuk memberikan contoh ide.

FA: solusi perkiraan (skor faktor)

Di bawah ini adalah sebar yang menunjukkan hasil analisis yang untuk sementara kita sebut "analisis faktor sub-optimal", Gbr.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).

masukkan deskripsi gambar di sini

Lihat keberangkatan dari Gbr.2 dari PCA. Beige cloud kesalahan tidak bulat, elips diagonal, - namun ternyata jauh lebih gemuk daripada garis diagonal tipis yang terjadi di PCA. Perhatikan juga bahwa konektor kesalahan (ditunjukkan untuk beberapa titik) tidak paralel lagi (dalam PCA, mereka secara paralel sejajar dengan P2). Selain itu, jika Anda melihat, misalnya, pada titik "F" dan "E" yang terletak secara simetris di atas sumbu faktor F , Anda akan menemukan, secara tak terduga, skor faktor yang bersesuaiannya menjadi nilai yang sangat berbeda. Dengan kata lain, skor faktor bukan hanya skor komponen utama yang diubah secara linear: faktor F ditemukan dengan caranya sendiri berbeda dari cara P1. Dan sumbu mereka tidak sepenuhnya bertepatan jika ditunjukkan bersama pada plot yang sama Fig.4 :

masukkan deskripsi gambar di sini

Selain itu mereka sedikit berbeda orienterd, F (karena ubin dengan skor) lebih pendek, yaitu menyumbang varians yang lebih kecil daripada akun P1 untuk. Seperti disebutkan sebelumnya, faktor hanya memperhitungkan variabilitas yang bertanggung jawab atas keterkaitan V1 V2, yaitu bagian dari total varians yang cukup untuk membawa variabel dari kovarians purba 0ke kovarians faktual .73915.

FA: solusi optimal (faktor sebenarnya)

Solusi faktor optimal adalah ketika kesalahan bulat atau awan elips non-diagonal: E1 dan E2 sepenuhnya tidak berkorelasi . Analisis faktor sebenarnya mengembalikan solusi yang optimal. Saya tidak menunjukkannya di sebar sederhana seperti yang di atas. Kenapa saya? - karena itu akan menjadi hal yang paling menarik.

Alasannya adalah bahwa tidak mungkin untuk menunjukkan pada sebar cukup, bahkan mengadopsi plot 3D. Ini adalah poin yang cukup menarik secara teoritis. Untuk membuat E1 dan E2 benar-benar tidak berkorelasi tampak bahwa ketiga variabel ini, F, E1, E2 harus tidak terletak di ruang (bidang) yang ditentukan oleh V1, V2; dan ketiganya harus tidak berkorelasi satu sama lain . Saya percaya adalah mungkin untuk menggambar sebar seperti itu di 5D (dan mungkin dengan beberapa trik - dalam 4D), tapi kita hidup di dunia 3D, sayangnya. Faktor F harus tidak berkorelasi dengan E1 dan E2 (sementara keduanya tidak berkorelasi juga) karena F seharusnya menjadi satu - satunya sumber (bersih) dan sumber korelasi yang lengkap dalam data yang diamati. Analisis faktor membagi total varian daripvariabel input menjadi dua bagian yang tidak berkorelasi (tidak tumpang tindih): bagian masyarakat ( m-dimensi, di mana mfaktor-faktor umum berkuasa) dan bagian keunikan ( p-dimensi, di mana kesalahan, juga disebut faktor unik, saling tidak berkorelasi).

Jadi maafkan karena tidak menunjukkan faktor sebenarnya dari data kami di sebar di sini. Itu bisa divisualisasikan cukup memadai melalui vektor dalam "ruang subjek" seperti yang dilakukan di sini tanpa menunjukkan titik data.

Di atas, di bagian "Gagasan FA umum (fitur laten)" Saya menampilkan faktor (sumbu F) sebagai baji untuk memperingatkan bahwa sumbu faktor sebenarnya tidak terletak pada bidang V1 V2. Itu berarti bahwa - berbeda dengan komponen utama P1 - faktor F sebagai sumbu bukan merupakan rotasi sumbu V1 atau V2 dalam ruangnya, dan F sebagai variabel bukanlah kombinasi linear dari variabel V1 dan V2. Oleh karena itu F dimodelkan (diekstraksi dari variabel V1 v2) seolah-olah variabel luar, independen, bukan turunan dari mereka. Persamaan seperti Eq.1 dari mana PCA dimulai, yang dapat diterapkan untuk menghitung benar (optimal) faktor dalam analisis faktor, sedangkan persamaan secara resmi isomorfik Eq.2 dan Eq.3valid untuk kedua analisis. Artinya, dalam variabel PCA menghasilkan komponen dan komponen kembali memprediksi variabel; dalam faktor FA menghasilkan / memprediksi variabel, dan tidak kembali - model faktor umum secara konseptual mengasumsikan demikian , meskipun faktor teknis diekstraksi dari variabel yang diamati.

Bukan hanya faktor benar yang bukan fungsi dari variabel manifes, nilai - nilai faktor benar tidak didefinisikan secara unik . Dengan kata lain, mereka tidak diketahui. Itu semua adalah karena fakta bahwa kita berada di ruang analitik 5D yang berlebihan dan bukan di ruang 2D rumah kita dari data. Hanya perkiraan yang baik (sejumlah metode ada ) untuk nilai-nilai faktor sebenarnya, yang disebut skor faktor , yang ada untuk kita. Skor faktor terletak pada bidang V1 V2, seperti skor komponen utama, mereka dihitung sebagai fungsi linear dari V1, V2, juga, dan jika merekayang saya diplot di bagian "FA: solusi perkiraan (skor faktor)". Skor komponen utama adalah nilai komponen yang benar; skor faktor hanya perkiraan yang masuk akal untuk nilai faktor benar yang tidak ditentukan.

FA: pembulatan prosedur

Untuk mengumpulkan dalam satu gumpalan kecil apa yang dikatakan dua bagian sebelumnya, dan menambahkan pukulan akhir. Sebenarnya, FA dapat ( jika Anda melakukannya dengan benar, dan lihat juga asumsi data ) menemukan solusi faktor sebenarnya (dengan "benar" yang saya maksud di sini optimal untuk sampel data). Namun, berbagai metode ekstraksi ada (mereka berbeda dalam beberapa kendala sekunder yang mereka taruh). Solusi Faktor yang benar adalah sampai dengan beban hanya. Dengan demikian, pemuatan adalah faktor optimal dan benar. Skor faktor - jika Anda membutuhkannya - dapat dihitung dari pemuatan tersebut dengan berbagai cara dan mengembalikan perkiraan ke nilai faktor.a

Dengan demikian, "solusi faktor" yang ditampilkan oleh saya di bagian "FA: solusi perkiraan (skor faktor)" sebenarnya didasarkan pada pembebanan yang optimal, yaitu pada faktor yang benar. Tetapi skor tidak optimal, berdasarkan takdir. Skor dihitung sebagai fungsi linier dari variabel yang diamati, seperti skor komponen, sehingga keduanya dapat dibandingkan pada sebar plot dan saya melakukannya dalam pengejaran didaktik untuk menunjukkan seperti lulus bertahap dari ide PCA menuju ide FA.

Seseorang harus waspada ketika merencanakan pada pemuatan faktor biplot yang sama dengan skor faktor dalam "ruang faktor", sadarilah bahwa pemuatan berkaitan dengan faktor sebenarnya sedangkan skor berkaitan dengan faktor pengganti (lihat komentar saya untuk jawaban ini di utas ini).

Rotasi faktor (memuat) membantu menafsirkan fitur laten. Rotasi beban dapat dilakukan juga di PCA jika Anda menggunakan PCA seolah-olah analisis faktor (yaitu, lihat PCA sebagai prediksi variabel). PCA cenderung menyatu dalam hasil dengan FA karena jumlah variabel tumbuh (lihat utas yang sangat kaya tentang persamaan dan perbedaan praktis dan konseptual antara kedua metode). Lihat daftar perbedaan saya antara PCA dan FA di akhir jawaban ini . Perhitungan langkah demi langkah PCA vs FA pada set data iris ditemukan di sini . Ada banyak tautan bagus ke jawaban peserta lain tentang topik di luar utas ini; Maaf saya hanya menggunakan beberapa dari mereka dalam jawaban saat ini.

Lihat juga daftar peluru perbedaan antara PCA dan FA di sini .

ttnphns
sumber
1
+1. Sangat bagus bahwa Anda menulisnya, utas ini jelas tidak memiliki jawaban dari Anda. Saya memilih sebelum membaca (yang jarang saya lakukan), dan tentu saja menikmati bacaan berikutnya. Saya mungkin berkomentar lebih lanjut, tetapi satu nitpick kecil untuk saat ini: Anda menulis beberapa kali bahwa dalam FA cloud kesalahan harus "bulat". Tetapi pada kenyataannya, itu bisa menjadi elips (karena keunikan untuk V1 dan V2 dapat memiliki varian yang berbeda), itu hanya harus memiliki korelasi nol. Saya kira Anda tidak ingin membingungkan pembaca dengan detail ini.
amoeba
1
@amoeba Saya memiliki keraguan naif tentang ketidakmungkinan matematika untuk mewakili F, E1, E2 yang optimal dalam ruang (bidang) yang didefinisikan oleh V1, V2. Saya dapat memikirkan contoh penghitung untuk ini: Katakan dan , di mana - Sekarang gunakan relasi ini untuk menghasilkan sampel V1 dan V2. Setelah V1 dan V2 dihasilkan, jika kami melakukan FA yang optimal, kami harus mendapatkan kembali perkiraan yang hampir akurat dari (E1, E2), dan itu akan membentuk awan elips. Apalagi sekarang F, E1, E2 dapat direpresentasikan dalam bidang yang sama dengan V1 dan 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, apakah komentar Anda memuji jawaban saya atau komentar amuba? Jika komentar Anda bertentangan dengan klaim utama saya bahwa di FA tiga variabel laten tidak terletak di ruang asli dan Anda dapat menunjukkannya, mengapa tidak mengeluarkan jawaban yang menunjukkannya? Tapi harap dicatat bahwa di FA optimal, kesalahan yang persis berkorelasi, tidak bahwa mereka dapat dibayangkan sebagai berasal dari populasi berkorelasi normal.
ttnphns
@ttnphns: Maaf atas kebingungan, saya meragukan klaim utama Anda. Saya akan mencoba menunjukkannya sebagai jawaban dalam beberapa hari. Terima kasih!
kasa
21

Perbedaan antara analisis faktor dan analisis komponen utama adalah:

• Dalam analisis faktor ada model terstruktur dan beberapa asumsi. Dalam hal ini, ini adalah teknik statistik yang tidak berlaku untuk analisis komponen utama yang merupakan transformasi matematis murni.

• Tujuan dari analisis komponen utama adalah untuk menjelaskan varians sedangkan analisis faktor menjelaskan kovarians antara variabel.

Salah satu alasan terbesar untuk kebingungan antara keduanya berkaitan dengan fakta bahwa salah satu metode ekstraksi faktor dalam Analisis Faktor disebut "metode komponen utama". Namun, menggunakan PCA dan menggunakan komponen komponen utama dalam FA adalah satu hal . Nama-namanya mungkin serupa, tetapi ada perbedaan yang signifikan. Yang pertama adalah metode analisis independen sedangkan yang kedua hanyalah alat untuk ekstraksi faktor.

George Dontas
sumber
13

Bagi saya (dan saya harap ini berguna) analisis faktor jauh lebih berguna daripada PCA.

Baru-baru ini, saya merasa senang menganalisis skala melalui analisis faktor. Skala ini (meskipun banyak digunakan dalam industri) dikembangkan dengan menggunakan PCA, dan setahu saya belum pernah faktor dianalisis.

Ketika saya melakukan analisis faktor (poros utama) saya menemukan bahwa komunalitas untuk tiga item kurang dari 30%, yang berarti bahwa lebih dari 70% varian item tidak dianalisis. PCA hanya mengubah data menjadi kombinasi baru dan tidak peduli dengan komunitas. Kesimpulan saya adalah bahwa skalanya tidak terlalu bagus dari sudut pandang psikometrik, dan saya telah mengkonfirmasi ini dengan sampel yang berbeda.

Intinya, jika Anda ingin memprediksi menggunakan faktor-faktor tersebut, gunakan PCA, sedangkan jika Anda ingin memahami faktor laten, gunakan Analisis Faktor.

richiemorrisroe
sumber
11

Memperluas jawaban @ StatisticsDocConsulting: perbedaan pemuatan antara EFA dan PCA adalah non-sepele dengan sejumlah kecil variabel. Berikut adalah fungsi simulasi untuk menunjukkan ini dalam 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}

Secara default, fungsi ini melakukan 100 Iterations, di mana masing-masingnya menghasilkan sampel acak, terdistribusi normal ( ) dari tiga variabel, dan mengekstraksi satu faktor menggunakan PCA dan ML-EFA. Ini menghasilkan daftar vektor dua- panjang yang terdiri dari besaran rata-rata dari beban variabel yang disimulasikan pada komponen pertama yang tidak diputar dari PCA dan faktor umum dari EFA. Ini memungkinkan Anda untuk bermain-main dengan ukuran sampel dan jumlah variabel dan faktor-faktor yang sesuai dengan situasi Anda, dalam batas-batas dan fungsi serta komputer Anda.Sample.Size=1000Iterationsprincipal()factanal()

Dengan menggunakan kode ini, saya telah mensimulasikan sampel 3–100 variabel dengan masing-masing 500 iterasi untuk menghasilkan data:

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)}

... untuk plot sensitivitas pemuatan rata-rata (lintas variabel dan iterasi) terhadap sejumlah variabel:

Ini menunjukkan betapa berbedanya seseorang harus menginterpretasikan kekuatan pemuatan dalam PCA vs PUS. Keduanya agak tergantung pada jumlah variabel, tetapi beban bias ke atas jauh lebih kuat di PCA. Perbedaan antara rata-rata pemuatan metode ini berkurang karena jumlah variabel meningkat, tetapi bahkan dengan 100 variabel, PCA rata-rata lebih tinggi dari pemuatan EFA dalam data normal acak. Namun, perhatikan bahwa pemuatan rata-rata biasanya akan lebih tinggi dalam aplikasi nyata, karena orang biasanya menggunakan metode ini pada variabel yang lebih berkorelasi. Saya tidak yakin bagaimana ini dapat mempengaruhi perbedaan pemuatan rata-rata..067

Nick Stauner
sumber
10

Seseorang dapat menganggap PCA sebagai seperti FA di mana komunalitas diasumsikan sama dengan 1 untuk semua variabel. Dalam praktiknya, ini berarti bahwa item yang memiliki loading faktor yang relatif rendah di FA karena komunality yang rendah akan memiliki loading yang lebih tinggi di PCA. Ini bukan fitur yang diinginkan jika tujuan utama dari analisis ini adalah untuk memotong panjang item dan membersihkan baterai barang-barang dengan muatan rendah atau samar-samar, atau untuk mengidentifikasi konsep yang tidak terwakili dengan baik dalam kumpulan item.

StatistikDoc Konsultasi
sumber
10

Kutipan dari buku teks yang sangat bagus (Brown, 2006, hlm. 22, penekanan ditambahkan).
PCA = analisis komponen utama
EFA = analisis faktor eksplorasi
CFA = analisis faktor konfirmatori

Meskipun terkait dengan EFA, analisis komponen utama (PCA) sering salah dikategorikan sebagai metode estimasi analisis faktor umum. Berbeda dengan penduga yang dibahas dalam paragraf sebelumnya (ML, PF), PCA bergantung pada serangkaian metode kuantitatif yang berbeda yang tidak didasarkan pada model faktor umum. PCA tidak membedakan varian umum dan unik. Sebaliknya, PCA bertujuan untuk menjelaskan varians dalam langkah-langkah yang diamati daripada menjelaskan korelasi di antara mereka. Dengan demikian, PCA lebih tepat digunakan sebagai teknik reduksi data untuk mengurangi serangkaian ukuran yang lebih besar menjadi lebih kecil, jumlah variabel komposit yang lebih mudah dikelola untuk digunakan dalam analisis selanjutnya. Namun, beberapa ahli metodologi berpendapat bahwa PCA adalah alternatif yang masuk akal atau mungkin lebih unggul dari EFA, mengingat fakta bahwa PCA memiliki beberapa sifat statistik yang diinginkan (misalnya, komputasi lebih sederhana, tidak rentan terhadap solusi yang tidak tepat, sering menghasilkan hasil yang mirip dengan EFA, kemampuan PCA untuk menghitung skor peserta pada komponen utama sedangkan sifat tak tentu dari EFA memperumit perhitungan seperti itu). Meskipun perdebatan tentang masalah ini terus berlanjut, Fabrigar et al. (1999) memberikan beberapa alasan yang bertentangan dengan argumen untuk tempat PCA dalam analisis faktor. Para penulis ini menggarisbawahi situasi di mana EFA dan PCA menghasilkan hasil yang berbeda; misalnya, ketika komunalitas rendah atau ketika hanya ada beberapa indikator dari faktor tertentu (lih. Widaman, 1993). sering menghasilkan hasil yang mirip dengan EFA, kemampuan PCA untuk menghitung skor peserta pada komponen utama sedangkan sifat EFA yang tidak pasti mempersulit perhitungan seperti itu). Meskipun perdebatan tentang masalah ini terus berlanjut, Fabrigar et al. (1999) memberikan beberapa alasan yang bertentangan dengan argumen untuk tempat PCA dalam analisis faktor. Para penulis ini menggarisbawahi situasi di mana EFA dan PCA menghasilkan hasil yang berbeda; misalnya, ketika komunalitas rendah atau ketika hanya ada beberapa indikator dari faktor tertentu (lih. Widaman, 1993). sering menghasilkan hasil yang mirip dengan EFA, kemampuan PCA untuk menghitung skor peserta pada komponen utama sedangkan sifat EFA yang tidak pasti mempersulit perhitungan seperti itu). Meskipun perdebatan tentang masalah ini terus berlanjut, Fabrigar et al. (1999) memberikan beberapa alasan yang bertentangan dengan argumen untuk tempat PCA dalam analisis faktor. Para penulis ini menggarisbawahi situasi di mana EFA dan PCA menghasilkan hasil yang berbeda; misalnya, ketika masyarakat rendah atau ketika hanya ada beberapa indikator dari faktor tertentu (lih. Widaman, 1993). (1999) memberikan beberapa alasan yang bertentangan dengan argumen untuk tempat PCA dalam analisis faktor. Para penulis ini menggarisbawahi situasi di mana EFA dan PCA menghasilkan hasil yang berbeda; misalnya, ketika komunalitas rendah atau ketika hanya ada beberapa indikator dari faktor tertentu (lih. Widaman, 1993). (1999) memberikan beberapa alasan yang bertentangan dengan argumen untuk tempat PCA dalam analisis faktor. Para penulis ini menggarisbawahi situasi di mana EFA dan PCA menghasilkan hasil yang berbeda; misalnya, ketika masyarakat rendah atau ketika hanya ada beberapa indikator dari faktor tertentu (lih. Widaman, 1993).Apapun, jika alasan utama dan tujuan empiris analisis sesuai dengan model faktor umum, maka secara konseptual dan matematis tidak konsisten untuk melakukan PCA; yaitu, EFA lebih tepat jika tujuan yang dinyatakan adalah untuk mereproduksi hubungan timbal balik dengan sejumlah kecil dimensi laten, mengakui adanya kesalahan pengukuran dalam langkah-langkah yang diamati.Floyd dan Widaman (1995) menyatakan bahwa estimasi berdasarkan EFA lebih mungkin untuk digeneralisasi ke CFA daripada yang diperoleh dari PCA dalam hal itu, tidak seperti PCA, EFA dan CFA didasarkan pada model faktor umum. Ini adalah pertimbangan penting mengingat fakta bahwa EFA sering digunakan sebagai prekursor CFA dalam pengembangan skala dan membangun validasi. Demonstrasi terperinci dari perbedaan komputasi antara PCA dan EFA dapat ditemukan dalam buku teks analitik multivariat dan faktor (misalnya, Tabachnick & Fidell, 2001).

Brown, TA (2006). Analisis faktor konfirmasi untuk penelitian terapan. New York: Guilford Press.

Henrik
sumber
6

Dalam sebuah makalah oleh Tipping dan Bischop hubungan erat antara Probabalistic PCA (PPCA) dan analisis Faktor dibahas. PPCA lebih dekat ke FA daripada PCA klasik. Model umum adalah

y=μ+Wx+ϵ

WRp,dxN(0,I)ϵN(0,Ψ)

  • Ψ
  • Ψ=σ2I

Michael E. Tipping, Christopher M. Bishop (1999). Analisis Komponen Utama Probabilistik , Jurnal Royal Statistics Society, Volume 61, Edisi 3, Halaman 611-622

mnmltype
sumber
2
+1. Iya. Saya percaya bahwa memahami PPCA diperlukan untuk memahami hubungan antara PCA dan FA. Tetapi Anda dapat meningkatkan jawaban Anda dengan mendiskusikan hubungan PCA / PPCA.
amoeba
3

Tidak satu pun dari respons ini yang sempurna. FA atau PCA memiliki beberapa varian. Kita harus dengan jelas menunjukkan varian mana yang dibandingkan. Saya akan membandingkan analisis faktor kemungkinan maksimum dan PCA Hotelling. Yang pertama mengasumsikan variabel laten mengikuti distribusi normal tetapi PCA tidak memiliki asumsi seperti itu. Ini telah menyebabkan perbedaan, seperti solusi, bersarangnya komponen, keunikan solusi, algoritma pengoptimalan.

Spiral
sumber
1
Saya ingin tahu apakah Anda dapat sedikit memperluas ini - Anda telah mengatakan ada perbedaan dalam kalimat terakhir, tetapi tidak memberikan banyak informasi tentang apa perbedaan itu, atau bagaimana perbedaan itu mungkin penting?
Silverfish
1
Untuk memilih dua metode yang paling jauh dan untuk mengklaim bahwa mereka memang berbeda - seperti Anda - juga bukan logika yang sempurna. Seseorang mungkin harus menemukan dan melaporkan bagaimana keduanya serupa. Atau, orang mungkin memilih metode yang paling mirip (seperti PCA vs PAF ) dan melaporkan dengan cara apa mereka berbeda.
ttnphns
1
PCA Hotelling memang menganggap gaussi laten.
Dugaan
1

Ada banyak jawaban bagus untuk posting ini tetapi baru-baru ini, saya menemukan perbedaan lain.

Clustering adalah salah satu aplikasi di mana PCA dan FA menghasilkan hasil yang berbeda. Ketika ada banyak fitur dalam data, seseorang mungkin berusaha menemukan arah PC teratas dan memproyeksikan data pada PC ini, kemudian melanjutkan dengan pengelompokan. Seringkali ini mengganggu cluster yang melekat dalam data - Ini adalah hasil yang terbukti dengan baik. Para peneliti menyarankan untuk melanjutkan dengan metode pengelompokan sub-ruang, yang mencari faktor laten dimensi rendah dalam model.

Hanya untuk menggambarkan perbedaan ini, pertimbangkan Crabsdataset dalam dataset R. Kepiting memiliki 200 baris dan 8 kolom, menggambarkan 5 pengukuran morfologis pada 50 kepiting masing-masing dari dua bentuk warna dan kedua jenis kelamin, dari spesies - Pada dasarnya ada 4 (2x2) kelas yang berbeda dari kepiting.

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)

Pengelompokan menggunakan PC1 dan PC2: masukkan deskripsi gambar di sini

Pengelompokan menggunakan PC2 dan PC3: masukkan deskripsi gambar di sini

#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

Seperti yang dapat kita lihat dari plot di atas, PC2 dan PC3 membawa informasi yang lebih diskriminatif daripada PC1.

Jika seseorang mencoba untuk mengelompokkan menggunakan faktor laten menggunakan Analisis Faktor Campuran, kami melihat hasil yang jauh lebih baik dibandingkan dengan menggunakan dua PC pertama.

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
kasa
sumber
Saya harus mengatakan bahwa saya ragu jawaban ini benar-benar menjawab pertanyaan itu. Jawabannya adalah tentang analisis cluster setelah PCA atau FA, bukan tentang PCA dan FA sendiri. Tetapi bahkan dalam hal itu jawabannya redup atau belum selesai. Bagaimana perbedaan yang Anda tampilkan harus dijelaskan?
ttnphns
@ttnphns Saya setuju dengan jawaban tentang analisis cluster. Namun, OP juga telah meminta skenario kehidupan nyata dengan PCA / FA di mana satu harus digunakan di atas yang lain. Biasanya PCA atau FA tidak pernah menjadi tujuan akhir - Untuk misalnya dalam ilmu sosial, tujuan akhir akan membagi subjek ke dalam kelompok / kelompok yang berbeda. Jawaban saya membahas skenario seperti itu. Jika Anda pikir jawaban saya dapat ditingkatkan, jangan ragu untuk menunjukkan.
kasa
Saya pikir jawaban Anda dapat menjadi sangat relevan jika Anda menjelaskan temuan Anda. Anda mengklaim bahwa perbedaan antara PCA dan FA adalah yang intrinsik untuk dua metode (hanya mereka menjadi jelas di bawah pengelompokan). Saya pikir Anda harus menunjukkan atau setidaknya berspekulasi bagaimana atau mengapa perbedaan muncul secara teoritis dari perbedaan model metode '.
ttnphns