Knowledge Discovery in Databases (IS704) dan Data Mining (CS704) Task III : Data Transformation (Transformasi Data) Mengubah / mentransformasikan data ke dalam bentuk yang paling tepat / cocok untuk proses data mining. Kuliah #4: Data Preprocessing (Bagian 2) Gunawan Jurusan Teknik Informatika Sekolah Tinggi Teknik Surabaya 26 August 2004 Gunawan, Teknik Informatika STTS Beberapa Pendekatan Transformasi Data Smoothing Transformasi Data dapat melibatkan: Telah dijelaskan pada bagian sebelumnya, mencakup binning, regression, dan clustering. – Smoothing, yang dilakukan untuk membuang noise. – Aggregation, dimana operasi-operasi summary atau aggregation diaplikasikan pada data. – Generalization dari data, dimana level rendah atau data "primitif" (data mentah) digantikan oleh higher-level concepts melalui penggunaan hirarki konsep. – Normalization, dimana data sebuah atribut diskalakan ke dalam rentang (kecil) yang ditentukan. – Attribute Construction (atau Feature Construction), dimana atribut-atribut yang baru dibentuk dan ditambahkan ke dalaanm kelompok atribut yang telah ada. 26 August 2004 Gunawan, Teknik Informatika STTS 3 26 August 2004 Normalization (#1) v − min A ( new _ max A − new _ min A) + new _ min A max A − min A Gunawan, Teknik Informatika STTS 4 Contoh: – Jika minA dan maxA merupakan nilai-nilai minimum dan maximum dari atribut A, minmax normalization memetakan sebuah nilai v dari A menjadi v’ dalam rentang [new_minA, new_maxA] dengan rumus: 26 August 2004 Gunawan, Teknik Informatika STTS Normalization (#2) Min-max Normalization v' = 2 5 – Anggap bahwa nilai minimum dan maximum untuk atribut income secara berturut-turut adalah $12,000 dan $98,000. Jika income akan dipetakan pada rentang [0.0,1.0], dengan normalisasi min-max, maka $73,600, sebuah nilai dari income ditransformasikan menjadi [(73,600 – 12,000) / (98,000-12,000)](1.0-0) + 0 = 0.716. 26 August 2004 Gunawan, Teknik Informatika STTS 6 1 Normalization (#3) Normalization (#4) z-score Normalization 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. – nilai-nilai untuk sebuah atribut A dinormalisasi berdasarkan mean dan standard deviation dari A. Nilai v dari A dinormalisasi pada v’ dengan menghitung: v’ = (v – Ā) σA 26 August 2004 Gunawan, Teknik Informatika STTS 7 26 August 2004 Normalization (#5) Contoh: – Prinsipnya dilakukan dengan memindahkan titik desimal dari nilai-nilai atribut A. – Anggap bahwa nilai-nilai atribut A terletak dalam range –986 sampai 917. Dengan demikian nilai absolut maksimum A adalah 986. Untuk menormalisasikan dengan menggunakan skala desimal, setiap nilai A dibagi dengan 1000 (misalnya, j = 3) sehingga –986 dinormalisasi menjadi -0.986. – Panjang pergeseran titik desimal ( j ) tergantung pada nilai absolut maksimum dari A. – j adalah integer terkecil sedemikian hingga Max(| v’ |)<1 – Nilai v dari A dinormalisasikan pada v’ dengan menghitung: 26 August 2004 v 10 j Gunawan, Teknik Informatika STTS 9 Attribute Construction (1) Gunawan, Teknik Informatika STTS 26 August 2004 Gunawan, Teknik Informatika STTS 10 Attribute Construction (2) Satu atau lebih atribut yang baru dibentuk dari atributatribut yang sudah ada untuk membantu peningkatan akurasi dan pemahaman data dalam staruktur dalam dimensi yang lebih tinggi. Sebagai contoh atribut area dapat ditambah pada atribut height dan width. Konstruksi atribut diharapkan membantu mengurangi masalah fragmentasi ketika algoritma decision tree digunakan untuk klasifikasi, dimana sebuah atribut diuji berkali-kali sepanjang sebuah path dalam decision tree yang didapat. 26 August 2004 8 Normalization (#6) Normalization by Decimal Scaling v' = Gunawan, Teknik Informatika STTS Contoh operator-operator untuk konstruksi atribut termasuk and untuk atribut binary dan product untuk atribut-atribut nominal. Dengan menggabungkan sejumlah atribut, harapannya adalah: informasi yang hilang (belum terpikir nantinya akan bermanfaat) tentang hubungan antar atribut dapat digali, dan mungkin ia berguna untuk penemuan pengetahuan baru. 11 26 August 2004 Gunawan, Teknik Informatika STTS 12 2 Task IV : Data Reduction (Reduksi Data) Beberapa Strategi untuk Reduksi Data (#1) Strategi untuk reduksi data mencakup: Data Warehouse mungkin memuat tera bytes data, sehingga algoritma mining yang kompleks mungkin akan memakan waktu yang sangat lama untuk mengolah seluruh data sets. Sejumlah strategi dapat diterapkan untuk mendapatkan representasi data yang telah direduksi sehingga volumenya jauh lebih kecil, tetapi integritas data originalnya masih tetap terjaga. – Data Cube Aggregation, ketika operasi-operasi summary / aggregation diterapkankan pada data dalam konstruksi sebuah data cube. – Dimension Reduction, dimana atribut/dimensi yang irrelevant (tidak relevan), weakly relevan (berhubungan tetapi lemah), atau redundant (ganda) dapat dideteksi dan dihapus. – Data Compression, dimana mekanisasi encoding digunakan untuk mereduksi ukuran data / data set. Artinya: Mining pada kumpulan data yang direduksi seharusnya lebih efisien, tetapi dapat menghasilkan hasil analisis yang sama (atau hampir sama). 26 August 2004 Gunawan, Teknik Informatika STTS 13 26 August 2004 Gunawan, Teknik Informatika STTS 14 Data Cube Aggregation (#1) Beberapa Strategi untuk Reduksi Datan (#2) – Numerosity Reduction, di mana data diganti dengan alternatif representasi data yang lebih kecil seperti parametric models (yang hanya perlu menyimpan parameter-parameter model bukan data sesungguhnya), atau metode-metode nonparametric seperti clustering, sampling, dan penggunaan histogram. – Discretization dan Concept Hierarchy Generation, di mana nilai data mentah untuk suatu atribut digantikan dengan ranges atau level konsepsi yang lebih tinggi. Konsep hierarki memungkinkan mining data pada sejumlah level hirarki yang berbeda. 26 August 2004 Gunawan, Teknik Informatika STTS 15 Data Cube Aggregation (#2) 26 August 2004 Gunawan, Teknik Informatika STTS 16 Data Cube Aggregation (#3) – Aggregation adalah operasi sumary (peringkasan) yang diterapkaan pada data numerik. – Misal: Data penjualan harian digabungkan untuk menghitung pendapatan perbulan dan pertahun, sehingga tidak perlu data yang detail (dengan dirata-rata atau ditotal). – Langkah ini dilakukan dengan memanfaatkan operator data cube roll up (meringkas). 26 August 2004 Gunawan, Teknik Informatika STTS 17 26 August 2004 Gunawan, Teknik Informatika STTS 18 3 Dimensionality Reduction (#1) Dimensionality Reduction (#2) Mereduksi ukuran data sets dengan menghapus atribut-atribut yang mungkin tidak relevan untuk proses mining. Contoh: Beberapa metode Heuristics yang dapat digunakan: – – – – – Apakah nomor telepon cukup relevan untuk dipakai dalam menentukan suka tidaknya seorang customer akan CD tertentu? 26 August 2004 Gunawan, Teknik Informatika STTS 19 decision-tree induction step-wise forward selection step-wise backward elimination combining forward selection and backward elimination 26 August 2004 Contoh Dimensionally Reduction dengan Induksi Decision Tree A4 ? Class 1 > Class 1 Metode yang biasa digunakan untuk keperluan Data Reduction: – Wavelet Transform – Principal Component Analysis A6? Class 2 20 Data Compression Kumpulan attribute mula-mula : {A1, A2, A3, A4, A5, A6} A1? Gunawan, Teknik Informatika STTS Justru yang tidak biasa digunakan untuk kompresi string atau audio/video pada umumnya. Class 2 Kumpulan attribute setelah reduksi : {A1, A4, A6} 26 August 2004 Gunawan, Teknik Informatika STTS 21 26 August 2004 Gunawan, Teknik Informatika STTS 22 Principle Component Analysis (#1) Wavelet Transform Teknik pemrosesan sinyal linier, yang jika digunakan pada vector D, mentransformasikan vektor itu menjadi sebuah vector lain, D′, koefisien wavelet-nya. Dua vector itu panjangnya sama. Input: 22 utility publik di USA. “Bagaimana mungkin teknik ini berguna untuk reduksi data, jika data hasil transformasi wavelet itu sama panjangnya dengan data aslinya?” 26 August 2004 Gunawan, Teknik Informatika STTS 23 26 August 2004 Gunawan, Teknik Informatika STTS 24 4 Principle Component Analysis (#2) Numerosity Reduction Output: 8 utility publik yang “principal”. Numerosly Reduction: Upaya untuk mengurangi volume data dengan menggunakan alternatif representasi data. Terdapat 2 (dua) kategori pendekatan yang berbeda: – Parametric Methods: Diasumsikan nilai-nilai sebuah atribut cocok (fits) dengan model tertentu sehingga yang diproses hanya parameter-parameternya, datanya diabaikan (kecuali untuk data outlier). – Non-Parametric Methods: Tidak mengasumsikan adanya model yang cocok dengan data. 26 August 2004 Gunawan, Teknik Informatika STTS 25 Beberapa teknik yang digunakan untuk numerosity reduction: Gunawan, Teknik Informatika STTS Generalization: Mengganti data level rendah / primitif / mentah (low-level data) dengan konsep yang lebih tinggi. Concept Hierarchy: Penerapan teknik diskretisasi secara recursive pada nilai-nilai sebuah atribut dengan tujuan menyediakan pengelompokan/partisi secara hirarki/multiresolusi. 27 Discretization dan Concept Hierarchy Generation Gunawan, Teknik Informatika STTS 26 August 2004 Gunawan, Teknik Informatika STTS 28 Discretization dan Concept Hierarchy Generation Concept hierarchy dibedakan untuk: Beberapa metode diskretisasi dan Upaya Menghasilkan Hirarki Konsep untuk Data Numerik dapat dilakukan melalui: – Binning: Equal Width Binning – Histogram Analysis – Cluster Analysis – Holte’s 1R Discretizer – Entropy-Based Discretization: Recursive Minimal Entrophy Partitioning – ChiMerge – Segmentation by Natural Partitioning (3-4-5 rule) Paper: Discretization - An Enabling Technique, Huan Liu et.al. 26 August 2004 26 Teknik diskritisasi dapat digunakan untuk mengurangi jumlah value pada atribut yang diberikan, dengan membagi range nilai atribut tersebut ke dalam sejumlah interval. Label interval kemudian dapat digunakan untuk mengantikan nilai data yang aktual. Regression Model Log-Linear Model Histogram Clustering Sampling 26 August 2004 Gunawan, Teknik Informatika STTS Discretization dan Concept Hierarchy Generation Numerosity Reduction – – – – – 26 August 2004 – Numeric Data • Nilai usia dapat diubah ke hirarki yang lebih tinggi menjadi anak-anak, remaja, dewasa, dan manula. – Categorical / Nominal Data. • nama jalan (level rendah) dapat diganti dengan nama kota, nama provinsi, negara (menuju level yang lebih tinggi). 29 26 August 2004 Gunawan, Teknik Informatika STTS 30 5 Discretization dan Concept Hierarchy Generation Contoh concept hierarchy pada nilai-nilai attribute harga: 26 August 2004 Gunawan, Teknik Informatika STTS 31 6