Jika dalam kernel PCA saya memilih kernel linear , apakah hasilnya akan berbeda dari PCA linear biasa ? Apakah solusinya berbeda secara mendasar atau apakah ada hubungan yang didefinisikan dengan baik?
sumber
Jika dalam kernel PCA saya memilih kernel linear , apakah hasilnya akan berbeda dari PCA linear biasa ? Apakah solusinya berbeda secara mendasar atau apakah ada hubungan yang didefinisikan dengan baik?
Rangkuman: kernel PCA dengan kernel linier persis sama dengan PCA standar.
Biarkan menjadi matriks data terpusat ukuran dengan variabel di kolom dan titik data dalam baris. Kemudian matriks kovarians diberikan oleh , vektor eigennya adalah sumbu utama dan nilai eigen adalah varian PC. Pada saat yang sama, seseorang dapat mempertimbangkan disebut Gram matrix dari ukuran. Mudah untuk melihat bahwa ia memiliki nilai eigen yang sama (yaitu varians PC) hingga faktor , dan vektor eigennya merupakan komponen utama yang diskalakan ke unit norma. N × D D N D × D X ⊤ X / ( n - 1 ) X X ⊤ N × N n - 1
Ini adalah PCA standar. Sekarang, dalam kernel PCA kami mempertimbangkan beberapa fungsi yang memetakan setiap titik data ke ruang vektor lain yang biasanya memiliki dimensi lebih besar , bahkan mungkin tak terhingga. Gagasan PCA kernel adalah untuk melakukan PCA standar di ruang baru ini.D n e w
Karena dimensi ruang baru ini sangat besar (atau tidak terbatas), sulit atau tidak mungkin untuk menghitung matriks kovarians. Namun, kita dapat menerapkan pendekatan kedua untuk PCA yang diuraikan di atas. Memang, matriks Gram masih akan memiliki ukuran dapat dikelola yang sama . Elemen-elemen dari matriks ini diberikan oleh , yang akan kita sebut fungsi kernel . Inilah yang dikenal sebagai trik kernel : seseorang sebenarnya tidak perlu menghitung , tetapi hanya . Vektor eigen dari matriks Gram ini akan menjadi komponen utama dalam ruang target, yang kami minati.
Jawaban atas pertanyaan Anda sekarang menjadi jelas. Jika , maka matriks Gram kernel berkurang menjadi yang sama dengan matriks Gram standar , dan karenanya komponen-komponen utama tidak akan berubah.X X ⊤
Referensi yang sangat mudah dibaca adalah Scholkopf B, Smola A, dan Müller KR, analisis komponen utama Kernel, 1999 , dan perhatikan bahwa misalnya dalam Gambar 1, mereka secara eksplisit merujuk ke PCA standar sebagai yang menggunakan produk titik sebagai fungsi kernel:
Selain jawaban bagus amoeba, ada cara yang bahkan lebih sederhana untuk melihat kesetaraan. Sekali lagi biarkan menjadi matriks data ukuran N × D dengan variabel D dalam kolom dan titik data N dalam baris. Standar PCA sesuai dengan mengambil nilai dekomposisi singular dari matriks X = U Σ V ⊤ dengan U komponen utama dari X . Dekomposisi nilai singular dari kernel linear X X ⊤ = U Σ 2 U ⊤X N×D D N X=UΣV⊤ U X XX⊤=UΣ2U⊤ memiliki vektor singular kiri yang sama dan komponen utama yang sama.
sumber
Tampak bagi saya bahwa KPCA dengan kernel linear harus sama dengan PCA sederhana.
Matriks kovarian yang akan Anda dapatkan dari nilai eigennya adalah sama:
Anda dapat memeriksa dengan lebih detail di sini .
sumber