Data Mining
Eko Prasetyo
Teknik Informatika
2015
Pra-Pemrosesan
Pekerjaan yang dilakukan sebelum
masuk ke algoritma utama (klasifikasi /
clustering).
Tujuan:
◦ Mempercepat komputasi algoritma utama
◦ Menghindari error yang besar
◦ Menyeimbangkan kondisi data yang
diproses.
Pekerjaan: pemilihan fitur, normalisasi,
sampling, diskretisasi, binerisasi,
aggregasi, pembuangan outlier,
transformasi, reduksi dimensi.
2
Pembuangan Outlier
Outlier (noise) adalah titik yang terletak
sangat jauh dari rata-rata variabel random
pada umumnya yang berkorelasi dengan titik
tersebut.
Jarak diukur terhadap threshold (berapa
kalinya standar deviasi).
◦ Untuk variabel random terdistribusi normal, jarak
dua kali standar deviasi akan menjangkau 95%
dari titik, dan jarak tiga kali standar deviasi dapat
menjangkau 99% dari titik.
Titik dengan nilai yang sangat berbeda dari
nilai rata-rata akan menghasilkan error yang
besar pada saat pelatihan dan mungkin
mempunyai efek berbahaya.
3
Pembuangan Outlier
Metode-metode:
◦ Pendekatan statistik (Tan et al, 2006),
◦ K-Nearest Neighbor (Tan et al, 2006),
◦ Pemeriksaan kerapatan (Tan et al, 2006),
◦ Clustering dengan DBSCAN (Prasetyo, 2013),
◦ Outlier Removal Clustering (Prasetyo, 2013), dan
sebagainya
+ + +
IPK + +
+ +
+ + +
+ ++
+ + + + + ++
+ + ++ Outlier
+ +
+
SKS
4
Normalisasi data
Proses pada fitur dengan nilai yang terletak
dalam jangkauan nilai berbeda.
◦ Akibatnya, fitur dengan jangkauan yang besar
mempunyai pengaruh yang lebih besar dalam
fungsi biaya.
40 4
2
30
0
20
-2
10 -4
0 2000 4000 6000 -4 -2 0 2 4
Data sebelum normalisasi Data setelah normalisasi
5
Normalisasi Linear (Cara 1)
Zero Mean dan Unit-Variance
Masing-masing fitur dihitung nilai mean dan
varian.
Untuk N data yang ada pada fitur ke-k, didapat:
1 N
◦ Rata-rata: x k xik , k 1,2,..., r
N i 1
◦ Varian: 1 N
k2
N 1 i 1
( xik x k ) 2
6
Normalisasi Linear (Cara 2)
Menskalakan jangkauan setiap fitur
dalam jangakauan [0,1] atau [-1,1].
Menskalakan dalam jangkauan [0,1]
xik min( x k )
xˆ ik
max( x k ) min( x k )
7
Normalisasi Non-Linear
Digunakan fungsi non-linear seperti logaritma
atau sigmoid untuk memetakan dalam
interval yang ditentukan.
Fungsi squashing yang membatasi data
dalam jangkauan [0,1]:
xik x k 1
y xˆ ik
r k 1 ey
◦ y: perkiraan fungsi linear
◦ r: konstanta yang ditentukan sendiri
◦ k : standar deviasi fitur ke-k
◦ e : konstanta = 2.718281828459
8
Contoh
Data belum normal Untuk fitur pertama, didapatkan:
Fitur 1 Fitur 2 Fitur 3 1 1
x1 (0 1 2 5 3) 11 2.2
0 2 1 5 5
1 7 1
12
1
5 1
(0 2.2) 2 (1 2.2) 2 (2 2.2) 2 (5 2.2) 2 (3 2.2) 2 3.7
2 6 3
5 1 4
1 1.9235
3 3 4
Hasil normalisasi fitur pertama:
0 2.2 5 2.2
xˆ11 1.1437 xˆ41 1.4557
1.9235 1.9235
1 2.2 3 2.2
xˆ 21 0.6239 xˆ 51 0.4159
1.9235 1.9235
2 2.2
xˆ 31 0.1040
1.9235
9
Contoh Hasil Normalisasi
Hasil Normalisasi Zero-Mean Hasil Nornalisasi Linear
dan Unit-Variance [0,1]
Fitur 1 Fitur 2 Fitur 3 Fitur 1 Fitur 2 Fitur 3
-1.1437 -0.6954 -1.0550 0 0.1667 0
-0.6239 1.2363 -1.0550 0.2000 1 0
-0.1040 0.8499 0.2638 0.4000 0.8333 0.6667
1.4557 -1.0817 0.9231 1.0000 0 1.0000
0.4159 -0.3091 0.9231 0.6000 0.3333 1.0000
10
Data yang salah
Data tertentu biasanya selalu ada nilai salah atau
kosong
Contoh kesalahan:
◦ Seharusnya bernilai angka tapi benilai karakter,
◦ Nilai yang disimpan berada diluar jangkauan nilai yang
seharusnya dimasukkan.
Contoh penyebab:
◦ Input dari user yang dilakukan sembarangan,
◦ Data yang didapat dari form kuesioner yang biasanya juga
tidak diisikan secara lengkap oleh responden,
◦ Database dan antarmuka aplikasi yang tidak taat integritas
data,
◦ Alat ukur yang sudah tidak standart sehingga memberikan
hasil yang salah,
◦ Dan sebagainya.
11
Pilihan perlakuan
(1) Membuang semua fitur dari vektor
yang salah
◦ satu vektor berisi beberapa fitur termasuk
fitur yang nilainya salah.
◦ Cocok digunakan jika jumlahnya sedikit
◦ Jika banyak, akan mempengaruhi sifat alami
set data.
(2) Untuk fitur ke-i, hitung rata-rata
berdasarkan nilai yang tersedia untuk
fitur tersebut.
◦ Hasilnya digunakan untuk mengganti nilai
fitur yang salah pada setiap vektor.
12
Pilihan perlakuan (3)
Untuk semua pasangan fitur antara dua
vektor xi dan yi didefinisikan bi dengan
persamaan: 0, jika kedua nilai fitur x i dan y i ada
bi
1, jika kedua nilai fitur x i dan y i tidak ada
i 1,2,..., r
Proximity diantara x dan y, didefinisikan:
r
( x, y )
r ( xi , y i )
r bi all i:bi 0
i 1
( xi , y i )
menyatakan proximity diantara dua
fitur xi dan yi yang nilainya ada.
Umumnya adalah ukuran dissimilarity
13
Contoh
Data kondisi awal Pendekatan kedua
Data Fitur 1 Fitur 2 Fitur 3 Dihitung rata-rata
x1 0 2 1 (2+1+3)/3 = 2.
x2 1 * 1 Maka nilai rata-rata = 2 ini yang
x3 2 * 3 digunakan untuk mengganti nilai fitur
x4 5 1 4 kedua dari vektor lain yang nilainya
salah
x5 3 3 4
Pendekatan ketiga
misal akan menghitung jarak diantara x1 dan x2 (Manhattan)
Untuk mendapatkan jarak, tentukan dulu b untuk semua fitur, dari 3
fitur didapat b = {0, 1, 0}.
Jarak diantara x1 dan x2 dihitung:
3 3
( x, y ) (| 0 1 | | 1 1 |) 1 1.5
3 (0 1 0) 3 1
Jarak diantara x2 dan x3
3 3
( x, y ) (| 1 2 | | 1 3 |) 3 4.5
3 (0 1 0) 3 1 14
Pemilihan Fitur
jika diberikan sejumlah fitur sebagai
kandidat fitur yang digunakan, maka ;
bagaimana cara memilih fitur yang
paling penting diantara kandidat
tersebut sehingga dapat mengurangi
jumlahnya, dan;
pada saat yang sama memungkinkan
memberikan diskriminasi kelas
dengan baik.
15
Tujuan
Harus diusahakan dalam pemilihan
fitur mengarah pada jarak perbedaan
antar kelas yang besar dan variasi
dalam kelas kecil
Cara:
◦ Menguji fitur satu per satu
◦ Mengombinasikan pengujian pada dua
fitur atau lebih
16
Fisher’s Discriminant Ratio
Dipakai untuk mengukur kekuatan
diskriminasi fitur individu dalam memisahkan
dua kelas.
Untuk 1 dan 2 masing-masing adalah nilai
rata-rata dari dua kelas,
1 dan 2 masing-masing adalah varian dari
2 2
17
Contoh
Sebuah fitur dari dua kelas sebagai berikut:
◦ Kelas 1:
◦ 3.5 3.7 3.9 4.1 3.4 3.5 4.1 3.8 3.6 3.7
◦ Kelas 2:
◦ 3.2 3.6 3.1 3.4 3.0 3.4 2.8 3.1 3.3 3.6
Nilai rata-rata yang didapat:
1 3.73 2 3.25
18
Contoh
Data pola 4 fitur Rata-rata dari keempat fitur untuk kelas
A B C D Kelas 1 didapat:
154.833 29.95 1.424 1.133 1 [149.7069 27.8760 1.7490 1.6032]
163.464 31.30 1.554 1.476 1
164.703 21.6 1.764 1.605 1 Rata-rata dari keempat fitur untuk kelas
148.176 28.88 1.644 1.386 1 2 didapat:
147.567 30.04 2.014 1.881 1 [227.0058 32.6720 1.7421 1.4908]
151.011 26.02 1.674 1.333 1
149.835 27.63 2.074 2.195 1 Varian dari keempat fitur untuk kelas 1
123.942 27.07 1.704 1.195 1 didapat:
141.456 25.71 1.484 1.295 1 [131.8451 8.5727 0.0636 0.2123]
152.082 30.56 2.154 2.533 1
211.785 34.06 2.344 2.986 2 Varian dari keempat fitur untuk kelas 2
234.717 35.54 1.424 1.090 2 didapat:
239.673 35.12 1.294 1.167 2 [298.3515 7.4954 0.2431 0.3881]
207.207 29.84 1.474 1.290 2
203.616 30.01 1.554 1.171 2 Maka FDR sebagai berikut:
233.793 29.61 1.514 1.314 2 [13.8893 1.4315 0.0002 0.0210]
240.996 32.27 2.765 1.210 2
257.691 37.50 2.134 2.252 2 Secara urut, fitur yang paling
223.524 31.23 1.504 1.157 2 informatif: A-B-D-C
217.056 31.54 1.414 1.271 2 19
To Be Continued …
ANY QUESTION ?
20