Misalkan kita memiliki sebuah balok dengan informasi panjang (p), lebar (l) dan tinggi (t). Dari ketiga jenis infomasi ini, bila kita olah dan kita ganti dengan informasi volume (v) dari balok tersebut, maka informasi volume dianggap sudah dapat menggambarkan panjang, lebar dan tinggi balok tadi. Karena v = p x l x t.
Inilah konsep sederhana kinerja Principal Component Analysis.
PCA bekerja pada data set ukuran besar (mxn) dan kemudian mentransformasinya ke ukuran (mxk) dengan mempertahankan data yang tidak redundant, atau tidak berkorelasi, atau tidak berhubungan. Kenapa data yang tidak berkorelasi? sebab data-data inilah yang memiliki peran penting terhadap variasi data asli.
Kembali lagi ke ilustrasi balok tadi. Seandainya informasi yang kita miliki adalah p, l, t, v dan 2v. Dalam hal ini 2v adalah 2 x volume. Nah 2v inilah yang saya maksud data yang redundant. Informasi 2v bisa didapatkan hanya dengan menyimpan data v saja. Sedangkan p, l dan t berkorelasi dengan nilai v. Jadi dari p, l, t, v dan 2v…cukup disimpan nilai v-nya saja.
Apakah korelasi (correlation), dan bagaimana cara menghitung korelasi? jawabannya ada di catatan saya di sini. Singkatnya, dengan mengetahui korelasi antara dua variabel, misal korelasi p terhadap l, t terhadap p, 2v terhadap v dapat menjadikan dasar dimulainya proses PCA.
Korelasi sendiri tidak dapat dilepaskan dari saudaranya…yaitu kovarians. Catatan saya mengenai kovarians dapat dilihat di sini.
Terdapat banyak cara merepresentasikan hubungan antara dua atau beberapa variabel dengan melihat perubahan nilainya. Contohnya dengan grafik linear, eksponensial, periodic, log..dsb. PCA menggunakan grafik linear dan basisnya adalah nilai korelasi.
Untuk lebih jelasnya, saya coba jelaskan proses PCA dimulai dengan langkah umum diikuti penjelasan beserta contoh program menggunakan Matlab.
Langkah umum penyelesaian PCA dapat dilihat pada diagram berikut:
Gambar 1. Langkah PCA
(warna hijau menandakan program yang ditulis dalam Matlab)
1. Input data
Data awal dipersiapkan dalam sebuah matriks ukuran mxn. Nantinya jumlah variable n akan berkurang menjadi k jumlah principal component yang dipertahankan.
Contoh data yang diinputkan adalah:
Sebut saja kolom pertama adalah variabel X, kedua Y dan ketiga Z. Masing-masing barisnya (observasi) diberi label: a, b, c…dan seterusnya sampai t. Tabel Data berukuran 20×3. Dengan m=20 dan n=3.
X dengan range 110-2999, Y: 8-202 dan Z: 5-30.
_________________________________
Data =[110 8 5; 228 21 3; 342 31 14; 375 40 15; 578 48 4; 699 60 12; 807 71 14; 929 79 16; 1040 92 18; 1160 101 38; 1262 109 28; 1376 121 32; 1499 128 35; 1620 143 28; 1722 150 30; 1833 159 15; 1948 172 12; 2077 181 35; 2282 190 23; 2999 202 30];
plot3(Data(:,1),Data(:,2),Data(:,3),’o’)
labels=’abcdefghijklmnopqrst’;
labels = labels’;
text(Data(:,1), Data(:,2), Data(:,3), labels, ‘horizontal’,’left’, ‘vertical’,’bottom’);
xlabel(‘X’);
ylabel(‘Y’);
zlabel(‘Z’);
_________________________________
Gambar 2. Grafik data awal
Bila kita perhatikan hubungan antara variabel X dan Y, X dan Z serta Y dan Z seperti berikut:
Gambar 3. Hubungan antara variabel X dan Y
Terlihat bahwa variabel X dan Y terhubung secara linear. Kelihatannya perubahan pada satu variabel berarti juga Continue reading
You must be logged in to post a comment.