pca
DESCRIPTION
Principal Component AnalysisTRANSCRIPT
-
TUGAS
DATA MINING
Oleh:
I Made Dedik Amijaya 1208605053
I Wayan Aditya Setiawan 1208605057
I Kadek Ardi Angga 1208605063
PROGRAM STUDI TEKNIK INFORMATIKA
JURUSAN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS UDAYANA
2015
-
1. PCA (Principal Component Analysis)
Definisi:
PCA adalah cara mengidentifikasi pola dalam data, dan mengekspresikan
data sedemikian rupa yang digunakan untuk menyorot persamaan dan perbedaan
mereka. Karena pola dalam data terkadang sulit untuk ditemukan di data
berdimensi tinggi, di mana kemewahan representasi grafis tidak tersedia, PCA
adalah alat yang ampuh untuk menganalisis data.
Keuntungan lain dari PCA adalah bahwa sekali telah menemukan pola-pola
ini di data, kemudian data tersebut dikompres dengan mengurangi jumlah
dimensi, tanpa banyak kehilangan informasi.
Definisi lain menyebutkan, PCA merupakan an atheoretic approach yang
menghasilkan kombinasi linear dari variabel-variabel yang diperoleh dari
mereduksi variabel asli/awal yang banyak sekali. Di dalam proses mereduksi,
diperoleh variabel yang lebih sedikit akan tetapi masih mengandung informasi
yang termuat dalam data asli/awal. Variabel hasil mereduksi tersebut dinamakan
factor yang juga disebut komponen atau faktor komponen.
Secara teknis, PCA merupakan suatu teknik mereduksi data multivariat
(multivariable) yang mengubah (mentranformasi) suatu matriks data/asli menjadi
suatu set kombinasi linier yang lebih sedikit akan tetapi menyerap sebagian besar
jumlah varian dari data awal.
Tujuan utamanya ialah menjelaskan sebanyak mungkin jumlah varian data
asli dengan sedikit mungkin komponen utama yang disebut faktor. PCA biasanya
digunakan untuk :
1. Identifikasi peubah baru yang mendasari data peubah ganda
2. Mengurangi banyaknya dimensi himpunan peubah yang biasanya terdiri
atas peubah yang banyak dan saling berkolerasi dengan mempertahankan
sebanyak mungkin keragaman dalam himpunan data tersebut
3. Menghilangkan peubah-peubah asal yang mempunyai sumbangan
informasi yang relatif kecil.
-
Metode (Contoh Perhitungan) :
1. Mendapatkan Beberapa Data
Data yang digunakan adalah data yang memiliki 2 dimensi, tujuanya adalah
memberikan plot dari data untuk menunjukan apakah PCA dilakukan di
setiap langkahnya. Berikut ini adalah data yang digunakan :
Gambar 1. 1 Contoh data PCA, data asli di sebelah kiri, data dengan cara dikurangi
-
2. Kurangi Mean
Agar PCA dapat bekerja dengan baik, kita harus mengurangi rata-rata dari
masing-masing dimensi data. Nilai rata-rata yang dikurangi adalah rata-
rata di setiap dimensi. Jadi, semua nilai memiliki (mean dari semua
nilai titik data ) dikurangi, dan semua nilai memiliki dikurangkan
dari mereka. Ini menghasilkan kumpulan data yang berarti adalah nol.
3. Hitung Matrix Kovarians
Matrix kovarians 2 dimensi kemudian dihitung dan mendapatkan hasil
seperti dibawah ini :
4. Hitung Eigen dan Nilai Eigen Dari Kovarians Yang Matriks
Karena matriks kovariansnya persegi, kita dapat menghitung vektor eigen
dan nilai eigen
untuk matriks ini. Ini agak penting, karena mereka memberitahu kita
informasi yang berguna tentang data kita.
Kita dapat melihat plot data pada Gambar 1.2 dimana pada gambar ini,
kita dapat melihat bagaimana data memiliki pola yang cukup kuat. Seperti
yang diharapkan dari matriks kovarians, dua variabel memang meningkat
bersama-sama. Di atas data yang telah diplot tadi kedua vektor eigen juga
meningkat. Muncul garis putus-putus sebagai diagonal pada plot. Seperti
yang dinyatakan di bagian eigenvector, mereka saling tegak lurus. Tapi,
-
yang lebih penting, mereka memberikan kami informasi tentang pola
dalam data.
Vektor eigen menunjukkan kepada kita bagaimana dua set data ini terkait
sepanjang garis itu. Eigenvector kedua memberi kita yang lain, pola dalam
data, bahwa semua poin mengikuti jalur utama, tetapi dari sisi dari jalur
utama oleh beberapa jumlah.
Jadi, dengan proses ini mengambil vektor eigen dari matriks kovarians,
kita memiliki
kemampuan mengekstrak garis yang mencirikan data.
Gambar 1. 2 Sebuah plot data dinormalisasi (mean dikurangi) dengan vektor eigen dari
matriks kovarians overlayed di atas.
5. Memilih Komponen dan Membentuk Fitur Vektor
-
Jika kita melihat vektor eigen dan nilai eigen dari bagian sebelumnya,Kita
akan melihat bahwa nilai-nilai eigen adalah nilai-nilai yang sangat
berbeda. Bahkan, ternyata eigenvector dengan eigenvalue tertinggi adalah
komponen utama dari kumpulan data.
Secara umum, setelah vektor eigen ditemukan dari matriks kovarians,
langkah berikutnya
adalah untuk mengurutkan mereka dengan eigenvalue, tertinggi ke
terendah. Ini akan memberikan komponen dalam urutan signifikansi.
Sekarang, jika kita suka, kita dapat memutuskan untuk mengabaikan
komponen signifikansi yang lebih rendah. Kita kehilangan beberapa
informasi, tetapi jika nilai-nilai eigen kecil, kita tidak kehilangan banyak
informasi. Jikakita meninggalkan beberapa komponen, kumpulan data
akhir akan memiliki lebih sedikit dimensi daripada yang asli. Tepatnya,
jika kita awalnya memiliki dimensi dalam data, sehingga kia
menghitung vektor eigen dan nilai eigen, dan kemudian kita pilih vektor
eigen yang pertama, maka set data akhir hanya dimensi.
Yang perlu dilakukan sekarang adalah kita harus membentuk vektor fitur.
Hal ini dibangun dengan mengambil vektor eigen yang kita ingin
menyimpan dari daftar vektor eigen, dan membentuk matriks dengan ini
vektor eigen dalam kolom.
Mengingat contoh kita set data, dan fakta bahwa kita memiliki 2 vektor
eigen, kita memiliki dua pilihan. Kita bisa juga membentuk vektor fitur
dengan kedua vektor eigen:
Atau, kita dapat memilih untuk meninggalkan yang lebih kecil, komponen
kurang signifikan dan hanya memiliki kolom:
-
6. Mendapatkan Set Data Baru
Setelah kita memilih komponen (eigen) yang ingin kita jadikan tempat
untuk menyimpan data dan membentuk vektor fitur, kita hanya mengambil
transpos vektor dan kalikan di sebelah kiri dari kumpulan data asli, lalu
transposed.
DimanaRow FeatureVector adalah matriks dengan vektor eigen di kolom
yang dialihkan
sehingga vektor eigen sekarang berada di baris, dengan eigenvector yang
paling signifikan di bagian atas, dan RowDAtaAdjust adalah rata data
transpose yang disesuaikan. Data item dalam setiap kolom, dengan setiap
baris memegang dimensi yang terpisah. Final Data adalah kumpulan data
final, dengan item data dalam kolom, dan dimensi sepanjang baris.
Ini akan memberi kita data asli hanya dalam hal vector yang kita pilih. Set
data asli kita memiliki dua sumbu, < dan =. Hal ini dimungkinkan untuk
mengungkapkan data dalam hal dua sumbu yang kita sukai. Jika ini sumbu
tegak lurus, maka ekspresi ini yang paling efisien. Ini adalah mengapa hal
itu penting bahwa vektor eigen selalu tegak lurus satu sama lain.
Pada dasarnya kita telah mengubah data kita sehinggadapat dinyatakan
dalam pola di antara mereka, di mana pola adalah garis yang paling dekat
menggambarkan hubungan antara data. Hal ini sangat membantu karena
kita sekarang telah mengklasifikasikan titik data kita sebagai kombinasi
dari kontribusi dari masing-masing garis itu.
Awalnya kita memiliki sumbu sederhana dan . Ini bagus, tetapi nilai-
nilai dan dari setiap titik data tidak benar-benar memberitahu kita
persis bagaimana titik yang berhubungan dengan sisa data. Sekarang, nilai-
nilai titik data memberitahu kita persis di mana (mis. Di atas / bawah)
garis tren data duduk. Dalam kasus transformasi menggunakan kedua
vektor eigen, kita hanya mengubah data sehingga dalam hal tersebut bukan
vektor eigen sumbu biasa. Tapi dekomposisi single-vektor eigen telah
dihapus kontribusinya karena vektor eigen yang lebih kecil dan
menyisakan kita dengan data yang hanya dalam hal yang lain.
-
2. Z-Score Normalization dan Decimal Scaling Normalization
A. Z-Score Normalization
Nilai-nilai untuk sebuah atribut A dinormalisasi berdasarkan mean
dan standard deviation dari A. Nilai v dari A dinormalisasi pada v dengan
menghitung :
= ( )
Contoh :
Anggaplah bahwa mean dan standard deviation dari nilai-nilai untuk
atribut income secara berturut-turut adalah $54,000 dan $16,000. Dengan z-
score normalization, maka income sebesar $73,600 ditransformasikan
menjadi (73,600-54,000) / 16,000 = 1.225.
B. Normalization by Decimal Scaling.
a. Prinsipnya dilakukan dengan memindahkan titik decimal dari nilai-nilai
atribut A.
b. Panjang pergeseran titik desimal ( j ) tergantung pada nilai absolut
maksimum dari A.
c. j adalah integer terkecil sedemikian hingga Max(| v |)
-
3. Fourier Transform dan Wavelet Transform
Transformasi Fourier adalah sebuah transformasi integral yang
menyatakan-kembali sebuah fungsi dalam fungsi basis sinusoidal, yaitu sebuah
fungsi sinusoidal penjumlahan atau integral dikalikan oleh beberapa koefisien
("amplitudo"). Ada banyak variasi yang berhubungan-dekat dari transformasi ini
tergantung jenis fungsi yang ditransformasikan. Transformasi Fourier merupakan
keluarga dari Transformasi Integral, simplenya ini adalah alat yang bisa kita
gunakan untuk melihat sinyal dengan kacamata yang lain. Jika selama ini kita
hanya melihat sinyal melalui osiloskop atau alat sejenis lainnya, itu adalah
visualisasi sinyal dalam ranah waktu (time domain), sumbu horisontal-nya waktu
(t) dan sumbu vertikal-nya adalah amplitudo (A) .
Wavelet Transform adalah metode tranformasi yang mengadopsi metode
Fourier Transform dan Short Time Fourier Transform (STFT). Seperti halnya
STFT, Wavelet Transform mentransformasi signal dalam domain waktu menjadi
signal dalam domain waktu dan frekuensi (yang dalam hal ini dibentuk menjadi
domain translation and scale). Translation adalah sebuah bentuk transformasi dari
domain waktu. Translation terkait dengan lokasi dari window function, di mana
window dipindah-pindahkan sepanjang signal yang masuk. Scale adalah bentuk
transformasi dari frekuensi, dimana nilai scale berbanding terbalik dengan nilai
frekuensi.
Memperbaiki kelemahan yang terdapat dalam metode STFT, Wavelet Transform
melakukan:
Transformasi Fourier dengan memanfaatkan window function tidak
digunakan lagi. Sehingga puncak tunggal (single peak) atau frekuensi yang
bernilai negatif tidak dihitung lagi.
Lebar window dirubah seiring dengan perhitungan transformasi untuk
setiap signal yang ada (Ini merupakan karakteristik yang paling signifikan
dari Wavelet Transform).