Neden Sınıf Dengesizliği Önemlidir?
Dengesiz veri kümelerinde standart makine öğrenimi algoritmaları büyük sınıfı optimize etme eğilimi taşır. Model eğitimi sırasında kayıp fonksiyonu çoğunluk sınıfının örneklerinden daha fazla güncelleme alır; bu da azınlık sınıfını tanıyamayan bir model ortaya çıkarır. Gerçek dünya senaryolarında azınlık sınıfı genellikle en yüksek iş değerini taşır: tespit edilmeyen bir sahtekarlık işlemi veya kaçırılan bir kanser vakası, genel doğruluğu yüksek görünen modelin aslında yararsız olduğunu gösterir.
Başlıca Çözüm Yöntemleri
- check_circle SMOTE: Synthetic Minority Over-sampling Technique. Azınlık örneklerinin k-NN komşuları arasında interpolasyon yaparak yeni sentetik örnekler üretir. En yaygın aşırı örnekleme tekniğidir.
- check_circle Class Weight: scikit-learn'de class_weight='balanced' parametresi, sınıf frekanslarına göre ağırlıkları otomatik hesaplar. Model öğrenimi sırasında azınlık sınıfına daha yüksek ceza verir.
- check_circle Threshold Ayarı: Varsayılan 0.5 eşiğini azınlık sınıfı yönüne kaydırmak (örneğin 0.3) recall'u artırır ancak precision'u düşürür. ROC eğrisi üzerinde Youden indeksi ile optimal eşik belirlenir.
- check_circle Ensemble Metotları: BalancedRandomForest ve EasyEnsemble, her alt örnekleme iterasyonunda sınıfları dengeli bootstrap'larla birleştirir.
Doğru Değerlendirme Metrikleri
- check_circle Precision (Kesinlik): Modelin 'pozitif' dediği örneklerin gerçekten pozitif olma oranı. Yanlış alarm maliyeti yüksek senaryolarda (spam tespiti) önemlidir.
- check_circle Recall (Geri Çağırma): Gerçek pozitif örneklerin tespit edilme oranı. Kaçırılan vakanın maliyeti yüksek senaryolarda (kanser tespiti) kritiktir.
- check_circle F1-Score: Precision ve Recall'un harmonik ortalaması; her iki metriği dengelemek istenen durumlarda tercih edilir.
- check_circle AUC-ROC: Tüm eşik değerleri üzerinde model performansını özetler; 0.5 rastgele tahmini, 1.0 mükemmel modeli temsil eder.
Türkiye'de Sınıf Dengesizliği Uygulamaları
Türkiye'deki fintech şirketleri ve bankalar sahtekarlık tespiti modellerinde sınıf dengesizliği sorunuyla doğrudan yüzleşmektedir: meşru işlemler sahte işlemlere kıyasla birkaç kat daha fazladır. Sağlık alanında nadir görülen hastalıkların erken teşhisi için geliştirilen modeller de aynı sorunu taşır. E-ticaret sektöründe iade sahtekarlığı ve tıklama sahtekarlığı tespiti de kritik azınlık örnekleri içerir. Bu senaryoların tamamında, SMOTE tabanlı oversampling veya cost-sensitive yaklaşımlar model başarımını belirgin biçimde artırabilir.
Sıkça Sorulan Sorular
- check_circle Hangi dengesizlik oranı kritiktir?: 1:10 oranı başlangıç eşiği olarak kabul edilir. 1:100 veya üzeri 'aşırı dengesizlik' kategorisine girer ve özel teknikler gerektirir.
- check_circle SMOTE veri sızıntısına yol açar mı?: Evet, SMOTE yalnızca eğitim kümesine uygulanmalıdır. Test kümesine veya çapraz doğrulama dışına uygulanması iyimser sonuçlara neden olur.
- check_circle Oversampling mi undersampling mi daha iyi?: Veri kümesi küçükse oversampling (SMOTE) tercih edilir; büyük ve bol veri mevcutsa undersampling kabul edilebilir. İkisinin birlikte kullanımı (combined sampling) çoğunlukla daha iyi sonuç verir.
- check_circle Deep learning dengesiz veriyle nasıl başa çıkar?: Focal Loss (RetinaNet'te kullanılan) zor örneklere otomatik ağırlık verir; ayrıca class_weight, weighted sampling ve veri augmentation kullanılır.
- check_circle Class imbalance ve anomaly detection arasındaki fark nedir?: Anomaly detection çoğunlukla etiket olmadan yalnızca normal dağılımı öğrenir ve normal dışı olanı bayraklar. Class imbalance her iki sınıf için de etiketli veri varsayar.