Class Imbalance Problem: 1:1,000,000 Fraud Ratios and Why Accuracy Lies
Fundamental challenge of anomaly detection: imbalanced class distribution. Why classical ML fails at 1:1,000,000 ratios, the accuracy paradox, mathematical and practical impacts of imbalanced learning, sectoral imbalance table.
Şükrü Yusuf KAYA
25 min read
Intermediate⚖️ AD'nin en kritik problemi
Klasik ML interview sorusu: 'Modelin %99 accuracy veriyor, iyi mi?' Cevap: kötü olabilir. Eğer veride %99 normal sınıfı varsa, her şeye 'normal' diyen bir model de %99 accuracy alır — sıfır iş değeri. Bu derste anomaly detection'ın imzası olan dengesiz sınıf dağılımı problemini netleştireceğiz: matematiksel temeli, pratik etkileri, Türkiye sektörel oranları.
Gerçek Sayılar: Anomali Ne Kadar Nadir?#
Anomaly detection'daki sınıf dengesizliği genel ML'in bildiğinin çok ötesinde:
| Sektör | Anomali oranı | Oran ifadesi |
|---|---|---|
| Manuel kalite kontrol — sigara üretimi | %0.001 | 1:100.000 |
| Kredi kartı fraud | %0.1-0.2 | 1:500-1.000 |
| AML (Anti-Money Laundering) suspicious | %0.005-0.01 | 1:10.000-20.000 |
| Network intrusion (paket seviyesi) | %0.0001 | 1:1.000.000 |
| Sigorta claim fraud | %1-3 | 1:30-100 |
| Healthcare claim anomali | %2-5 | 1:20-50 |
| MVTec endüstriyel defekt | %10-30 | 1:3-10 (test setinde dengelenmiş) |
| Web fraud (click fraud) | %5-15 | 1:6-20 |
Karşılaştırma için klasik ML:
- ImageNet kategori dengesi: 1:1 (her sınıf eşit sayıda örnek)
- Sentiment analysis: 1:1-3
- Çoğu Kaggle yarışması: 1:1-10
Pratik gerçek: Banking fraud ekibinde 1:1000 dengesizlik en yaygın senaryo. Her 1000 işlemden 1'i fraud. Yani 1 milyon işlemlik veri kümesinde sadece ~1000 pozitif örnek var.
Accuracy Paradoksu#
Klasik ML'de accuracy tipik performans ölçüsü:
Imbalanced veride accuracy yanıltıcı:
Senaryo: %0.1 fraud (1.000.000 işlem, 1.000 fraud)#
Model A: "Her şeye normal de"
- TP = 0, FP = 0, TN = 999.000, FN = 1.000
- Accuracy = 999.000 / 1.000.000 = %99.9 ← 'mükemmel' görünüyor
- Recall = 0 → tek bir fraud yakalanmadı
- Precision = tanımsız (paydaya bölünme)
Model B: Gerçek fraud detector
- TP = 800, FP = 200, TN = 998.800, FN = 200
- Accuracy = 999.600 / 1.000.000 = %99.96 ← Model A'dan az daha iyi
İki model arasında accuracy farkı %0.06. Ama iş etkisi:
- Model A: ~5M TL yıllık fraud kaybı (hiçbir fraud bloklanmadı)
- Model B: ~1M TL yıllık fraud kaybı (%80 bloklandı)
Sonuç: Accuracy imbalanced veride tek başına yanıltıcı. Precision, Recall, F1, PR-AUC kullanmak şart. Modül 4'te detaylı işleyeceğiz.
🚨 Production'da en sık görülen hata
Yeni başlayan bir AD ekibinin yaptığı en sık hata: Kaggle sırasında accuracy'yi optimize etmek. PR-AUC veya recall@k optimization'ı gerekirken accuracy'ye yatırım, modelin asla canlıda çalışmamasıyla sonuçlanır. Görüşmelerde 'modelimiz %99 accurate' diyen ekipler en zayıf takımdır.
Klasik ML İmbalanced'de Neden Çöker?#
Standart sınıflandırıcılar (logistic regression, decision tree, neural net) bir
loss function'ı minimize eder. Bu loss tipik olarak her örneğe eşit
ağırlık verir:
Sonuç: N = 1.000.000 örnek arasında 1.000 anomali varsa, loss'un sadece
%0.1'i pozitif sınıftan geliyor. Optimizer rasyonel olarak normal sınıfı
mükemmel tahmin etmeye odaklanır; anomaliyi göz ardı eder — çünkü o şekilde
toplam loss daha hızlı düşer.
Karar sınırı sapması#
Lojistik regresyonda karar sınırı (decision boundary), iki sınıfı ayıran
hiperdüzlem. Imbalanced veride bu sınır çoğunluk sınıfına doğru kayar —
çünkü çoğunluk verisini "ezmek" daha karlı.
Decision tree split#
Ağaç sınıflandırıcılar split kriterinde (Gini, entropy) çoğunluk dağılımına
dayanır. Imbalanced veride leaf'lerin tamamı "normal" olarak işaretlenebilir,
çünkü o şekilde Gini düşük.
Çözümler 4 ana kategoride:#
- Veriyi değiştir (Modül 3.2 — sampling: SMOTE, ADASYN)
- Loss function'ı değiştir (Modül 3.3 — class weight, focal loss)
- Modeli değiştir (Modül 7 — Isolation Forest gibi 'imbalanced-friendly' modeller)
- Etiketleme stratejisini değiştir (Modül 3.4 — semi-supervised, active learning)
Her birini sırayla işleyeceğiz.
Imbalanced Veri için Doğru Metrikler (Önizleme)#
Modül 4 tam ele alacak ama özet:
| Metrik | Imbalanced'de ne yapar |
|---|---|
| Accuracy | Yanıltıcı — kullanma |
| Precision (P) | Tespit edilenlerin ne kadarı doğru |
| Recall (R) | Gerçek anomalilerin ne kadarı yakalandı |
| F1 | P ve R'nin harmonik ortalaması |
| PR-AUC | Imbalanced için altın standart |
| ROC-AUC | Yanıltıcı olabilir (high TNR baskın) |
| Balanced Accuracy | (Sensitivity + Specificity) / 2 |
| MCC (Matthews) | Tek metrik için iyi seçim |
| Cost-based | İş kararlarıyla aligned |
Hızlı kural: Imbalanced veride PR-AUC ve recall@k raporla. Accuracy ve ROC-AUC sadece destek metriği olarak göster.
Türkiye Sektörel Imbalance Manzarası (2026)#
Türkiye'deki gerçek imbalanced senaryolar:
Bankacılık#
- Kart fraud: ~1:1.500 (Türkiye ortalama, Garanti BBVA 2024 raporu)
- EFT/havale fraud: ~1:8.000
- Hesap fraud (yeni hesap açma): ~1:200
- AML SAR raporu: ~1:25.000
Telco#
- Çağrı fraud (PRS): ~1:50.000
- SIM swap fraud: ~1:30.000
- Bayi fraud: ~1:500
Sigorta#
- Otomobil claim fraud: ~1:30
- Sağlık claim fraud: ~1:80
- Yangın claim fraud: ~1:200
Üretim (Industry 4.0)#
- Otomotiv son test defekti: ~1:1.000
- Beyaz eşya kalite kontrol: ~1:500
- Elektronik üretim: ~1:300
E-ticaret#
- İade fraud (Trendyol/Hepsiburada): ~1:200
- Promosyon kötüye kullanımı: ~1:100
Healthcare#
- MR imaging lesion: ~1:50 (etiketli veride dengelenmiş)
- ECG aritmi: ~1:30
Bu rakamlar eğitim setinde ne kadar pozitif örneğin olabileceğini doğrudan
söyler. Modeli kurmaya başlamadan önce bu oranı bilmelisin.
Imbalance'ın Production'da Etkileri#
İmbalance sadece "metrik problemi" değil. Production yaşam döngüsünde etkileri:
1. Etiketleme maliyeti yüksek#
1.000.000 işlemden 1.000 anomali bulmak için tüm 1.000.000'unu incelemek
gerekir. Bu, modül 1.3'te konuştuğumuz etiket pahalılığı sorununun ana
kökü.
2. Eğitim setinde leakage riski#
Pozitif örnekler az olduğunda her birinin değeri yüksek. Train/test split'te
yanlışlıkla aynı pozitifi her iki kümeye sızdırmak (data leakage) %30+ PR-AUC
yapay artışıyla sonuçlanabilir. Stratified split şart.
3. Model varyansı yüksek#
1.000 pozitif örnekle eğitilmiş model, farklı 1.000 örnekle eğitilirse PR-AUC ±%5-10 oynayabilir. Cross-validation ve seed'lerle istikrar testi şart.
4. Drift detection zor#
Anomaly oranı zaten %0.1 ise, %0.05'e düştü mü artıyor mu söylemek için çok
büyük örneklem gerekir. Modül 31'de drift detection'da bu işi göreceğiz.
5. Online inference performansı#
Çoğu işlem normal — modelin %99.9 zaman "negative" dönmesi inference
mimarisinde bir cache fırsatı. Modül 32 deployment'ta bu trick'i göstereceğiz.
Imbalance Doğal Bir Olgu — Yapay Olarak Düzeltme Tuzakları#
Yeni başlayanların ortak yanlışı: eğitim setini dengelemek için pozitif
örnekleri yapay olarak çoğaltmak veya negatifleri silmek ve sonra %95
accuracy almak.
Sorun: Test ortamı hâlâ %0.1 imbalanced. Eğitilmiş model bu dağılımda
aşırı sık alarm üretir (eğitildiği %50-%50 dağılım canlı'da yok).
Doğru yaklaşım#
- Train: dengeli (SMOTE/oversampling) veya cost-weighted
- Validation: gerçek imbalanced dağılım
- Test: gerçek imbalanced dağılım
- Production: gerçek imbalanced dağılım
Bu sayede model dengeli öğrenir ama imbalanced ortamda doğru kalibre olur.
Modül 3.2'de bu pipeline'ı detaylı kuracağız.
👉 Bir sonraki ders
Ders 3.2 — Sampling Stratejileri. SMOTE (Synthetic Minority Oversampling), ADASYN, Borderline-SMOTE, SMOTE-NC (Numeric + Categorical). Hangisi ne zaman? Sentetik veri üretmenin tuzakları ve doğru pipeline mimarisi.
Frequently Asked Questions
ROC-AUC'nin paydasında True Negative sayısı var; imbalanced'de TN sayısı çok büyük, küçük FP değişimleri ROC-AUC'yu çok az etkiler. PR-AUC sadece pozitif sınıf üzerine odaklanır (Precision = TP/(TP+FP), Recall = TP/(TP+FN)) — imbalanced'in gerçek hikayesini söyler. Modül 4'te detaylı göreceğiz.
Yorumlar & Soru-Cevap
(0)Yorum yazmak için giriş yap.
Yorumlar yükleniyor...
Related Content
Module 0: Course Framework & Workshop Setup
Who Is an Anomaly Detection Engineer? Differences from Fraud, SRE, Quality Engineer Roles and the Turkey Salary Landscape
Start LearningModule 0: Course Framework & Workshop Setup
Course Philosophy: Why This Path, Why This Order — The Anomaly Detection Learning River
Start LearningModule 0: Course Framework & Workshop Setup