K-Means Machine Learning
Apa itu K-Means Clustering?
K-means clustering adalah salah satu algoritma analisis klaster (cluster analysis) non hirarki. Analisis klaster merupakan salah satu alat untuk mengelompokkan data berdasarkan variabel atau feature.
Tujuan dari k-means clustering, seperti metode klaster lainnya, adalah untuk mendapatkan kelompok data dengan memaksimalkan kesamaan karakteristik dalam klaster dan memaksimalkan perbedaan antar klaster.
Algoritma K-means
clustering mengelompokkan data berdasarkan jarak antara data terhadap titik
centroid klaster yang didapatkan melalui proses berulang. Analisis perlu
menentukan jumlah K sebagai input algoritma.
Contoh Aplikasi K-means
Contoh penggunaan K-means
clustering antara lain:
- Segmentasi pasar (market segmentation)
- Segmentasi citra
- Kompresi gambar
- Klasifikasi citra penginderaan jauh
Metode Algoritma K-Means Clustering (step by step)
Algoritma K-means
clustering dilakukang dengan proses sebagai berikut:
Langkah 1: tentukan
jumlah cluster (k). Dalam contoh ini, kita tetapkan bahwa K =3
Langkah 2: pilih titik
acak sebanyak k. Titik ini merupakan titik seed dan akan menjadi titik
centroid proses pertama. Titik ini tidak harus titik data kita
Langkah 3: label semua data
berdasarkan titik centroid terdekat. Semua data diberikan label mengikuti
titik centroid dari setiap klaster. Perhitungan jarak ini bisa menggunakan
algoritma jarak tertentu, secara default dilakukan dengan Euclidean Distance
Langkah 4: tentukan titik
centroid baru berdasarkan cluster yang terbentuk. Titik centroid
selanjutnya “berpindah” ke lokasi centroid setiap cluster yang telah terbentuk.
Langkah 5: label ulang
data berdasarkan jarak terdekat terhadap centroid baru. Langkah ini
merupakan langkah yang sama dengan langkah ketiga. Perhatikan titik data yang
diberikan tanda panah, berubah dari cluster merah ke cluster biru.
Langkah 6: ulangi langkah
4 dan langkah 5 sampai tidak ada pergerakan lagi. Secara berulang, algoritma
akan mencari lokasi centroid baru dan melabel data berdasarkan centroid
tersebut sampai mendapat hasil final, yaitu tidak ada lagi perpindahan centroid
di setiap cluster.
Dalam k-means clustering, jarak ini dapat diukur menggunakan jarak:
- Euclidean distance
- Manhattan distance
- A squared euclidean distance measure
- Cosine distance measure
- Kelebihan dan keunggulan
Kelebihan-Kelebihan K-Means
- Algoritma yang sederhana dan mudah dipahami
- Cepat pemrosesannya
- Tersedia di berbagai tools atau software
- Mudah dalam penerapannya
- Selalu memberikan hasil, apapun datanya.
- Kelemahan dan kekurangan
Kekurangan-kekurangan K-Means
- Hasilnya sensitif terhadap jumlah cluster (K). Solusinya, dapat dengan menggunakan Elbow Method, dengan menghitung dan membandingkan nilai WCSS. Lihat penjelasannya di bawah.
- Sensitif terhadap inisialisasi “seed”. Untuk mengatasi ini, kita bisa menerapkan algoritma K-means ++
- Sensitif terhadap pencilan atau outlier. Solusi untu masalah ini adalah dengan menghapus outlier dengan hati-hati dan berbagai pertimbangan.
- Sensitif terhadap data dengan variabel yang memiliki skala berbeda. Maka, sebaiknya kita selalu melakukan scale atau standardisasi data sebelum melakukan k-means clustering. Satu kondisi di mana sebaikany kita tidak melakukan standardisasi data adalah ketika satu variabel memiliki bobot atau nilai penting yang lebih tinggi daripada yang lain.
- Mengasumsikan setiap klaster berbentuk menyerupai lingkaran (spherical) dan kesulitan jika bentuk cluster yang memiliki bentuk berbeda.
Komentar
Posting Komentar