Mengapa log-mentransformasikan data sebelum melakukan analisis komponen utama?


16

Saya mengikuti tutorial di sini: http://www.r-bloggers.com/computing-and-visualizing-pca-in-r/ untuk mendapatkan pemahaman yang lebih baik tentang PCA.

Tutorial menggunakan dataset Iris dan menerapkan transformasi log sebelum ke PCA:

Perhatikan bahwa dalam kode berikut ini kami menerapkan transformasi log ke variabel kontinu seperti yang disarankan oleh [1] dan mengatur centerdan scalesama dengan TRUEdalam panggilan prcompuntuk membakukan variabel sebelum penerapan PCA.

Bisakah seseorang menjelaskan kepada saya dalam bahasa Inggris sederhana mengapa Anda pertama kali menggunakan fungsi log pada empat kolom pertama dari dataset Iris. Saya mengerti ini ada hubungannya dengan membuat data relatif tetapi saya bingung apa sebenarnya fungsi log, pusat dan skala.

Referensi [1] di atas adalah Venables dan Ripley, Statistik terapan modern dengan S-PLUS , Bagian 11.1 yang secara singkat mengatakan:

Data adalah pengukuran fisik, jadi strategi awal yang baik adalah bekerja pada skala log. Ini telah dilakukan sepanjang.


Jawaban:


19

Kumpulan data iris adalah contoh yang bagus untuk mempelajari PCA. Yang mengatakan, empat kolom pertama yang menggambarkan panjang dan lebar sepal dan kelopak bukan contoh data yang sangat miring. Oleh karena itu log-transformasi data tidak banyak mengubah hasil, karena rotasi yang dihasilkan dari komponen-komponen utama cukup tidak berubah oleh log-transformasi.

Dalam situasi lain, transformasi log adalah pilihan yang baik.

Kami melakukan PCA untuk mendapatkan wawasan tentang struktur umum dari kumpulan data. Kami memusatkan, menskalakan, dan terkadang log-transform untuk menyaring beberapa efek sepele, yang dapat mendominasi PCA kami. Algoritma PCA pada gilirannya akan menemukan rotasi setiap PC untuk meminimalkan residu kuadrat, yaitu jumlah jarak tegak lurus kuadrat dari sampel ke PC. Nilai besar cenderung memiliki leverage yang tinggi.

Bayangkan menyuntikkan dua sampel baru ke dalam data iris. Bunga dengan panjang kelopak 430 cm dan bunga dengan panjang kelopak 0,0043 cm. Kedua bunga ini sangat abnormal, masing-masing 100 kali lebih besar dan 1000 kali lebih kecil daripada rata-rata. Leverage bunga pertama sangat besar, sehingga PC pertama sebagian besar akan menjelaskan perbedaan antara bunga besar dan bunga lainnya. Pengelompokan spesies tidak dimungkinkan karena spesies yang outlier. Jika data ditransformasi-log, nilai absolut sekarang menjelaskan variasi relatif. Sekarang bunga kecil adalah yang paling abnormal. Meskipun demikian dimungkinkan untuk keduanya mengandung semua sampel dalam satu gambar dan memberikan pengelompokan spesies yang adil. Lihat contoh ini:

data(iris) #get data
#add two new observations from two new species to iris data
levels(iris[,5]) = c(levels(iris[,5]),"setosa_gigantica","virginica_brevis")
iris[151,] = list(6,3,  430  ,1.5,"setosa_gigantica") # a big flower
iris[152,] = list(6,3,.0043,1.5  ,"virginica_brevis") # a small flower

#Plotting scores of PC1 and PC" without log transformation
plot(prcomp(iris[,-5],cen=T,sca=T)$x[,1:2],col=iris$Spec)

masukkan deskripsi gambar di sini

#Plotting scores of PC1 and PC2 with log transformation
plot(prcomp(log(iris[,-5]),cen=T,sca=T)$x[,1:2],col=iris$Spec)

masukkan deskripsi gambar di sini


2
Demo dan plot yang bagus.
shadowtalker

3

Nah, jawaban yang lain memberi contoh, ketika log-transform digunakan untuk mengurangi pengaruh nilai ekstrim atau outlier.
Argumen umum lainnya terjadi, ketika Anda mencoba menganalisis data yang ada dikomposisikan secara berganda alih-alih menambah - PCA dan model FA dengan matematika mereka komposisi aditif tersebut. Multiplikatifkomposisi terjadi dalam kasus paling sederhana dalam data fisik seperti permukaan dan volume benda (secara fungsional) bergantung pada (misalnya) tiga parameter panjang, lebar, kedalaman. Seseorang dapat mereproduksi komposisi contoh bersejarah PCA awal, saya pikir itu disebut "masalah Ball- (atau 'Cubes'-) Thurstone" atau sejenisnya. Suatu kali saya bermain dengan data dari contoh itu dan menemukan bahwa data yang ditransformasi log memberikan model yang jauh lebih baik dan lebih jelas untuk komposisi volume yang diukur dan data permukaan dengan tiga ukuran satu dimensi.

Selain contoh-contoh sederhana seperti itu, jika kita mempertimbangkan dalam interaksi data penelitian sosial , maka kita biasanya memikirkannya dan juga mengukur secara majemuk pengukuran item-item yang lebih elementer. Jadi jika kita melihat interaksi secara spesifik, log-transform mungkin menjadi alat bantu khusus untuk mendapatkan model matematika untuk de-komposisi.


Bisakah Anda menuliskan beberapa referensi yang dapat menjelaskan komposisi "multiplikatif" dengan lebih baik? Terima kasih banyak!
Amatya

1
@ Amatya - Saya tidak menemukan "thurstone-box-problem", tetapi diskusi situs (Jerman) pada kubus, yang berisi lebar, panjang, tinggi sebagai item dasar dan permukaan dan volume sebagai item tambahan yang digandakan secara multiplikasi. Mungkin formula yang disertakan untuk definisi sudah cukup. Lihat sgipt.org/wisms/fa/Quader/q00.htm
Gottfried Helms

1
Ah, dan saya lupa - diskusi lama saya tentang go.helms-net.de/stat/fa/SGIPT_Quader.htm
Gottfried Helms

@ GottfriedHelms Saya masih tidak benar-benar mengerti mengapa jika kita menstandarisasi variabel, kita juga perlu log-transform mereka. Saya mengerti prinsip umum mengurangi pengaruh yang tidak diinginkan dari ekstrim outliers, tetapi jika kita sudah menstandarkan (centering, scaling) mereka, sepertinya log mentransformasikannya juga sebenarnya mendistorsi data.
Yu Chen

@YuChen - transformasi log apa pun mengubah komposisi multiplikatif menjadi komposisi aditif , dan komposisi aditif adalah asumsi dasar (selain linearitas, dll.) Dari semua jenis komponen dan analisis faktor. Jadi, jika data Anda memiliki komposisi multiplikatif di dalamnya, log-transform harus menjadi opsi yang layak dipertimbangkan.
Gottfried Helms
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.