BAB I BAB I
PENDAHULUAN PENDAHULUAN 1.1
1.1 Latar Latar BelakangBelakang Clustering
Clustering merupakan suatu proses untuk mengelompokkan kumpulan objek- merupakan suatu proses untuk mengelompokkan kumpulan objek-objek fisik atau objek-objek-objek-objek abstrak ke dalam kelas-kelas objek-objek yang
objek fisik atau objek-objek abstrak ke dalam kelas-kelas objek yang similar similar (mirip).(mirip). Dalam mengembangkan metode clustering terdapat beberapa pendekatan, diantaranya Dalam mengembangkan metode clustering terdapat beberapa pendekatan, diantaranya dengan pendekatan partisi dan pendekatan hirarki. Di samping kedua pendekatan tersebut, dengan pendekatan partisi dan pendekatan hirarki. Di samping kedua pendekatan tersebut, ada juga clustering dengan pendekatan locality. Telah banyak pendekatan clustering yang ada juga clustering dengan pendekatan locality. Telah banyak pendekatan clustering yang dikembangkan sedangkan yang akan dibahas pada makalah ini hanya pendekatan locality dikembangkan sedangkan yang akan dibahas pada makalah ini hanya pendekatan locality yaitu algoritma DBSCAN.
yaitu algoritma DBSCAN.
Algoritma DBSCAN adalah sebuah algoritma clustering yang dikembangkan Algoritma DBSCAN adalah sebuah algoritma clustering yang dikembangkan berdasarkan tingkat
berdasarkan tingkat kerapatan kerapatan data data (density-based). (density-based). Dimana alDimana algoritma ini goritma ini menumbuhkanmenumbuhkan daerah yang memiliki kerapatan tinggi menjadi cluster, dan menemukan daerah yang memiliki kerapatan tinggi menjadi cluster, dan menemukan cluster-cluster tersebut pada bentuk bebas dalam sebuah ruang database dengan memanfaatkan cluster tersebut pada bentuk bebas dalam sebuah ruang database dengan memanfaatkan noise. Noise dalam metode ini digunakan untuk mewakili daerah yang kurang padat yang noise. Noise dalam metode ini digunakan untuk mewakili daerah yang kurang padat yang digunakan untuk memisahkan antara cluster satu dengan cluster lainnya, pada objek digunakan untuk memisahkan antara cluster satu dengan cluster lainnya, pada objek dalam ruang data.
dalam ruang data.
1.2
1.2 Rumusan Rumusan MasalahMasalah 1.
1. Apakah Apakah yang yang dimaksud dimaksud dengan dengan metode metode clustering clustering DBSCAN?DBSCAN? 2.
2. Bagaimanakah Bagaimanakah konsep konsep algoritma algoritma yang yang digunakan digunakan pada pada metode metode DBSCAN?DBSCAN? 3.
3. Bagaimana Bagaimana cara cara menentukan menentukan parameter parameter Eps Eps dan dan MinPts?MinPts? 4.
4. Apakah Apakah kelebihan kelebihan dan dan kelemahan kelemahan metode metode clustering clustering DBSCAN?DBSCAN?
1.3 Tujuan 1.3 Tujuan
1.
1. Mengetahui Mengetahui maksud maksud dari dari metode metode clustering clustering DBSCAN.DBSCAN. 2.
2. Mengetahui Mengetahui konsep konsep algoritma algoritma yang yang digunakan digunakan pada pada metode metode DBSCAN.DBSCAN. 3.
3. Mengetahui Mengetahui bagaimana bagaimana cara cara menentukan menentukan parameter parameter Eps Eps dan dan MinPts.MinPts. 4.
BAB II PEMBAHASAN 2.1 Clustering 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 Eps-neighborhood dari suatu obyek tersebut
2. Jika Eps-neighborhood dari suatu obyek mengandung titik sekurang-kurangnya 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 2.1 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 pidengan memperhatikan Eps dan MinPts, untuk 1 <= i <= n, pi elemen D. Konsep density-reachable
di-ilustrasikan pada Gambar 6.15.
Gambar 2.2 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 memperhatikan Eps dan MinPts. Gambar 6.16 merupakan ilustrasi dari konsep density-connected.
Gambar 2.3 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.
Ifp is a border point, no points are density-reachable from p and DBSCAN visits the
next point of the database.
Contoh :
Contoh Studi kasus dengan data base yang diujikan :
Pemakaian DBSCAN:
Diketahui MinPts= 3 dan ε = 1cm
a.
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 direct-density-reachable dari C2 maupun C3 dan node 4 sendiri merupakan core object maka semua merupakan Core object maka mereka saling density-connected . Iterasi terus dilakukan terhadap node yang belum pernah menjadi core-object masuk
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 database.
Ci dan Cn dir ect 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
2.2 Algoritma DBSCAN
Untuk menemukan klaster, DBSCAN memulai dengan sembarang titik p dan mengambil semua titik yang density-reachable dari p dengan memperhatikan Eps dan MinPts. Jika p merupakan core point, prosedur ini menghasilkan klaster berdasarkan Eps dan MinPts. Jika p merupakan border point , tidak ada titik yang density-reachable dari p dan DBSCAN mengunjungi titik berikutnya dalam database.
Karena menggunakan nilai global untuk Eps dan Minpts, DBSCAN dapat menggabungkan 2 klaster menjadi 1 klaster, jika 2 klaster dengan densitas (kepadatan) yang berbeda “dekat” satu sama lain. Definisikan jarak antara 2 titik S1 dan S2 sebagai
( ) *( )| +. Kemudian 2 set titik setidaknya memiliki densitas dari klaster tertipis akan dipisahkan satu sama lain hanya jika jarak antara 2 set lebih besar dari Eps. Sebagai akibat, recursive call dari DBSCAN mungkin dibutuhkan untuk mendeteksi klaster dengan nilai yang lebih tinggi untuk MinPts. Hanya hal ini tidak bermanfaat karena aplikasi rekursif DBSCaN menghasilkan algoritma dasar yang sangat
efisien. Selanjutnya, klastering rekursif dari setiap titik hanya diperlukan dalam kondisi yang dapat dengan mudah dideteksi.
Berikut adalah versi dasar DBSCAN yang menghilangkan detail tipe dan generasi data dari informasi tambahan tentang klaster:
SetOfPoints adalah keseluruhan database atau klaster yang ditemukan pada eksekusi sebelumnya. Eps dan MinPts adalah parameter densitas global yang ditentukan secara manual atau berdasarkan heuristic. Fungsi SetOfPoint.get(i) mengembalikan elemen ke-i dari SetOfPoints. Fungsi yang paling penting digunakan oleh DBSCAN adalah ExpandCluster sebagai berikut:
Suatu panggilan SetOfPoints.regionQuery(Point, Eps) mengembalikan Eps- Neighborhood dari Point dalam SetOfPoints sebagai daftar titik. Region Query dapat didukung secara efisien oleh metode akses spatial seperti R*-tree (Beckmann et al. 1990) yang diasumsikan tersedia dalam SDBS untuk pemrosesan efisien dari beberapa tipe spatial query (Brinkhoff et al. 1994). Tinggi R*-tree adalah O(log n) untuk database n points pada kasus terburuk (worst case) dan sebuah query dengan query region yang „kecil‟ harus melintasi jumlah jalur yang terbatas dalam R*-tree. Karena Eps- Neighborhood diharapkan kecil jika dibandingkan dengan ukuran keseluruhan data space,
points database, paling tidak ada satu region query. Demikian, rata-rata kompleksitas waktu eksekusi DBSCAN adalah O(n * log n).
ClId (clusterId) dari titik-titik yang telah ditandai sebagai NOISE dapat berubah nantinya, jika mereka density-reachable dari beberapa titik lain dalam database. Ini berlaku untuk border points dari suatu klaster. Titik-titik tersebut tidak ditambahkan ke seed-list karena telah diketahui bahwa titik dengan ClId NOISE bukanlah sebuah core point. Menambahkan titik-titik tersebut ke seeds hanya akan menghasilkan reqion query
tambahan yang tidak akan menghasilkan jawaban baru.
Jika dua klaster C1 dan C2 sangat dekat satu sama lain, bisa saja beberapa titik p
masuk k kedua klaster, C1 dan C2. Kemudian p akan menjadi border point dalam kedua
klaster karena sebaliknya C1 akan setara dengan C2 karena digunakannya parameter
global. Dalam kasus ini, titik p akan dimasukan ke klaster yang pertama ditemukan. Terlepas dari situasi yang jarang ini, hasil DBSCAN independen dari urutan titik yang dikunjungi database.
2.3 Menentukan Parameter Eps dan MinPts
Heuristik yang efektif untuk menentukan parameter Eps dan MinPts dari klaster tertipis dalam database. d adalah jarak suatu titik p ke k-th nearest neighbor, kemudian d-neighborhood dari p berisi tepat k+1 titik untuk hamper semua titik p. d-d-neighborhood dari p berisi lebih dari k+1 titik hanya jika beberapa titik memiliki jarak d yang sama persis dari p yang agak tidak mungkin. Selanjutnya mengubah k untuk titik dalam klaster
tidak menghasilkan perubahan besar pada d. Ini hanya terjadi jika k-th nearest neighbor dari p untuk k = 1, 2, 3, …. terletak kira-kira pada garis lurus yang umumnya tidak benar untuk sebuah titik dalam klaster.
Untuk k, didefiniskan fungsi k-dist dari database D ke angka real, memetakan setiap titik pada jarak dari k-th nearest neighbornya. Ketika mensortir titik-titik database dalam urutan descending dari nilai k-dist, graf dari fungsi ini memberikan beberapa petunjuk mengenai distribusi densitas dalam database. Graf ini disebut sorted k-dist graph. Jika
dipilih sembarang titik p, atur parameter Eps menjadi k-dist(p) dan atur parameter MinPts menjadi k, semua titik dengan nilai k-dist yang sama atau lebih kecil akan menjadi core point. Jika threshold dapat ditemukan dengan nilai maksimal k-dist dalam klaster tertipis D, akan didapatkan nilai parameter yang diinginkan. Titik threshold merupakan titik pertama dalam „lembah (valley)‟ pertama dari graf k -dist yang telah disorting (lihat
gambar 2.4). Semua titik dengan nilai k-dist yang lebih tinggi dianggap sebagai noise, semua titik yang lain dimasukan ke dalam beberapa klaster
Gambar 2.4 sorted 4-dist graph untuk database sampel.
Secara umum, sangat sulit mendeteksi „lembah‟ pertama secara otomatis, tetapi sangat simple untuk user untuk melihat lembah dalam representasi grafis.
DBSCAN membutuhkan 2 parameter, Eps dan MinPts. Tetapi berdasarkan eksperimen, k-dist graph untuk k>4 tidak berbeda secara signifikan dari 4-dist graph, sehingga diperlukan perhitungan lebih jauh. Selanjutnya parameter MinPts dieliminasi dengan menaturnya menjadi 4 untuk semua database (untuk data 2 dimensi). Ada beberapa pendekatan interaktif untuk menentukan parameter Eps DBSCAN:
- Sistem menghitung dan menampilkan graf 4-dist untuk database.
- Jika user dapat mengestimasi persentase noise, presentasi ini dimasukan dan
sistem mengambil usulan untuk titik threshold.
- User dapat menerima threshold yang yang diusulkan atau memilih titik lainnya
sebagai titik threshold. Nilai 4-dist dari titik threshold digunakan sebagai nilai Eps untuk DBSCAN.
2.4 Kelebihan dan Kekurangan Clustering DBSCAN 2.4.1 Kelebihan DBSCAN
Dapat mendeteksi bentuk yang selalu berubah-ubah, tidak terlalu sensitive terhadap noise, mendukung deteksi outlier, memiliki mompleksitas yang baik, metode yang paling sering digunakan selain K-means.
2.4.2 Kekurangan DBSCAN
Tidak bekerja maksimal jika diterapkan pada dataset yang berdimensi tinggi, pemilihan parameternya cukup rumit, memiliki permasalahan di identifikasi cluster dari kepadatan yang bervariasi (algoritma SSN), estimasi kepadatannya cukup sederhana (tidak membentuk fungsi kepadatan yang sesungguhnya, tapi lebih ke arah poin-poin kepadatan yang saling terhubung dan membentuk graf).
BAB III PENUTUP Kesimpulan
Algoritma DBSCAN membantu mendeteksi adanya event dengan cara mengelompokkan sebuah data berdasarkan tingkat kepadatannya sehingga cluster akan dipisahkan dengan data-data dengan tingkat kepadatan yang rendah. DBSCAN membutuhkan dua parameter input untuk melakukan clustering, yaitu eps dan MimPts. Kedua parameter tersebut sangat berpengaruh terhadap hasil cluster. Sebuah cluster hasil dari DBSCAN ini merepresentasikan sebuah event yang ingin didteksi sehingga satu cluster berarti satu event.
DAFTAR PUSTAKA
- Modul Kuliah Data Mining . Diakses dari
http://www.biomaterial.lipi.go.id/ilkomers2010materi/SEMESTER%20IV/DAMIN G/Referensi/modul%20kuliah%20PDF/Bab%206%20Analisis%20Cluster.pdf pada tanggal 23 November 2014.
- Density Based Clustering . Diakses dari ww2.cs.uh.edu/~ceick/ML/Topic9.ppt pada
tanggal 23 November 2014.
- Rendy. 2013. Event Detectin pada Microblogging Twitter dengan Algoritma
dengan DBSCAN (Study Kasus : Banjir). Universitas Pendidikan Indonesia.
- Clustering Menggunakan Algoritma DBSCAN (Density-Based Spatial Clustering
of Application with Noise) untuk Data Hasil Produksi Potensi Pertanian Studi Kasus: Kabupaten Gresik . Diakses dari
http://etd.ugm.ac.id/index.php?mod=penelitian_detail&sub=PenelitianDetail&act= view&typ=html&buku_id=50239 pada tanggasl 23 November 2014.
- Ester, Martin, dkk. A Density-Based Algorithm for Discovering Clusters in Large
Spatial Databases with Noise. Institute for Computer Science, University of Munich.