Anda di halaman 1dari 5

K-Means Clustering :

A. Teori K-Means Clustering


K-means clustering, dimana K dimaksudkan sebagai konstanta jumlah cluster
yang diinginkan, sedangkan Means merupakan suatu rata-rata dari suatu grup data
yang dalam hal ini didefinisikan sebagai cluster. Dari hal tersebut dapat diartikan K-
Means Clustering adalah suatu metode penganalisaan data atau metode data mining
yang melakukan proses pemodelan tanpa supervisi atau unsupervised dan merupakan
salah satu metode yang melakukan pengelompokkan data dengan sistem partisi.
Metode K-Means Clustering berusaha mengelompokkan data yang ada ke dalam
beberapa kelompok, di mana data dalam satu kelompok mempunyai karakteristik
yang sama satu sama lainnya dan mempunyai karakteristik yang berbeda dengan data
yang ada di dalam kelompok yang lain. Metode K-Means hanya bekerja pada atribut
numerik. Adapun dasar algoritma K-Means adalah sebagai berikut :
- Tentukan nilai k sebagai jumlah cluster yang ingin dibentuk.
- Inisialisasi k sebagai centroid yang dapat dibandingkan secara random.
- Hitung jarak setiap data ke masing-masing centroid menggunakan persamaan
Euclidean Distance yaitu sebagai berikut :


p
d ( P ,Q )= ∑ ¿¿¿
j=1

- Kelompokkan setiap data berdasarkan jarak terdekat antara data dengan


contohnya.
- Tentukan posisi centroid baru (k).
- Kembali ke langkah 3 jika posisi centroid baru dengan centroid lama tidak sama.
Jika tidak ada maka hentikan proses clustering.

1. Penentuan Jarak Terdekat Antara Data dengan Centroid


- Metode Euclidean Distance


n
D ( a , b) = ∑ ¿¿¿
k=1

Di mana :
n adalah jumlah dimensi (atribut).
a k dan b k adalah atribut ke-k dari objek data p dan q.

Contoh Kasus Sederhana :

Misalkan terdapat sebuah data 4 pasien dengan 2 atribut sebagai berikut :

PASIEN A B
1 1 1
2 2 1
3 4 3
4 5 4

1. Hitung jumlah datanya, yang mana pada data tersebut jumlah datanya
adalah 4.
2. Kemudian, tentukan jumlah k clusternya, yang mana pada jumlah cluster
ini tidak boleh lebih dari jumlah data. Pada soal ini dimisalkan clusternya
berjumlah 2, maka k = 2.
3. Tentukan centroid awal yang dilakukan secara acak. Misalnya diambil
data pasien 1 dan 2 saja sebagai centroid awalnya, yang dapat dituliskan :
- Centroid cluster 1 (CC-1) = {1,1}
- Centroid cluster 2 (CC-2) = {2,1}
4. Hitung jarak data dengan centroid

CENTROID A B
1 1 1

d ( p1 , c1 ) =√ ¿¿

Dimana p1 a merupakan pasien 1 pada atribut a dan c 1 a merupakan


centroid 1 pada atribut. Sedangkan p1 b merupakan pasien 1 pada atrbut b
dan c 1 b merupakan centroid 1 pada atribut b.

Maka didapatkan :

d ( p1 , c1 ) =√ ¿¿

Selanjutnya dilakukan dengan rumus yang sama pada pasien selanjutnya,


sehingga didapatkan :

d ( p2 , c1 ) =√ ¿ ¿

d ( p3 , c1 ) =√ ¿ ¿

d ( p4 , c 1 )= √ ¿ ¿

Selanjutnya hitung jarak data dengan centroid 2, yaitu :

CENTROID A B
2 2 1

d ( p1 , c2 ) =√ ¿ ¿
d ( p1 , c2 ) =√ ¿ ¿

d ( p2 , c2 ) =√ ¿ ¿

d ( p3 , c2 ) =√ ¿ ¿

d ( p4 , c 2 )= √ ¿ ¿

Hasil perhitungan tersebut dapat diringkas sesuai pada tabel di bawah ini :

PASIEN A B D(P,C1) D(P,C2)


1 1 1 0 1

2 2 1 1 0

3 4 3 3,61 2,83
4 5 4 5 4,24

5. Lalu dilakukan mengelompokkan data sesuai dengan clusternya :


- D(P,C1) < D(P,C2)
Maka, P1 masuk ke dalam cluster 1 dan lainnya masuk ke dalam
cluster 2 sehingga didapatkan : (Iterasi I selesai)

PASIEN A B D(P,C1) D(P,C2) C-1 C-2


1 1 1 0 1 V

2 2 1 1 0 V

3 4 3 3,61 2,83 V
4 5 4 5 4,24 V

6. Hitung centroid berikutnya, yang mana pada kali ini centroid dihitung pada
nilai rata-rata dari hasil penjumlahan data pada masing-masing cluster.
(Iterasi II)

PASIEN A B
1 1 1
2 2 1
3 4 3
4 5 4

- Pada cluster-1 terdapat 1 data pasien-1, maka nilai rata-rata pada cluster-1
adalah :
Average(P1A) = Average (1) = 1, dan Average(P1B) = Average (1) = 1

- Pada cluster-2 terdapat 3 data pasien (Pasien 2, 3, dan 4), maka nilai rata-
rata pada cluster-2 adalah :

Average(P2A + P3A + P4A) = Average (2+4+5) = 3,67


Average(P2B + P3B + P4B) = Average (1+3+4) = 2,67

Selanjutnya, didapatkan hasil perhitungan centroid baru, seperti :

CENTROID A B
1 1 1
2 3,67 2,67

7. Ulangi langkah-langkah menghitung jarak antara data dengan centroid


Karena caranya sama, maka langsung didapatkan :

Seperti :
d ( p1 , c1 ) =√ ¿¿

d ( p1 , c1 ) =√ ¿¿

d ( p1 , c2 ) =√ ¿ ¿

Begitu seterusnya

PASIEN A B D(P,C1) D(P,C2)


1 1 1 0 3,14

2 2 1 1 2,36

3 4 3 3,61 0,47
4 5 4 5 1,89

8. Kelompokkan data sesuai dengan cluster, maka didapatkan :

PASIEN A B D(P,C1) D(P,C2) C-1 C-2


1 1 1 0 3,14 V

2 2 1 1 2,36 V

3 4 3 3,61 0,47 V
4 5 4 5 1,89 V
Dari hasil tabel di atas didapatkan bahwa pasien 2 berpindah ke cluster 2.

9. Karena masih ada perubahan centroid, maka dilakukan perhitungan


centroid berikutnya, dengan menggunakan rata-rata seperti sebelumnya,
yaitu didapatkan : (Iterasi III)
- Average(P1A + P2A) = Average(1+2) = 1,5
- Average(P1B + P2B) = Average(1+1) = 1
- Average(P3A + P4A) = Average(4+5) = 4,5
- Average(P3B + P4B) = Average(3+4) = 3,5

CENTROID A B
1 1,5 1
2 4,5 3,5

10. Ulangi lagi langkah-langkah menghitung jarak antara data dengan centroid,
sehingga didapatkan :

PASIEN A B D(P,C1) D(P,C2)


1 1 1 0,5 4,30

2 2 1 0,5 3,54

3 4 3 3,20 0,71
4 5 4 4,61 0,71

Lalu, dilakukan pengelompokkan cluster dan didapatkan :

PASIEN A B D(P,C1) D(P,C2) C-1 C-2


1 1 1 0,5 4,30 V

2 2 1 0,5 3,54 V

3 4 3 3,20 0,71 V
4 5 4 4,61 0,71 V

Dari hasil tabel di atas, cluster tidak ada lagi data yang pindah, maka
proses clustering dapat dihentikan. Centroid pada iterasi III sama dengan
centroid pada iterasi II (tetap atau tidak perubahan). Maka iterasi
dihentikan dan proses clustering menghasilkan :
- Cluster-1 berisi : Pasien 1 dan Pasien 2.
- Cluster-2 berisi : Pasien 3 dan Pasien 4.

Anda mungkin juga menyukai