DBSCAN (Density-Based Spatial Clustering of Applications with Noise)
Yoğunluk tabanlı kümeleme ve anomali tespiti için DBSCAN'i keşfet. Ultralytics YOLO26 ile birlikte veri kümelerindeki keyfi şekilleri ve gürültüyü nasıl tanımladığını öğren.
DBSCAN (Gürültülü Uygulamaların Yoğunluk Tabanlı Uzamsal Kümelemesi), veriler içindeki belirgin grupları yoğunluğa göre tanımlamak için kullanılan güçlü bir denetimsiz öğrenme algoritmasıdır. Küresel kümeler varsayan veya önceden belirlenmiş bir grup sayısı gerektiren geleneksel kümeleme yöntemlerinin aksine, DBSCAN düşük yoğunluklu alanlarla ayrılmış yüksek yoğunluklu bölgeleri bulur. Bu yetenek, temel yapının bilinmediği karmaşık gerçek dünya veri setlerini analiz etmek için onu son derece etkili kılarak, keyfi şekil ve boyutlardaki kümeleri keşfetmesini sağlar. Bu algoritmanın önemli bir avantajı, düşük yoğunluklu bölgelerdeki noktaları bir kümeye zorlamak yerine otomatik olarak gürültü olarak sınıflandırdığı için sahip olduğu yerleşik anomali tespiti yeteneğidir.
Link to this sectionTemel Kavramlar ve Parametreler#
Algoritma, her veri noktasının etrafında bir mahalle tanımlayarak ve bu yakınlıkta kaç tane başka nokta olduğunu sayarak çalışır. İki temel hiperparametre bu süreci kontrol eder ve verinin belirli özellikleriyle eşleşmesi için dikkatli bir hiperparametre ayarı gerektirir:
- Epsilon (eps): Bu parametre, komşuları aramak için bir nokta etrafındaki maksimum yarıçapı belirtir. "Erişilebilirlik" mesafesini tanımlar.
- Minimum Nokta Sayısı (minPts): Bu, yoğun bir bölge veya "çekirdek" oluşturmak için Epsilon yarıçapı içinde gereken minimum veri noktası sayısını belirler.
Bu parametrelere dayanarak, DBSCAN veri setindeki her noktayı üç tipten birine kategorize eder:
-
Core Points: Points that have at least
minPtsneighbors within theepsradius. These points form the interior of a cluster. -
Sınır Noktaları: Bir çekirdek noktanın
epsyarıçapı içinde olan ancak kendileriminPtsdeğerinden daha az komşuya sahip olan noktalar. Bunlar bir kümenin kenarlarını oluşturur. -
Gürültü Noktaları: Çekirdek veya sınır noktası olmayan noktalar. Bunlar etkili bir şekilde aykırı değerler olarak kabul edilir; bu da aykırı değer tespiti gibi görevler için yararlıdır.
Link to this sectionDBSCAN ve K-Means Kümeleme Karşılaştırması#
Her ikisi de makine öğrenimi (ML) için temel olsa da, DBSCAN belirli senaryolarda K-Means Kümeleme yöntemine göre belirgin avantajlar sunar. K-Means, ağırlık merkezlerine ve Öklid mesafesine dayanır ve genellikle kümelerin dışbükey veya küresel olduğunu varsayar. Bu, uzamış veya hilal şeklindeki verilerde kötü performansa yol açabilir. Buna karşılık, DBSCAN'in yoğunluk tabanlı yaklaşımı, veri dağılımının doğal konturlarını takip etmesini sağlar.
Bir diğer önemli fark ise başlatmadır. K-Means, kullanıcının küme sayısını (k) önceden belirtmesini gerektirir ki bu da önceden bilgi sahibi olmadan zor olabilir. DBSCAN ise küme sayısını veri yoğunluğundan doğal bir şekilde çıkarır. Ek olarak, K-Means her noktayı bir gruba zorladığı ve potansiyel olarak küme merkezlerini saptırdığı için aykırı değerlere karşı hassastır. DBSCAN'in noktaları gürültü olarak etiketleme yeteneği, veri anomalilerinin geçerli kümeleri kirletmesini engeller ve tahminleyici modelleme gibi sonraki görevler için daha temiz sonuçlar sağlar.
Link to this sectionGerçek Dünya Uygulamaları#
DBSCAN, uzamsal analiz ve sağlam gürültü yönetimi gerektiren endüstrilerde yaygın olarak uygulanır.
- Coğrafi Uzamsal Analiz: Şehir planlaması ve lojistikte analistler, teslimat filolarından veya araç paylaşım hizmetlerinden gelen GPS koordinatlarını gruplamak için DBSCAN kullanır. Yüksek yoğunluklu bırakma bölgelerini belirleyerek, şirketler rota planlamayı ve depo konumlarını optimize edebilir. Örneğin, lojistikte yapay zeka, verimliliği artırmak için teslimat duraklarını kümelemeyi içerir.
- Görünüşe Dayalı Anomali Tespiti: Üretimde, YOLO26 gibi modellerle desteklenen görsel denetim sistemleri yüzey kusurlarını tespit edebilir. DBSCAN, bu kusurların koordinatlarını bir ürün haritasında kümeleyebilir. İzole tespitler sensör gürültüsü olarak göz ardı edilebilirken, yoğun kümeler sistemik bir üretim hatasına işaret ederek kalite denetimi için bir uyarı tetikleyebilir.
Link to this sectionKod Örneği: Tespit Merkezlerini Kümeleme#
Bilgisayarlı görü iş akışlarında, geliştiriciler nesne dedektörlerini eğitmek ve ardından sonuçları işlemden geçirmek için genellikle Ultralytics Platform kullanır. Aşağıdaki örnek, tespit edilen nesnelerin merkezlerini kümelemek için sklearn kütüphanesinin nasıl kullanılacağını göstermektedir. Bu, uzamsal olarak ilişkili tespitleri gruplamaya, aynı nesne için birden fazla sınırlayıcı kutuyu birleştirmeye veya nesne gruplarını tanımlamaya yardımcı olur.
import numpy as np
from sklearn.cluster import DBSCAN
# Simulated centroids of objects detected by YOLO26
# [x, y] coordinates representing object locations
centroids = np.array(
[
[100, 100],
[102, 104],
[101, 102], # Cluster 1 (Dense group)
[200, 200],
[205, 202], # Cluster 2 (Another group)
[500, 500], # Noise (Outlier)
]
)
# Initialize DBSCAN with a radius (eps) of 10 and min_samples of 2
# This groups points close to each other
clustering = DBSCAN(eps=10, min_samples=2).fit(centroids)
# Labels: 0, 1 are cluster IDs; -1 represents noise
print(f"Cluster Labels: {clustering.labels_}")
# Output: [ 0 0 0 1 1 -1]Link to this sectionDerin Öğrenme ile Entegrasyon#
While DBSCAN is a classic algorithm, it pairs effectively with modern deep learning. For instance, high-dimensional features extracted from a convolutional neural network (CNN) can be reduced using dimensionality reduction techniques like PCA or t-SNE before applying DBSCAN. This hybrid approach allows for clustering complex image data based on semantic similarity rather than just pixel location. This is particularly useful in unsupervised learning scenarios where labeled training data is scarce, helping researchers organize vast archives of unlabeled images efficiently.






