PREPROCESSING DATA Tim Dosen Data Mining Fakultas Informatika 1 Pokok Bahasan 2 Apa Preprocessing Data –Agregasi –Sampling –Pengurangan dimensi –Feature subset selection –Feature creation –Diskretisasi dan Binerisasi –Transformasi atribut Pengukuran Similaritas & Dissimilaritas Euclidean distance Minkowski distance Mahalanobis Distance Simple Matching Jaccard Coefficients Cosine Tanimoto Korelasi 2 Definisi Data Preprocessing 3 Adalah strategi dan teknik yang saling berkaitan untuk membuat data lebih mudah/cocok untuk digunakan pada data mining Tujuannya : meningkatkan hasil analisis data mining terkait masalah waktu, cost dan kualitas 3 Kategori Data Preprocessing Bisa dibedakan menjadi 2: –Pemilihan berdasarkan objek data (record) untuk menganalisis atau creating/changing atribut Contoh : Agregasi, sampling –Pemilihan atribut untuk menganalisis atau creating/changing atribut Contoh: Pengurangan Dimensi, feature subset selection 4 Agregasi 5 Menkombinasikan dua atau lebih atribut (atau objek ) menjadi satu atribut (atau objek) Tujuannya –Pengurangan data baik secara jumlah atribut atau objek –Merubah skala misalkan penggabungan atribut kota dengan atribut propinsi dan negara –Mendapatkan data yang lebih “stabil” karena bisa didapatkan data dengan variabilitas yang kecil 5 Sampling 6 Merupakan teknik utama utnuk memilih data dan biasanya digunakan untuk investigasi data dan analisis data akhir Sampling di statistik ≠sampling di data mining –Jika di statistik berkaitan dengan mahalnya atau lamanya pengumpulan keseluruhan data, jika di data mining data keseluruhan ada namun untuk memproses keseluruhan akan terlalu lama 6 Sampling … 7 Prinsip utama sampling yang efektif adalah: –Ouput dengan penggunaan sampel sama bagusnya dengan penggunaan data keseluruhan berarti data sampel sudah representatif –Sampel sudah representatif jika memiliki properti yang mirip (dari segi interest) seperti data asli 7 Tipe-tipe Sampling 8 Simple Random Sampling –Setiap item memiliki probabilitas yang sama untuk dipilih Sampling without replacement –Setiap item yang terpilih akan dikeluarkan dari populasi Sampling with replacement –Setiap item yang terpilih tidak dikeluarkan dari populasi, bisa saja terpilih lebih dari satu kali Stratified sampling –Data displit menjadi beberapa bagian; lalu diambil sampel secara acak dari tiap bagian 8 Ukuran Sampel Ukuran sampel penting untuk ditentukan Jika semakin besar jumlah sampel maka peluang sampel tersebut representatif akan besar, namun keuntungan sampling tidak didapat secara optimal Jika semakin kecil sampel kemungkinan pola tidak didapat kan atau kalaupun didapat pola tsb salah Solusinya?? –Adaptive/ progressive sampling Dimulai dari sampel kecil sampai sejumlah sampel yang sudah memadai 9 Ukuran Sampel 10 8000 points Points 2000 Points 500 10 Adaptive/ progressive sampling 11 10 Group Points Probabilitas sampel yang mengandung points dari tiap Group 11 Pengurangan Dimensi Kenapa harus? –Karena data set bisa saja memiliki jumlah features yang sangat banyak (contohnya: data dokumen dengan term sebagi vektor feature-nya) –Menghindari Curse of Dimensionality (yakni fenomena di mana analisis data menjadi sangat sulit disebabkan pertambahan dimensi data, data menjadi tersebar /sparse –Rmengurangi penggunaan memori dan waktu yang dibutuhkan oleh algortima data mining –Memudahkan visualisasi data –Membantu pengeliminiran data yang tidak relevan atau noise 12 Principle Component Analysis (PCA) 14 Tujuannya untuk mencari projeksi yang menggambarkan variasi terbesar dalam data Teknik aljabar linier untuk atribut kontinu yang dapat menemukan atribut baru (principal component) 14 Pengurangan Dimensi: ISOMAP 15 By: Tenenbaum, de Silva, Langford (2000) Membangun graf neighbourhood Untuk tiap pasang points pada graf, hitung jarak terpendek– jarak geodesic 15 Feature Subset Selection 16 Untuk pengurangan dimensi data Redundant features –duplicate much or all of the information contained in one or more other attributes –Example: purchase price of a product and the amount of sales tax paid Irrelevant features –contain no information that is useful for the data mining task at hand –Example: students' ID is often irrelevant to the task of predicting students' GPA 16 Teknik-teknik Feature Subset Selection 17 –Pendekatan Brute-force : Mencari semua kemungkinan subsets feature sebagai input algortima data mining –Pendekatan Embedded : Feature selection dilakukan sebagai bagina dari algoritma data mining –Pendekatan Filter : Feature dipilih sebelum algoritma data mining dijalankan –Pendekatan Wrapper : Penggunaan algoritma data mining sebagai black box untuk menemukan best subset dari atribut 17 Feature Creation 18 Pembuatan atribut baru yang menggambarkan informasi penting pada dataset secara lebih efisien dibanding atribut asal Ada 3 Metodologi umum : –Ekstraksi feature domain-specific –Mapping Data ke New Space –Konstruksi Feature kombinasi features 18 Mapping Data ke New Space 19 l Transformasi Fourier l Transformasi Wavelet Two Sine Waves Two Sine Waves + Noise Frequency 19 Diskretisasi 20 Beberapa teknik tidak menggunakan label kelas Data Equal frequency Equal interval width Clustering 20 Diskretisasi 21 Beberapa teknik menggunakan label kelas Entropy based approach 3 categories for both x and y 5 categories for both x and y 21 Transformasi Atribut 22 Merupakan fungsi yang memetakan keseluruhan nilai atibut ke nilai baru dan setiap nilai lama dapat diidentifikasi dengan satu nilai baru –Fungsi sederhana: xk, log(x), ex, |x| –Standarisasi dan –Normaliasi : 22 Normalisasi Min-Max Normalisation z-score normalisation Decimal scaling normalization PR Cari rumus pemetaan atribut dengan ketiga normalisasi tsb, berikan contohnya Tugas Kelompok : 3 orang Dikumpulkan Jumat 18 September 2015 23 Similaritas dan Disimilaritas Similaritas –Pengukuran numerik untuk kemiripan dua objek –Semakin tinggi semakin mirip –range antara [0,1] Disimilaritas –Pengukuran numerik untuk perbedaan dua objek –Semakin tinggi semakin berbeda –Minimum dissimilaritas = 0 –Upper limit varies Untuk ukuran similaritas & dissimilaritas bisa menggunakan jarak (distance) 24 Similaritas /Disimilaritas untuk Atribut Sederhana Misalkan p dan q adalah nilai atribut untuk 2 objek data. 25 Teknik-teknik pengukuran jarak Euclidean Distance dist Minkowski distance n ( pk k 1 n qk ) dist ( | pk qk k 1 2 1 r r |) Mahalanobis Distance mahalanobis( p, q) ( p q) 1( p q)T 26 Contoh perhitungan Euclidean Distance 3 point p1 p2 p3 p4 p1 2 p3 p4 1 p2 0 0 1 2 3 4 5 y 2 0 1 1 6 p1 p1 p2 p3 p4 x 0 2 3 5 0 2.828 3.162 5.099 p2 2.828 0 1.414 3.162 p3 3.162 1.414 0 2 p4 5.099 3.162 2 0 Distance Matrix 27 Contoh perhitungan Minkowski Distance point p1 p2 p3 p4 x 0 2 3 5 y 2 0 1 1 L1 p1 p2 p3 p4 p1 0 4 4 6 p2 4 0 2 4 p3 4 2 0 2 p4 6 4 2 0 L2 p1 p2 p3 p4 p1 p2 2.828 0 1.414 3.162 p3 3.162 1.414 0 2 p4 5.099 3.162 2 0 L p1 p2 p3 p4 p1 p2 p3 p4 0 2.828 3.162 5.099 0 2 3 5 2 0 1 3 3 1 0 2 5 3 2 0 Distance Matrix 28 Contoh perhitungan Mahalanobis Distance Covariance Matrix: C 0.3 0.2 0 . 2 0 . 3 A: (0.5, 0.5) B B: (0, 1) A C: (1.5, 1.5) Mahal(A,B) = 5 Mahal(A,C) = 4 29 Similaritas untuk data Binary Disebut juga similarity coeficients Nilai antara [0,1] Simple Matching dan Jaccard Coefficients Misalkan : M01 = jumlah atribut di mana p = 0 dan q =1 M10 = jumlah atribut di mana p = 1 and q = 0 M00 = jumlah atribut di mana p = 0 and q = 0 M11 = jumlah atribut di mana p = 1 and q = 1 SMC = number of matches / number of attributes = (M11 + M00) / (M01 + M10 + M11 + M00) J = number of 11 matches / number of not-bothzero attributes values = (M11) / (M01 + M10 + M11) 30 Contoh SMC Vs Jaccard p= 1000000000 q= 0000001001 M01 = 2 M10 = 1 M00 = 7 M11 = 0 (jumlah atribut di mana (jumlah atribut di mana (jumlah atribut di mana (jumlah atribut di mana p = 0 dan q =1) p =1 dan q = 0) p =0 dan q = 0) p = 1 dan q = 1) SMC = (M11 + M00)/(M01 + M10 + M11 + M00) = (0+7) / (2+1+0+7) = 0.7 J = (M11) / (M01 + M10 + M11) = 0 / (2 + 1 + 0) = 0 31 Cosine Similarity Jika d1 dan d2 adalah dua vektor dokumen, maka cos( d1, d2 ) = (d1 d2) / ||d1|| ||d2|| , Keterangan adalah vector dot product dan || d || adalah panjang vector d. • Contoh: d1 = 3 2 0 5 0 0 0 2 0 0 d2 = 1 0 0 0 0 0 0 1 0 2 d1 d2= 3*1 + 2*0 + 0*0 + 5*0 + 0*0 + 0*0 + 0*0 + 2*1 + 0*0 + 0*2 = 5 ||d1|| = (3*3+2*2+0*0+5*5+0*0+0*0+0*0+2*2+0*0+0*0)0.5 = (42) 0.5 = 6.481 ||d2|| = (1*1+0*0+0*0+0*0+0*0+0*0+0*0+1*1+0*0+2*2) 0.5 = (6) 0.5 = 2.245 cos( d1, d2 ) = .3150 32 Extended Jaccard Coefficient (Tanimoto) Merupakan varian dari Jaccard untuk atribut kontinu atau count attributes 33 Korelasi Pengukuran korelasi hubungan linier antara objek-objek Untuk perhitungan korelasi, data objek distandarkan p & q, lalu dilakukan dot product pk ( pk mean( p)) / std ( p) qk (qk mean(q)) / std (q) correlation( p, q) p q 34 35 Hatur Nuhun 35