Sunday, February 17, 2019

Buku Belajar Machine Learning dengan Python - KMeans Clustering


Seiring dengan meningkatnya traffic dan kemudahan dalam mengelola content, kami mengucapkan banyak terima kasih kepada para pembaca setia pada blog www.softscients.web.id

Per 19 Maret 2020, kami sedang melakukan migrasi ke domain dan hosting yang lebih baik yaitu
Semoga dengan alamat domain dan hosting terbaru akan semakin memudahkan para pembaca dalam mencari materi/content. Migrasi dilakukan secara bertahap yang membutuhkan waktu yang cukup lama jadi jangan kuatir selama migrasi akan dilakukan secara hati-hati untuk memimalkan broken link

Sinopsis

K-Means Clustering  sudah banyak dibahas, salah satunya ada di Buku Belajar Mudah Python dengan Package Open Source kalian bisa beli di Toko buku kesayangan kalian. Disini tidak dibahas mengenai langkah kerja secara detail karena dibuku tersebut sudah terbit, maka disini hanya menunjukan kepada kalian cara penggunaannya. Kmeans clustering yang ditulis diambil dari referensi berikut:
  1. https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_ml/py_kmeans/py_kmeans_understanding/py_kmeans_understanding.html
  2. https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_ml/py_kmeans/py_kmeans_opencv/py_kmeans_opencv.html#additional-resources
Kemudian penulis tulis ulang agar mudah dipelajari, kalau kalian ingin tahu lebih dalam secara step by step, kalian beli saja bukunya.

Dataset

Untuk dataset, kita mencoba untuk versi simple  dengan sebuah array berikut

data_masuk = np.array([[7,8],
                        [4,13],
                        [8,7],
                        [8 ,9],
                        [3 ,12],
                        [3 ,1],
                        [5 ,3],
                        [3 ,13],
                        [9 ,8],
                        [3 ,5],
                        [8 ,8],
                        [2 ,13],
                        [1 ,3],
                        [3 ,14]],dtype='float32')



Penggunaan library


 
kmeans = pustakakmeans.KMeans()
jumlah_kelas = 3
kmeans.hitung(data_masuk,jumlah_kelas,epsilon=0.01, max_iterasi=3)

print  ('center\n',kmeans.center)

plt.figure('plot data - www.softscients.web.id')
b = plt.scatter(data_masuk[:,0],data_masuk[:,1],s=40,c=u'b')
plt.hold(True)
plt.scatter(kmeans.center[:,0],kmeans.center[:,1],s=40,c=u'r')
plt.title('mencari centroid dengan kmeans clustering')
plt.show()

Kode lengkapnya sebagai berikut

import numpy as np
from  lib import pustakakmeans
from  matplotlib import pyplot as plt

data_masuk = np.array([[7,8],
                        [4,13],
                        [8,7],
                        [8 ,9],
                        [3 ,12],
                        [3 ,1],
                        [5 ,3],
                        [3 ,13],
                        [9 ,8],
                        [3 ,5],
                        [8 ,8],
                        [2 ,13],
                        [1 ,3],
                        [3 ,14]],dtype='float32')

kmeans = pustakakmeans.KMeans()
jumlah_kelas = 3
kmeans.hitung(data_masuk,jumlah_kelas,epsilon=0.01, max_iterasi=3)

print  ('center\n',kmeans.center)
#print ('klustering final',kmeans.label)

##bikin plot
plt.figure('plot data - www.softscients.web.id')
b = plt.scatter(data_masuk[:,0],data_masuk[:,1],s=40,c=u'b')
plt.hold(True)
plt.scatter(kmeans.center[:,0],kmeans.center[:,1],s=40,c=u'r')
plt.title('mencari centroid dengan kmeans clustering')
plt.show()

Output

Buku Belajar Machine Learning dengan Python - KMeans Clustering

Adapun untuk contoh lainnya sebagai berikut

Buku Belajar Machine Learning dengan Python - KMeans Clustering


center
 [[ 8.  8.]
 [ 3. 13.]
 [ 3.  3.]]


PUSTAKA KMEANS

Ditulis menggunakan numpy sebagai library array nya.

Buku Belajar Machine Learning dengan Python - KMeans Clustering







No comments:

Post a Comment