Penerapan Algoritma K-means Clustering (PHP, MySQL, JpGraph)

K-means merupakan salah satu algoritma clustering. Tujuan algoritma ini yaitu untuk membagi data menjadi beberapa kelompok. Algoritma ini menerima masukan berupa data tanpa label kelas. Hal ini berbeda dengan supervised learning yang menerima masukan berupa vektor (­x­1 , y1) , (­x­2 , y2) , …, (­x­i , yi), di mana xi merupakan data dari suatu data pelatihan dan yi merupakan label kelas untuk xi.

Pada algoritma pembelajaran ini, komputer mengelompokkan sendiri data-data yang menjadi masukannya tanpa mengetahui terlebih dulu target kelasnya[1]. Pembelajaran ini termasuk dalam unsupervised learning. Masukan yang diterima adalah data atau objek dan k buah kelompok (cluster) yang diinginkan. Algoritma ini akan mengelompokkan data atau objek ke dalam k buah kelompok tersebut. Pada setiap cluster terdapat titik pusat (centroid) yang merepresentasikan cluster tersebut. (Wikipedia)

Seperti yang saya kutip dari mbah wikipedia diatas, K-Means sering digunakan untuk data mining. Algoritma ini bersifat asosiatif, yaitu mengelompokkan data yang hampir mendekati dengan titik pusat atau centroid yang dijadikan sebagai jarak. Kata lainnya algoritma K-Means melakukan pengelompokkan atau clustering berbasiskan jarak yang membagi data ke dalam sejumlah kelompok atau cluster. Selain itu, algoritma ini hanya dapat bekerja pada data yang berupa numerik/angka. Saya tidak akan menjelaskan langkah-langkah algoritmanya, karena di internet dan blog lainnya sudah banyak yang membahas secara lengkap. Disini saya cuma ingin membagikan contoh penerapan aplikasinya ke dalam bahasa pemrograman php.

Berikut screenshotnya :

data_perhitungan_kmeans
Data objek dan data cluster

kmeans_sempat_salah_rumus
Hasil Perhitungan manual Euclidian distance Algoritma K-Means

grafik
Hasil dalam bentuk Diagram – dengan jpgraph scatter

K-means dapat digunakan untuk mengelompokkan data sebelum menerapkan teknik analisis data lainnya, K-means dapat digunakan untuk terlebih dahulu mengelompokkan data ke dalam cluster-cluster. Kemudian teknik analisis data hanya perlu diterapkan pada centroid dari setiap cluster sehingga lebih efisien dalam hal penggunaan waktu dan ruang. dan sekian dulu untuk artikel tentang Algoritma K-means Clustering, mudah-mudahan artikel ini bermanfaat. CMIIW,.. 🙂

Dan Untuk sobat yang ingin merasakan Citarasa dari Penerapan Algoritma K-means Clustering (PHP, MySQL, JpGraph), maka Silahkan bergabung menjadi members di https://members.phpmu.com/ atau silahkan menghubungi saya di no telp : 081267771344, atau juga bisa melalui email : robby.prihandaya@gmail.com. dan sampai jumpa lagi di artikel selanjutnya. insyaallah dengan artikel yang jauh lebih menarik lagi. 🙂

DEMO DOWNLOAD

Robby Prihandaya

Chief Executive Officer at https://phpmu.com
Robby is an Engineer, Entrepreneur, Thinker and Founder of phpmu.com programming blog. a very popular web development site, Lives in Padang - Indonesia