Verileri kümeler halinde gruplandırmak için temel bir denetimsiz öğrenme algoritması olan K-Means Kümelemeyi öğrenin. Sürecini, uygulamalarını ve karşılaştırmalarını keşfedin!
K-Means Kümeleme, kümeleme alanında yaygın olarak kullanılan bir algoritmadır. bölümlemek için tasarlanmış denetimsiz öğrenme veri kümesini farklı, örtüşmeyen alt gruplara ayırmıştır. Daha geniş bağlamda makine öğrenimi (ML), bu yöntem çok önemlidir etiketsiz verilerdeki gizli kalıpları ve yapıları keşfetmek için kullanılır. Algoritma, veri noktalarını düzenleyerek çalışır her noktanın en yakın ortalamaya sahip kümeye ait olduğu, $K$ sayıda kümeye ayrılır. grup. Bu yaklaşım, her bir küme içindeki varyansın en aza indirilmesine yardımcı olarak aynı kümedeki veri noktalarının grupların mümkün olduğunca benzer olması ve farklı grupların birbirinden ayrı tutulması.
K-Means süreci iteratiftir ve merkez olarak hareket eden $K$ başlangıç merkezlerinin seçimi ile başlar kümeler için noktalar. Bu merkezler rastgele veya aşağıdaki gibi daha akıllı başlatma teknikleriyle seçilebilir k-means++ başlatma yakınsama hızını artırmak için. Algoritma daha sonra sonuçlar stabilize olana kadar iki ana adımda ilerler:
Bu döngü, merkezler artık önemli ölçüde hareket etmeyene kadar tekrarlanır ve bu da algoritmanın yakınsadığını gösterir. Optimum küme sayısının belirlenmesi sürecin kritik bir parçasıdır ve genellikle aşağıdaki gibi teknikler kullanılarak elde edilir Dirsek yöntemi veya analiz ederek Siluet skoru Elde edilen kümeler arasındaki ayırma mesafesini ölçmek için.
K-Means Kümeleme çok yönlüdür ve çeşitli endüstrilerde aşağıdakiler için fayda sağlar veri madenciliği ve analiz görevleri.
gibi modern nesne dedektörleri varken Ultralytics YOLO11 sık sık gelişmiş regresyon tekniklerini veya çapasız kafaları kullanan K-Means, bu teknolojinin evriminde önemli bir rol oynamıştır. algılama modelleri. YOLOv2'den YOLOv5'e kadar olan önceki yinelemeler, sınırlayıcı kutu üzerinde K-Means kümelemesini kullanmıştır COCO veri setinin boyutlarını belirleyerek optimum çapa kutuları. Bu önceden hesaplanmış ankrajlar Nesne şekillerini tahmin etmek için daha iyi öncüllere sahip model, eğitim kararlılığını ve geri çağırmayı önemli ölçüde geliştirir.
K-Means'i şu şekilde karıştırmak yaygındır K-En Yakın Komşular (KNN), ancak bunlar temelde farklı amaçları vardır.
İlgili bir diğer kavram ise DBSCAN, merkezi bir noktadan uzaklık yerine yoğunluğa dayalı kümeleme yapar. K-Means'in aksine, DBSCAN şunları gerektirmez küme sayısının önceden belirlenmesini sağlar ve aykırı değerlerle daha iyi başa çıkar.
Aşağıdaki Python örneği, yaygın olarak kullanılan piksel renklerini kümelemek için K-Means'in nasıl kullanılacağını göstermektedir görme görevlerinde veri ön işleme adımı.
import numpy as np
from sklearn.cluster import KMeans
# Simulate a small image (10x10 pixels) with 3 RGB channels
# In a real scenario, you would load an image using cv2.imread()
image_data = np.random.randint(0, 255, (10, 10, 3), dtype=np.uint8)
pixels = image_data.reshape(-1, 3)
# Apply K-Means to reduce the image to 3 dominant colors (clusters)
kmeans = KMeans(n_clusters=3, n_init="auto", random_state=42).fit(pixels)
# The cluster centers represent the dominant colors
print(f"Dominant RGB Colors:\n{kmeans.cluster_centers_}")

