Pert 04 clustering data mining

66
Bab 4. Clustering Data Mining dan Data Warehousing Luki Ardiantoro, MT

Transcript of Pert 04 clustering data mining

  1. 1. Bab 4. Clustering Data Mining dan Data Warehousing Luki Ardiantoro, MT
  2. 2. PENGERTIAN CLUSTERING Bentuk pembelajaran ada 2 : 1. Terawasi (supervised Learning) 2. Tak terawasi (unsupervised Learning) -> Clustering
  3. 3. Definisi Clustering Singkatnya : Algoritma Clustering berusaha untuk menemukan kelompok komponen secara natural, berdasarkan pada beberapa kesamaan. Contoh di bawah ini memperagakan clustering dari gembok yang jenisnya sama. Ada total 10 gembok yang memiliki tiga warna berbeda. Kita tertarik untuk mengelompokkan gembok yang memiliki tiga warna dan bentuk yang berbeda dalam tiga kelompok yang berbeda.
  4. 4. Definisi Clustering (Lanjt) Gembok yang jenisnya sama dikelompokkan ke dalam suatu kelompok seperti terlihat di bawah ini: Sehingga, kita lihat bahwa clustering bermakna menggolongkan data atau membagi satuan data yang besar ke dalam satuan data yang lebih kecil yang memiliki kesamaan. Algoritma clustering tercakup dalam aplikasi BI2M. Lihat contoh dari penggunaan clustering dalam BI2M.
  5. 5. Ilustrasi klasterisasi
  6. 6. 6 Macam-macam Metode Clustering Berbasis Metode Statistik Hirarchical clustering method : pada kasus untuk jumlah kelompok belum ditentukan terlebih dulu, contoh data-data hasil survey kuisioner. Non Hirarchical clustering method : Jumlah kelompok telah ditentukan terlebih dulu. Metode yang digunakan : K-Means Berbasis Fuzzy : Fuzzy C-Means Berbasis Neural Network : Kohonen SOM, LVQ Metode lain untuk optimasi centroid atau lebar cluster : Genetik Algoritma (GA)
  7. 7. Clustering Algoritm 1. Connectivity Clustering (Hierarcical Clustering) Single Link Average Link Complete Link 2. Centroid Based Clustering K-Means 3. Etc.
  8. 8. 1. Clustering Fuzzy C-Means (FCM)
  9. 9. 9 Fuzzy C-Means (FCM) Fuzzy clustering adalah salah satu teknik untuk menentukan cluster optimal dalam suatu ruang vektor yang didasarkan pada bentuk normal Euclidian untuk jarak antar vektor. Fuzzy C-Means (FCM) adalah suatu teknik pengclusteran data yang mana keberadaan tiap-tiap titik data dalam suatu cluster ditentukan oleh derajat keanggotaan. Output dari FCM bukan merupakan fuzzy inference system, namun merupakan deretan pusat cluster dan beberapa derajat keanggotaan untuk tiap-tiap titik data. Informasi ini dapat digunakan untuk membangun suatu fuzzy inference system. Teknik ini pertama kali diperkenalkan oleh Jim Bezdek pada tahun 1981.
  10. 10. 10 Konsep dasar FCM, pertama kali adalah menentukan pusat cluster, yang akan menandai lokasi rata-rata untuk tiap-tiap cluster. Pada kondisi awal, pusat cluster ini masih belum akurat. Tiap-tiap titik data memiliki derajat keanggotaan untuk tiap-tiap cluster. Dengan cara memperbaiki pusat cluster dan derajat keanggotaan tiap-tiap titik data secara berulang, maka akan dapat dilihat bahwa pusat cluster akan bergerak menuju lokasi yang tepat. Perulangan ini didasarkan pada minimisasi fungsi obyektif yang menggambarkan jarak dari titik data yang diberikan ke pusat cluster yang terbobot oleh derajat keanggotaan titik data tersebut. Fuzzy C-Means (FCM)
  11. 11. Ukuran Fuzzy Fuzzy => kabur Teori himpunan fuzzy akan memberikan jawaban terhadap masalah yang mengandung ketidak pastian Ukuran fuzzy menunjukkan derajat kekaburan dari himpunan fuzzy Fungsi ukuran kekaburan, yaitu P(X), merupakan himpunan semua subset dari X f(A), suatu fungsi yang memetakan subset A ke karakteristik derajat kekaburan. f : P(x) R
  12. 12. Indeks Kekaburan Jarak antara suatu himpunan fuzzy A dengan himpunan crisp C yang terdekat. Himpunan crisp C terdekat dari himpunan fuzzy A dinotasikan : C[x] = 0, jika A[x] 0.5 dan C[x] = 1, jika A[x] 0.5 3 (tiga) kelas sering digunakan dalam mencari indeks kekaburan - Hamming distance f(A) = | A[x] - C[x] | f(A) = min | A[x], 1 - A[x] | - Euclidean distance f(A) = { [ A[x] - C[x] ] } exp. () - Minskowski distance f(A) = { [ A[x] - C[x] ] exp.w } exp. (1/w)
  13. 13. Fuzzy Entropy didefinisikan : f (A) = - {A[x] log A[x] + [1-A[x]] log[1-A[x]]} Ukuran Kesamaan Menunjukkan derajat perbedaan antara 2 himpunan fuzzy
  14. 14. Fuzzy Clustering Salah satu teknik untuk menentukan cluster optimal dalam ruang vektor berdasar pada bentuk normal Euclidian untuk jarak antar vektor. Berguna bagi pemodelan fuzzy terutama dalam meng- identifikasi aturan-aturan fuzzy. Cluster dikatakan fuzzy jika tiap-tiap obyek dihubung- kan dengan menggunakan derajat keanggotaan (bukan dengan keanggotaan crisp) Beberapa teknik pembuatan cluster mis. Fuzzy C - Means (FCM), Subtractive Clustering
  15. 15. Contoh clustering dengan 3 cluster
  16. 16. Fuzzy C-Means (FCM) Fuzzy C-Means (Jim Bezdek, 1981), salah satu teknik clustering data dimana tiap-tiap titik data dalam suatu cluster ditentukan oleh derajat keanggotaan (). Algoritma pengclusteran terawasi, karena jumlah cluster yang akan dibentuk perlu diketahui sebelumnya Konsep dasar FCM, adalah - menentukan pusat cluster (sementara) untuk tiap - tiap cluster - memperbaiki derajat keanggotaan tiap titik data dalam tiap cluster memperbaiki pusat cluster - memproses berulang sampai diperoleh pusat cluster terbaik dari masing-masing cluster.
  17. 17. Substractive Clustering Merupakan teknik clustering tidak terawasi Berdasarkan ukuran densitas (potensi) titik-titik data dalam suatu ruang (variabel) Konsep dasar Substractive Clustering, adalah - menentukan daerah-daerah dalam suatu variabel yang memiliki densitas tinggi terhadap titik-titik data di sekitarnya. - menentukan titik dengan jumlah tetangga terbanyak akan dipilih sebagai pusat cluster. - titik yang sudah terpilih sebagai pusat cluster, densitasnya akan dikurangi. - mengulangi tahapan untuk titik lainnya dan proses terus berulang sampai semua titik teruji.
  18. 18. Membentuk FIS dengan Substractive Clustering dan FCM (Cluster Interface) 0 0.2 0.4 0.6 0.8 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 X Y
  19. 19. FC(1) 19 Diberikan data dengan banyak data sejumlah 5 buah dengan 3 atribut. Tentukan cluster dengan algoritma FCM jika banyaknya cluster yang diinginkan sejumlah 2 cluster. Nah, sebelum kita menuju ke pembahasan, saya akan menjelaskan terlebih dahulu maksud soalnya... Jadi ada 5 data yang disediakan (di kehidupan nyata bisa jadi ratusan bahkan ribuan data *namanya juga data mining), tiap data punya 3 atribut, atribut itu adalah pelengkap si data misalkan di kehidupan nyata seperti kelembaban, curah hujan, kecepatan, dll... Setelah itu, kita ingin mengelompokkan 5 data tersebut menjadi 2 kelompok.. Masuk kelompok apa saja mereka? Karena kita memakai FCM (disingkat aja yaaa) maka tiap data bisa dimiliki oleh dua kelompok, namun berdasarkan derajat keanggotaan, mereka itu lebih condong kemana...Berikut penyelesaiannya... Contoh ilustrasi
  20. 20. Data FCM FC(1) 20 Data ke-i Atribut A (1) B (2) C (3) 1 12 7 9 2 5 4 5 3 8 11 4 4 10 3 8 5 9 1 3 i = 5 ; j = 3 Matrix X Langkah 2 : Inisiasikan nilai pada komponen-komponen berikut ini : (1) Banyaknya cluster yang diinginkan --> c = 2 (2) Pangkat (pembobot) --> w = 2 (3) Maksimum Iterasi --> maxIter = 5 (4) Error terkecil --> e = 0,01 (5) Fungsi Objektif awal --> P0 = 0 (6) Iterasi awal --> iter = 1;
  21. 21. 2. Clustering Hirarki (Hierarchical Clustering)
  22. 22. Skema Hierarchical clustering
  23. 23. 1. Tentukan k sebagai jumlah cluster yang ingin dibentuk. 2. Setiap data dianggap sebagai cluster. Kalau N=jumlah data dan n=jumlah cluster, berarti ada n=N 3. Hitung jarak antar cluster 4. Cari 2 cluster yang mempunyai jarak antar cluster yang paling minimal dan gabungkan (berarti n = n-1) 5. Jika n>k, kembali ke langkah 3 Algoritma hierarchical clustering
  24. 24. 1. Single linkage 2. Centroid linkage 3. Complete linkage 4. Average linkage Macam-macam metode hierarchical clustering
  25. 25. Contoh clustering hirarki
  26. 26. Hierarchical clustering : example using single linkage
  27. 27. Hierarchical clustering : Pembentukan Clusters dr Dendogram
  28. 28. Metode Hierarchical Clustering Menggunakan jarak matrix sbg clustering criteria. Metode ini tidak membutuhkan jmlah clusters (k) sebagai input, tetapi membutuhkan syarat berhenti (termination condition)Step 0 Step 1 Step 2 Step 3 Step 4 b d c e a a b d e c d e a b c d e Step 4 Step 3 Step 2 Step 1 Step 0 agglomerative (AGNES) divisive (DIANA)
  29. 29. Clustering Hirarki Keuntungan Dendograms sangat bagus untuk divisualisasikan Menyajikan relasi sec. hirarki antar cluster Gambar yang dihasilkan sanggup menampilkan pusat (concentric clusters) kecenderungan Kerugian Tidak mudah untuk mendefinisikan level seluruh cluster Dari serangkaian uji coba menunjukan bahwa teknik clustering lain mengungguli (outperform) clustering hirarki
  30. 30. Contoh : Klasterisasi Dokumen Organisasi otomatis dokumen ke dalam kelompok tertentu sehingga dokumen dalam klaster / kelompok memiliki kesamaan yang tinggi dibandingkan dengan satu sama lain, tetapi sangat berbeda dengan dokumen dalam klaster lain. Bentuk pembelajaran tak terawasi (unsupervised Learning)
  31. 31. Hierarchical clustering Mengatur kelompok dalam hirarki (subjek) sedemikian rupa sehingga hubungan orang tua- anak antara node dalam hirarki dapat dilihat sebagai topik dan subtopik. dairy crops agronomyforestry AI HCI craft missions botany evolution cell magnetism relativity courses agriculture biology physics CS space ... ... ... www.yahoo.com/Science ... ...
  32. 32. Hierarchical clustering metode analisis cluster yang berusaha untuk membangun sebuah hirarki cluster. 1. Agglomerative : Pendekatan "bottom up, setiap pengamatan dimulai dalam cluster sendiri, dan pasangan cluster digabung sebagai salah satu hirarki bergerak naik . 2. Devisive : Pendekatan "top down , semua pengamatan dimulai dalam satu cluster, dan perpecahan yang dilakukan secara rekursif bergerak ke hirarki bawah.
  33. 33. Single Link Clustering strategi bottom-up: membandingkan setiap titik dengan masing-masing titik. Setiap objek ditempatkan dalam sebuah cluster yang terpisah, dan pada setiap langkah kita menggabungkan pasangan terdekat cluster, sampai kondisi penghentian tertentu dipenuhi kedekatan dua kelompok didefinisikan sebagai minimum jarak antara dua titik dalam dua kelompok. Min { d(a,b) , a A, b B}
  34. 34. Dendogram - menampilkan informasi yang sama seperti pada grafik di atas, namun batas jarak vertikal, dan poin di bagian bawah (horisontal). Ketinggian di mana dua kelompok digabung dalam dendogram mencerminkan jarak dua kelompok. MIN C A B D 1 1 A B CD 1 1 2 2 2
  35. 35. Dendogram A B C D E 1 2 3
  36. 36. Contoh: Asumsikan bahwa D database yang diberikan oleh tabel di bawah ini. Ikuti teknik link tunggal untuk menemukan cluster di database berikut. Gunakan ukuran jarak Euclidean! x y p1 0.40 0.53 p2 0.22 0.38 p3 0.35 0.32 p4 0.26 0.19 p5 0.08 0.41 p6 0.45 0.30
  37. 37. Langkah 1. Plot benda-benda di ruang n-dimensi (dimana n adalah jumlah atribut). Dalam kasus kami, kami memiliki 2 atribut - x dan y, jadi kami merencanakan obyek p1, p2, ... p6 dalam ruang 2-dimensi: Langkah 2. Hitung jarak dari setiap objek (titik) ke semua titik lain, menggunakan ukuran jarak Euclidean, dan menempatkan angka dalam matriks jarak.
  38. 38. Matrix Jarak
  39. 39. Langkah 3 : Mengidentifikasi dua kelompok dengan jarak terpendek dalam matriks, dan menggabungkan mereka bersama-sama. Menghitung ulang matriks jarak, sebagai dua cluster sekarang dalam satu cluster. Dengan melihat matrik jarak di atas, kita melihat bahwa p3 dan p6 memiliki jarak terkecil dari semua - 0.11. Jadi, kita gabungkan kedua dalam satu cluster, dan kembali menghitung matriks jarak.
  40. 40. 3. Clustering k-means (k-means Clustering)
  41. 41. Clustering K-Means Pembagian menjadi sejumlah kluster Setiap Klaster memiliki sebuah pusat (Centroid) menggunakan nilai Mean nilai tiap titik. Nilai Mean dapat berubah dalam tiap iterasi . Tiap titik akan berasosiasi dengan cluster dengan jarak ttik dan centroid terdekat (Euclidean Distance). Jumlah kluster, K, diinisialisasi awal
  42. 42. Metode k-Means Clustering 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
  43. 43. Comments on the K-Means Method Strength Relatively efficient: O(tkn), where n is # instances, c is # clusters, and t is # iterations. Normally, k, t MaxIter) maka berhenti; Jika tidak: t = t+1, ulangi langkah ke-4. c 1k 1w 1 m 1j 2 kjij 1w 1 m 1j 2 kjij ik VX VX
  44. 54. Daftar Pustaka [1] Cox, Earl. 2001. The Fuzzy System Handbook. AP Professional [2] Hari dan Kusumadewi. 2004. Aplikasi Logika Fuzzy untuk Pendukung Keputusan. Yogyakarta: Graha Ilmu. [3] Kadir, Abdul. 2003. Dasar Pemrograman Web Dinamis Menggunakan PHP. Yogyakarta : ANDI 65
  45. 55. A. K. Jain and M. N. Murty and P. J. Flynn, Data clustering : a review, ACM Computing Surveys, 31:3, pp. 264 - 323, 1999. T. R. Golub et. al, Molecular Classification of Cancer: Class Discovery and Class Prediction by Gene Expression Monitoring, Science, 286:5439, pp. 531 537, 1999. Gasch,A.P. and Eisen,M.B. (2002) Exploring the conditional coregulation of yeast gene expression through fuzzy k-means clustering. Genome Biol., 3, 1 22. M. Eisen et. al, Cluster Analysis and Display of Genome-Wide Expression Patterns. Proc Natl Acad Sci U S A 95, 14863-8, 1998.