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 rastgele şekilleri ve gürültüyü nasıl belirlediğini öğren.
DBSCAN (Gürültülü Uygulamaların Yoğunluk Tabanlı Uzamsal Kümelenmesi), veriler içindeki farklı grupları yoğunluğa göre belirlemek 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ılan yüksek yoğunluklu bölgeleri bulur. Bu özellik, keyfi şekil ve boyutlardaki kümeleri keşfetmesini sağlar ve onu temel yapının bilinmediği karmaşık gerçek dünya veri kümelerini analiz etmede son derece etkili kılar. Bu algoritmanın önemli bir avantajı, yerleşik anomali algılama özelliğidir; algoritma, düşük yoğunluklu bölgelerdeki noktaları bir kümeye zorla dahil etmek yerine otomatik olarak gürültü olarak sınıflandırır.
Temel Kavramlar ve Parametreler#
Algoritma, her veri noktasının çevresinde bir komşuluk tanımlayarak ve bu çevreye kaç başka noktanın düştüğünü sayarak çalışır. Bu süreci iki temel hiperparametre kontrol eder ve bunların verilerin belirli özelliklerine uyacak şekilde dikkatle hiperparametre ayarlaması yapılması gerekir:
- Epsilon (eps): Bu parametre, bir noktanın komşularını aramak için kullanılacak maksimum yarıçapı belirtir. "Erişilebilirlik" mesafesini tanımlar.
- Minimum Nokta Sayısı (minPts): Bu parametre, yoğun bir bölge veya "çekirdek" oluşturmak için Epsilon yarıçapı içinde bulunması gereken minimum veri noktası sayısını belirler.
DBSCAN, bu parametrelere göre veri kümesindeki her noktayı üç türden biri olarak sınıflandırır:
-
Çekirdek Noktalar:
minPtsyarıçapı içinde en azepskomşusu bulunan noktalar. Bu noktalar bir kümenin iç kısmını oluşturur. -
Sınır Noktaları: Bir çekirdek noktanın
epsyarıçapı içinde bulunan, ancak kendilerininminPtskomşusundan daha az komşusu olan noktalar. Bu noktalar bir kümenin kenarlarını oluşturur. -
Gürültü Noktaları: Ne çekirdek ne de sınır noktası olan noktalar. Bunlar etkili bir şekilde aykırı değer olarak ele alınır; bu da aykırı değer algılama gibi görevler için faydalıdır.
DBSCAN ve K-Means Kümeleme#
Her ikisi de makine öğreniminin (ML) temel unsurları olsa da DBSCAN, belirli senaryolarda K-Means Kümelemeye kıyasla belirgin avantajlar sunar. K-Means, merkez noktalara ve Öklid mesafesine dayanır ve çoğu zaman kümelerin dışbükey veya küresel olduğunu varsayar. Bu durum, uzamış veya hilal şeklindeki verilerde düşük performansa yol açabilir. Buna karşılık DBSCAN'in yoğunluk tabanlı yaklaşımı, veri dağılımının doğal hatlarını takip etmesini sağlar.
Bir diğer önemli fark başlatma aşamasındadır. K-Means, kullanıcının küme sayısını (k) önceden belirtmesini gerektirir; önceden bilgi olmadan bu zor olabilir. DBSCAN ise küme sayısını veri yoğunluğundan doğal olarak çıkarır. Ayrıca K-Means, her noktayı bir gruba zorla dahil ettiği için aykırı değerlere duyarlıdır; bu da küme merkezlerini potansiyel olarak çarpıtabilir. DBSCAN'in noktaları gürültü olarak etiketleyebilmesi, veri anomalilerinin geçerli kümeleri bozmasını önler ve tahmine dayalı modelleme gibi sonraki görevler için daha temiz sonuçlar sağlar.
Gerçek Dünya Uygulamaları#
DBSCAN, uzamsal analiz ve güçlü gürültü işleme gerektiren sektörlerde yaygın olarak uygulanır.
- Coğrafi Mekânsal Analiz: Şehir planlama ve lojistikte analistler, teslimat filolarından veya araç paylaşım hizmetlerinden alınan GPS koordinatlarını gruplandırmak için DBSCAN kullanır. Şirketler, yüksek yoğunluklu teslimat noktası bölgelerini belirleyerek rota planlamasını ve depo konumlarını optimize edebilir. Örneğin lojistikte yapay zekâ çoğu zaman verimliliği artırmak için teslimat duraklarının kümelenmesini içerir.
- Görüntü Tabanlı Anomali Algılama: Üretimde, YOLO26 gibi modellerle güçlendirilmiş görsel denetim sistemleri yüzey kusurlarını algılayabilir. DBSCAN, bu kusurların koordinatlarını bir ürün haritası üzerinde kümeleyebilir. İzole algılamalar sensör gürültüsü olarak göz ardı edilebilirken yoğun kümeler sistematik bir üretim kusuruna işaret eder ve kalite denetimi için uyarı tetikler.
Kod Örneği: Algılama Merkez Noktalarını Kümeleme#
Bilgisayarlı görü iş akışlarında geliştiriciler, nesne algılayıcılarını eğitmek ve ardından sonuçları sonradan işlemek için genellikle Ultralytics Platformu kullanır. Aşağıdaki örnek, algılanan nesnelerin merkez noktalarını kümelemek için sklearn kitaplığının nasıl kullanılacağını gösterir. Bu, mekânsal olarak ilişkili algılamaları gruplandırmaya, aynı nesneye ait birden fazla sınırlayıcı kutuyu potansiyel olarak birleştirmeye veya nesne gruplarını belirlemeye 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]Derin Öğrenmeyle Entegrasyon#
DBSCAN klasik bir algoritma olsa da modern derin öğrenmeyle etkili bir şekilde birlikte kullanılabilir. Örneğin bir evrişimli sinir ağından (CNN) çıkarılan yüksek boyutlu özellikler, DBSCAN uygulanmadan önce PCA veya t-SNE gibi boyut indirgeme teknikleri kullanılarak azaltılabilir. Bu hibrit yaklaşım, karmaşık görüntü verilerinin yalnızca piksel konumuna göre değil, anlamsal benzerliğe göre kümelenmesini sağlar. Bu, etiketli eğitim verilerinin az olduğu denetimsiz öğrenme senaryolarında özellikle faydalıdır ve araştırmacıların çok büyük etiketlenmemiş görüntü arşivlerini verimli bir şekilde düzenlemesine yardımcı olur.









