Analisis komponen utama (Principal Component Analysis)
-
Upload
indah-fitri-hapsari -
Category
Data & Analytics
-
view
2.383 -
download
4
description
Transcript of Analisis komponen utama (Principal Component Analysis)
Indah Nurina F.H/10110094/Institut Teknologi Bandung 2010
1
Analisis Komponen Utama
(Principal component analysis)
A. LANDASAN TEORI
Misalkan ๐ merupakan matriks berukuran ๐๐ฅ๐, dengan baris-baris yang berisi observasi sebanyak ๐
dari ๐-variat variabel acak ๐. Analisis komponen utama merupakan salah satu metode untuk mereduksi
dimensi dari variabel acak ๐. Reduksi dimensi dilakukan dengan mendefinisikan p-variat variabel acak baru
๐ dimana masing masing ๐๐ , ๐ = 1, โฆ , ๐ merupakan kombinasi linear dari p-variat variabel acak ๐,
sehingga informasi yang dimiliki oleh p-variat variabel acak ๐ tetap termuat pada masing-masing anggota
dari p-variat variabel acak baru ๐. Dengan demikian, dapat kita pilih beberapa anggota dari p-variat variabel
acak ๐ sebagai bentuk reduksi dari p-variat variabel acak ๐ tanpa menghilangkan terlalu banyak informasi.
Proses pendefinisian p-varait variabel acak ๐ sering disebut juga pembobotan, dimana:
๐๐ = ๐ฟฮค๐ = ๐ฟ๐
๐
๐=1
๐๐ , ๐ = 1, โฆ . ๐ sehingga ๐ฟ๐2
๐
๐=1
= 1
Dengan ๐ = (๐1 ,๐2 , โฆ , ๐๐)ฮค dan ๐ฟ = (๐ฟ1 , ๐ฟ2 , โฆ , ๐ฟ๐)ฮค . (๐ฟ disebut dengan vektor pembobotan)
Agar variabel acak baru ๐ mampu mewakili variasi dari ๐-variat variabel acak ๐ , akan dipilih arah-arah ๐ฟ
sehingga ๐ฟฮค๐ memiliki variansi yang besar:
๐๐๐ ๐ฟฮค๐ = ๐ฟ : ๐ฟ =1 ๐๐๐ฅ ๐ฟฮค ๐๐๐ ๐ ๐ฟ ๐ฟ: ๐ฟ =1
๐๐๐ฅ = ๐ฟฮค (๐ฅ๐ โ ๐)๐(๐ฅ๐ โ ๐)๐
๐=1 ๐ฟ ๐ฟ : ๐ฟ =1
๐๐๐ฅ
= ((๐ฅ๐ โ ๐). ๐ฟ)2
๐
๐=1
[๐ฟ : ๐ฟ =1]๐๐๐ฅ
Dapat dilihat dari persamaan diatas bahwa memaksimumkan variansi dari ๐ฟฮค๐ sama saja dengan
memaksimumkan jumlahan dari kuadrat panjang proyeksi (๐ฅ๐ โ ๐) pada ๐ฟ.
Dari ilustrasi gambar di samping, karena jarak ke pusat ordinat selalu
konstan, dapat disimpulkan bahwa memaksimumkan jumlahan
kuadrat panjang proyeksi sama saja dengan meminimumkan jarak
antara titik yang akan diproyeksikan (๐ฅ๐ โ ๐) dengan vektor ๐ฟ. Hal
ini lah yang membedakan konsep dari Principal Component analisis
dengan regresi. Untuk lebih jelasnya dapat dilihat pada gambar
berikut.
PCA Regresi
Ket: adalah panjang garis yang diminimumkan
Indah Nurina F.H/10110094/Institut Teknologi Bandung 2010
2
Sumber: http://www.cerebralmastication.com/2010/09/principal-component-analysis-pca-vs-ordinary-
least-squares-ols-a-visual-explination/
Dari persamaan yang telah dipaparkan sebelumnya, memaksimumkan variansi dari proyeksi, yaitu
๐๐๐ ๐ฟฮค๐ sama saja dengan memaksimumkan nilai dari ๐ฟฮค ๐๐๐ ๐ ๐ฟ. Untuk memaksimumkan nilai dari
๐ฟฮค ๐๐๐ ๐ ๐ฟ, kita gunakan teorema berikut:
Teorema
Jika ๐ด dan ๐ต merupakan matriks simetri, dan ๐ต > 0, maka nilai maksimum dari ๐ฅ๐๐ด ๐ฅ
๐ฅ๐๐ต ๐ฅ diberikan oleh nilai
eigen terbesar dari ๐ตโ1๐ด. Secara umum,
max๐ฅ๐๐ด ๐ฅ
๐ฅ๐๐ต ๐ฅ= ๐1 โฅ ๐2 โฅ โฏ โฅ ๐๐ = min
๐ฅ๐๐ด ๐ฅ
๐ฅ๐๐ต ๐ฅ
Dimana ๐1 ,๐2 ,โฆ , ๐๐ menotasikan nilai eigen dari ๐ตโ1๐ด. Vektor yang meminimumkan (memaksimumkan)
๐ฅ๐๐ด ๐ฅ
๐ฅ๐๐ต ๐ฅ merupakan vektor eigen dari ๐ตโ1๐ด yang memiliki nilai eigen terkecil (terbesar). Jika ๐ฅ๐๐ต ๐ฅ = 1, maka:
max ๐ฅ๐๐ด ๐ฅ = ๐1 โฅ ๐2 โฅ โฏ โฅ ๐๐ = min๐ฅ๐๐ด ๐ฅ
Berdasarkan teorema diatas, karena ๐๐๐ ๐ merupakan matriks simetri, maka nilai dari ๐ฟฮค ๐๐๐ ๐ ๐ฟฮค
yang terbesar sama dengan nilai eigen value terbesar dari matriks kovariansi = ๐๐๐ ๐ . Secara umum:
= ฮ ฮ ฮ๐ = ๐๐๐พ๐๐พ๐๐
๐
๐=1
ฮ = ๐๐๐๐๐๐๐๐(๐1 ,๐2 , ๐3 ,โฆ , ๐๐)
ฮ = (ฮณ1 , ฮณ2 ,โฆ , ฮณp )
max ๐ฟฮค ๐๐๐ ๐ ๐ฟฮค = ๐1 โฅ ๐2 โฅ โฏ โฅ ๐๐ = min๐ฟฮค ๐๐๐ ๐ ๐ฟฮค
,sehingga arah ๐ฟ yang memberikan nilai ๐๐๐ ๐ฟฮค๐ terbesar ialah vektor eigen dari ๐๐๐ ๐ dengan nilai
eigen terbesar dimana vektor eigen tersebut merupakan vektor kolom dari ฮ. Matriks ๐๐๐ ๐ bersifat semi
definit positif sehingga nilai eigennya tidak mungkin negatif. Pada bidang aljabar, proses diatas serupa
dengan mengubah basis baku menjadi basis vektor eigen dengan vektor eigen sebagai matriks perubahan
basis. Jika nilai lambda tidak ada yang sama, maka vektor eigen yang terbentuk merupakan basis
orthonormal, yaitu vektor-vektor yang saling tegak lurus dengan masing-masing vektor memiliki panjang 1
unit.
Catatan: Principal component analysis dihitung melalui matriks kovariansinya, maka seperti halnya matriks
kovariansi, nilainya akan bergantung pada satuan yang digunakan.
B. Aplikasi Analisis Komponen Utama pada Data Nilai Mahasiswa
Berikut ialah contoh aplikasi analisis komponen utama pada data nilai wisudawan matematika
angkatan 2007 (Data dapat dilihat pada bagian lampiran). ๐ merupakan matriks berukuran ๐๐ฅ๐, dengan ๐
merupakan jumlah mahasiswa (101 mahasiswa) dan ๐ merupakan jumlah mata kuliah (14 mata kuliah).
Baris-baris matriks ๐ berisi nilai masing-masing mahasiswa untuk ke 14 mata kuliah. Kita Definisikan 14-
variat variabel acak ๐ sebagai berikut:
๐1 =nilai Fisika I A ๐8 = nilai Kalkulus Peubah Banyak
๐2 = nilai Kalkulus IA ๐9 = nilai Komputasi Matematika
๐3 =nila Fisika II A ๐10 = nilai Metode Matematika
๐4 =nilai Kalkulus II A ๐11 = nilai Pengantar Analisis Kompleks
Indah Nurina F.H/10110094/Institut Teknologi Bandung 2010
3
๐5 = nilai Aljabar Linier Elementer A ๐12 = nilai Matematika Numerik
๐6 = nilai Matematika Diskrit ๐13 = nilai Teori Peluang
๐7 = nilai Analisis Data ๐14 = nilai Pengantar Analisis Real
Langkah-langkah yang harus dilakukan untuk mencari reduksi variabel menggunakan analisis komponen
utama ialah sebagai berikut:
1. Mencari matriks kovariansi empirik dari 14-variat variabel acak ๐ฟ yaitu = ๐ฝ๐๐ ๐ฟ .
Matriks Kovariansi empirik ialah matriks yang nilai-nilai kovariansi pada tiap cell-nya diperoleh
dari sampel. Misalkan Y dan Z ialah variabel acak, maka:
๐๐๐ฃ ๐, ๐ =1
๐ (๐ฆ๐ โ ๐ฆ )(๐ง๐ โ ๐ง )
๐
๐=1
Dengan ๐ฆ dan ๐ง merupakan rataan sampel dari variabel Y dan Z, dan ๐ฆ๐ dan ๐ง๐ merupakan nilai
observasi ke-i dari variabel Y dan Z. Pembagian dengan n digunakan karena jumlah sampel yang
dimiliki lebih dari 20. Dari data nilai yang digunakan, diperoleh matriks kovariansi berukuran
14x14.
2. Mencari nilai eigen dan vektor eigen dari matriks kovariansi empirik yang telah diperoleh.
Nilai eigen dan vektor eigen dapat dihitung menggunakan program matlab. Nilai eigen diurutkan
mulai dari nilai yang terbesar hingga terkecil. Matriks yang kolom-kolomnya berisi vektor eigen dari
nilai eigen terkait disesuaikan urutannya berdasarkan nilai eigen yang telah urut. Dengan
menggunakan algoritmat matlab , diperoleh 14 nilai-nilai eigen yang telah diurutkan,yaitu :
๐ธ๐๐๐๐ = (3.4970 , 0.6452 , 0.5314 , 0.4311 , 0.3915 , 0.3630 , 0.3450 , 0.2437 , 0.2171 , 0.2046
, 0.1771 , 0.1380 , 0.1213 , 0.0936)
Masing-masing variabel baru ๐๐ yang terbentuk memiliki variansi yang besarnya sama dengan nilai
eigen yang terkait dengan vektor eigen pembentuknya. Grafik diatas ditampilkan untuk
memperjelas penurunan variansi (nilai eigen) yang terjadi.
3. Menghitung proporsi variansi masing-masing PC beserta nilai akumulasi untuk q-PC pertama.
Ukuran seberapa baik q -PC pertama mampu menjelaskan variansi diberikan melalui proporsi
relatif ๐๐ = ๐๐
๐๐=1
๐๐๐๐=1
. Tabel dibawah ini memperlihatkan proporsi variansi dari masing-masing PC
serta nilai akumulasinya jika kita menggunakan q-PC pertama.
Indah Nurina F.H/10110094/Institut Teknologi Bandung 2010
4
Pemilihan banyak PC yang akan digunakan tergantung dari kebutuhan. Dapat kita lihat bahwa 2
PC saja mampu menyerap variansi sebesar 56%, apabila persentasi ini dirasa cukup, dapat kita
gunakan 2 PC yang ada. Pemilihan 2 hingga 3 PC lebih sering dilakukan untuk mempermudah
visualisasi.
Apabila kita menginginkan jumlah PC yang lebih dari 50 persen dan memberikan akumulasi
variansi yang cukup signifikan,maka dapat kita lihat melalui kecuraman ( gradien) dari grafik
akumulasi variansi q-PC. Digunakan garis-garis linier untuk mempermudah visualisasi perubahan
gradien yang terjadi. Semakin landai gradien antara 2 titik yang ada, maka semakin kecil perubahan
akumulasi variansi yang dijelaskan.
Dari plot diatas, dapat dilihat bahwa pemilihan 3 PC dapat dibilang cukup baik karena viualisasi
yang mudah serta nilai pertambahan akumulasi PC yang signifikan. Pemilihan 3 PC mampu
menjelaskan 63% variansi dibandingkan dengan apabila kita menggunakan 14 PC yang ada.
4. Interpretasi Hasil dari Analisis Komponen Utama
Untuk mempermudah visualisasi dan interpretasi, maka kita pilih 2-PC dengan nilai eigen
terbesar. Berikut disajikan hasil PC pertama (๐1) dan kedua (๐2) dari data nilai yang telah
dipaparkan diatas:
๐1 =
0.0675 nilai Fisika I A + 0.1866 nilai Kalkulus IA + 0.0735 nilai Fisika II A +
0.1595 nilai Kalkulus II A + 0.2872 nilai Aljabar Linier Elementer A +
0.3110 nilai Matematika Diskrit + 0.2396 nilai Analisis Data +
๐. ๐๐๐๐ ๐๐๐๐๐ ๐ฒ๐๐๐๐๐๐๐ ๐ท๐๐๐๐๐ ๐ฉ๐๐๐๐๐ + 0.1915 nilai Komputasi Matematika +
0.3303 nilai Metode Matematika + ๐. ๐๐๐๐ ๐๐๐๐๐ ๐ท๐๐๐๐๐๐๐๐ ๐จ๐๐๐๐๐๐๐ ๐ฒ๐๐๐๐๐๐๐ +
0.3215 nilai Matematika Numerik + ๐. ๐๐๐๐ ๐ง๐ข๐ฅ๐๐ข ๐๐๐จ๐ซ๐ข ๐๐๐ฅ๐ฎ๐๐ง๐ +
0.1908 nilai Pengantar Analisis Real
Nilai dari ๐1 lebih banyak dijelaskan oleh variabel nilai Kalkulus Peubah Banyak, nilai Pengantar
analisis Kompleks, dan nilai Teori Peluang. Hal ini dapat dilihat dari koefisien yang cukup besar
dibanding variabel lainnya.
Indah Nurina F.H/10110094/Institut Teknologi Bandung 2010
5
Apabila sebuah variabel memiliki koefisien yan besar dan positif (negatif) pada kombinasi linear
yang mendefiniskan sebuah PC, maka dapat dikatakan bahwa terdapat korelasi yang kuat dan
positif (negatif) antara variabel tersebut dengan PC yang didefinisikan.
Dapat disimpulkan bahwa apabila nilai ๐1 besar, maka nilai dari Kalkulus Peubah Banyak,
Pengantar analisis Kompleks, dan nilai Teori Peluang juga besar. Namun, apabila kita melihat
koefisien-koefisien yang ada pada kombinasi linier diatas, dapat dikatakan bahwa koefisien yang
ada tidak terlalu berbeda jauh. Tidak ada nilai koefisien yang sangat besar baik koefisien yang
bernilai positif maupun negatif. Hal ini sebenarnya juga memengaruhi seberapa bermanfaat
penggunaan metode analisis komponen utama pada data. Analisis Komponen utama sebaiknya
digunakan apabila nilai korelasi antara q-PC yang digunakan dengan variabel-variabel awal (dalam
hal ini p-variat variabel acak X) memiliki nilai yang besar.
๐2 = โ0.2355 nilai Fisika I A โ ๐. ๐๐๐๐ ๐๐๐๐๐ ๐ฒ๐๐๐๐๐๐๐ ๐ฐ๐จ โ 0.1441 nilai Fisika II A โ
0.0497 nilai Kalkulus II A โ 0.1946 nilai Aljabar Linier Elementer A โ
๐. ๐๐๐๐ ๐๐๐๐๐ ๐ด๐๐๐๐๐๐๐๐๐ ๐ซ๐๐๐๐๐๐ โ 0.1049 nilai Analisis Data +
0.1509 nilai Kalkulus Peubah Banyak + 0.2211 nilai Komputasi Matematika +
0.3993 nilai Metode Matematika + 0.0267 nilai Pengantar Analisis Kompleks +
0.1430 nilai Matematika Numerik + 0.3296 nilai Teori Peluang โ
0.3438 nilai Pengantar Analisis Real
Nilai dari ๐2 dapat dijelaskan cukup baik oleh variabel nilai Kalkulus IA dan nilai Matematika
Diskrit. Koefisien pada kedua variabel bertanda negatif. Hal ini mengindikasikan bahwa korelasi
antara ๐2 dengan jumlahan dari nilai Kalkulus IA dan nilai Metematika Diskrit negatif. Artinya,
apabila nilai dari variabel ๐2 dari seorang mahasiswa kecil, maka dapat disimpulkan bahwa nilai
Kalkulus dan nilai Matematika Diskrit dari mahasiswa tersebut besar. Sehingga dengan melihat nilai
dari ๐2 , kita dapat menarik kesimpulan mengenai nilai Kalkulus IA dan nilai Matematika Diskrit.
Berikut disajikan Plot dari PC pertama terhadap PC kedua dari data yang ada.
Dari gambar scatterplot diatas, dapat disimpulkan bahwa:
1. Interval dari ๐1 lebih besar dari interval dari ๐2. Hal ini memperkuat bukti bahwa ๐1 memiliki
variansi yang lebih besar. Sehingga dapat dikatakan bahwa jumlahan dari nilai Kalkulus Peubah
Banyak, nilai Pengantar analisis Kompleks, dan nilai Teori Peluang menghasilkan variansi yang
besar.
2. Sebagian besar titik berada pada daerah yang dilingkupi oleh garis oval berwarna biru. Pola ini
menunjukkan kecenderungan dari mahasiswa matematika angkatan 2007.
Indah Nurina F.H/10110094/Institut Teknologi Bandung 2010
6
3. Beberapa titik berada di bagian pojok kiri bawah dari grafik. Titik-titik yang berada pada bagian
pojok kiri bawah dari grafik dapat dikatakan sebagai pencilan karena tidak mengikuti
kecenderungan yang dijelaskan pada poin 2 dan berada jauh dari garis oval berwarna biru. Titik-
titik tersebut memiliki nilai ๐1 dan ๐2 yang tergolong kecil, sehingga dapat disimpulkan bahwa
sebagian kecil mahasiswa memiliki jumlahan nilai Kalkulus Peubah Banyak, Pengantar analisis
Kompleks,dan nilai Teori Peluang yang kecil, sedangkan jumlahan nilai Kalkulus IA dan nilai
Matematika Diskrit besar .
4. Mahasiswa yang memiliki jumlahan nilai Kalkulus IA dan nilai Matematika Diskrit paling besar
memilki jumlahan nilai Kalkulus Peubah Banyak, nilai Pengantar analisis Kompleks, dan nilai
Teori Peluang yang tergolong tidak besar. (lihat titik yang dilingkupi segitiga berwarna hijau)
Plot diatas sangat berguna apabila kita memberikan pendefinisian kategori yang memasukkan
masing-masing individu ke dalam sebuah kategori. Pemberian warna pada scatterplot diatas dapat
membantu visualisasi dari kategori yang ada. Dengan melihat pola dari scatterplot dari tiap-tiap
kategori, maka kita dapat menyimpulkan karakteristik dari tiap- tiap kategori.
Indah Nurina F.H/10110094/Institut Teknologi Bandung 2010
7
Indah Nurina F.H/10110094/Institut Teknologi Bandung 2010