K-Means Clustering
Ringkasan
K-Means = clustering non-hierarchical (partitional), unsupervised: mengelompokkan data tanpa label berdasar kemiripan, minimalkan variasi dalam klaster dan maksimalkan variasi antar klaster. Tantangan utama: nilai harus ditentukan di awal (dibantu Elbow Method via WCSS).
Konsep Kunci
1. Klasifikasi vs Klastering
| Aspek | Klasifikasi | Klastering |
|---|---|---|
| Pembelajaran | Supervised (data berlabel) | Unsupervised (tanpa label) |
| Tujuan | Prediksi kelas data baru | Kelompokkan data berdasar kemiripan |
| Proses | Latih dari data berlabel → uji | Kelompokkan langsung via jarak/kemiripan |
| Output | Label/kelas prediksi | Nomor klaster tiap data |
| Evaluasi | Akurasi, presisi, recall, F1 (vs label asli) | WCSS, Silhouette Score (tanpa label) |
| Algoritma | Naive Bayes, Decision Tree, KNN, SVM, Neural Network | K-Means, Hierarchical, DBSCAN |
2. Langkah Algoritma K-Means
a) Tentukan jumlah klaster ; b) alokasi data ke klaster acak; c) hitung centroid (rata-rata) tiap klaster; d) alokasikan tiap data ke centroid terdekat; e) ulangi c–d sampai tak ada data pindah, perubahan centroid di bawah threshold, atau objective function konvergen.
3. Euclidean Distance
Jarak dua titik, metrik kemiripan utama K-Means:
Untuk 2 dimensi:
4. Elbow Method + WCSS
Jalankan K-Means untuk s.d. , hitung WCSS (Within-Cluster Sum of Squares / inertia) tiap :
optimal = titik penurunan WCSS mulai melandai seperti siku (elbow).
Contoh (dengan perhitungan)
Clustering bunga Iris (fitur SL = sepal length, SW = sepal width), . Centroid awal acak: , .
| No | SL | SW | Species |
|---|---|---|---|
| 1 | 5 | 3,5 | Setosa |
| 2 | 4,5 | 2,3 | Setosa |
| 3 | 4,4 | 3,2 | Setosa |
| 4 | 5 | 3,5 | Setosa |
| 5 | 5,1 | 3,8 | Setosa |
| 6 | 5,5 | 2,6 | Versicolor |
| 7 | 6,1 | 3 | Versicolor |
| 8 | 5,8 | 2,6 | Versicolor |
| 9 | 5 | 2,3 | Versicolor |
| 10 | 5,6 | 2,7 | Versicolor |
Data 1: ; → . Hasil iterasi 1 (terhitung):
| No | d ke | d ke | Klaster |
|---|---|---|---|
| 1 | 0,5 | 1,03 | |
| 2 | 1,2 | 1,044 | |
| 3 | 0,316 | 1,253 | |
| 4 | 0,5 | 1,03 | |
| 5 | 0,671 | 1,265 | |
| 6 | 1,345 | 0 | |
| 7 | 1,676 | 0,721 | |
| 8 | 1,581 | 0,3 | |
| 9 | 1,3 | 0,583 | |
| 10 | 1,36 | 0,141 |
Catatan: data 2 (label asli Setosa) jatuh ke — wajar, K-Means ikut jarak bukan label.
Update centroid dari anggota klaster: → , . → , . Ulangi hitung jarak; bila hasil klaster iterasi 2 sama dengan iterasi 1 → konvergen, tetapkan hasil akhir.
Keterkaitan
- Prasyarat: Pra-pemrosesan Data (fitur numerik + scaling sebelum hitung jarak; outlier menggeser centroid).
- Lanjutan: Naive Bayes (lawan supervised-nya: klasifikasi berlabel).