Pengenalan Pola
PTIIK - 2014
Course Contents
Collect Data 1 Object to Dataset 2 Ekstraksi Fitur 3 Seleksi Fitur 4Design Cycle
Collect data Choose features Choose model Train system Evaluate systemApa sensor yang harus kita gunakan? Bagaimana mengumpulkan data?
Bagaimana mengetahui fitur apa yang dipilih, dan bagaimana kita memilihnya ...?
(Misal transformasi data fitur dengan PCA) Apa classifier yang akan digunakan?
Apakah ada classifier yang terbaik ...?
Bagaimana kita melakukan proses Training? Bagaimana mengevaluasi kinerja sistem? Bagaimana memvalidasi hasil?
Berapakah tingkat kepercayaan hasil keputusan?
Collect Data
Mengambil nilai data dari objek, Tipe data berdasarkan penskalaan datanya :
Data Kualitatif : Data yang bukan berupa angka,. Terbagi dua :
• Nominal : Data yang paling rendah dalam level pengukuran data. Contoh : Jenis kelamin, Merk mobil, Nama tempat
• Ordinal : Ada tingkatan data. Contoh : Sangat setuju, Setuju, kurang setuju, tidak setuju.
Data Kuantitatif : Data berupa angka dalam arti sebenarnya.
Terbagi dua :
• Data Interval, Contoh : Interval temperatur ruang adalah sbb : Cukup panas jika antara 50C-80 C, Panas jika antara 80 C-110 C, Sangat panas jika antara 110 C-140 C.
• Data Rasio, Tingkat pengukuran paling ‘tinggi’ ; bersifat angka dalam arti sesungguhnya. Contoh : Tinggi badan, Berat badan, Usia.
Object to Dataset
Ilustrasi transformasi data dari objek yang diamati :
Keterangan :
M menyatakan banyak data, N menyatakan banyak fitur.
Ektraksi fitur dilakukan jika data yang diamati masih berupa data mentah (masih berupa kumpulan citra).
Fitur yang diambil adalah yang merupakan ciri khas yang membedakan satu objek dengan objek lainnya.
Seleksi Fitur
Problem : kompleksitas komputasi terhadap
pengenalan pola pada ruang dimensi yang tinggi. Solusi : mapping data ke dalam ruang dimensi
Seleksi Fitur
• Pengurangan dimensi data dapat dilakukan dengan :
• Mengkombinasikan Fitur (secara linear maupun non-linear)
• Memilih himpunan bagian dari fitur-fitur yang tersedia
• Kombinasi Linier merupakan pendekatan yang menarik karena metode tersebut dilakukan
dengan perhitungan yang sederhana dan terlacak secara analitis
Seleksi Fitur
Diberikan x ϵ RN, dengan tujuan untuk mencari
transformasi linier U sehingga y = UTx ϵ RK where K<N
Seleksi Fitur
Dua pendekatan klasik untuk menghitung transformasi linier yang optimal :
Principal Components Analysis (PCA): mencari proyeksi yang menyediakan informasi sebanyak mungkin dalam data dengan pendekatan
least-squares.
Linear Discriminant Analysis (LDA): mencari proyeksi terbaik yang dapat memisahkan data dengan
pendekatan least-squares.
Tujuan PCA : mengurangi dimensi data dengan
mempertahankan sebanyak mungkin informasi dari dataset yang asli
Seleksi fitur menggunakan PCA
PCA memproyeksikan data
sepanjang suatu arah dimana data tersebut memiliki varians yang
tinggi
Arah tersebut ditentukan oleh eigenvectors dari matriks
covariance yang memiliki nilai eigenvalues terbesar.
Nilai besaran dari eigenvalues merupakan nilai varians data sepanjang arah dari eigenvector (garis lurus merah dan biru)
Seleksi Fitur
Pendekatan vektor dengan menemukan basis ke dalam ruang dimensi yang lebih rendah
Representasi ruang Dimensi-Lebih Tinggi :
Represenasi ruang Dimensi-Lebih Rendah :
N Nv a v a v a x 1 1 2 2 ... N v v
v1, 2,..., merupakan basis dari ruang dimensi N
K Ku b u b u b xˆ 1 1 2 2 ... K u u
Seleksi fitur menggunakan PCA
Pengurangan dimensi berdampak pada hilangnya informasi
PCA mempertahankan sebanyak mungkin informasi, dengan cara meminimalkan error : Bagaimana caranya menentukan sub-ruang
dimensi yang lebih rendah yang terbaik ?
• Eigenvektor yang terbaik dari matriks covarians x Eigenvalue yang terbesar
Seleksi fitur menggunakan PCA
Misalkan x1, x2, ..., xM terdapat dalam vektor N x 1
1. Mencari Mean (nilai rata-rata) dari data
2. Menghitung Zero Mean (setiap nilai pada data sampel dikurangi nilai rata-rata tiap fitur yang terkait)
3. Membangun matriks Covarians dengan mengkalikan matriks Zero Mean dengan transposenya
4. Menghitung eigenvalue
5. Menghitung matriks eigenvektor
6. Mengurangi dimensi sebesar K dimensi yang
Seleksi fitur menggunakan PCA
Langkah 1: Mencari Mean Global (nilai rata-rata)
Langkah 2: Menghitung Zero Mean
M x x x x 1 2 ... M M x M i i
1 x xi i Seleksi fitur menggunakan PCA
Langkah 3: Membangun matriks Covarians
dengan mengkalikan matriks Zero Mean dengan transposenya Populasi Sampel
M i i T i M C 1 1
M i i T i M C 1 1 1Seleksi fitur menggunakan PCA
Langkah 4 : Menghitung eigenvalue dari C
Hasil : 0 ) ( U C I U I U C U I U C I U U C det( I C)0 N 1 , 2 , 3 ,...,
Seleksi fitur menggunakan PCA Langkah 5 : Menghitung eigenvektor
Dari eigenvalue yang dihitung pada langkah 4, disubstitusikan ke rumus :
Selesaikan dengan menemukan nilai U
Hasil : 0 ) ( I C U N u u u u1 , 2 , 3 ,...,
Seleksi fitur menggunakan PCA
Langkah 6 : Mengurangi dimensi sebesar K dimensi
Pilihlah fitur sebanyak K berdasarkan nilai eigenvalue terbesar
Seleksi fitur menggunakan PCA
Pemilihan nilai K menggunakan kriteria berikut :
Pada contoh kasus diatas, dapat dikatakan bahwa kita “menyediakan” 90% atau 95% informasi dari data yang tersedia
Jika K=N, maka kita “menyediakan” 100% dari data yang tersedia
Seleksi fitur menggunakan PCA
Vektor asal x dapat dibangun kembali menggunakan komponen prisipal-nya
PCA meminimalkan error dari rekonstruksi prinsipal tersebut:
Contoh PCA : Menghitung EigenValue
Misal diketahui dataset :
Mean global Zero Mean Kovarian
29 13 13 17 29 13 13 17 1 2 1 5 1 2 4 5 1 2 4 1 1 T N CNo Fitur 1 Fitur 2 Kelas 1 P11 P12 Mobil 2 P21 P22 Rumah D = 22 21 12 11 P P P P
Data Banyak P P x _ 21 11 1
5 1 2 4 , 2 22 1 21 2 12 1 11 2 1 2 1 misal x P x P x P x P x x x x D
Data Banyak P P x _ 22 12 2 EigenValue 0 det I C 0 324 46 0 169 493 17 29 0 169 ) 29 ( 17 29 0 169 ) 29 ( 17 0 13 * 13 ) 29 ( 17 0 29 13 13 17 det 0 29 13 13 17 1 0 0 1 * det 2 2 31782 . 37 2 63564 . 28 46 68218 . 8 2 63564 . 28 46 2 820 46 2 1296 2116 46 1 * 2 324 * 1 * 4 46 ) 46 ( 2 4 2 1 2 , 1 2 , 1 2 2 , 1 2 2 , 1 a ac b b 0 29 13 13 17 det 0 29 13 13 17 1 0 0 1 * det 31782 . 37 0 0 68218 . 8 Value Eigen Matrik
EigenVektor 31782 . 37 0 0 68218 . 8 Value Eigen Matrik U CU 0 1 0 0 1 1 0 0 1 1 0 0 1 2 1 22 21 12 11 2 1 2 1 22 21 12 11 2 1 2 1 22 21 12 11 2 1 2 1 22 21 12 11 u u c c c c u u u u c c c c u u u u c c c c u u u u c c c c 0 ) ( 0 ) ( 2 22 1 21 2 12 1 11 u c u c u c u c
Vektor eigen didapatkan dengan persamaan : 0 ) 29 ( 13 0 13 ) 17 ( 2 1 2 1 u u u u 29 13 13 17 C Matrik kovarian : Untuk λ1 = 8.68218 maka : 0 20.3178 13 0 13 8.3178 2 1 2 1 u u u u
EigenVektor Untuk λ1 = 8.68218 maka : 0 20.3178 13 0 13 8.3178 2 1 2 1 u u u u Untuk λ2 = 37.31782 maka : 0 8.3178 -13 0 13 20.3178 -2 1 2 1 u u u u
Solusi non trivial sistem persamaan ini adalah : 8.3178 13 13 8.3178 2 1 2 1 u u u u Misalkan maka u1 a 13 8.3178a 2 u
Jadi vektor eigen untuk λ1 = 8.68218 adalah : 13 3178 . 8 a a U
dimana a adalah bilangan sembarang yang tidak nol.
Solusi non trivial sistem persamaan ini adalah : 3178 . 20 13 13 3178 . 20 2 1 2 1 u u u u Misalkan maka u2 b 3178 . 20 13b 1 u
Jadi vektor eigen untuk λ2 = 37.31782 adalah : b b U 20.3178 13
dimana b adalah bilangan sembarang yang tidak nol.
EigenVektor
Vektor eigen untuk λ1 = 8.68218 adalah : 13 3178 . 8 a a U misalkan a = -0.8423 maka
Vektor eigen untuk λ2 = 37.31782 adalah : b b U 20.3178 13 misalkan b = 0.8423 maka . 0.5389 0.8423 -U 8423 . 0 0.5389 U
Jadi Vektor eigen globalnya adalah :
8423 . 0 0.5389 0.5389 0.8423 -U
Evaluasi Error dan Penentuan Jumlah K Transformasi data, fitur
Tentukan nilai K dengan 90% informasi data yang kita gunakan
Dari nilai K yang ditentukan akan diperoleh fitur yang dijadikan sebagai proses pengenalan pola
x x ˆ k k
U
x
x
ˆ
Diskusi
Tentukan hasil transformasi dataset berikut !
No Fitur 1 Fitur 2 Fitur 3 Kelas
1 8 3 4 Apel
Latihan
Tentukan hasil transformasi dataset berikut dengan Threshold = 95% untuk nilai K !
No Fitur 1 Fitur 2 Fitur 3 Kelas
1 10 7 2 Padi
2 6 5 4 Jagung
3 2 3 6 Gandum
Ketentuan Baru
Bagi kelompok yang datasetnya banyak yang kualitatif silakan ganti dataset
Bagi kelompok yang fiturnya melebihi 10 maka hilangkan fitur yang lain dan jadikan hanya 10 fitur saja atau cari dataset yang memiliki fitur maksimal 10 fitur
Bagi kelompok yang datanya melebihi 100 maka ambil 100 data saja, dengan catatan jumlah data di setiap kelas harus seimbang
Tugas
Lakukan perhitungan PCA terhadap data yang telah dikumpulkan pada tugas sebelumnya
afif.supianto@ub.ac.id 081 331 834 734 / 088 160 127 40