🙉Konsep Dasar
Konsep Klasterisasi dalam Machine Learning
Klasterisasi adalah teknik dalam unsupervised learning yang digunakan untuk mengelompokkan data berdasarkan kemiripan (similarity) antar data. Berbeda dengan teknik supervised learning yang memerlukan label atau kategori yang sudah ditentukan sebelumnya, klasterisasi bekerja tanpa label, di mana tujuan utamanya adalah mengidentifikasi struktur atau pola tersembunyi dalam data yang tidak terlabel.
Sebagai contoh, saat menikmati pendakian di pegunungan, tiba-tiba Anda menemukan sebuah tanaman yang belum pernah Anda lihat sebelumnya. Anda menoleh ke sekitar dan melihat beberapa tanaman lain yang mirip. Tanaman-tanaman tersebut tidak benar-benar identik, tetapi cukup serupa sehingga Anda dapat menyimpulkan bahwa kemungkinan besar mereka berasal dari spesies yang sama (atau setidaknya dari genus yang sama).
Untuk dapat menentukan secara pasti Anda mungkin membutuhkan seorang ahli botani untuk memastikan spesiesnya, tetapi Anda tentu tidak memerlukan seorang pakar untuk sekadar mengenali kelompok objek yang tampak mirip. Proses inilah yang disebut klasterisasi (clustering): sebuah tugas untuk mengidentifikasi objek-objek yang mirip, lalu mengelompokkannya ke dalam satu klaster atau kelompok.
Sama halnya dengan klasifikasi, setiap data (instance) juga akan ditempatkan ke dalam sebuah kelompok. Namun, berbeda dengan klasifikasi, klasterisasi adalah sebuah tugas tanpa supervisi (unsupervised learning).

Bayangkan pada Gambar diatas:
Bagian kiri menampilkan dataset iris, di mana setiap spesies (kelas) direpresentasikan dengan penanda berbeda. Itu adalah dataset berlabel, sehingga algoritma klasifikasi seperti Logistic Regression, SVM, atau Random Forest cocok digunakan.
Bagian kanan menampilkan dataset yang sama, tetapi tanpa label. Karena tidak ada label, algoritma klasifikasi tidak bisa digunakan lagi. Inilah saat dimana algoritma klasterisasi berperan: banyak di antaranya yang dengan mudah dapat mengenali klaster di bagian kiri bawah.
Dengan indera mata kita, klaster tersebut memang mudah terlihat, tetapi tidak begitu jelas bahwa klaster di kanan atas sebenarnya terdiri dari dua sub-klaster berbeda. Namun, dataset ini memiliki dua fitur tambahan (panjang dan lebar sepal) yang tidak ditampilkan di sini, dan algoritma klasterisasi mampu memanfaatkan seluruh fitur tersebut. Dengan demikian, algoritma dapat mengenali tiga klaster dengan cukup baik. Misalnya, menggunakan Gaussian Mixture Model, hanya 5 data dari 150 yang salah ditempatkan.
Pada klasterisasi, data dikelompokkan ke dalam beberapa grup atau klaster berdasarkan kesamaan antar data. Setiap klaster berisi data yang memiliki karakteristik serupa, sementara data dari klaster yang berbeda memiliki perbedaan yang lebih besar. Sebagai contoh lain, dalam mengelompokkan pelanggan berdasarkan preferensi mereka, pelanggan yang memiliki preferensi yang sama akan dimasukkan ke dalam klaster yang sama, sementara pelanggan dengan preferensi yang berbeda akan berada di klaster yang berbeda. Contoh lain adalah dalam mengelompokan email berdasarkan kategori Spam atau bukan Spam

Gambar tersebut mengilustrasikan mekanisme pembelajaran mesin (machine learning) dalam sistem penyaring email spam, yang berfungsi sebagai sistem otomatis untuk mengklasifikasikan email masuk berdasarkan kemiripan dengan pola spam yang telah dipelajari sebelumnya. Sistem ini dapat dianalogikan sebagai seorang petugas sortir yang terlatih, namun bekerja secara otomatis dan konsisten.
1. Email Baru
Kotak masuk pengguna menerima berbagai email, termasuk pesan penting dari rekan kerja, keluarga, atau layanan resmi, serta sejumlah email spam yang tidak diinginkan. Problem bagi pengguna adalah bagaimana memisahkan informasi yang relevan dari pesan yang berpotensi mengganggu.
2. Fungsi Pengklasifikasi (Classifier)
Sebelum email-email tersebut mencapai kotak masuk utama, mereka terlebih dahulu melewati modul classifier, inti dari sistem machine learning. Classifier ini tidak bekerja berdasarkan aturan statis yang ditentukan secara manual, melainkan dilatih menggunakan dataset besar berlabel, yang terdiri dari contoh-contoh email yang telah dikategorikan sebagai spam maupun non-spam. Dari dataset tersebut, classifier mempelajari pola-pola khas email spam, termasuk penggunaan kata-kata tertentu, struktur kalimat, tautan mencurigakan, dan atribut lain yang membedakan spam dari email sah.
3. Proses Analisis dan Prediksi
Saat email baru masuk, classifier secara otomatis menganalisis fitur-fitur yang relevan dan membandingkannya dengan pola yang telah dipelajari sebelumnya. Berdasarkan kemiripan ini, sistem menghasilkan prediksi mengenai status email: apakah termasuk spam atau non-spam. Proses ini berlangsung secara cepat, memungkinkan penyaringan email secara real-time.
4. Penempatan dan Pengelolaan Email
Setelah prediksi dibuat, email akan ditempatkan pada folder yang sesuai. Email yang diprediksi aman akan diteruskan ke Inbox, sedangkan email yang dicurigai sebagai spam akan diarahkan ke Spam Folder. Mekanisme ini menjaga kotak masuk tetap terorganisir, mengurangi gangguan dari pesan yang tidak relevan, dan meningkatkan efisiensi pengguna dalam mengakses informasi penting.
Penerapan Klasterisasi
Klasterisasi digunakan dalam berbagai implementasi, antara lain:
Segmentasi Pelanggan (Customer Segmentation) Anda dapat mengelompokkan pelanggan berdasarkan riwayat pembelian dan aktivitas mereka di situs web. Ini bermanfaat untuk memahami siapa pelanggan Anda dan apa kebutuhan mereka, sehingga produk maupun kampanye pemasaran dapat disesuaikan untuk tiap segmen. Contoh: segmentasi pelanggan dapat digunakan pada sistem rekomendasi untuk menyarankan konten yang juga dinikmati oleh pengguna lain dalam klaster yang sama.
Analisis Data (Data Analysis) Saat menganalisis dataset baru, akan sangat membantu jika menjalankan algoritma klasterisasi terlebih dahulu, kemudian menganalisis tiap klaster secara terpisah.
Teknik Reduksi Dimensi (Dimensionality Reduction) Setelah dataset dikelompokkan, biasanya dimungkinkan untuk mengukur affinity (tingkat kesesuaian) tiap data terhadap setiap klaster.
Vektor fitur asli xx dari tiap data dapat diganti dengan vektor affinity terhadap setiap klaster.
Jika terdapat kk klaster, maka vektor ini berdimensi kk.
Biasanya, dimensi ini jauh lebih kecil dibandingkan vektor fitur asli, tetapi tetap mempertahankan cukup informasi untuk pemrosesan lebih lanjut.
Deteksi Anomali (Anomaly Detection / Outlier Detection) Data yang memiliki affinity rendah terhadap semua klaster kemungkinan adalah sebuah anomali. Contoh: jika pengguna situs web dikelompokkan berdasarkan perilakunya, maka pengguna dengan perilaku tidak biasa (misalnya jumlah permintaan per detik yang terlalu tinggi) dapat dideteksi sebagai anomali. Deteksi anomali sangat bermanfaat untuk menemukan cacat dalam proses manufaktur, atau dalam deteksi penipuan (fraud detection).
Pembelajaran Semi-Supervised (Semi-Supervised Learning) Jika hanya ada sedikit data berlabel, Anda dapat menjalankan klasterisasi dan menyebarkan label tersebut ke semua data dalam klaster yang sama. Teknik ini dapat secara signifikan meningkatkan jumlah data berlabel yang dapat digunakan dalam pelatihan model.
Untuk Mesin Pencari (Search Engines) Beberapa mesin pencari memungkinkan pengguna untuk mencari gambar yang mirip dengan gambar referensi.
Untuk membangun sistem seperti ini, langkah pertama adalah menerapkan algoritma klasterisasi pada seluruh gambar dalam basis data.
Gambar-gambar yang mirip akan dikelompokkan ke dalam klaster yang sama.
Ketika seorang pengguna mengunggah gambar referensi, sistem hanya perlu mencari klaster tempat gambar tersebut berada. Selanjutnya, sistem dapat langsung menampilkan semua gambar lain dari klaster tersebut.
Untuk Segmentasi Citra (Image Segmentation) Dengan mengelompokkan piksel berdasarkan warnanya, lalu mengganti warna tiap piksel dengan rata-rata warna dari klasternya, jumlah warna yang berbeda dalam citra dapat dikurangi secara signifikan.
Segmentasi citra ini sering digunakan dalam sistem deteksi dan pelacakan objek, karena mempermudah proses mendeteksi kontur atau batas dari tiap objek dalam gambar.
Tujuan Klasterisasi
Klasterisasi memiliki berbagai tujuan tergantung pada konteks dan kebutuhan penggunaannya. Beberapa tujuan utama klasterisasi adalah:
Menemukan pola tersembunyi dalam data:
Klasterisasi membantu untuk mengidentifikasi pola atau struktur yang mungkin tidak terlihat secara langsung pada data yang besar dan kompleks. Misalnya, dalam analisis data pelanggan, kita dapat menemukan segmen-segmen pelanggan yang memiliki pola perilaku serupa.
Segmentasi pelanggan:
Salah satu aplikasi klasterisasi yang paling umum adalah dalam segmentasi pasar. Dengan mengelompokkan pelanggan berdasarkan preferensi, usia, lokasi, atau perilaku belanja mereka, perusahaan dapat menyesuaikan strategi pemasaran untuk masing-masing segmen.
Deteksi anomali:
Dalam konteks deteksi penipuan atau anomali, klasterisasi dapat digunakan untuk mendeteksi data yang berbeda secara signifikan dari kelompok lainnya. Misalnya, pada transaksi kartu kredit, transaksi yang jauh berbeda dengan pola transaksi yang biasa dilakukan bisa diidentifikasi sebagai anomali.
Pengelompokan dokumen:
Klasterisasi dapat digunakan untuk mengelompokkan dokumen atau teks ke dalam kategori-kategori berdasarkan kesamaan kontennya, misalnya untuk mempermudah pencarian atau penyarikan informasi.
Perbedaan dengan Klasifikasi
Klasifikasi adalah teknik dalam supervised learning di mana model belajar dari data yang sudah memiliki label atau kategori untuk memprediksi label data yang baru. Dalam klasifikasi, data memiliki target yang jelas (label).
Klasterisasi, di sisi lain, bekerja tanpa adanya label, sehingga model harus menemukan struktur atau pola dalam data berdasarkan kemiripan antar data tanpa ada arahan eksplisit. Oleh karena itu, klasterisasi adalah metode unsupervised learning.
Konsep Dasar Klasterisasi
Jarak atau Kemiripan:
Salah satu aspek utama dalam klasterisasi adalah bagaimana cara mengukur kemiripan antar data. Metode ini mengandalkan berbagai ukuran jarak untuk memutuskan seberapa dekat atau mirip dua titik data. Beberapa ukuran jarak yang umum digunakan adalah:
Jumlah Klaster:
Pada beberapa algoritma klasterisasi, seperti KMeans, kita harus menentukan jumlah klaster yang diinginkan sebelumnya. Ini berarti kita harus tahu berapa banyak klaster yang akan terbentuk dari data.
Di sisi lain, DBScan adalah metode klasterisasi berbasis kerapatan yang tidak memerlukan kita untuk menentukan jumlah klaster sebelumnya. DBScan mengelompokkan data berdasarkan kerapatan titik data dan memungkinkan deteksi noise atau outlier.
Dalam bagian selanjutnya, kita akan mempelajari dua algoritma klasterisasi yang populer, yaitu:
K-Means Algoritma berbasis centroid yang banyak digunakan karena kesederhanaan dan kecepatannya.
DBSCAN (Density-Based Spatial Clustering of Applications with Noise) Algoritma berbasis kepadatan yang dapat menemukan klaster dengan bentuk tidak beraturan serta mengabaikan noise atau data pencilan.
Last updated