PCA data non-Gaussian

20

Saya punya beberapa pertanyaan singkat tentang PCA:

  • Apakah PCA berasumsi bahwa dataset adalah Gaussian?
  • Apa yang terjadi ketika saya menerapkan PCA ke data non-linear yang inheren?

Diberikan dataset, prosesnya adalah untuk menormalkan rata-rata, mengatur varians ke 1, mengambil SVD, mengurangi peringkat, dan akhirnya memetakan dataset ke dalam ruang pengurangan peringkat yang baru. Di ruang baru, setiap dimensi sesuai dengan "arah" varians maksimal.

  • Tetapi apakah korelasi dataset itu di ruang baru selalu nol, atau apakah itu hanya berlaku untuk data yang secara inheren Gaussian?

Misalkan saya memiliki dua set data, "A" dan "B", di mana "A" sesuai dengan poin sampel yang diambil secara acak dari Gaussian, sedangkan "B" sesuai dengan poin yang diambil secara acak dari sampel distribusi lain (misalnya Poisson).

  • Bagaimana PCA (A) dibandingkan dengan PCA (B)?
  • Dengan melihat titik-titik di ruang baru, bagaimana saya menentukan bahwa PCA (A) sesuai dengan poin sampel dari Gaussian, sedangkan PCA (B) sesuai dengan poin sampel dari Poisson?
  • Apakah korelasi poin dalam "A" 0?
  • Apakah korelasi poin dalam "B" juga 0?
  • Lebih penting lagi, apakah saya mengajukan pertanyaan "benar"?
  • Haruskah saya melihat korelasinya, atau apakah ada metrik lain yang harus saya pertimbangkan?
Vishal
sumber
2
Lihat lampiran tentang asumsi PCA dalam makalah ini .
Diasumsikan normal

Jawaban:

17

Anda sudah memiliki beberapa jawaban yang baik di sini (+1 untuk keduanya @ Cam.Davidson.Pilon & @MichaelChernick). Biarkan saya membuang beberapa poin yang membantu saya untuk memikirkan masalah ini.

Pertama, PCA beroperasi di atas matriks korelasi. Jadi, menurut saya pertanyaan penting adalah apakah masuk akal menggunakan matriks korelasi untuk membantu Anda berpikir tentang data Anda. Sebagai contoh, korelasi product-moment Pearson menilai hubungan linier antara dua variabel; jika variabel Anda terkait, tetapi tidak linear, korelasinya bukan metrik yang ideal untuk mengindeks kekuatan hubungan. ( Berikut ini adalah diskusi yang bagus tentang CV tentang data korelasi dan tidak normal.)

Kedua, saya pikir cara termudah untuk memahami apa yang terjadi dengan PCA adalah Anda hanya memutar sumbu Anda. Anda dapat melakukan lebih banyak hal, tentu saja, dan sayangnya PCA menjadi bingung dengan analisis faktor (yang tentunya memiliki lebih banyak hal yang terjadi). Namun demikian, PCA tua biasa tanpa lonceng dan peluit, dapat dianggap sebagai berikut:

  • Anda memiliki beberapa titik diplot dalam dua dimensi pada selembar kertas grafik;
  • Anda memiliki transparansi dengan sumbu ortogonal digambar di atasnya, dan lubang jarum pada titik asal;
  • Anda pusatkan asal transparansi (yaitu, lubang jarum) di atas dan letakkan ujung pensil Anda melalui lubang jarum untuk menahannya; (x¯,y¯)
  • kemudian Anda memutar transparansi sampai titik (ketika diindeks berdasarkan sumbu transparansi bukan yang asli) tidak berkorelasi.

Ini bukan metafora yang sempurna untuk PCA (misalnya, kami tidak mengubah skala varian menjadi 1). Tetapi memberi orang ide dasar. Intinya sekarang adalah untuk menggunakan gambar itu untuk memikirkan bagaimana hasilnya jika data tidak Gaussian untuk memulai; itu akan membantu Anda memutuskan apakah proses ini layak dilakukan. Semoga itu bisa membantu.

gung - Reinstate Monica
sumber
2
+1 (dahulu kala). Saya pikir ini adalah jawaban terbaik di utas ini, semoga akan mengumpulkan satu lagi upvote untuk menjadi yang paling terunggul juga. Saya suka cara Anda menjelaskan PCA dengan transparansi, itu bagus.
Amoeba berkata Reinstate Monica
Omong-omong, jawaban Anda ini mengilhami jawaban saya baru-baru ini di utas awam besar PCA kami: Saya membuat animasi gif tersebut dengan analogi transparansi Anda.
Amoeba berkata Reinstate Monica
Itu jawaban yang bagus, @amoeba. Jauh lebih baik dari ini.
gung - Reinstate Monica
13

Saya dapat memberikan solusi parsial dan menunjukkan jawaban untuk Anda paragraf keduaw1w2Xw1Xw2X

CHaiv(Xw1,Xw2)=E[(Xw1)T(Xw2)]-E[Xw1]TE[Xw2]
wsayaX
w1TE[XTX]w2=VSebuahr(X)w1Tw2=0
wsayaVSebuahr(X)

XXwXXw

α

Cam.Davidson.Pilon
sumber
7

Tidak ada linearitas atau normalitas yang diasumsikan dalam PCA. Idenya adalah hanya menguraikan variasi dalam dataset p-dimensi menjadi komponen ortogonal yang dipesan sesuai dengan jumlah varian yang dijelaskan.

Michael R. Chernick
sumber
2
Benar tetapi "mendekomposisi variasi dalam dataset p-dimensi menjadi komponen ortogonal" tidak terlalu berguna ketika ada dependensi non-linear antara variabel karena ortogonisasi biasanya dilakukan sehingga Anda dapat berdebat bahwa dimensi tidak berhubungan (yang merupakan juga terkait dengan bagian Gaussian dari pertanyaan). Ketika Anda melakukan PCA dan berencana untuk menafsirkan hasil dengan cara biasa, ada asumsi yang mendasari bahwa data hidup dalam ruang bagian linear dimensi yang lebih rendah .
Makro
2
@ Macro Tidak persis. Saya akan mengatakan bahwa asumsi yang mendasarinya adalah bahwa setidaknya sebagian besar variabilitas dan karenanya pola data terkonsentrasi di beberapa ruang dimensi yang lebih rendah. Saya dapat melihat parabola dengan sangat baik dalam ruang 2 dimensi dengan komponen ortogonal. Saya pikir bentuk nonlinear dapat dilihat dalam dua atau tiga dimensi. Jika data berasal dari distribusi Gaussian multivariat, maka dalam beberapa subruang titik-titik tersebut akan terlihat seperti awan ellipsoidal. Distribusi tidak harus terlihat seperti ellipsoid agar tampilan di subruang PC tinggi menjadi menarik.
Michael R. Chernick
4
Saya akan memenuhi syarat ini sedikit. Tidak ada asumsi normal pada PCA klasik atau PCA oleh SVD. Namun, algoritma EM untuk menghitung PCA dengan data yang hilang akan mengasumsikan normalitas dan linieritas.
John
Sementara jalan klasik ke PCA tidak memerlukan asumsi, ada jalan lain untuk solusinya yang tidak: PCA probabilistik dengan 0 noise pengukuran.
bayerj
3

Baca halaman 7 di sini:

http://www.cs.princeton.edu/picasso/mats/PCA-Tutorial-Intuition_jp.pdf

mereka mencatat bahwa PCA mengasumsikan bahwa distribusi apa pun yang kami jelaskan dapat dijelaskan dengan rata-rata (nol) dan varian saja, yang mereka katakan hanya distribusi normal.

(Pada dasarnya selain jawaban Cam, tapi aku tidak punya cukup reputasi untuk berkomentar:)

pengguna3264325
sumber
1
Tautan yang Anda berikan ke tutorial Shlens adalah untuk versi 1 dari tutorial, tetapi versi 3.02 (versi final?) Sekarang tersedia, dan titik spesifik ini telah dihapus. Juga, pertanyaan ini menanyakan persis tentang itu.
Oren Milman
0

Sejauh yang saya tahu, PCA tidak menganggap normalitas data. Tetapi jika terdistribusi secara normal (dalam arti yang lebih umum, terdistribusi secara simetris), maka hasilnya lebih kuat. Seperti yang orang lain katakan, kuncinya adalah PCA didasarkan pada matriks koefisien korelasi Pearson, yang perkiraannya dipengaruhi oleh pencilan dan distribusi miring. Jadi dalam beberapa analisis yang terlibat, seperti uji statistik atau nilai-p, maka Anda harus lebih peduli tentang apakah normalitas terpenuhi; tetapi dalam aplikasi lain seperti analisis eksplorasi, Anda dapat menggunakannya tetapi hanya berhati-hati saat membuat interpretasi.

KarlHuang
sumber
-1

Setuju dengan orang lain yang mengatakan data harus "Biasanya" didistribusikan. Distribusi apa pun akan tumpang tindih dengan distribusi normal jika Anda mengubahnya. Jika distribusi Anda tidak normal, hasil yang Anda dapatkan akan lebih rendah dibandingkan dengan kasus ketika itu normal, seperti yang dinyatakan oleh beberapa di sini ...

  • Anda dapat mengubah distribusi Anda jika perlu.
  • Anda dapat memilih PCA dan menggunakan Analisis Komponen Independen (ICA) sebagai gantinya.

Jika Anda membaca referensi di jawaban pertama, di bagian Lampiran itu menyatakan bahwa asumsi adalah distribusi normal.

Abu
sumber