pca

9
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

Upload: aditya-setiawan

Post on 10-Nov-2015

13 views

Category:

Documents


4 download

DESCRIPTION

Principal Component Analysis

TRANSCRIPT

  • 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).