Membedakan supervised, unsupervised, dan reinforcement learning.
Memahami partitional dan hierarchical clustering beserta trade-off-nya.
Melihat pengaruh linkage dan density melalui DBSCAN.
Secara umum, machine learning terdiri dari tiga kategori utama. Perbedaannya terletak pada jenis petunjuk yang tersedia saat model belajar.
- Supervised learning. Data training sudah memiliki label.
- Unsupervised learning. Training data tidak memiliki label.
- Reinforcement learning. Agent belajar di dalam environment melalui trial and error berdasarkan feedback.
Di artikel ini, kita fokus pada pilihan yang berada di tengah. Namanya unsupervised learning.
Secara khusus, ada dua masalah utama yang dapat diselesaikan oleh algoritma unsupervised learning.
- Pertama adalah clustering. Artinya mengelompokkan data yang belum punya kelompok.
- Kedua adalah dimensionality reduction. Artinya mengurangi jumlah fitur atau dimensi pada data.
Kita akan fokus pada clustering. Alasannya sederhana. Clustering adalah bentuk unsupervised learning yang paling sering dipakai dan paling populer.
Clustering berurusan dengan proses menemukan struktur di dalam kumpulan data tanpa label.
- Jika data tersebut memiliki label, maka masalahnya berubah menjadi supervised learning.
Definisi sederhananya seperti ini. Clustering adalah proses mengatur objek ke dalam kelompok yang anggotanya memiliki kemiripan tertentu.
Karena itu, cluster dapat dipahami sebagai kumpulan objek atau titik data. Anggota di dalam satu cluster lebih mirip satu sama lain dibandingkan dengan titik di cluster lain.
Beberapa penerapan clustering adalah market segmentation, anomaly detection, dan image segmentation. Market segmentation membagi calon pelanggan ke dalam kelompok tertentu. Anomaly detection membantu menemukan titik data yang tidak normal. Image segmentation mengelompokkan piksel atau region berdasarkan kemiripannya.
Setiap algoritma clustering punya cara berbeda untuk menyusun data ke dalam cluster. Mari kita lihat beberapa contohnya.
Partitional Clustering
Partitional clustering membagi objek data ke dalam kelompok yang tidak saling tumpang tindih. Satu objek tidak dapat menjadi anggota lebih dari satu cluster. Setiap cluster juga harus memiliki setidaknya satu objek.

Algoritma seperti ini mengharuskan pengguna menentukan hyperparameter yang mewakili jumlah cluster. Biasanya jumlah ini ditulis dengan variabel k.
Banyak algoritma partitional clustering bekerja secara iteratif. Tujuannya adalah memasukkan titik data ke dalam k cluster. Dua contoh yang umum adalah K-Means dan K-Medoids.
Partitional clustering memiliki kelebihan dan keterbatasan.
- Kelebihan. Algoritma ini bekerja baik ketika cluster berbentuk relatif bulat.
- Kompleksitasnya juga cukup mudah ditingkatkan untuk dataset yang lebih besar.
- Keterbatasan. Algoritma ini kurang cocok untuk cluster dengan bentuk kompleks dan ukuran yang berbeda-beda.
Hierarchical Clustering
Hierarchical clustering memakai struktur hierarki untuk mengelompokkan data. Dengan cara ini, sebuah cluster dapat memiliki subcluster dan hubungan antarkelompok dapat dibaca secara bertingkat.
Untuk melihat perbedaan antara partitional dan hierarchical clustering, perhatikan gambar berikut.

Hierarchical clustering menghasilkan dendrogram. Diagram ini menunjukkan urutan penggabungan atau pemisahan cluster sehingga hubungan antar data lebih mudah dibaca.

Ada dua jenis utama dalam hierarchical clustering.
Agglomerative clustering adalah pendekatan bottom-up. Algoritma ini menggabungkan dua titik atau cluster yang paling dekat. Prosesnya berjalan sampai semua titik tergabung ke dalam satu cluster.
Divisive clustering adalah pendekatan top-down. Algoritma dimulai dari seluruh titik sebagai satu cluster. Setelah itu, kelompok yang paling tidak mirip dipisahkan pada setiap langkah sampai tersisa titik tunggal.
Berbeda dari banyak teknik partitional clustering, hierarchical clustering bersifat deterministik. Artinya, hasil cluster tidak berubah ketika algoritma dijalankan kembali pada input yang sama.
Linkage dalam Clustering
Khususnya dalam hierarchical clustering, kita perlu cara untuk menentukan bagaimana data dimasukkan ke cluster masing-masing.
- Kita membutuhkan ukuran jarak antar cluster. Dengan kata lain, kita perlu mendefinisikan apa yang dimaksud dengan "dekat".
- Ukuran ini disebut linkage. Memilih jenis linkage yang tepat dapat memperbaiki kualitas kelompok yang dihasilkan.

Single linkage atau minimum linkage memakai jarak minimum antara satu titik di cluster pertama dan satu titik di cluster kedua.
- Cenderung menghasilkan cluster panjang seperti rantai.
- Sensitif terhadap noise dan outlier.
Complete linkage atau maximum linkage memakai jarak maksimum antara pasangan titik dari dua cluster.
- Cenderung menghasilkan cluster yang lebih rapat dan relatif bulat.
Average linkage memakai rata-rata jarak dari semua pasangan titik yang berasal dari dua cluster.
- Menghasilkan cluster dengan ukuran yang lebih seimbang dibandingkan single linkage dan complete linkage.
Centroid linkage memakai jarak antar-centroid. Centroid adalah titik rata-rata dari sebuah cluster.
- Dapat menghasilkan cluster dengan bentuk yang tidak beraturan.
- Sensitif terhadap nilai rata-rata dan dapat dipengaruhi oleh outlier.
Hierarchical clustering juga punya kelebihan dan kekurangan.
- Kelebihan. Algoritma ini menunjukkan detail hubungan antar titik data dengan lebih baik.
- Dendrogram yang dihasilkan juga relatif mudah diinterpretasikan.
- Keterbatasan. Biaya komputasinya dapat menjadi mahal pada dataset besar.
- Hasilnya sensitif terhadap noise dan outlier.
Density-Based Clustering
Density-based clustering menentukan cluster berdasarkan kepadatan titik data dalam suatu area.
Cluster terbentuk pada area dengan kepadatan titik yang tinggi. Antarkelompok dipisahkan oleh area dengan kepadatan rendah.
Berbeda dari partitional clustering, pendekatan ini tidak mengharuskan pengguna menentukan jumlah cluster.
Sebagai gantinya, kita mengatur parameter jarak yang bekerja sebagai threshold.
Threshold ini menentukan seberapa dekat titik harus berada agar dianggap sebagai anggota cluster.
Contoh algoritma density-based clustering adalah DBSCAN dan OPTICS. Visual berikut menunjukkan bagaimana DBSCAN dapat mengenali cluster dengan bentuk yang tidak beraturan.

- Kelebihan. Algoritma ini unggul untuk mengenali cluster dengan bentuk non-spherical.
- DBSCAN juga lebih tahan terhadap outlier.
- Keterbatasan. Pendekatan ini kurang cocok untuk clustering dalam ruang berdimensi tinggi.
- Algoritma dapat kesulitan mengenali cluster dengan tingkat kepadatan yang berbeda-beda.

Masih ada pendekatan clustering lain. Namun, tiga kelompok di atas sudah memberi dasar yang cukup untuk memilih metode berdasarkan bentuk cluster, ukuran dataset, noise, dan kebutuhan interpretasi.
Ringkasan praktis
- Clustering menemukan kelompok pada data tanpa membutuhkan label target.
- K-Means cocok untuk kelompok yang relatif bulat, hierarchical clustering berguna untuk membaca hierarki, sedangkan DBSCAN mampu mengenali bentuk tidak beraturan.
- Pilihan metode sebaiknya mengikuti struktur data, bukan sekadar algoritma yang paling populer.
Pertanyaan yang sering muncul
Apakah jumlah cluster selalu harus ditentukan?
Tidak. K-Means membutuhkan nilai k, tetapi DBSCAN membentuk cluster berdasarkan kepadatan dan parameter jarak.
Bagaimana mengevaluasi clustering tanpa label?
Kita dapat memakai metrik internal seperti silhouette score, membaca pemisahan visual, dan memeriksa apakah kelompok yang terbentuk masuk akal untuk konteks masalah.
Unsupervised Machine Learning: Clustering
Artikel ini diadaptasi oleh Tim Riset machinelearning.co.id dari AI But Simple Issue #13 karya Edwin Dong.
Buka sumber asli →