KLASTERISASI BERDASARKAN KESAMAAN POLA
DENGAN MENGGUNAKAN ALGORITMA PCLUSTER
(Kata kunci: Penggalian Data, Klasterisasi Kesamaan Pola)
PRESENTASI TUGAS AKHIR – KI091391
Penyusun Tugas Akhir :
Kartika Wijayati
(NRP : 5107.100.503)
Dosen Pembimbing
:
•
Kebanyakan model klasterisasi, kesamaan antar obyek-obyek yang berbeda
pada semua, sebagian, atau hanya subset dari dimensi dihitung oleh jarak.
•
Fungsi jarak tidak mampu untuk menangkap korelasi-korelasi antar
obyek-obyek.
•
Pada kenyataannya, korelasi-korelasi yang kuat masih ada antar himpunan
obyek-obyek yang sama jika himpunan obyek-obyek terpisah jauh, dari satu
sama lain yang dihitung berdasarkan fungsi jarak.
LATAR BELAKANG
0 1 2 3 4 5 6 O b y e kSmall data set dari 3 obyek dan 4 atribut
Obyek 1 Obyek 2 Obyek 3
A1 A2 . . . An
O1
On
O2
.
.
.
.
.
.
O3
ASUMSI MODEL DATA
Asumsi yang dipakai
dalam model
pCluster:
• Baris dalam
matriks
merepresentasikan
obyek
• Kolom dalam
matriks
merepresentasikan
atribut
Jumlah Atribut
ASUMSI
•
Model pCluster adalah suatu metode yang menggali klaster-klaster pada
obyek-obyek yang memperlihatkan hubungan pola pada himpunan atribut
(dimensi).
•
Untuk mengefisienkan pengalian pCluster, digunakan algoritma pCluster
•
Langkah–langkah dalam ALGORITMA PCLUSTER :
1.
Pair-Wise Clustering
Mencari klaster (kolom) terbesar untuk masing-masing dua obyek, dan
klaster (obyek) terbesar untuk masing-masing dua kolom.
2.
Pruning Unfruitful pair-wise clustering
Langkah
pruning
di bagi menjadi 2 bagian, yaitu
symmetric pruning
dan
pruning by block
.
3.
Forming
Langkah ini merupakan kombinasi dari
pruned pairwise
untuk membentuk
pCluster.
ASUMSI MODEL KLASTERISASI
SKENARIO UJI COBA
•
Parameter yang dibutuhkan dalam sistem, yaitu :
1. Data set, menggunakan data buatan
2. nr adalah rata-rata jumlah baris yang melekat dalam pCluster
3. nc adalah rata-rata jumlah kolom yang melekat dalam pCluster
4. k adalah rata-rata jumlah pCluster yang terlekat dalam pCluster
•
Skenario uji coba yang telah dilakukan, ada empat, yaitu :
1.
Menambahkan jumlah obyek, pada langkah pruning, symmetric prune dan
block prune
2.
Menambahkan jumlah kolom, pada langkah pruning, symmetric prune dan
block prune.
3.
Menambahkan jumlah obyek, pada langkah klasterisasi, klasterisasi
berdasarkan clique menggunakan block prune dan klasterisasi secara
langsung berdasarkan antimonotonicity dengan menggunakan symmetric
prune.
4.
Menambahkan jumlah kolom, pada langkah klasterisasi, klasterisasi
HASIL UJI COBA (Skenario 1)
•
Uji coba ini menggunakan data set buatan yang digenerate dengan
jumlah kolom sebanyak 7, dimana 7 merupakan total pCluster
yang melekat di dalam data set.
•
Dengan parameter delta = 1, nc = 5, dan nr = 0.01N, dimana N
adalah jumlah baris dari data buatan.
•
Berikut Grafik dari skenario 1 :
•
Nilai akurasi selisi performa
block dan symmetric dalam
langkah pruning adalah
0.031907 %
UJI COBA
0 20 40 60 80 100 120 140 160 180 200 0 1000 2000 3000 4000 5000 6000 A v e ra g e R e s p o n s e Ti m e (s )Data set ukuran (# Objek) Performa Pruning Symmetric + Clique
HASIL UJI COBA (Skenario 2)
•
Uji coba ini menggunakan data set buatan yang digenerate dengan
jumlah baris sebanyak 100, dimana 100 merupakan total pCluster
yang melekat di dalam data set.
•
Dengan parameter delta = 1, nr = 10, dan nc = 0.02C, dimana C
adalah jumlah kolom dari data buatan.
•
Berikut Grafik dari skenario 2 :
•
Nilai akurasi selisi performa
block dan symmetric dalam
langkah pruning adalah
0.330597 %
UJI COBA
0 1 2 3 4 5 6 7 8 9 10 0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 A v e ra g e R e s p o n s e Ti m e (s )Data set ukuran(# Kolom) Performa pruning Symmetric + Clique
HASIL UJI COBA (Skenario 3)
•
Uji coba ini menggunakan data set buatan yang digenerate dengan
jumlah kolom sebanyak 7, dimana 7 merupakan total pCluster
yang melekat di dalam data set.
•
Dengan parameter delta = 1, nc = 5, dan nr = 0.01N, dimana N
adalah jumlah baris dari data buatan.
•
Berikut Grafik dari skenario 3 :
•
Nilai akurasi selisi performa
block dan symmetric dalam
langkah pruning adalah
0.044987 %
UJI COBA
0 20 40 60 80 100 120 140 160 180 200 0 1000 2000 3000 4000 5000 6000 7000 8000 A v e ra g e R e s p o n s e Ti m e ( s )Data set ukuran (# Obyek) Performa Pruning dan Klasterisasi Symmetric + Anti-monotonicity
HASIL UJI COBA (Skenario 4)
•
Uji coba ini menggunakan data set buatan yang digenerate dengan
jumlah baris sebanyak 100, dimana 100 merupakan total pCluster
yang melekat di dalam data set.
•
Dengan parameter delta = 1, nr = 10, dan nc = 0.02C, dimana C
adalah jumlah kolom dari data buatan.
•
Berikut Grafik dari skenario 4 :
•
Nilai akurasi selisi performa
block dan symmetric dalam
langkah pruning adalah
0.327779 %
UJI COBA
0 1 2 3 4 5 6 7 8 9 10 0 1000 2000 3000 4000 5000 6000 A v e ra g e R e s p o n s e Ti m e ( s )Data set ukuran (# Kolom) Performa Klasterisasi Symmetric + Anti-monotonicity Block + Clique
KESIMPULAN DAN SARAN
Setelah dilakukan uji coba dan analisis hasil terhadap aplikasi
yang telah dibuat maka dapat diambil kesimpulan sebagai
berikut:
a.
Klasterisasi berdasarkan clique lebih efisien dibandingkan
dengan klasterisasi secara langsung.
b.
Block prune sangat efisien dan sangat efektif daripada
symmetric pruning , karena dapat mengurangi
object-pairs
maupun
column-pairs
yang tidak berguna, yang akan
memperbaiki performa dari klasterisasi berdasarkan clique.
KESIMPULAN DAN SARAN
Saran untuk pengembangan lebih lanjut dari tugas akhir ini
antara lain:
1.
Kegunaan algoritma pCluster dapat digunakan pada
pencariaan data pada aplikasi e-commerce.
2.
Model pCluster dapat dikembangkan menjadi
menjadi model berdasarkan ketetanggaan nilai yang
mempunyai kesamaan.
DAFTAR PUSTAKA
[1] Soelaiman R, Purwitasari D 2006. Materi Kuliah Pengenalan Pola. Teknik Informatika. Institut Teknologi Sepuluh November.
[2] Wang Haixun, and Pei Jian, “
Clustering By Pattern Similarity
”, Journal Of Computer Science and Technology, vol 23, pp 481-496, 2008[3] Yang J, Wang W, Wang H, Yu P S. : Capturing subspace correlation in a large dataset. In Proc. ICDE, San Jose, USA, 2002, pp.517-528.
[4] Niskanen S, Ostegard P R J. Cliquer user’s guide, version 1.0 Technical Report T48, Communications Laboratory, Helsinki University of Technology, Espoo, Finland, 2003.
http://www.hut.fi/pat/cliquer.html.
LAMPIRAN
Langkah-langkah algoritma
pair cluster object
1.
Menghitung variabel data, berdasarkan jumlah baris dan jumlah kolom.
2.
Membuat
pair-object.
3.
Dari setiap
pair-object
yang telah terbentuk, dibuat matrik selisih antar dua
object
pada atribut yang berbeda-beda.
4.
Hitung selisih per elemen dari matrik selisih.
5.
Pengecekan selisih per elemen dari matrik selisih,
1.
Jika selisih kurang dari threshold, maka dihitung selisih index antara dua ujung
yang memenuhi jumlah minimal kolom, dan buat MDS baru untuk
pair-object
ini.
2.
Jika selisih lebih besar dari threshold, maka dilakukan pengecekan pada elemen
matrik selanjutnya, kemudian ulangi langkah 4 dan 5, sampai ditemukan index
akhir kolom.
6.
Jika index sudah mencapai akhir kolom dan selisih index terakhir antar dua ujung
memenuhi jumlah minimal kolom, maka buat MDS baru untuk
pair-object
ini.
7.
Ulangi langkah 3-6, sampai pada
pair-object
terakhir.
Langkah-langkah algoritma
symmetric prune
1.
Mengambilpair
+ MDSobject
danpair
+ MDS column, kemudian hitung jumlah masing-masing.2.
Melakukan pengecekan pada setiap item (pair
+ MDSobject).
3.
Mengambil salah satu elemen dari MDSobject
.4.
Mengambil nilai dari jumlahpair-object
dengan referensi MDS milikpair-column
.5.
Ulangi langkah 2 sampai langkah 4, sampai ditemukanpair-object
yang mereferensi padapair-column
kurang dari jumlah minimal kolom, dan hapus elemen MDS yang dipilih.6.
Jika total elemen MDSobject
nilainya kurang dari jumlah minimal kolom, maka hapus seluruh item (pair
+ MDSobject
).7.
Ulangi proses langkah 3 sampai 6 sampai mencapai akhir daftarpair
+ MDSobject.
8.
Setelah mencapai akhir daftarpair
+ MDSobject
. Lakukan pengecekan pada setiap itempair
+ MDScolumn.
9.
Mengambil salah satu elemen dari MDScolumn
.10.
Mengambil nilai dari jumlahpair-column
dengan referensi MDS milikpair- object.
11.
Ulangi langkah 8 sampai langkah 10, sampai ditemukanpair-column
mereferensi padapair-object,
yang kurang dari jumlah minimal kolom, dan hapus elemen MDS yang dipilih.12.
Jika total elemen MDScolumn
nilainya kurang dari jumlah minimal kolom, maka hapus seluruh item (pair
+ MDScolumn
).13.
Ulangi proses langkah 8 sampai 12 sampai mencapai akhir daftar pair + MDScolumn.
Langkah-langkah algoritma
block prune
1.
Menghitung variabel data, berdasarkan jumlah baris dan jumlah kolom.2.
Mengambil pair + MDSobject.
3.
Menghitung variable yang mengandung pair + MDSobject
.4.
Membuat MDS bitmap dari MDS object. Bit ke-i adalah himpunan jika kolom ke-i berada di dalam MDS, dan sebaliknya, jika bit ke-i bukan berada di dalam MDS, maka bit ke-i bukan himpunan.5.
Membuat matrik jumlah MDS perkolom untuk per blok (CC).6.
Membuat matrik jumlah MDS secara horizontal untuk per blok (sumB).7.
Melakukan pengecekan apakah bitmap untukpair
, tersedia atau telah terhapus.8.
Jika kedua kondisi tidak terpenuhi, maka lakukan pengecekan apakah jumlah MDS secara horizontal kurang dari jumlah minimum kolom.9.
Jika jumlah MDS secara horizontal lebih besar dari jumlah minimum kolom, maka hapus elemen MDS bitmap yang terpilih. Jika jumlah MDS secara horizontal kurang dari jumlah minimum kolom, maka lakukan pengecekan terhadap MDS.10.
Jikapair
ini hanya memiliki satu MDS, hapus (pair
+ MDS) ini.11.
Selama jumlah MDS kolom per blok kurang dari jumlah minimum baris, ulangi langkah 7 sampai langkah 10, sampai mencapaipair
terakhir.12.
Jika telah mencapai akhir blok, hitung totalpair
untuk satu blok.13.
Jika totalpair
untuk satu blok kurang dari minimum baris maka hapus (pair
+ MDS) lainLangkah-langkah algoritma Pembentukan
Klasterisasi
1.
Menghitung variabel data, berdasarkan jumlah baris dan jumlah kolom.2.
Mengambil pair + MDS bitmap dari proses pruning (symmetric/block).3.
Melakukan pengecekan terhadap semua blok yang tersisa dari proses block prune.4.
Mencari elemen daripair-object
ataupair-column
yang terasosiasi dengan setiap MDS.5.
Menghitung total dari elemen (obyek atau kolom) yang saling terasosiasi.6.
Jika total dari elemen (obyek atau kolom) yang terasosiasi kurang dari jumlah minimal baris, maka hapuspair
+ MDS yang terpilih dan hapuspair
+ MDS yang lain dimana MDSnya sama dengan MDS yang terpilih. Jika total dari elemen (obyek atau kolom) yang terasosiasi lebih dari jumlah minimal baris, maka ambil MDS dan obyek-obyek yang terasosiasi untuk diinputkan ke dalam data pCluster.7.
Ulangi langkah 5 sampai langkah 7, sampai mencapai MDS terakhir pada blok yang terpilih.8.
Jika telah mencapai MDS terakhir pada blok yang terpilih, hitung total pCluster pada blokyang terpilih.