Yoğunluk Analizi: Kernel Density Estimation (KDE) Nedir?
Bir şehrin trafik kazası noktaları haritaya işlendiğinde, veriler düzensiz ve seyrek görünebilir. Ancak bu noktalar üzerine Kernel Density Estimation (KDE) uygulandığında, kazaların yoğunlaştığı bölgeler pürüzsüz bir yoğunluk yüzeyi olarak ortaya çıkar. KDE, dağınık nokta verilerini sürekli bir yoğunluk alanına dönüştüren parametrik olmayan bir istatistiksel yöntemdir. CBS'te neredeyse her türlü olay verisinin — suç, kaza, hastalık vakası, müşteri konumu — görselleştirilmesinde ve keşifsel analizinde kullanılır. Bu yazıda KDE'nin nasıl çalıştığını, kritik parametre olan bandwidth seçimini ve QGIS ile Python uygulamalarını ele alıyoruz.
KDE Nedir? Sayım Yönteminden Farkı
En basit nokta yoğunluğu yöntemi basit sayım (point density)'dır: belirli bir ızgara hücresi içindeki nokta sayısı hesaplanır. Bu yöntem hızlı ama kaba bir sonuç verir; hücre sınırları yapay keskinlikler yaratır ve komşu hücreler arasındaki geçişler ani görünür.
KDE ise her noktanın çevresine matematiksel bir çan eğrisi (kernel) yerleştirir. Tüm noktaların üst üste binen kernel fonksiyonları toplanarak pürüzsüz, sürekli bir yoğunluk yüzeyi elde edilir. Noktaya yakın hücreler yüksek, uzak hücreler düşük katkı alır. Sonuç haritası keskin sınırlar yerine yumuşak geçişlerle gerçekçi bir yoğunluk görüntüsü sunar.
Kernel Fonksiyonu Türleri
Kernel fonksiyonu, her noktanın çevresine nasıl bir ağırlık dağılımı uygulanacağını belirler. Teorik farklılıkları olsa da pratikte sonuçlar arasındaki fark genellikle küçüktür; bandwidth seçimi çok daha belirleyicidir.
| Kernel Türü | Şekil | Özellik | Tipik Kullanım |
|---|---|---|---|
| Gaussian (Normal) | Sonsuz uzanan çan eğrisi | Sınır dışı noktalara da düşük ağırlık verir | Genel amaçlı, en yaygın |
| Epanechnikov | Kesik parabolik | Bandwidth dışını tamamen sıfırlar; istatistiksel olarak optimal | Akademik çalışmalar |
| Quartic (Bisquare) | Kesik dördüncü derece eğri | Epanechnikov'a benzer, ArcGIS varsayılanı | CBS yazılımları |
| Uniform (Box) | Düz dikdörtgen | Bandwidth içi tüm noktalara eşit ağırlık | Basit sayım benzeri |
| Triangular | Üçgen | Merkeze doğrusal azalan ağırlık | Sınırlı kullanım |
Pratik öneri: QGIS'te Quartic (Quartic kernel), Python/scipy'de Gaussian varsayılan seçimdir. Kernel türünü değiştirmek yerine bandwidth değerini ayarlamaya odaklanın; bandwidth KDE sonuçlarını çok daha güçlü etkiler.
Bandwidth: KDE'nin En Kritik Parametresi
Bandwidth (bant genişliği, arama yarıçapı), her noktanın çevresine yerleştirilen kernel fonksiyonunun ne kadar geniş yayılacağını belirler. Bu parametre KDE sonucunu doğrudan şekillendirir:
- Çok küçük bandwidth: Her nokta dar, sivri bir tepe oluşturur. Harita gürültülü ve aşırı ayrıntılı görünür; gerçek örüntü gizlenir. Oversmoothing'in tersi: undersmoothing.
- Çok büyük bandwidth: Tüm noktaların katkısı geniş alana yayılır. Harita aşırı düzleşir, bölgesel farklar kaybolur. Oversmoothing.
- Uygun bandwidth: Gerçek yoğunluk örüntüsünü anlamlı biçimde özetler; yerel zirveler ve çukurlar okunabilir kalır.
Bandwidth Seçim Yöntemleri
- Silverman's Rule of Thumb: Veri dağılımının standart sapmasına ve nokta sayısına dayanan otomatik formül. Gaussian kernel için: h = 0,9 · min(σ, IQR/1,34) · n⁻¹⁄⁵. QGIS ve Python'un varsayılan yöntemi. Normal dağılım varsayımı nedeniyle çok yoğun ya da çok seyrek verilerde yanıltıcı olabilir.
- Cross-Validation (Çapraz Doğrulama): Farklı bandwidth değerleri denenerek tahmin hatası minimize edilir. Daha doğru ama hesaplama maliyeti yüksek.
- Alan Uzmanı Kararı: Yürüyüş mesafesi (400 m), polis devriye yarıçapı (500 m) veya etki alanı mesafesi gibi analize özgü anlamlı değerler kullanmak.
Ağırlıklı KDE (Weighted KDE)
Standart KDE her noktaya eşit ağırlık verir. Ancak bazı analizlerde noktaların önem düzeyi farklıdır: yaralı sayısı, hasar miktarı veya işlem büyüklüğü gibi bir nitelik değeri her noktanın katkısını ölçeklendirmek için kullanılabilir. Ağırlıklı KDE'de her nokta kendi ağırlık değeriyle çarpılarak yoğunluk yüzeyine katkıda bulunur. Sonuç hem olay sıklığını hem de olay şiddetini birlikte görselleştirir.
Örneğin trafik kaza analizinde yalnızca kaza sayısını değil, her kazadaki yaralı sayısını ağırlık olarak kullanmak, şiddetli kazaların yoğunlaştığı bölgeleri daha doğru ortaya koyar.
Python ile KDE
scipy ile Temel KDE
import numpy as np import geopandas as gpd import matplotlib.pyplot as plt from scipy.stats import gaussian_kde # Nokta verisini yükle gdf = gpd.read_file("kazalar.gpkg") coords = np.vstack([gdf.geometry.x, gdf.geometry.y]) # KDE hesapla (Silverman's rule) kde = gaussian_kde(coords, bw_method="silverman") # Izgara oluştur x_min, y_min, x_max, y_max = gdf.total_bounds xx, yy = np.mgrid[x_min:x_max:200j, y_min:y_max:200j] grid_coords = np.vstack([xx.ravel(), yy.ravel()]) density = kde(grid_coords).reshape(xx.shape) # Görselleştir fig, ax = plt.subplots(figsize=(10, 8)) ax.imshow(density.T, origin="lower", extent=[x_min, x_max, y_min, y_max], cmap="hot_r", alpha=0.7) gdf.plot(ax=ax, color="blue", markersize=2, alpha=0.3) plt.title("Trafik Kazası Yoğunluk Haritası (KDE)") plt.colorbar(ax.images[0], label="Yoğunluk") plt.show()
Ağırlıklı KDE
from scipy.stats import gaussian_kde coords = np.vstack([gdf.geometry.x, gdf.geometry.y]) weights = gdf["yarali_sayisi"].values # ağırlık sütunu # Ağırlıklı KDE: noktaları ağırlıklara göre çoğalt kde_weighted = gaussian_kde(coords, weights=weights, bw_method="silverman") density_w = kde_weighted(grid_coords).reshape(xx.shape)
QGIS ile KDE (Isı Haritası)
QGIS'te KDE iki farklı şekilde uygulanabilir:
- Semboloji → Isı Haritası (Heatmap): Nokta katmanının sembolojisini "Isı Haritası" olarak değiştirerek anlık görselleştirme yapılır. Hızlıdır ama raster çıktı üretmez; yalnızca görsel amaçlıdır.
- İşleme Araçları → Interpolasyon → Isı Haritası (Kernel Yoğunluğu): Gerçek raster KDE çıktısı üretir. Bandwidth (arama yarıçapı), piksel boyutu, kernel türü ve isteğe bağlı ağırlık sütunu ayarlanabilir. Sonuç, diğer CBS analizlerinde katman olarak kullanılabilir.
KDE Çıktısını Yorumlama
KDE raster çıktısı piksel değerlerini birim alan başına olay yoğunluğu (örneğin km² başına kaza sayısı) olarak verir. Yorumlarken dikkat edilmesi gereken noktalar:
- Mutlak değerler bandwidth ve kernel türüne bağlıdır; aynı veri seti farklı parametrelerle farklı değerler üretir. Analizler arası karşılaştırma için parametrelerin sabit tutulması gerekir.
- KDE istatistiksel anlamlılık testi yapmaz; yüksek yoğunluk bölgeleri rastlantısal da olabilir. İstatistiksel doğrulama için Gi* veya LISA ile birlikte kullanılması önerilir.
- Sınır etkisi (edge effect): Çalışma alanının kenarlarındaki noktalar yapay olarak düşük yoğunluk alabilir. Sınır düzeltmesi (boundary correction) gerekebilir.
KDE, Gi* ve Sayım Yöntemi Karşılaştırması
| Yöntem | Çıktı | İstatistiksel Test | En İyi Kullanım |
|---|---|---|---|
| Basit Sayım | Hücre başına sayı | Hayır | Hızlı ön bakış |
| KDE | Sürekli yoğunluk yüzeyi | Hayır | Görselleştirme, keşifsel analiz |
| Getis-Ord Gi* | z-skoru ve güven düzeyi | Evet | İstatistiksel doğrulama, raporlama |
| Local Moran's I | Küme tipleri (HH, LL, HL, LH) | Evet | Anomali ve mekansal aykırı değer tespiti |
Uygulama Alanları
- Suç haritalaması: Polisin kaynak tahsisini yönlendirmek için suç yoğunluk haritaları
- Perakende ve pazarlama: Müşteri yoğunluğuna göre yeni şube konumlarını belirlemek
- Epidemiyoloji: Hastalık vakalarının coğrafi yayılımını modellemek
- Ekoloji: Hayvan gözlemlerinden türün habitat yoğunluğunu tahmin etmek
- Trafik mühendisliği: Kaza yoğunluk haritalarıyla öncelikli iyileştirme noktalarını belirlemek
- Gayrimenkul: İşlem yoğunluğu haritalarıyla piyasa aktivitesini görselleştirmek
Mekansal Yoğunluk Analizi İçin Uzman Desteği
KDE, sıcak nokta analizi ve mekansal görselleştirme çalışmaları için profesyonel CBS danışmanlığı alın.
CBS ve mekansal analiz için uzman desteği alınKaynaklar
- Silverman, B. W. (1986). Density Estimation for Statistics and Data Analysis. Chapman & Hall.
- Chainey, S., Tompson, L., & Uhlig, S. (2008). The utility of hotspot mapping for predicting spatial patterns of crime. Security Journal, 21(1–2), 4–28.
- Fotheringham, A. S., Brunsdon, C., & Charlton, M. (2000). Quantitative Geography: Perspectives on Spatial Data Analysis. SAGE Publications.