Mengapa PCA memaksimalkan varian total dari proyeksi?

10

Christopher Bishop menulis dalam bukunya Pattern Recognition dan Machine Learning sebagai bukti, bahwa setiap komponen utama berturut-turut memaksimalkan varian proyeksi ke satu dimensi, setelah data diproyeksikan ke ruang ortogonal ke komponen yang sebelumnya dipilih. Lainnya menunjukkan bukti serupa.

Namun, ini hanya membuktikan bahwa setiap komponen berturut-turut adalah proyeksi terbaik untuk satu dimensi, dalam hal memaksimalkan varians. Mengapa ini menyiratkan, bahwa varian dari proyeksi untuk mengatakan 5 dimensi dimaksimalkan memilih komponen seperti pertama?

michal
sumber
Bisakah Anda memberi tahu kami secara tepat apa yang dimaksud dengan "varian" dari dataset lima dimensi yang dihasilkan dari proyeksi dataset menjadi lima dimensi? (Agar jumlah yang demikian dapat
dimaksimalkan,
3
Poin yang sangat bagus. Chris Bishop dalam bukunya mengacu pada meminimalkan varians dari proyeksi dan tidak terlalu jelas apa artinya untuk lebih dari 1 dimensi. Saya ingin belajar bagaimana varians diminimalkan dan mengapa prosedur seperti itu meminimalkannya bersama-sama.
michal
1
@ user123675: Dalam komentar terakhir Anda, Anda mungkin berarti "memaksimalkan", bukan "meminimalkan".
amoeba
Ya kamu benar. Maaf!
michal

Jawaban:

10

Apa yang dipahami oleh varians dalam beberapa dimensi ("total variance") hanyalah sejumlah varian di setiap dimensi. Secara matematis, ini adalah jejak dari matriks kovarians: jejak hanyalah jumlah dari semua elemen diagonal. Definisi ini memiliki berbagai sifat yang bagus, misalnya jejak tidak berubah di bawah transformasi linear ortogonal, yang berarti bahwa jika Anda memutar sumbu koordinat Anda, varian total tetap sama.

Apa yang dibuktikan dalam buku Bishop (bagian 12.1.1), adalah bahwa vektor eigen terkemuka dari matriks kovarians memberikan arah varian maksimal. Vektor eigen kedua memberikan arah varians maksimal di bawah batasan tambahan bahwa itu harus ortogonal ke vektor eigen pertama, dll. (Saya percaya ini merupakan Latihan 12.1). Jika tujuannya adalah untuk memaksimalkan varians total dalam subruang 2D, maka prosedur ini adalah maksimalisasi serakah: pertama pilih satu sumbu yang memaksimalkan varians, lalu yang lain.

Pertanyaan Anda adalah: mengapa prosedur serakah ini mencapai maksimum global?

Berikut adalah argumen yang bagus yang @whuber sarankan dalam komentar. Mari kita selaraskan sistem koordinat dengan sumbu PCA. Matriks kovarians menjadi diagonal: . Untuk kesederhanaan kami akan mempertimbangkan kasus 2D yang sama, yaitu apa bidang dengan varians total maksimal? Kami ingin membuktikan bahwa itu adalah bidang yang diberikan oleh dua vektor basis pertama (dengan varian total ).Σ=diag(λi)λ1+λ2

Pertimbangkan pesawat yang direntang oleh dua vektor ortogonal dan . Varians total dalam pesawat ini adalahJadi ini adalah kombinasi linear dari nilai eigen dengan koefisien yang semuanya positif, tidak melebihi (lihat di bawah), dan jumlah ke . Jika demikian, maka hampir jelas bahwa maksimum tercapai di .uv

uΣu+vΣv=λiui2+λivi2=λi(ui2+vi2).
λi12λ1+λ2

Hanya dibiarkan menunjukkan bahwa koefisien tidak boleh melebihi . Perhatikan bahwa , di mana adalah vektor basis -th. Kuantitas ini adalah panjang kuadrat dari proyeksi pada bidang yang direntang oleh dan . Oleh karena itu harus lebih kecil dari panjang kuadrat dari yang sama dengan , QED.1uk2+vk2=(uk)2+(vk)2kkkuvk|k|2=1

Lihat juga jawaban @ cardinal untuk Apa fungsi objektif PCA? (Ini mengikuti logika yang sama).

amuba
sumber
1
(+1) Tetapi apakah tidak jelas secara intuisi bahwa memberikan koleksi dompet dari berbagai jumlah uang tunai (memodelkan nilai eigen non-negatif), dan angka tetap yang dapat Anda pilih, bahwa memilih dompet terkaya akan memaksimalkan total Anda tunai? Bukti bahwa intuisi ini benar hampir sepele: jika Anda belum mengambil terbesar, maka Anda dapat meningkatkan jumlah Anda dengan menukar yang terkecil yang Anda ambil dengan jumlah yang lebih besar. kkk
whuber
@amoeba: jika tujuannya adalah untuk memaksimalkan jumlah dari varians dan bukan varians dari jumlah, tidak ada alasan untuk proyeksi kedua menjadi ortogonal ke yang pertama.
Innuo
1
Saya minta maaf - saya pikir Anda sudah mengembangkan analisis sampai mengakui bahwa varians total dalam subruang -dimensi adalah kombinasi linear non-negatif dari nilai eigen, di mana tidak ada koefisien yang dapat melebihi dan total koefisien sama dengan . (Itu masalah perkalian matriks sederhana - Pengganda lagrange tidak diperlukan.) Itu kemudian membawa kita ke metafora dompet. Saya setuju bahwa beberapa analisis semacam itu harus dilakukan. k1k
whuber
1
@amoeba: Maksud saya kita sedang mempertimbangkan masalah dalam basis yang terdiri dari vektor eigen (ini adalah basis dari u dan v jika kita menghitung variansnya dengan mengalikannya dengan matriks kovarians diagonal). u dan v pada akhirnya akan menjadi mereka, tetapi pada tahap pembuktian ini kita tidak seharusnya menganggap ini saya pikir. Bukankah seharusnya argumennya adalah, bahwa jika suatu saat jumlah itu lebih besar dari 1, maka 2 vektor tidak akan menjadi ortogonal lagi, karena basisnya ortogonal dan masing-masing vektor menghasilkan paling banyak 1? Tetapi sekali lagi, mengapa kita membatasi diri kita pada vektor ortogonal u dan v?
michal
1
@ Heisenberg: Ah, saya mengerti! Tidak, tentu saja saya tidak bermaksud seperti itu! Tapi sekarang saya mengerti mengapa itu membingungkan. Saya menulis ulang bukti terakhir ini untuk menghilangkan langkah "memilih basis" ini. Silakan lihat edit saya. Terima kasih.
amoeba
2

Jika Anda memiliki variabel acak tidak berkorelasi diurutkan dalam urutan varians mereka dan diminta untuk memilih dari mereka sedemikian rupa sehingga varian jumlah mereka dimaksimalkan, apakah Anda setuju bahwa pendekatan rakus memilih pertama akan mencapai itu?Nkk

Data yang diproyeksikan ke vektor eigen dari matriks kovariannya pada dasarnya adalah kolom yang tidak berkorelasi dan variansnya sama dengan nilai eigen masing-masing.N

Agar intuisi menjadi lebih jelas, kita perlu menghubungkan maksimalisasi varians dengan menghitung vektor eigen dari matriks kovarians dengan nilai eigen terbesar, dan menghubungkan proyeksi ortogonal untuk menghilangkan korelasi.

Relasi kedua jelas bagi saya karena koefisien korelasi antara dua (nol berarti) vektor sebanding dengan produk dalam mereka.

Hubungan antara memaksimalkan varians dan dekomposisi eigen dari matriks kovarians adalah sebagai berikut.

Asumsikan bahwa adalah matriks data setelah memusatkan kolom. Kita perlu menemukan arah varians maksimum. Untuk setiap vektor satuan , varians setelah memproyeksikan sepanjang adalahDvv

E[(Dv)tDv]=vtE[DtD]v=vtCov(D)v

yang dimaksimalkan jika adalah vektor eigen dari sesuai dengan nilai eigen terbesar.vCov(D)

Innuo
sumber
Pertanyaan aslinya adalah: pilih kombinasi linear ortogonal dari mereka (bukan dari mereka) sehingga jumlah varians mereka dimaksimalkan. Apakah masih jelas bahwa pendekatan rakus memilih pertama mencapai itu? kkk
amoeba
Menemukan kombinasi linear ortogonal dan kemudian memilih varian paling pertama dari mereka adalah apa yang dijelaskan oleh proses (secara longgar). Jawaban saya hanya mengklaim bahwa ortogonalitas adalah apa yang cukup untuk proses serakah untuk mencapai tujuan memaksimalkan varian total. Nk
Innuo
Saya tidak yakin saya mengikuti argumen. Bagaimana masalah ortogonalitas? Jika Anda memiliki variabel dan harus memilih dengan varians total tertinggi, Anda harus memilih dengan varians tertinggi (terlepas dari apakah mereka berkorelasi atau tidak). Nkk
amoeba
Ah, saya mengerti kebingungannya. Ada salah ketik dalam jawaban saya. Diperbaiki sekarang
Innuo
Saya pikir Anda mungkin tertarik pada sesuatu di sini, tetapi penampilan ajaib dari jumlah itu perlu dijelaskan. Apa relevansi yang dimiliki PCA atau bahkan dengan dekomposisi spektral?
whuber