Tüm yazılar
Matematik21 Ocak 2025

DBSCAN: Yoğunluğa Dayalı Kümeleme ve Outlier Tespiti

K-means küresel kümelere mahkum. DBSCAN, "yoğun bölgeler" arayan farklı bir yaklaşımla rastgele şekillere ve aykırı değerlere uyumlu.

Matematik Karavanı 6 dk okuma 5 soru
Konser kalabalığı — yoğun bölge metaforu

K-means'in sınırına geldik

K-means küresel kümeleri varsayar. Ama gerçek dünya nadiren küresel:

  • "C" şeklinde veri.
  • İç içe halkalar.
  • Yoğun + seyrek bölgelerin karışımı.
  • Outlier'lar her şeyi bozar.

DBSCAN (Density-Based Spatial Clustering of Applications with Noise) — 1996, Martin Ester ve ekibi — farklı bir bakış: yoğunluk.

Temel fikir

Küme = birbirine yakın çok sayıda noktanın bulunduğu bölge. Outlier = etrafında yeterli komşusu olmayan nokta.

Hiperparametreler:

  • ε\varepsilon (epsilon): "komşu" sayılma yarıçapı.
  • minPts\text{minPts}: yoğun sayılmak için gereken minimum komşu sayısı.

Nokta türleri

Her nokta üçten biridir:

  • Core point: ε\varepsilon-yarıçapında minPts\ge \text{minPts} komşusu var.
  • Border point: yarıçapında daha az komşusu var ama bir core'un komşusu.
  • Noise: hiçbir core'a yakın değil → outlier.

Algoritma

  1. Rastgele bir nokta seç.
  2. Core point ise:
    • Yeni küme başlat.
    • ε\varepsilon-komşularını ekle.
    • Onlar da core ise, onların komşularını ekle (BFS/DFS).
  3. Border ise → kümeye katıl ama genişletme.
  4. Noise ise → işaretle, devam.
  5. Tüm noktalar işlenene kadar tekrarla.

Avantajlar

  • K önceden bilinmesin: küme sayısı otomatik bulunur.
  • Rastgele şekiller: spiral, halka, eğri — hepsini yakalar.
  • Outlier dirençli: noise olarak otomatik etiketler.
  • Sezgisel: "yoğun yerler küme, seyrek yerler değil".

Sınırlamalar

  • Hiperparametre seçimi zor: ε\varepsilon doğru olmazsa felaket.
  • Farklı yoğunluklar: bir kümenin yoğunluğu diğerinden farklıysa zor.
  • Yüksek boyut: uzaklık tanımı bozulur (curse of dimensionality).
  • Belirsiz border: border noktalar hangi kümeye? — sıraya göre değişebilir.

ε\varepsilon seçimi

Heuristik: k-distance plot.

  • Her noktanın kk-en yakın komşu uzaklığını çiz, sırala.
  • Dirsek noktası iyi ε\varepsilon.
  • k=minPtsk = \text{minPts} tipik.

HDBSCAN (2013)

DBSCAN'in genişletilmesi — hiyerarşik versiyonu:

  • ε\varepsilon seçmek şart değil.
  • Farklı yoğunluktaki kümeler.
  • Daha sağlam border noktaları.
  • scikit-learn-contrib standart.

McInnes ve Healy 2017 modernize etti — modern data science'da DBSCAN'in yerine geçti.

Uygulama alanları

1. Coğrafi veriler

  • Müşteri konumlarından sıcak nokta bulma.
  • Hastalık vakalarından küme tespiti (epidemiyoloji).

2. Astronomi

  • Galaksi kümeleri.
  • Asteroit ailesi tespiti.

3. Anomali tespiti

  • Kredi kartı fraud (anormal harcamalar).
  • Network intrusion (anormal trafik).
  • Endüstriyel sensor (arıza tahmini).

4. Görüntü segmentasyonu

  • Pixel kümeleri.
  • Nesne tespiti ön işlem.

5. Bibliometrik

  • Bilim makalelerinin konu kümeleri.

K-means ile karşılaştırma

K-meansDBSCAN
KÖncedenOtomatik
ŞekilKüreselRastgele
OutlierBozarTespit eder
HızÇok hızlıDaha yavaş
Yüksek boyutOrtaZayıf
BelirsizlikYokBorder noktalar

Sıkça yapılan hata

DBSCAN'i veri ölçeklenmeden çalıştırmak. Yarıçap ε\varepsilon özelliklerin orijinal birimlerine duyarlı. Standardize edin.

Türk endüstrisi

  • Ulaşım: BİTAKSİ/Marti gibi şirketler trafik yoğunluğu kümeleme için.
  • Belediye: kentin yoğunluk haritası.
  • Telekom: hücre baz istasyon yoğunluğu.

Modern bağlam: derin yerel kümeleme

Modern AI'da DBSCAN tek başına yetmez ama embedding'lerle birleştirilir:

  1. Cümleyi LLM embedding'le vektörleştir.
  2. UMAP/t-SNE ile boyut indir.
  3. HDBSCAN ile kümele.

Bu pipeline modern topic modeling'in standardı (BERTopic).

Kapanış

DBSCAN basit bir fikre dayanır — yoğunluk — ama K-means'in yapamadığı her şeyi yapar. Modern HDBSCAN ile birleştirildiğinde, denetimsiz analizin en sık aracı. Veri biliminin nadir "K önceden bilinmesi şart değil" durumlarında ilk seçenek.

Etiketler

DBSCANyoğunluk kümelemesioutlierunsupervisedMartin Ester

Kendinizi Test Edin

Cevaplarınız profilinizde istatistik olarak saklanır.

1. DBSCAN ne arar?

2. K-means'a göre temel avantaj?

3. İki ana hiperparametre?

4. HDBSCAN ne ekler?

5. En çok kullanım?