yudi@upi.edu
Okt 2012
Contoh
Cluster Analysis?
• Cluster: kumpulan objek data
– Anggota cluster yang sama memiliki kemiripan satu sama lain, tetapi
berbeda dengan anggota cluster lain.
• Cluster analysis
– Menemukan kemiripan data berdasarkan karakteristik dan
mengelompokan data yang mirip ke dalam cluster.
• Unsupervised learning: class tidak ditentukan sebelumnya
• Penggunaan
– Tool untuk melihat distribusi data
– Preprocessing untuk langkah berikutnya
Aplikasi Cluster Analysis
• Pengenalan Pola
• Spatial Data Analysis
– Cluster spatial
• Pemrosesan gambar
• Economic Science (terutama market research)
• WWW
– Berita, hasil pencarian
– Cluster Weblog data to discover groups of similar access
patterns
Aplikasi clustering (lanj)
• Marketing: Membantu pihak pemasaran untuk menentukan
grup khusus dan membuat program khusus untuk grup ini.
• Land use: Identifikasi area yang digunakan untuk hal yang
sama.
• Asuransi: Identifikasi grup yang memiliki tingkat claim yang
tinggi.
• Tata kota: Identifikasi rumah-rumah berdasrkan tipe, harga
dan lokasi.
Cluster yang berkualitas:
• Metode yang bagus akan menghasilkan:
– intra-class similarity yang tinggi (anggota di dalam kelas yang
sama mirip)
– low inter-class similarity (anggota di kelas yang lain, jauh
berbeda)
0
• Dissimilarity matrix d(2,1) 0
– (one mode) d(3,1) d ( 3,2) 0
: : :
d ( n,1) d ( n,2) ... ... 0
Tipe data dalam clustering
• Interval-scaled variables
• Binary variables ada atau tidak
• Nominal, ordinal, and ratio variables
• Campuran
Interval-Scaled Variable
• Skala linear (bukan eksponensial, bukan
logaritimik)
• Positif atau negatif, pecahan atau bulat.
• Tinggi badan, berat badan, jarak dst.
• Contoh:
– jarak 50m ke 100m sama dengan jarak 150-
200.
Contoh yang bukan
interval-Scaled Variable
• skala richter
gempa
• naik satu level
= 10 kali lipat
level
sebelumnya.
http://www.sdgs.usd.edu/publications/maps/earthquakes/images/RichterScale.gif
Interval Variable
• Jika ada beberapa atribut dan punya distribusi
berbeda: perlu distandardkan.
• Buat data menjadi standard, z-score:
– Hitung mean absolute deviation:
s f 1n (| x1 f m f | | x2 f m f | ... | xnf m f |)
dimana
m f 1n (x1 f x2 f ... xnf )
.
xif m f
zif sf
Mengapa z-score?
• Tidak bisa membandingkan atribut dengan
distribusi berbeda.
• Contoh:
– Seseorang mendapatkan nilai 70 untuk bhs
Inggris (rata2 kelas: 60, std deviasi: 15). Dia
mendapat nilai 72 untuk matematika (rata2:
68, std deviasi: 6). Nilai mana yang lebih
baik?
Lanj
• z-score nilai bhs Inggris:
(70-60) /15 = 0.67
• z-score nilai Matematika:
(72-68)/6 = 0.67
d (i, j) q (| x x |q | x x |q ... | x x |q )
i1 j1 i2 j2 ip jp
q : integer positif
• If q = 1, d is Manhattan distance
d (i, j) | x x | | x x | ... | x x |
i1 j1 i2 j 2 ip jp
Interval Variable (lanj)
• Jika q = 2, d adalah Euclidean distance:
d (i, j) (| x x |2 | x x | 2 ... | x x |2 )
i1 j1 i2 j2 ip jp
– Properties
• d(i,j) 0
• d(i,i) = 0
• d(i,j) = d(j,i)
• d(i,j) d(i,k) + d(k,j)
d (i, j) bc
• Jarak untuk symmetric binary a bc d
variables:
• Jarak untuk asymmetric binary d (i, j) bc
a bc
variables:
• Jaccard coefficient (similarity
simJaccard (i, j) a
measure untuk asymmetric a bc
binary variables):
Contoh
Name Gender Fever Cough Test-1 Test-2 Test-3 Test-4
Jack M Y N P N N N
Mary F Y N P N P N
Jim M Y P N N N N
p
d (i, j) p m
pf 1 ij( f ) dij( f )
d (i, j)
pf 1 ij( f )
Pendekatan Clustering
• Partisi :
– Buat partisi dan evaluasi berdasarkan kriteria tertentu, misalnya
meminimalkan sum of square errors
– Metode: k-means, k-medoids, CLARANS
• Hirarkis:
– Buat struktur hierarchical menggunakan kriteria tertentu
– Metode: Diana, Agnes, BIRCH, ROCK, CAMELEON
• Density-based :
– Berdasarkan connectivity dan density functions
– Metode: DBSACN, OPTICS, DenClue
• Yang lain: Grid-based approach, model-based, frequent pattern-based, user-
guided or constraint-based:
Jarak antar cluster
• Single link: jarak terpendek antar elemen di dua cluster dis(Ki,
Kj) = min(tip, tjq)
A1 cluster A
2 2
d ( A1, A) (| 2 2 | |10 5|
d ( A1, A) 5
A3 cluster A, d(A3,A) =
B1 cluster A, d(B1,A) =
B3 cluster A, d(B3,A) =
C1 cluster A, d(C1,A) =
Contoh K-Means:
10 10
10
9 9
9
8 8
8
7 7
7
6 6
6
5 5
5
4 4
4
Assign 3 Update 3
3
2 each
2 the 2
1
objects
1
0
cluster 1
0
0
0 1 2 3 4 5 6 7 8 9 10 to most
0 1 2 3 4 5 6 7 8 9 10 means 0 1 2 3 4 5 6 7 8 9 10
similar
center reassign reassign
10 10
K=2 9 9
8 8
Arbitrarily choose K 7 7
6 6
object as initial 5 5
2
the 3
1 cluster 1
0
0 1 2 3 4 5 6 7 8 9 10
means 0
0 1 2 3 4 5 6 7 8 9 10
K-Medoids
• Kelemahan utama centroid jika ada
outlier posisi centroid akan terpengaruhi.
• Centroid diganti Modoids salah satu
data dipilih sebagai titik tengah
Contoh K-Metoid (PAM)
10 10 10
9 9 9
8 8 8
7 7 7
6
Arbitrary 6
Assign 6
5
choose k 5 each 5
4 object as 4 remainin 4
3
initial 3
g object 3
2
medoids 2
to 2
1 1
nearest
1
0 0 0
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
medoids 0 1 2 3 4 5 6 7 8 9 10
Do loop 9
8 Compute
9
8
Swapping O 7 total cost of 7
change
5 5
If quality is 4 4
improved. 3
2
3
1 1
0 0
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10