klasterisasi data diskret menggunakan algoritma

advertisement
Seminar Nasional Teknologi Informasi dan Komunikasi 2012 (SENTIKA 2012)
Yogyakarta, 10 Maret 2012
ISSN: 2089-9815
KLASTERISASI DATA DISKRET MENGGUNAKAN ALGORITMA
MULTINOMIAL GENERALIZED DIRICHLET MIXTURE PADA CITRA
Ahmad Saikhu1, Hanny Saputro2
Jurusan Teknik Informatika, Fakultas Teknologi Informasi
Institut Teknologi Sepuluh Nopember, Surabaya
Email: [email protected], [email protected]
ABSTRAKS
Klasterisasi adalah salah satu metode data mining yang digunakan untuk mempartisi data dengan
karakteristik yang sama ke suatu kelas yang sama dan data dengan karakter yang berbeda ke kelas yang lain.
KMeans melakukannya dengan menentukan jumlah cluster, mempartisi data ke dalam kelas secara random, dan
menghitung centroid masing-masing kelas. Partisi data ke dalam kelas berdasarkan jarak minimum data ke
centroid. Metode Kmeans mempunyai kelemahan pada hasil yang mengarah pada lokal optima, dan data yang
seringkali mengalami overlapping. N. Bouguila dan W. ElGuebaly memperkenalkan sebuah algoritma baru
sebagai alternatif yaitu, Multinomial Generalized Dirichlet Mixture. Beberapa kelebihan MGDM dari metode
Kmeans adalah kemampuan untuk mendeteksi keberadaan data yang mengalami overlapping. Multinomial
Generalized Dirichlet Mixture mempunyai dua algoritma utama yaitu, Spherical K-Means dengan optimasinya
menggunakan PSO (Particle Swarm Optimization) dan Expectation Maximation (EM). Uji coba dilakukan
terhadap tiga dataset image yang berbeda (masing-masing dataset terdapat 1000 data) dengan beberapa variasi
jumlah data yang digunakan dalam proses training yaitu 500, 625, 750, dan 875. Berdasarkan hasil uji coba,
semakin besar jumlah data training nilai akurasi yang didapat cenderung menurun sebaliknya nilai presisi
cenderung meningkat.
Kata Kunci: Cluster, Data Diskret, MGDM, hybrid PSO, Spherical K-Means, Expectation Maximation
Tujuan dari pengerjaan peneletian ini adalah
mengimplementasikan algoritma MGDM dengan
mengujikannya pada tiga buah dataset image
dengan pengambilan histogram sebagai fiturnya.
Dataset yang diambil bersifat supervised dengan
masing-masing dataset terdapat 1000 data yang
terbagi dalam 25 kelas. Uji coba dilakukan dengan
pengambilan beberapa variasi jumlah data yang
digunakan pada proses training diantaranya 500,
625, 750, dan 875. Berdasarkan hasil uji coba
didapatkan bahwa jumlah data yang digunakan
dalam proses training menggunakan algoritma
MGDM berpengaruh terhadap nilai akurasi
missclassified image (sebuah image yang
seharusnya berada pada kelas i, tetapi akhirnya
menempati kelas j setelah dilakukan training,
dimana i ≠ j) dari tiap-tiap dataset. Penurunan nilai
akurasi tersebut tidak selalu menyebabkan
berkurangnya persentase presisi saat dilakukan
proses testing.
1.
PENDAHULUAN
Klasterisasi adalah salah satu metode data
mining yang digunakan untuk mengelompokkan
data dengan karakteristik yang sama ke suatu
wilayah yang sama dan data dengan karakteristik
yang berbeda ke wilayah yang lain. K-Means (KM)
adalah salah satu algoritma paling populer yang
digunakan untuk proses partisi karena efisiensinya
pada saat menangani data yang banyak. KM
tergolong mudah untuk diimplementasikan dan
dapat mancapai titik konvergen secara cepat.
Namun terkadang hasilnya mengarah pada lokal
optima[Ciu, 2005]. Permasalahan lain yang juga
muncul pada saat menggunakan KM untuk
melakukan clustering adalah overlapping data.
Untuk mengatasi hal tersebut [Bougila, 2008]
mengusulkan sebuah algoritma baru yang diberi
nama Multinomial Generalized Dirichlet Mixture
(MGDM). Tujuan dari algoritma ini adalah
melakukan maksimasi terhadap KM dengan
memperkenalkan Spherical K-Means (SPKMeans)
dan optimasi dengan menggunakan Expectation
Maximation (EM). Beberapa kelebihan Mixture
Modelling dari metode sebelumnya adalah
terdapatnya kemampuan untuk mendeteksi
keberadaan suatu cluster yang overlap dengan
cluster yang lain. Mixture Modelling telah
digunakan dalam berbagai bidang seperti computer
vision, image processing dan pattern recognition
yang sebagian besar data bersifat diskret.
Penulis juga melakukan eksplorasi terhadap
algoritma hybrid PSO untuk membantu SPKMeans
terlepas dari lokal optima.
2.
SPHERICAL K-MEANS
Algoritma K-Means yang standar mempunyai
rumus objective function untuk meminimalisasi
error sebagai berikut:
∑ ||
||
(1)
yaitu
dimana k(x) =
,…, min
index dari centroid dengan jarak terdekat ke x, N
adalah jumlah total data vektor.
Spherical
K-Means
muncul
dengan
menggunakan konsep maksimasi nya serta untuk
mengatasi data dengan jumlah dan dimensi yang
besar. SPKMeans mempunyai cara perhitungan
98
Seminar Nasional Teknologi Informasi dan Komunikasi 2012 (SENTIKA 2012)
Yogyakarta, 10 Maret 2012
cosine similarity yang berbeda dengan KM dan
setiap data pada SPKMeans dinormalisasi menjadi
unit
vektor
nya
1 .
Sehingga
menjadi set dari unit vektor
, ,…,
centroid.
∑
(2)
.
Perbedaan
dimana
arg
mendasar dari standar k-means adalah estimasi
mean vektor
perlu untuk dinormalisasikan
menjadi unit-length nya.
(3)
ISSN: 2089-9815
(6)
Variabel i merupakan partikel ke-i dalam
kawanan, t merupakan jumlah iterasi, Vi adalah
kecepatan partikel ke-i, Xi adalah variabel partikel
vektor (contohnya posisi vektor) dari partikel ke-i.
R1 dan R2 merupakan bilangan acak antara 0 dan
1, ω adalah beban partikel disebut sebagai innertia
weight, C1 dan C2 adalah dua konstanta bilangan,
sering disebut sebagai cognitive confidence
coefficent.
Dalam paper ini, setiap partikel di dalam PSO
merepresentasikan k centroid dari sebuah dataset.
Partikel terbaik akan digunakan sebagai inisialisasi
centroid pada algoritma SPKMeans [Cui, 2005].
Fitness Function yang digunakan pada PSO ini
adalah:
Algorithm: spherical k-means (SPKMeans)
Input: sebuah set unit-length vektor X = {X1,…,XN}
sebanyak N, total cluster K dan centroid awal μ.
Output: sebuah partisi vektor data yang diberikan
oleh cluster vektor Y = {y1,…,yN}, yn {1,…,K}
dan μ = {μ1, μ2,...,μk}.
Steps:
1. Initialization: inisialisasi unit-length vektor
;
sebagai cluster centroid
, ,…,
2. Penetapan kelas: untuk setiap vektor data
,
tentukan
arg max
;
3. Estimasi centroid; untuk tiap cluster k, misalkan
|
, estimasikan centroid sebagai
∑
∑
∑
,
(7)
adalah vektor data ke j yang ada pada
dimana
cluster i, adalah centroid cluster i, adalah total
adalah total cluster,
data yang ada pada cluster i,
,
adalah jarak antara vektor data ke j
dan
yang ada pada cluster i dengan centroid cluster i.
Jarak dua vektor dihitung dengan persamaan (8)
berikut:
∑
∑
,
4. Stop jika y tidak mengalami perubahan;
sebaliknya pergi ke Step 2.
Gambar 1. Algoritma Spherical K-means
(8)
dan
adalah dua vektor data,
dimana
adalah dimensi data,
dan
adalah nilai dari
dimensi ke k pada vektor
dan
. Algoritma
Hybrid PSO dapat dilihat pada Gambar 2.
Sebuah penelitian menarik bahwa ketika X dan μ
keduanya berupa unit vektor, Euclidean distance
dari KM setara dengan cosine similarity dari
SPKMeans untuk proses pengelompokan data ke
dalam cluster similarnya [Zhong, 2005].
2
2 2
(4)
4.
EXPECTATION MAXIMATION
Expectation Maximation (EM) merupakan salah
satu metode untuk menemukan estimasi maximum
likelihood dari sebuah dataset dengan distribusi
tertentu. Langkah-langkah algoritma EM dapat
dibagi menjadi tiga bagian besar yaitu dua langkah
untuk Expectation dan Maximation serta satu
langkah untuk Optimization.
a. E-STEP (Expectation Step)
Di dalam langkah ini, secara singkat
menggunakan rumus sebagai berikut:
3.
HYBRID
PARTICLE
SWARM
OPTIMIZATION
Metode PSO dikembangkan oleh Ebenhart dan
Kennedy (1995) yang terinspirasi oleh tingkah laku
burung flock. PSO menggunakan sekumpulan
partikel yang saling bekerjasama. Setiap partikel
mempunyai kemampuan untuk mengevaluasi
kemampuannya dan kemampuan partikel lain di
sekitarnya. Setiap partikel menyimpan solusi yang
kemungkinan merupakan solusi terbaik untuk
semua partikel yang ada.
PSO diinisialisasi dengan pembuatan matriks
secara acak. Matriks yang mengandung nilai
variabel tersebut selanjutnya disebut dengan
partikel. Masing-masing partikel akan berpindah
berdasarkan jarak dan kecepatan. Partikel akan
memperbaharui kecepatan sesuai dengan persamaan
(5) dan posisinya diukur dari solusi terbaik lokal
dan global dengan persamaan (6).
| ,
|
∑
(9)
dimana
didapat dari perhitungan
dengan distribusi gaussian dengan parameter mean
dan kovarian.
b. M-STEP (Maximation Step)
Di dalam tahap ini, merupakan bagian untuk
mencari nilai alpha / prior, mu, dan sigma baru
yang didapat secara berturut-turut dengan
menggunakan rumus
∑
| ,
(10)
∑
∑
(5)
99
| ,
,
(11)
Seminar Nasional Teknologi Informasi dan Komunikasi 2012 (SENTIKA 2012)
Yogyakarta, 10 Maret 2012
Σ
∑
,
∑
| ,
ISSN: 2089-9815
mendapatkan elemen masing-masing vektor.
Algoritma ditunjukkan pada Gambar 3. e. Menerapkan Method of Moment (MM)
berdasarkan persamaan (16) untuk masingmasing komponen kelas.
∏
(16)
(12)
Pada rumus tersebut masing-masing merupakan
nilai optimal dengan asumsi sudah didapatkan nilai
parameter, Θ, yang sudah optimal atau maksimal
juga, dengan menggunakan rumus
,
(13)
f. Menentukan keanggotaan setiap data ke dalam
masing-masing kelas, dan asumsikan bahwa
model ini adalah benar.
g. Jika model sebelumnya dan model baru yang
diperoleh adalah sama satu sama lain, selesai,
jika tidak kembali ke step d.
c. Q-Function
Dengan asumsi sudah ditentukan sebelumnya
nilai threshold atau batas, fungsi Q ini digunakan
untuk optimasi komputasi pada program. Disebut
optimasi, karena di dalam tahapan ini dilakukan
pengecekan apakah selisih antara nilai Qi dengan
Qi-1 sudah tidak lebih dari threshold atau belum.
Ketika sudah mencapai batas yang ditentukan maka
komputasi akan dihentikan. Fungsi Q sendiri
digunakan dengan rumus sebagai berikut
| ,
∑ ∑ log
|
,
(14)
5.
ALGORITMA MGDM
Tahap inisialisasi menjadi sangat penting ketika
sebuah mixture model berhadapan dengan data baik
kontinyu maupun diskret. Pada umumnya metode
yang efektif sebagai algoritma inisialisasi seperti KMeans dan Fuzzy K-Means adalah diperuntukkan
untuk data yang sifatnya kontinyu dan tidak bisa
diaplikasikan untuk data diskret. Sebagai contoh,
algoritma K-Means klasik menggunakan Euclidean
Distance yang mana tidak tepat untuk mengcluster
data diskret dan memberikan hasil yang kurang
baik. Dengan tujuan untuk membuat sebuah
estimasi algoritma menjadi sedikit menyentuh lokal
optima, digunakan sebuah skema inisialisasi
menggunakan algoritma hybrid PSO - Spherical KMeans (PSOSPKMeans) dan method of moment
(MM). Untuk mengaplikasikan algoritma ini,
digunakan frekuensi vektor yang dihitung untuk
tiap-tiap vektor data
,
1, … , . Kemudian
dilakukan tahap preprosesing yang disebut juga
dengan normalisasi skema frekuensi supaya
membentuk vektor baru
yang
,…,
akan digunakan sebagai input untuk algoritma
PSOSPKMeans. Normalisasi skema frekuensi
dilakukan berdasarkan persamaan (15) berikut
⁄
∑
(15)
Gambar 2. Algoritma Hybrid PSO
Algoritma utuh
a. Algoritma Inisialisasi
b. E-Step.
c. M-Step
d. Q-Function
e. Lakukan pengecekan terhadap nilai Q, apabila
memenuhi threshold, selesai, jika tidak kembali
ke step 2.
Detail algoritma multinomial generalized
dirichlet mixture adalah sebagai berikut:
Algoritma Inisialisasi
1, … , ,
a. Input data berupa vektor diskret ,
V, dan total cluster K.
b. Menghitung
frekuensi
vektor
,
1, … ,
,…,
c. Melakukan normalisasi skema frekuensi
menggunakan persamaan (15),
1, … , ,
1, … , .
d. Menerapkan algoritma PSOSPKMeans untuk
Perhitungan akurasi
Ada tiga point yang dihitung untuk melakukan
uji performa algoritma ini yaitu:
a. Misslassified Image
Adalah sebuah image yang seharusnya berada
pada kelas i, tetapi akhirnya menempati kelas j
setelah dilakukan training, dimana
b. Precision
Adalah proporsi dari suatu set yang diperoleh
100
Seminar Nasional Teknologi Informasi dan Komunikasi 2012 (SENTIKA 2012)
Yogyakarta, 10 Maret 2012
ISSN: 2089-9815
Tabel 2. Tabel karakteristik dataset masukan
Jumlah
Nama
Jumlah Jumlah Jumlah
data
dataset
kelas
data
fitur
tiap
(dimensi)
kelas
Dataset1
25
40
256
1000
Dataset2
25
40
256
1000
Dataset3
25
40
256
1000
dari proses retrieve yang relevan dengan data asli.
|
| |
|
(17)
c. Recall
Adalah semua data yang relevan di koleksi
termasuk data yang diperoleh.
|
| |
|
(18)
Tabel 2 menjelaskan bahwa tiap dataset
memiliki 1000 data dengan jumlah kelas yang sama
sebanyak 25 kelas, serta tiap-tiap kelas mempunyai
40 variasi data dimana masing-masing data
mempunyai
dimensi
sebesar
256
yang
merepresentasikan jumlah frekuensi dari tiap-tiap
pixelnya (histogram). Untuk lebih jelasnya
mengenai image apa saja yang ada pada tiap-tiap
dataset dapat dilihat pada Tabel 3.
Tabel 3. Tabel Dataset
1
Dataset1
Nama
lukisan kartu
2
celengan
3
buku tebal
korek api
4
tas jinjing
5
koin perak
buah jeruk
dompet warna
hitam
guci dan
colokan
Kelas
6
7
6.
UJI COBA
Uji coba yang dilakukan diantaranya adalah
dengan membuat dataset image sebanyak 3 jenis
yang masing-masing berjumlah 1000 data dan 25
kelas.
Karakteristik untuk tiap image yang ada pada
dataset dituangkan dalam tabel 1.
101
gantungan
kunci
buku KBBI
binder
kunci
korek api
kamus jerman
- indonesia
9
alat pijat
minyak wangi
10
boneka bebek
komporkomporan
HP SE K700i
boneka warna
merah
sendok dan
garpu
piringpiringan
12
kepingan CD
13
bedak
14
mouse
buah-buahan
15
16
piala
topi pramuka
saputangan +
gelang
buku problem
solving
flashdisk
remote
sepatu kecil
warna merah
18
pin doraemon
sisir
jam beker
17
Tabel 1. Tabel karakteristik image
Property
Value
Width
600 pixels
Height
800 pixels
Horizontal Resolution
300 dpi
Vertical Resolution
300 dpi
Bit Depth
24
Frame Count
1
Color Representation
sRGB
Ekstensi
*.jpg (JPEG Image)
Dataset3
Nama
pensil warna
stempel
8
11
Gambar 3. Algoritma PSOSPKMeans
tempat
kacamata
dompet warna
merah jambu
Dataset2
Nama
panci kecil
senter warna
biru
recorder
19
telur
20
alat cukur
21
mainan piano
rantang
plastik warna
orange
sarung tangan
motor
cobek
22
meteran
celengan
23
cetakan roti
buah tomat
cetakan roti
warna kuning
bedak putih
kaca biru
kalkulator
buah tomat
telepon warna
biru
sandal sehat
blender
radio
lampu senter
bohlam
sepatu kecil
warna kuning
ulek-ulek
keping CD
driver
kotak pensil
warna
Seminar Nasional Teknologi Informasi dan Komunikasi 2012 (SENTIKA 2012)
Yogyakarta, 10 Maret 2012
24
25
HP Nokia
2100
kipas kayu
gelas warna
putih
pin doraemon
ISSN: 2089-9815
Nilai parameter tersebut dipilih berdasarkan
penelitian seleksi parameter PSO yang dilakukan
oleh Shi dan Eberhart [4].
Tabel 5 di bawah ini menjelaskan bahwa
terdapat pengaruh antara jumlah data yang
digunakan dalam proses training terhadap nilai
akurasi missclassified image dan pengaruh itu
dibuktikan secara kuat bahwa dalam jumlah iterasi
yang berbeda-beda dihasilkan kecenderungan
perubahan rata-rata nilai missclassified image yang
sama pada tiap dataset.
panci kecil
sepatu coklat
Skenario Uji coba dilakukan terhadap masingmasing dataset dengan rincian sebagai berikut:
a. Uji coba dengan jumlah data training sebesar
500 dan data testing 500
b. Uji coba dengan jumlah data training sebesar
625 dan data testing 325
c. Uji coba dengan jumlah data training sebesar
750 dan data testing 250
d. Uji coba dengan jumlah data training sebesar
875 dan data testing 125.
Tabel 5. Rata-rata Uji Coba dari tiap iterasi, dataset,
dan jumlah data training
Rata-rata Uji Coba dari tiap iterasi, dataset, dan jumlah
data training
Masing-masing skenario dilakukan dengan
iterasi 5, 10, dan 15. Kemudian untuk masingmasing skenario juga dilakukan perhitungan
terhadap nilai missclassified image, precision,
recall dan running time. Pemilihan skenario di atas
dimaksudkan untuk mengetahui pengaruh jumlah
data tersebut terhadap akurasi yang diperoleh.
Perbedaan jumlah iterasi dimaksudkan untuk
mengetahui tingkat kestabilan nilai akurasi dari tiap
dataset. Parameter masukan pada proses
PSOSPKMeans dituangkan pada tabel 4.
Iter
asi
dat
ase
t
1
5
2
3
1
10
2
3
1
15
2
3
Gambar 4. Image yang mewakili setiap kelas yang
ada pada salah satu dataset.
7.
nTrai
ning
500
625
750
875
500
625
750
875
500
625
750
875
500
625
750
875
500
625
750
875
500
625
750
875
500
625
750
875
500
625
750
875
500
625
750
875
Traini
ng
Accur
acy
(%)
80
81
78
79
61
63
61
60
80
82
80
79
80
79
79
79
62
61
60
61
79
79
80
80
80
79
79
79
62
62
61
60
80
79
80
79
Precis
ion
Recall
0.80
0.79
0.78
0.82
0.59
0.59
0.59
0.60
0.81
0.81
0.81
0.81
0.77
0.78
0.77
0.79
0.60
0.61
0.60
0.61
0.80
0.80
0.81
0.80
0.80
0.78
0.80
0.80
0.60
0.61
0.59
0.60
0.80
0.80
0.81
0.81
0.79
0.77
0.76
0.74
0.54
0.58
0.57
0.56
0.76
0.77
0.77
0.77
0.76
0.77
0.76
0.77
0.56
0.58
0.57
0.58
0.76
0.77
0.77
0.77
0.77
0.76
0.78
0.76
0.56
0.58
0.57
0.57
0.77
0.77
0.77
0.77
Running
Time
(second)
188.33
205.74
278.83
298.44
166.45
224.89
331.49
361.76
162.15
243.06
375.15
433.94
173.15
203.45
286.09
281.27
140.14
213.14
255.19
414.67
156.23
225.22
302.69
411.52
161.17
216.74
275.00
356.01
143.15
211.66
284.09
318.03
158.42
200.84
346.66
402.79
KESIMPULAN
Kesimpulan yang diperoleh berdasarkan uji
coba dan evaluasi terhadap algoritma Multinomial
Generalized Dirichlet Mixture (MGDM) yang telah
dilakukan adalah sebagai berikut:
a. MGDM terbukti mampu menjadi classifier,
dan mampu untuk mengklaster sampel baru
suatu dataset.
b. Semakin besar jumlah data yang digunakan
Tabel 4. Tabel parameter masukan PSOSPKMeans
Parameter
Nilai
nPartikel
20
nKelas
25
Inertia
0.72
c1
1.49
c2
1.49
102
Seminar Nasional Teknologi Informasi dan Komunikasi 2012 (SENTIKA 2012)
Yogyakarta, 10 Maret 2012
dalam proses training menggunakan algoritma
MGDM cenderung menyebabkan menurunnya
nilai akurasi dari tiap-tiap dataset.
c. Penurunan nilai akurasi algoritma MGDM
cenderung menyebabkan naiknya presisi pada
tahap testing.
PUSTAKA
A.
Yudi. (2007). K-Means – Penerapan,
Permasalahan dan Metode Terkait. Jurnal
Sistem dan Informatika.
Cui, X., & Potok, T. E. (2005). Document
Clustering Analysis Based on Hybrid PSO+Kmeans Algorithm.
I.S. Dhillon, D.S. Modha, Concept decompositions
for large sparse text data using clustering.
Jeff A, Bimes. (1998). A Gentle Tutorial of EM
Algorithm and its Application to Parameter
Estimation for Gaussian Mixture and Hidden
Markov Models. Berkeley CA, 94704. N. Bouguila, W. ElGuebaly. (2008). Discrete data
clustering using finite mixture models.
S. Zhong (2005). Efficient Online Spherical KMeans Clustering. Department of Computer
Science and Engineering, Florida Atlantic
University, Boca Raton, FL 33431.
Shi, Y. H., Eberhart, R. C., (1998). Parameter
Selection in Particle Swarm Optimization, The
7th Annual Conference on Evolutionary
Programming, San Diego, CA.
103
ISSN: 2089-9815
Download