Apakah PCA tidak stabil di bawah multikolinieritas?


25

Saya tahu bahwa dalam situasi regresi, jika Anda memiliki satu set variabel yang sangat berkorelasi ini biasanya "buruk" karena ketidakstabilan dalam koefisien yang diperkirakan (varians menuju infinity sebagai determinan menuju nol).

Pertanyaan saya adalah apakah "kejahatan" ini tetap ada dalam situasi PCA. Apakah vektor koefisien / beban / bobot / eigen untuk PC tertentu menjadi tidak stabil / arbitrer / non-unik karena matriks kovarians menjadi tunggal? Saya terutama tertarik pada kasus di mana hanya komponen utama pertama dipertahankan, dan semua yang lain diberhentikan sebagai "kebisingan" atau "sesuatu yang lain" atau "tidak penting".

Saya tidak berpikir begitu, karena Anda hanya akan dibiarkan dengan beberapa komponen utama yang memiliki nol, atau mendekati nol varians.

Mudah untuk melihat ini bukan kasus dalam kasus ekstrim sederhana dengan 2 variabel - misalkan mereka berkorelasi sempurna. Kemudian PC pertama akan menjadi hubungan linier yang tepat, dan PC kedua akan tegak lurus dengan PC pertama, dengan semua nilai PC sama dengan nol untuk semua pengamatan (yaitu nol varians). Ingin tahu apakah ini lebih umum.


8
Alasanmu bagus. Sebenarnya, orang akan mengharapkan ketidakstabilan terjadi ketika dua atau lebih nilai eigen hampir bersamaan, untuk saat itu meskipun nilai eigen ditentukan, vektor eigen tidak, dan oleh karena itu tidak ada beban. Untuk alasan numerik, ada juga ketidakstabilan dalam nilai eigen (dan vektor eigen) yang ukurannya sangat kecil dibandingkan dengan nilai eigen maksimum.
whuber

@whuber komentar menjawab pertanyaan Anda, tetapi saya ingin mencatat bahwa dalam kasus 2 variabel berkorelasi sempurna, PCA seharusnya tidak memiliki masalah. Matriks kovarians akan berada pada peringkat 1, sehingga hanya akan ada 1 nilai eigen nol, karenanya hanya 1 PC. Variabel asli akan menjadi kelipatan dari PC ini. Satu-satunya masalah adalah stabilitas numerik.
mpiktas

Bahkan, saya pikir Anda akan lebih buruk jika Anda memiliki variabel berkorelasi sedang daripada ketika Anda punya variabel yang sangat berkorelasi. Secara numerik juga, jika Anda menggunakan algoritme seperti NIPALS yang menghapus PC secara berurutan
JMS

Satu hal - "sangat berkorelasi" dan "colinear" tidak sama. Jika ada lebih dari 2 variabel yang terlibat, kolinearitas tidak menyiratkan korelasi.
Peter Flom - Reinstate Monica

Jawaban:


11

Jawabannya mungkin diberikan dalam istilah yang lebih sederhana: regresi berganda memiliki satu langkah lebih banyak daripada pca jika dilihat dari segi aljabar linier, dan dari langkah kedua ketidakstabilan muncul:

Langkah pertama pca dan mult. regresi dapat dilihat sebagai anjak dari korelasi-matriks menjadi dua faktor Cholesky L L t , yang segitiga -dan yang acuh tak acuh terhadap rendah atau korelasi yang tinggi. (Pca kemudian dapat dilihat sebagai rotasi faktor cholesky (segitiga) ke posisi pc (ini disebut rotasi Jacobi sejauh yang saya ingat) RLLt

Mult. prosedur regresi adalah untuk menerapkan inversi faktor cholesky minus baris dan kolom variabel dependen, yang dengan mudah berada di baris terakhir dari matriks korelasi. Ketidakstabilan berperan di sini: jika variabel independen sangat berkorelasi, maka diagonal dari faktor cholesky L dapat merosot ke nilai numerik yang sangat kecil - dan untuk membalikkan yang memperkenalkan maka masalah pembagian hampir nol.L
L


Ini kira-kira yang saya cari. Bahkan, setelah membaca jawaban Anda membuat saya memikirkan penjelasan lain: rotasi secara numerik stabil, terlepas dari penentu matriks kovarians / korelasi. Dan karena PCA dapat dibingkai sebagai menemukan rotasi terbaik dari sumbu koordinat, itu juga akan stabil secara numerik.
probabilityislogic

Ya, misalnya dalam "fondasi factoranalysis" milik Stan Mulaik, stabilitas rotasi pc (metode Jacobi) disebutkan secara jelas, jika saya mengingat sumbernya dengan benar. Dalam implementasi analisis faktor saya sendiri, saya melakukan semuanya setelah cholesky melalui rotasi: PCA, Varimax, bahkan "anjak sumbu utama" (PAF dalam SPSS) dapat dibangun kembali berdasarkan rotasi. Jika regresi mult didasarkan pada faktor cholesky L dan bagian L yang berisi variabel independen berada di posisi PC, maka multikolinieritas bahkan dapat dikontrol dengan lebih baik.
Gottfried Helms

3

PCA sering merupakan sarana untuk mencapai tujuan; mengarah ke input ke regresi berganda atau untuk digunakan dalam analisis kluster. Saya pikir dalam kasus Anda, Anda berbicara tentang menggunakan hasil PCA untuk melakukan regresi.

Dalam hal ini, tujuan Anda melakukan PCA adalah untuk menghilangkan mulitcollinearity dan mendapatkan input ortogonal untuk regresi berganda, tidak mengherankan ini disebut Regresi Komponen Utama. Di sini, jika semua input asli Anda ortogonal maka melakukan PCA akan memberi Anda satu set input ortogonal. Karena itu; jika Anda melakukan PCA, orang akan menganggap bahwa input Anda memiliki multikolinieritas.

λi^ithλi^p

Referensi

Johnson & Wichern (2001). Analisis Statistik Multivariat Terapan (Edisi 6). Prentice Hall.


6
Saya tidak yakin OP mengejar PCR. PCA juga merupakan cara yang baik untuk meringkas kumpulan data multivarian (tidak harus untuk melakukan reduksi data untuk penggunaan selanjutnya dalam kerangka pemodelan), yang merupakan perkiraan matriks VC ke urutan lebih rendah sambil mempertahankan sebagian besar informasi. Pertanyaannya tampaknya: Apakah saya benar ketika menafsirkan beberapa nilai eigen dan PC pertama (sebagai kombinasi linear dari variabel asli) bahkan jika ada beberapa efek collinearity? Respons Anda tampaknya tidak langsung menjawab pertanyaan OP.
chl

2
jawaban yang bagus tentang PCA secara umum, tetapi bagaimana dengan kapan PCA adalah produk akhir ? Artinya, tujuannya adalah untuk output PC tunggal. @ Chl benar tentang uang dengan interpretasinya atas pertanyaan
probabilityislogic

@chl Apa tanggapan Anda terhadap pertanyaan: "Apakah saya benar ketika menginterpretasikan beberapa nilai eigen dan PC pertama, bahkan jika ada beberapa efek collinearity?" Saya bertanya karena saya mencoba mencari tahu kapan ide yang baik untuk menjaga variabel yang sangat berkorelasi ketika melakukan pengurangan dimensi. Terkadang ketika kita tahu dari teori bahwa dua variabel didorong oleh variabel laten yang sama maka Anda harus menghapus salah satu variabel untuk tidak menghitung efek dari variabel laten dua kali. Saya mencoba memikirkan kapan ok untuk menjaga variabel yang berkorelasi.
Amatya
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.