Lab Klasterisasi K-Means
Simulator klasterisasi 2D interaktif dengan region Voronoi, update centroid, dan pelacakan inersia.
K-Means membagi data menjadi K klaster dengan meminimalkan jarak kuadrat dalam klaster (inersia).
$$ J = \sum_{i=1}^{N} \min_{1 \leq j \leq K} \left\lVert x_i - \mu_j \right\rVert^2 $$
Setiap sampel ditugaskan ke centroid terdekat, lalu centroid dihitung ulang sebagai rata-rata sampel yang ditugaskan.
Algoritma bergantian di antara dua langkah deterministik:
$$ c_i \leftarrow \arg\min_j \lVert x_i - \mu_j \rVert^2 $$
$$ \mu_j \leftarrow \frac{1}{|C_j|}\sum_{x_i \in C_j} x_i $$
Inersia menurun secara monoton hingga konvergen ke optimum lokal.
Inisialisasi acak itu sederhana, tetapi bisa mulai dari seed yang buruk.
k-means++ menyebarkan centroid awal dan sering memberi konvergensi lebih cepat serta inersia akhir lebih rendah.
Di produksi, gunakan beberapa run dengan seed berbeda untuk mengurangi sensitivitas terhadap minimum lokal.
- Muat titik demo lalu bandingkan inisialisasi Acak vs k-means++.
- Coba berbagai nilai K dan periksa batas region serta jumlah klaster.
- Gunakan Langkah untuk melihat satu siklus assign/update.
- Jalankan hingga konvergen dan bandingkan inersia akhir antar setelan.
Klik di mana saja pada kanvas untuk menambah titik. Tekan lama di perangkat sentuh atau klik kanan untuk menghapus titik terdekat.