K-means sınıflandırması, n tane verinin k tane sınıfa bölünmesiyle ilişkilendirilir, her bir obje kendisine en yakın özellikteki sınıfa atanır. K means sınıflandırmasında küme içi varyansı veya en küçük kareler hatasını en düşük seviyede tutmaktadır:

Algoritma
- Verileri, k’nın önceden tanımlandığı k gruplarına kümeler.
- Sınıfın merkezinde rastgele k noktası seçilir.
- Her sınıftaki verilerin ortalaması hesaplanır.
- Her sınıfa birbirini takip eden noktalar atanana kadar 2,3,4 adımları tekrar edilir.

Python’da bu varsayımları kodlarsak şu şekilde olur:
import matplotlib.pyplot as plt
import numpy as np
from sklearn.datasets.samples_generator import make_blobs
X,y_true=make_blobs(n_samples=225,centers=7,cluster_std=0.6,random_state=0)
plt.scatter(X[:,0],X[:,1],s=25)
from sklearn.cluster import KMeans
kmeans=KMeans(n_clusters=7)
kmeans.fit(X)
y_kmeans= kmeans.predict(X)
plt.scatter(X[:,0],X[:,1],c=y_kmeans,s=25,cmap="Accent")
centers=kmeans.cluster_centers_
plt.scatter(centers[:,0],centers[:,1],c="black",s=225,alpha=0.8)
plt.show()

Siyah noktalar kümelerin merkezidir ve sınıflandırma 7 gruptan oluşur.
Referanslar
- https://www.saedsayad.com/
- Python Data Science Handbook Essential Tools Working With Data