Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
BAB 6 ANALISIS CLUSTER Pendahuluan Analisis cluster membagi data ke dalam grup (cluster) yang bermakna, berguna, atau keduanya. Jika tujuannya mencari grup yang memiliki makna, maka cluster seharusnya menangkap struktur alami dari data, disebut juga clustering for understanding. Dalam beberapa kasus, analisis cluster hanya berguna sebagai titik awal bagi penggunaan yang lain - seperti peringkasan data (data summarization), disebut juga clustering for utility. Apakah untuk mencari grup yang bermakna atau sebagai perangkat awal bagi penggunaan yang lain, analisis cluster telah lama memainkan peran penting dalam berbagai bidang seperti: psikologi dan ilmu sosial lainnya, biologi, statistika, pengenalan pola, temu kembali informasi, machine learning, dan data mining. Analisis cluster telah diterapkan dalam banyak masalah praktis, seperti Clustering for Understanding. Kelas, atau kelompok obyek yang memiliki makna secara konsep dengan karakteristik umum yang sama, memainkan peran penting dalam bagaimana orang menganalisis dan menjelaskan fenomena di alam. Sebenarnya, manusia memiliki keterampilan untuk membagi obyek-obyek ke dalam grup (clustering) dan memberikan obyek tertentu dalam grup-grup tersebut (classification). Sebagai contoh, bahkan anak kecil dapat dengan cepat memberikan label obyek-obyek dalam foto sebagai bangunan, kendaraan, manusia, binatang, tumbuhan, dan sebagainya. Dalam konteks pemahaman data, cluster merupakan kelas-kelas yang potensial dan analisis cluster merupakan kajian tentang teknik menemukan kelas-kelas tersebut secara otomatis. Berikut adalah contoh clustering for understanding di berbagai bidang : • Biologi. Ahli biologi telah lama menciptakan taksonomi (klasifikasi secara hirarki) bagi seluruh makhluk hidup : kingdom, phylum, kelas, ordo, famili, genus dan spesies. Sehingga tidak mengherankan jika pada awalnnya banyak pekerjaan analisis cluster yang bertujuan menciptakan taksonomi matematis yang dapat menemukan struktur klasifikasi secara otomatis. Saat ini, ahli biologi menerapkan clustering dalam analisis informasi genetik yang sangat besar. Sebagai contoh, clustering digunakan untuk mencari kelompokkelompok gen yang memiliki fungsi sama. • Temu-Kembali Informasi. World Wide Web mengandung jutaan halaman web, dan hasil query kepada mesin pencari dapat menghasilkan ribuan halaman. Clustering dapat digunakan untuk mengelompokkan hasil pencarian ini ke dalam sejumlah kecil cluster, masing-masing cluster menangkap aspek tertentu dari query. Sebagai contoh, query “movie” mungkin akan menghasilkan halaman web yang dikelompokkan dalam beberapa kategori, seperti review, trailer, bintang dan teater. Setiap kategori (cluster) dapat dipecah ke dalam sub-kategoru (sub-claster), menghasilkan struktur hirarki yang membantu pengguna untuk melakukan eksplorasi hasil query. Modul Kuliah Data Mining 106 • Iklim. Agar dapat memahami iklim bumi, perlu mencari pola atmosfer dan lautan. Untuk itu, analsis cluster telah digunakan untuk mencari pola tekanan atmosfer di daerah kutub dan wilayah lautan yang memiliki dampak berarti bagi iklim di daratan. • Psikologi dan Pengobatan. Kondisi kesehatan seseorang seringkali bervariasi, dan analisis cluster dapat digunakan untuk melakukan identifikasi sub-kategori kondisi kesehatan. Sebagai contoh, clustering telah digunakan untk melakukan identifikasi berbagai jenis depresi. Analisis cluster juga dapat digunakan untuk mendeteksi pola penyebaran penyakit secara spasial maupun temporal. • Bisnis. Bisnis mengumpulkan sejumlah besar informasi tentang pelanggan saat ini serta orang yang potensial menjadi pelanggan. Clustering dapat digunakan untuk membagi pelanggan ke dalam sejumlah kecil kelompok untuk analisis dan kegiatan pemasaran. Clustering for Utility. Analisis cluster menyediakan abstraksi dari obyek data individu kepada cluster dimana obyek tersebut berada. Sebagai tambahan, beberapa teknik clustering dapat menentukan karakteristik cluster dalam bentuk cluster prototype, yaitu obyek data yang mewakili obyek-obyek lainnya di dalam cluster. Cluster prototype ini dapat digunakan sebagai dasar bagi sejumlah teknik analisis data dan pengolahan data. Dengan demikian, dalam konteks penggunaan (utility), analisis cluster adalah kajian tentang teknik untuk mencari cluster prototype yang paling mewakili. • Summarization. Banyak teknik analisis data, seperti regresi atau PCA, memiliki kompleksitas O(m2) atau lebih tinggi (dimana m adalah jumlah obyek), sehingga tidak praktis untuk dataset yang besar. Namun, daripada menerapkan algoritma ke seluruh dataset, algoritma tersebut dapat diterapkan ke dataset yang telah dikurangi, mengandung hanya cluster prototype. Tergantung dari tipe analisis, jumlah prototipe, dan tingkat akurasi prorotipe dalam mewakili data, hasil algoritma dapat dibandingkan dengan jika menggunakan seluruh data. • Compression. Cluster prototype dapat juga digunakan untuk kompresi data. Secara umum, dibuat sebuah tabel yang berisi prototipe dari setiap cluster, misal masing-masing prototipe diberikan nilai integer berupa indeks dari prototipe yang terasosiasi dengan cluster-nya. Tipe kompresi ini dikenal sebagai vector quantization dan sering diterapkan pada data citra, suara dan video, dimana (1) banyak obyek data yang sangat mirip satu dengan lainnya, (2) kehilangan informasi sampai tingkat tertentu masih dapat ditolerir, dan (3) diinginkan tingkat pengurangan ukuran data yang nyata. • Efficiently Finding Nearest Neighbors. Mencari nearest neighbors memerlukan perhitungan jarak antar pasangan obyek, untuk semua titik. Seringkali cluster dan cluster prototype dapat ditemukan dengan jauh lebih efisien. Modul Kuliah Data Mining 107 6.1. Gambaran Umum 6.1.1. Apakah Analisis Cluster ? Analisis cluster akan mengelompokkan obyek-obyek data hanya berdasarkan pada informasi yang terdapat pada data, yang menjelaskan obyek dan relasinya. Tujuan analisis cluster adalah agar obyek-obyek di dalam grup adalah mirip (atau berhubungan) satu dengan lainnya, dan berbeda (atau tidak berhubungan) dengan obyek dalam grup lainnya. Semakin besar tingkat kemiripan/similarity (atau homogenitas) di dalam satu grup dan semakin besar tingkat perbedaan diantara grup, maka semakin baik (atau lebih berbeda) clustering tersebut. Gambar 6.1 merupakan ilustrasi prinsip clustering. Gambar 6.1. Prinsip Clustering Gambar 6.2 memperlihatkan dua puluh titik dan tiga cari membagi titik-titik tersebut dalam cluster. Gambar 6.2 merupakan ilustrasi bagaimana definisi cluster tidak presisi dan definisi terbaik tergantung dari kondisi data serta hasil yang diinginkan. Gambar 6.2. Beberapa cara menentukan cluster bagi dataset yang sama 6.1.2. Tipe Clustering. Ada beberapa tipe clustering jika dilihat dari beberapa sudut pandang, yaitu: • Hierarchical versus Partitional Partitional Clustering adalah membagi himpunan obyek data ke dalam sub-himpunan (cluster) yang tidak overlap, sehingga setiap obyek data berada dalam tepat satu cluster. Dilihat secara individual, setiap koleksi cluster dalam Gambar 1(b-d) adalah partitional clustering. Modul Kuliah Data Mining 108 Jika kita mengizinkan cluster untuk memiliki subcluster, maka akan terbentuk Hierarchical Clustering, yang merupakan himpunan nested cluster yang diatur dalam bentuk tree. Gambar 6.3 memperlihatkan empat obyek data sebagai dendogram dan nested cluster. Gambar 6.3. Dendogram dan Nested Cluster. • Exclusive versus Overlapping versus Fuzzy Clustering pada Gambar 6.2 semuanya bersifat exclusive, karena masingmasing obyek ditempatkan dalam satu cluster. Dalam banyak situasi dimana satu titik masuk akal ditempatkan dalam lebih satu cluster maka situasi ini menimbulkan overlapping clustering atau non-exclusive clusering. Misalnya, seseorang dalam universitas bisa menjadi mahasiswa sekaligus karyawan universitas tersebut. Dalam fuzzy clustering, setiap obyek menjadi milik setiap cluster dengan nilai keanggotaan diantara 0 (multak bukan anggota cluster) dan 1 (mutlak anggota cluster). Dengan kata lain, cluster diperlakukan sebagai himpunan fuzzy. • Complete versus Partial Complete clustering akan menetapkan setiap obyek ke dalam cluster, sedangkan partial clustering tidak. Alasan partial clustering adalah karena beberapa obyek dalam dataset mungkin bukan anggota kelompok yang telah didefinisikan dengan baik. Banyak obyek dalam dataset mungkin mewakili noise, outlier atau “uninteresting background”. Sebagai contoh, beberapa artikel surat kabar mungkin berbagai tema yang sama, seperti pemanasan global, sedangkan artikel lainnya lebih umum atau one-of-a-kind. Sehingga, untuk mencari topik yang penting dalam artikel bulan lalu, kita hanya ingin mencari cluster dokumen yang terkait erat dengan tema umum. Dalam kasus lain, mungkin yang diperlukan adalah complete clustering. Misal, aplikasi yang menggunakan clustering untuk mengatur dokumen untuk browsing yang perlu menjamin semua dokumen dapat di-browse. Telah banyak algoritma clustering yang dikembangkan, Gambar 6.4 menyajikan beberapa algoritma clustering dan hubungan diantara algoritma-algoritma tersebut. Sedangkan yang akan dibahas pada modul ini hanya algoritma K-mean, Agglomerative Hierarchical dan DBSCAN. Modul Kuliah Data Mining 109 Gambar 6.4 Algoritma Clustering 6.1.3. Tipe Cluster Clustering bertujuan mencari kelompok obyek (cluster) yang bermanfaat, sedangkan tingkat manfaat ditentukan oleh tujuan analisis data yang ditetapkan. Oleh karena itu, terdapat beberapa jenis cluster, yaitu: • Well-Separated. Cluster merupakan himpunan titik sehingga sembarang titik dalam cluster lebih dekat (atau lebih mirip) dengan setiap titik dalam cluster dibandingkan dengan sembarang titik yang tidak di dalam cluster. Gambar 6.5 merupakan ilustrasi Well-Separated Cluster. Gambar 6.5 Tiga Well-Separated Cluster • Prototype-Based/Center-Based. Cluster merupakan himpunan obyek, sehingga sebuah obyek dalam cluster lebih dekat (lebih mirip) dengan “pusat” cluster, daripada dengan pusat cluster lainnya. Yang sering dijadikan pusat cluster adalah centroid dan medoid. Centroid adalah rataan semua titik dalam cluster, sedangkan medoid adalah titik yang paling mewakili cluster. Center-based cluster di-ilustrasikan pada Gambar 6. Gambar 6.6. Empat Center-Based Cluster • Graph-Based. Jika data direpresentasikan sebagai graph, dimana obyek menjadi node dan link menyatakan koneksi diantara obyek, maka cluster dapat didefinisikan sebagai connected component; yaitu grup obyek yang terkoneksi satu sama lain, tetapi tidak memiliki koneksi dengan obyek di luar grup. Contoh penting dari graph-based cluster adalah contiguitybased cluster, dimana dua obyek terkoneksi hanya jika keduanya berada Modul Kuliah Data Mining 110 dalam jarak tertentu satu sama lain. Contoh contiguity-based cluster dapat dilihat pada Gambar 6.7 Gambar 6.7 Contiguity-based cluster • Density-Based. Sebuah cluster adalah wilayah yang padat obyek dikelilingi oleh wilayah dengan kepadatan rendah. Cluster tipe ini berguna untuk membentuk cluster dengan bentuk tak-teratur (irregular) atau terpilin (intertwined), dan juga jika terdapat noise dan outlier. Gambar 6.8 merupakan contoh Density-Based Clustering Gambar 6.8 Density-Based Clustering. • Shared-Property (Conceptual Cluster). Mencari cluster dengan beberapa sifat yang sama, atau menyatakan konsep tertentu. Gambar 6.9 merupakan cluster yang mempunyai sifat “lingkaran” Gambar 6.9 Dua Overlapping Circles 6.2. K-mean Algoritma k-means mengambil parameter input k,dan membagi sebuah himpunan dari objek kedalam k cluster,sehingga menghasilkan similaritas intracluster adalah tinggi tetapi similaritas intercluster adalah rendah . similaritas cluster diukur dari banyaknya nilai m obyek yang ada pada sebuah cluster,sehingga dapat dilihat sebagai cluster’s centre gravity. “Bagaimana algoritma k-means bekerja ?” proses algoritma k-means sebagai berikut. Pertama menentukan secara random k obyek, masing masing obyek tersebut pada awalnya menggambarkan sebuah cluster mean atau cluster center. Untuk tiap-tiap obyek yang tersisa dimasukkan ke dalam cluster yang mempunyai kesamaan yang lebih, didasarkan pada jarak antara obyek dengan sebuah cluster mean. Kemudian hitung nilai mean yang baru untuk masing – masing cluster.proses ini berulang sampai fungsi kriteria di temukan. Algoritma ini mencoba untuk menentukan k partisi yang memiliki fungsi squared error minimal. Metode ini relatif lebih scalable dan effisien untuk pemrosesan data dengan jumlah yang besar karena perhitungan kompleksitas dari Modul Kuliah Data Mining 111 algoritma tersebut adalah O(nkt) dimana n adalah jumlah total obyek sedangkan k adalah jumlah cluster dan t adalah banyaknya iterasi. Pada umumnya, k<<n dan t<<n. metoda ini sering menghasilkan optimal lokal. Metode k-mean, bagaimanapun juga dapat diaplikasikan hanya jika mean dari sebuah cluster didefinisikan. Ini mungkin tidak bisa sebagai pilihan di beberapa aplikasi, seperti halnya untuk data dengan atribut kategorik. Perlunya seorang user menentukan nilai k sebagai jumlah final cluster dilihat dari segi kecepatan mungkin merupakan suatu kerugian. Metode k-mean tidak cocok digunakan untuk menemukan cluster dengan bentuk nonconvex atau cluster dengan ukuran yang sangat berbeda selain itu metode ini sangat sensitif terhadap noise dan outlier. Algoritma : k-means, algoritma untuk partitioning yang di dasarkan pada nilai mean dari obyek-obyek di dalam sebuah cluster. Input : sejumlah cluster k,dan sebuah database dengan n obyek. Output : sebuah himpunan k cluster dengan squared error criterion minimum. Metode : 1. tentukan k object sebagai cluster center awal; 2. ulangi 3. tandai masing masing obyek untuk sebuah cluster, dimana obyek tersebut lebih “similar,” didasarkan pada nilai mean obyek tersebut dalam sebuah cluster; 4. hitung nilai cluster mean untuk masing masing cluster; 5. sampai tidak ada perubahan. Ada beberapa varian dari metode k-means, ini dapat berbeda pada pemilihan dari nilai awal k-means, perhitungan dissimilarity, dan strategi untuk menghitung nilai cluster means. Sebuah strategi yang menarik dan sering menghasilkan hasil yang bagus untuk awalnya lakukan sebuah algoritma hirarchical agglomeration yang digunakan untuk menentukan jumlah cluster dan untuk menemukan sebuah initial clustering, dan kemudian menggunakan proses iterasi relokasi untuk meningkatkan clustering tersebut. Varian yang lain untuk k-means adalah metode k-modes, dengan memperluas paradigma k-means untuk mengelompokkan data kategorik dengan menggantikan mean cluster dengan modes (modus), menggunakan ukuran dissimiliritas baru untuk hubungan dengan obyek kategorik, dan dengan menggunakan sebuah metode yang didasarkan pada frequency atau keseringan untuk mengupdate modes dari cluster. Metode K-mean dan K-modes dapat digabungkan untuk mengelompokkan data dengan mixed numeric dan nilai kategori yang di hasilkan dengan metode k-prototype. Algoritma EM (Expact on Maximization) adalah algoritma dengan mengembangkan paradigma algoritma k-mean dengan sebuah cara yang lain. Untuk menandakan tiap tiap obyek ke dalam sebuah calon atau dedicated cluster, untuk menandakan masing masing obyek ke dalam sebuah cluster diperhitungkan menurut lebar yang mewakili kemungkinan keanggotaan. Dengan kata lain,tidak Modul Kuliah Data Mining 112 ada batasan yang tegas antar cluster. Oleh karena itu nilai mean yang baru dihitung berdasarkan ukuran lebar yang ditentukan. Properties algoritma k-means : • • • • Selalu ada K cluster. Minimal ada satu item data pada masing masing cluster. Cluster adalah metode non-hierarchical dan cluster tersebut tidak overlap. Setiap anggota sebuah cluster merupakan “closest” untuk cluster tersebut dari cluster lain karena kedekatan tidak selalu melibatkan ‘center’ dari cluster Contoh Kasus : Kita mencoba menerapkan algoritma clustering k-Means dengan final cluster sejumlah empat cluster dari data yang terdapat pada Tabel 6.1 Tabel 6.1 Dataset Food Food item # Protein content, P Fat content, F Food item #1 1.1 60 Food item #2 8.2 20 Food item #3 4.2 35 Food item #4 1.5 21 Food item #5 7.6 15 Food item #6 2.0 55 Food item #7 3.9 39 Untuk lebih memahami permasalahan ini kita gambar data tersebut ke dalam diagram, dari gambar tersebut kita dapat menentukan empat point dengan jarak terjauh (Gambar 6.10): Gambar 6.10 Plot data Fat Content vs Protein Content Modul Kuliah Data Mining 113 Dari Gambar 8 di atas dapat kita ketahui bahwa jarak antara point 1 dan point 2, 1 dan 3, 1 dan 4, 1 dan 5, 2 dan 3, 2 dan 4, 3 dan 4 adalah maksimum. Sehingga, ke-empat cluster tersebut yang terpilih adalah : Cluster number Protein content, P Fat content, F C1 1.1 60 C2 8.2 20 C3 4.2 35 C4 1.5 21 Dan juga kita dapat mengamati bahwa point 1 merupakan close untuk point 6 sehingga kita dapat mengelompokkan kedua point tersebut ke dalam satu cluster, misalnya kita sebut kluster ini kita sebut dengan nama cluster C16. Kemudian kita hitung nilai centroidnya, nilai P untuk centroid C16 adalah (1.1+2.0)/2=1.55 dan nilai F untuk centroid C16 adalah (60+55)/2=57.50. Kemudian kita hitung titik-titik yang lain, point 2 dapat kita gabungkan dengan point 5 menjadi satu closer,kita namakan cluster ini kita sebut dengan nama cluster C25,nilai P untuk centroidnya C25 adalah (8.2+7.6)/2=7.9 dan nilai F untuk centroidnya C25 adalah (20+15)/2=17.50. Point 4 tidak termasuk close pada cluster manapun,sehingga kita dapat masukkan point ini kedalam cluster yang ke empat, kita namakan cluster ini dengan nama cluster C4 dengan nilai P untuk centroidnya C4 adalah 1.5 dan nilai F untuk centroidnya C4 adalah 21. Akhirnya,kita dapatkan nilai akhir untuk masing masing centroid : Cluster number C16 C25 C37 C4 Protein content, P 1.55 7.9 4.05 1.5 Fat content, F 57.50 17.5 37 21 Pada contoh di atas merupakan langkah yang mudah untuk menentukan jarak antar point.pada kasus yang lain tidak jarang dijumpai bahwa sulit untuk menentukan jarak, salah satu cara yang bisa digunakan adalah dengan menggunakan euclidean metric untuk mengukur jarak antara dua point dan memasukkan point tersebut ke dalam sebuah cluster. 6.3. Agglomerative dan Divisive Hierarchical Clustering Agglomeretive Hierarchical Clustering: Strategi bottom-up ini dimulai dengan menempatkan setiap obyek pada clusternya masing-masing dan Modul Kuliah Data Mining 114 menggabungkan cluster-cluster atomik ini menjadi cluster-cluster yang lebih besar, terus sampai semua obyek berada pada 1 cluster atau sampai kondisi berhenti tercapai. Kebanyakan metode clustering hirarkis menggunakan metode yang masuk ke kategori ini. Perbedaannya hanya pada definisi similarity intercluster. Divise Hierarchical Clustering : Strategi top-down ini merupakan kebalikan dari Agglomeretive Hierarchical Clustering. Dimulai dengan menempatkan seluruh obyek pada satu cluster. Kemudian dibagi-bagi terus sampai menjadi bagian yang lebih kecil sampai tiap obyek memiliki cluster sendiri atau kriteria berhenti tercapai. Pendekatan agglomerative dan divise di-ilustrasikan pada Gambar 6.11 Step 0 a Step 1 Step 2 Step 3 Step 4 agglomerative (AGNES) ab b abcde c cde d de e Step 4 Step 3 Step 2 Step 1 Step 0 divisive (DIANA) Gambar 6.11 Agglomerative dan Divisive Hierarchical Clustering Untuk meningkatkan kualitas clustering salah satu cara yang dapat dilakukan adalah dengan mengintegrasikan hierachical clustering dengan teknik clustering lainnya membentuk multiple phase clustering. Beberapa metode telah ditemukan antara lain BIRCH. BIRCH dimulai dengan mempartisi obyek secara hirarkis dengan struktur tree, dan kemudian mengaplikasikan algoritma clustering lainnya untuk menemukan cluster. BIRCH: Balanced Iterative Reducing and Clustering Using Hierarchies BIRCH memperkenalkan dua konsep yaitu clustering feature dan clustering feature tree (CF-tree). CF adalah informasi tentang sub-cluster dari obyek Modul Kuliah Data Mining 115 CF tree adalah height-balanced tree yang menyimpan CF untuk hierarchical clustering BIRCH bekerja dalam dua fase : 1. Scan database untuk inisialisasi in-memori CF tree (kompresi multi level data yang mencoba menyimpan struktur clustering yang melekat pada data). Fase scan disajikan dalam Gambar 6.12. Gambar 6.12 Fase Scan Database 2. Gunakan algoritma clustering yang diinginkan untuk mencari cluster pada leaf node pada CF tree. Fase ini digambarkan pada Gambar 6.13 Gambar 6.13 Fase Pencarian Cluster Modul Kuliah Data Mining 116 6.4. DBSCAN DBSCAN adalah salah satu algoritma clustering density-based. Algoritma memperluas wilayah dengan kepadatan yang tinggi ke dalam cluster dan menempatkan cluster irregular pada database spasial dengan noise. Metode ini mendefiniskan cluster sebagai maximal set dari titik-titik yang density-connected. DBSCAN memiliki 2 parameter yaitu Eps (radius maksimum dari neighborhood) dan MinPts (jumlah minimum titik dalam Eps-neighborhood dari suatu titik). Ide dasar dari density-based clustering berkaitan dengan beberapa definisi baru 1. Neighborhood dengan radius Eps dari suatu obyek disebut Epsneighborhood dari suatu obyek tersebut 2. Jika Eps-neighborhood dari suatu obyek mengandung titik sekurangkurangnya jumlah minimum, MinPts, maka suatu obyek tersebut dinamakan core object 3. Diberikan set obyek D, obyek p dikatakan directly density-reachable dari obyek q jika p termasuk dalam Eps-neighborhood dari q dan q adalah core objek. Gambar 6.14 memberikan ilustrasi Eps-neighborhood Gambar 6.14 Eps-neighborhood 4. Sebuah obyek p adalah density-reachable dari obyek q dengan memperhatikan Eps dan MinPts dalam suatu set objek ,D, jika terdapat serangkaian obyek p1,…,pn, p1=q dan pn=p dimana pi+1 adalah directly density-reachable dari pi dengan memperhatikan Eps dan MinPts, untuk 1 <= i <= n, pi elemen D. Konsep density-reachable di-ilustrasikan pada Gambar 6.15. Gambar 6.15 Density-reachable 5. Sebuah obyek p adalah density-connected terhadap obyek q dengan memperhatikan Eps dan MinPts dalam set obyek D, jika ada sebuah obyek o elemen D sehingga p dan q keduanya density-reachable dari o dengan Modul Kuliah Data Mining 117 memperhatikan Eps dan MinPts. Gambar 6.16 merupakan ilustrasi dari konsep density-connected. Gambar 6.16 Density-connected Sifat density-reach ability adalah transitive closure dari direct density reachable dan relasi ini simetris. Sedangkan density connectivity adalah relasi simetris. Algoritma DBSCAN Arbitrary select a point p Retrieve all points density-reachable from p wrt Eps and MinPts. If p is a core point, a cluster is formed. If p is a border point, no points are density-reachable from p and DBSCAN visits the next point of the database. Continue the process until all of the points have been processed Contoh : Contoh Studi kasus dengan basisdata yang diujikan : Pemakaian DBSCAN: Diketahui MinPts= 3 dan a. Modul Kuliah Data Mining ε = 1 cm 118 Misalkan dalam iterasi terpilih node C1. Maka dicari node-node εneighborhood dari C1. Sesuai dengan ketentuan bahwa ε yaitu 1 cm maka diperoleh ε-neighborhood dari C1 yaitu 1,2,3,4, dan 5. Karena ketentuan bahwa MinPts yang ada adalah 3 node, maka node C1 dengan εneighborhood sebanyak 5 node (lebih banyak dari pada MinPts) menjadi Core Object. b. Iterasi dilanjutkan dengan node lain dalam database. Diperoleh titik C2. Didapat ε-neighborhood dari C2 yaitu 1,2,4,6 dan 7. Karena ε-neighborhood berjumlah 5 dan itu lebih besar dari MinPts-nya maka C2 merupakan Object core. c. Dipilih titik C3 didapat ε-neighborhood nya yaitu node 4,5, dan 6. Sesuai dengan ketentuan bahwa ε-neighborhood dari suatu titik jika dia lebih banyak atau sama dengan MinPts maka node tersebut merupakan core object. C1, C2 dan C3 adalah density-reachable. Hal ini terjadi karena C1 directdensity-reachable dari C2 maupun C3 dan node 4 sendiri merupakan core object maka semua merupakan Core object maka mereka saling densityconnected. Iterasi terus dilakukan terhadap node yang belum pernah menjadi coreobject masuk Modul Kuliah Data Mining 119 Dari iterasi tersebut didapat 4, 7, C1, C2, C3, C4, C5, dan C6 sebagai core, mereka density-reachable dan saling density-connected. Iterasi dilanjutkan untuk semua node/ object pada basis data. Ci dan Cn direct density reachable dan sudah tentu mereka density-connected. Iterasi yang terus dilakukan saat berada di node n. Maka akan dicari ε-neighborhood dari n didapat node h dan i, karena jumlah ε-neighborhood tidak mencapai MinPts maka n bukan merupakan core object dan karena n,h,i tidak termasuk ε-neighborhood dari core object yang ada maka mereka dianggap sebagai noise. Sehingga didapatkan cluster sebanyak dua kelompok dengan beberapa noise Modul Kuliah Data Mining 120 Penutup – Soal Latihan Tugas individu 1. Misalkan terdapat delapan titik (dengan x, y merepresentasikan lokasi) sebagai berikut A1(2,10), A2(2,5), A3(8,4), B1(5,8), B2(7,5), B3(6,4), C1(1,2) dan C2(4,9) Clusterkan titik-titik tersebut menjadi tiga cluster dengan menggunakan fungsi jarak Eucledian. Misalkan pada saat inisialisasi kita tetapkan A1, B1 dan C1 sebagai pusat dari masing-masing cluster, secara berurutan. Gunakan algoritma k-means untuk memperlihatkan HANYA − Tiga pusat cluster setelah eksekusi satu iterasi, dan − Tiga cluster final 2. Gunakan diagram untuk membuat ilustrasi bagaimana, untuk nilai MinPts yang konstan, density-based cluster yang memiliki kepadatan lebih tinggi (yaitu, nilai ε lebih kecil – neighborhood radius) ternyata sepenuhnya berada (completely contained) dalam himpunan density-connected yang diperoleh dari density-based cluster yang memiliki kepadatan lebih rendah Tugas Kelompok Jelaskan setiap agloritme clustering berikut berdasarkan kriteria berikut: Bentuk cluster yang dapt ditentukan, parameter input yang harus ditetapkan dan keterbatasan dari algoritme-algoritme tersebut. a. k-medoids b. k-histogram c. CLARA d. BIRCH e. ROCK f. CHAMELEON Lengkapi penjelasan anda dengan melakukan studi literatur pada buku teks dan jurnal terkait. Modul Kuliah Data Mining 121