Akurasi Hasil Pemodelan K-Means

11 03 2008

Ada yang menanyakan tentang bagaimana mengetahui apakah model clustering yang didapatkan dengan k-means sudah cukup akurat atau tidak?

Memang sedikit susah kalau kita ingin menilai tingkat akurasi pemodelan clustering yang kita dapatkan kalau kita menggunakan metode k-means. Ada suatu pendekatan yang sering dipasangkan dengan k-means dalam pemodelannya yaitu Partition Entroy (PE). Tetapi saya selalu mendapat hasil yang mengecewakan pada saat menggunakan metode ini.

Sebagai alternatif, mungkin anda bisa menggunakan suatu trik yang menurut saya lebih aplikatif dan rasional berikut ini:

  • Pertama, pilah data yang dimiliki menjadi dua set data yang mungkin ukuran tertentu, mungkin sekitar 80%:20%. Yang 80% dipakai sebagai training data, data yang digunakan untuk memodel. Sedangkan yang 20% digunakan sebagai validation data. Gunakan metode random dalam memilah data tersebut.
  • Selanjutnya lakukan pemodelan menggunakan k-means terhadap training data. Catat persentase data yang menjadi bagian masing-masing cluster dan cluster center dari masing-masing cluster.
  • Kemudian, model validation data dengan k-means. Bandingkan persentase data yang menjadi bagian dari masing-masing cluster yang terbentuk dengan persentase yang didapat dengan memodel training data. Bandingkan pula cluster center dari kelompok yang dihasilkan dalam pemodelan validation data dan pemodelan training data. Metode membandingkan bisa saja dengan melihat jarak cluster center dan perbedaan persentase antara kedua model yang didapat. Tentu saja cluster mana yang cocok dengan cluster mana harus dicari suatu trik sehingga jarak terdekat ‘dan’ perbedaan persentase terkecillah yang menjadi hasil perbandingan.
  • Model yang mempunyai perbedaan antara training data dan validation data terkecil yang dipilih sebagai model yang paling tepat. Contohnya, apabila model k-means dengan dua kelompok lebih bagus daripada dengan tiga kelompok, maka model dengan dua kelompok itulah yang paling akurat.

Untuk menambah akurasi, proses tahap 1 sampai 3 mungkin bisa dilakukan berulang beberapa kali (misalnya 10 kali), dan perbedaan antara hasil pemodelan training data dan test data pada tahap 4 dicari dengan nilai rata-rata perbedaan setiap pemodelan yang dilakukan.

Mudah-mudahan membantu.