Mengelompokkan data tanpa label: tiga algoritma inti untuk menemukan struktur tersembunyi.
6RPS minggu 6 · 2×50 menit
Bagian 1 dari 3
K-Means Clustering
Algoritma clustering paling populer: cepat, sederhana, dan jadi pijakan untuk memahami teknik lain.
Dari Taksonomi ke Praktik: Mengapa Unsupervised?
Pertemuan lalu Anda belajar tiga jenis pembelajaran mesin. Hari ini kita mendalami cabang unsupervised learning lewat teknik clustering (pengelompokan).
Recap Singkat
Supervised: ada label jawaban (mis. "churn"/"tidak churn").
Unsupervised: TIDAK ada label — algoritma mencari pola sendiri.
Semi-supervised: sebagian data berlabel, sebagian tidak.
Membangun & membaca dendrogram Hierarchical Clustering.
Memahami logika Expectation Maximization (EM).
Memilih teknik yang tepat untuk kasus bisnis digital.
Apa Itu Clustering?
Clustering mengelompokkan objek data sehingga objek dalam kelompok yang sama lebih mirip satu sama lain dibanding objek di kelompok lain — tanpa label yang diberikan sebelumnya.
Segmentasi Pelanggan
Tokopedia/Shopee mengelompokkan pengguna jadi "hemat", "impulsif", "loyal" berdasarkan histori transaksi.
Deteksi Anomali
BBCA/bank mengelompokkan transaksi normal vs. transaksi yang menyimpang jauh (potensi fraud).
Kompresi & Rekomendasi
GoTo mengelompokkan produk mirip untuk rekomendasi "produk serupa" di halaman toko.
Data nilai transaksi 4 toko UMKM (juta rupiah/bulan): 2, 4, 10, 12. Target K=2.
Langkah
Perhitungan
Nilai
Inisialisasi centroid
Pilih 2 titik acak dari data sebagai centroid awal
C1 = 2 · C2 = 12
Assign titik 4
|4-2| = 2 vs |4-12| = 8 → lebih dekat C1
4 → Klaster 1
Assign titik 10
|10-2| = 8 vs |10-12| = 2 → lebih dekat C2
10 → Klaster 2
Update centroid 1
rata-rata {2, 4} = (2+4) ÷ 2
C1 baru = 3
Update centroid 2
rata-rata {10, 12} = (10+12) ÷ 2
C2 baru = 11
Cek iterasi ke-2
Assignment tiap titik ke C1=3/C2=11 tidak berubah
Konvergen
Hasil Akhir
C1=3 · C2=11
Segmen kecil (2,4 juta) vs. Segmen besar (10,12 juta)
Coba Sendiri: Jalankan Iterasi K-Means
Geser posisi titik data atau centroid awal, jalankan iterasi assign-update langkah demi langkah, amati kapan algoritma konvergen.
Memilih Jumlah Klaster: Metode Elbow
K terlalu kecil → klaster terlalu kasar. K terlalu besar → overfitting (tiap titik jadi klasternya sendiri). Solusinya: plot WCSS (jumlah kuadrat jarak dalam klaster) terhadap K, cari titik "siku".
Titik "siku" (elbow) = penurunan WCSS mulai melandai. Di titik itu, menambah K lagi hanya memberi perbaikan kecil.
Coba Sendiri: Uji Metode Elbow untuk Memilih K
Ubah jumlah klaster K, amati bagaimana kurva WCSS berubah dan di titik K mana bentuk "siku" itu muncul.
Kelemahan K-Means yang Wajib Diwaspadai
Sensitif Inisialisasi
Centroid awal acak bisa membuat hasil klaster berbeda tiap dijalankan. Solusi: jalankan berkali-kali (K-means++).
Sensitif Outlier
Satu transaksi ekstrem (mis. Rp 500 juta di antara transaksi Rp 1–5 juta) menarik centroid menjauh dari mayoritas data.
Asumsi Bentuk Bulat
K-means asumsikan klaster berbentuk bulat (spherical) berukuran mirip — gagal untuk klaster memanjang/tak beraturan.
K juga harus ditentukan MANUAL di awal — algoritma tidak bisa menentukan jumlah klaster optimalnya sendiri.
Bagian 2 dari 3
Hierarchical Clustering
Membangun struktur pohon klaster tanpa perlu menentukan K di awal.
Hierarchical Clustering: Pendekatan Agglomerative
Dimulai dari setiap titik sebagai klaster sendiri, lalu digabung bertahap (bottom-up) berdasarkan kedekatan, sampai semua jadi satu klaster besar.
Keunggulan: tidak perlu menentukan K di awal — potong dendrogram di tinggi berapa pun sesuai kebutuhan bisnis.
Coba Sendiri: Bangun Dendrogram Sendiri
Gabungkan titik data satu per satu secara bottom-up, amati bagaimana dendrogram terbentuk dan di ketinggian mana Anda akan memotongnya.
Linkage: Cara Mengukur Jarak Antar-Klaster
Metode
Definisi Jarak
Karakteristik
Single Linkage
Jarak MINIMUM antar titik dua klaster
Bisa hasilkan klaster memanjang ("chaining")
Complete Linkage
Jarak MAKSIMUM antar titik dua klaster
Klaster lebih kompak & seimbang
Average Linkage
Rata-rata jarak SEMUA pasangan titik
Kompromi antara single & complete
Ward's Method
Minimalkan kenaikan variansi dalam klaster
Paling umum dipakai; hasil rapi & seimbang
Pemilihan linkage memengaruhi bentuk dendrogram — single linkage rawan "chaining effect" (klaster memanjang tak wajar).
Hitung dari Nol #2: Merge Hierarchical Clustering
4 toko dengan nilai transaksi (juta rupiah): A=2, B=4, C=10, D=13. Linkage = single (jarak minimum).
Potong di tinggi <3 → 4 klaster; potong di tinggi 4–5 → 2 klaster {AB},{CD}
Bagian 3 dari 3
Expectation Maximization
Clustering "lunak" (soft clustering) berbasis probabilitas — satu titik bisa punya keanggotaan ganda.
Expectation Maximization & Gaussian Mixture Model
EM mengasumsikan data berasal dari campuran beberapa distribusi Gaussian (normal) yang tumpang tindih — disebut Gaussian Mixture Model (GMM).
Setiap klaster punya distribusi normal sendiri (rata-rata μ & sebaran σ). Titik di zona tumpang tindih punya probabilitas ke DUA klaster sekaligus.
Cocok untuk data yang bentuknya elips/lonjong — tidak seperti K-means yang asumsikan bentuk bulat.
Coba Sendiri: Eksplorasi Soft Clustering GMM
Ubah parameter rata-rata dan sebaran tiap distribusi Gaussian, amati bagaimana probabilitas keanggotaan titik di zona tumpang tindih berubah.
Dua Langkah Berulang EM: E-Step dan M-Step
E-Step (Expectation)
Dengan parameter distribusi (μ, σ) yang ADA sekarang, hitung probabilitas tiap titik menjadi anggota tiap klaster. Contoh: pelanggan X punya peluang 70% klaster A, 30% klaster B.
M-Step (Maximization)
Gunakan probabilitas dari E-step untuk MEMPERBARUI parameter (μ, σ) tiap klaster secara berbobot, agar distribusi makin cocok dengan data.
Kedua langkah diulang bergantian — mirip K-means (assign ↔ update), tapi versi "lunak" berbasis probabilitas, bukan keputusan tegas.
Perbandingan K-Means, Hierarchical, dan EM
Aspek
K-Means
Hierarchical
EM (GMM)
Tipe keanggotaan
Tegas (hard)
Tegas (hard)
Probabilistik (soft)
Tentukan K di awal?
Ya, wajib
Tidak, bisa dipotong belakangan
Ya, wajib
Bentuk klaster
Bulat (spherical)
Fleksibel
Elips (Gaussian)
Kompleksitas komputasi
Rendah — cepat
Tinggi untuk data besar
Sedang–tinggi
Sensitif outlier?
Sangat sensitif
Sensitif (tergantung linkage)
Lebih tahan (probabilistik)
Studi Kasus: Segmentasi Pelanggan E-Commerce
Sebuah UMKM fesyen di Shopee ingin mensegmentasi 5.000 pelanggannya berdasarkan frekuensi belanja dan nilai transaksi rata-rata.
Langkah Analisis
Eksplorasi awal: jalankan Hierarchical Clustering pada sampel kecil untuk melihat struktur (dendrogram).
Tentukan K dari hasil dendrogram + elbow method.
Jalankan K-means pada 5.000 data penuh (lebih cepat untuk data besar).
Jika batas segmen tidak tegas (banyak pelanggan "di tengah"), pertimbangkan EM/GMM.
Hasil Segmentasi
3 Segmen
"Hemat & Jarang" (40%), "Menengah & Rutin" (45%), "Royal & Sering" (15%) — jadi dasar strategi promo tertarget.
Latihan Kelas: Praktik Manual
Soal: Sebuah gerai memiliki 5 transaksi harian (dalam ratus ribu rupiah): 5, 6, 20, 22, 23. Anda diminta melakukan K-means dengan K=2, centroid awal C1=5 dan C2=23.
Instruksi
Hitung jarak tiap titik ke C1 dan C2, tentukan assignment.
Update kedua centroid dengan rata-rata anggotanya.
Ulangi sampai konvergen — catat berapa iterasi dibutuhkan.
Diskusikan dengan teman sebangku, bandingkan hasil.
Pertanyaan Diskusi
Apakah hasil akhirnya masuk akal secara bisnis?
Bagaimana jika linkage Hierarchical dipakai — hasilnya sama atau beda?
Kapan sebaiknya memakai EM dibanding K-means untuk kasus ini?
Rangkuman: Peta Cepat Unsupervised Learning
Teknik
Inti Cara Kerja
Kapan Dipakai
K-Means
Assign ↔ update centroid sampai konvergen
Data besar, klaster relatif bulat, butuh cepat
Hierarchical
Gabung bertahap (agglomerative) bentuk dendrogram
Data kecil–menengah, K belum jelas, butuh eksplorasi struktur