Dengesiz (imbalanced) bir veri setiyle nasıl başa çıkarsınız? Örneğin %0.5 fraud oranı.

Cevap

Önce doğru metriği seçmek, sonra veri, algoritma ve karar eşiği seviyesinde müdahale etmek gerekir.

1. Metrik

Accuracy kullanma. PR-AUC, recall@sabit precision, F1 veya iş maliyetine dayalı bir metrik seç. Split'leri stratified yap.

2. Veri seviyesi

  • Undersampling: Çoğunluk sınıfından örnek atmak. Hızlı, ama bilgi kaybı var.
  • Oversampling: Azınlık sınıfını çoğaltmak veya SMOTE ile sentetik örnek üretmek. Sadece train fold'unda yapılmalı, yoksa leakage olur.
  • Daha fazla azınlık örneği toplamak çoğu zaman en etkili yoldur.

3. Algoritma seviyesi

  • Class weight: Loss'ta azınlık sınıfa daha büyük ağırlık. class_weight="balanced", XGBoost'ta scale_pos_weight = negatif/pozitif.
  • Focal loss: Derin öğrenmede kolay örneklerin ağırlığını azaltır.
  • Ağaç tabanlı ensemble modeller genelde iyi bir başlangıçtır.

4. Eşik ayarı

Model olasılık üretir, karar eşiği sizin seçiminizdir. Validation setinde PR eğrisinden iş hedefine (örneğin "precision en az %80 olsun") uygun eşiği seçin.

from sklearn.metrics import precision_recall_curve
p, r, th = precision_recall_curve(y_val, proba)
best = th[(p[:-1] >= 0.80).argmax()]  # precision >= 0.8 sağlayan ilk eşik

Dikkat: Resampling veya class weight olasılıkların kalibrasyonunu bozar. Olasılık değerleri önemliyse sonradan kalibrasyon (Platt, isotonic) uygulayın.

  1. Hiperparametre optimizasyonunu nasıl yaparsınız? Grid search, random search ve Bayesian optimization'ı karşılaştırın.OrtaMakine ÖğrenmesiYapay Zeka
  2. Feature scaling nedir? Standardization ile normalization arasındaki fark nedir ve hangi modeller ölçeklendirme gerektirir?KolayMakine ÖğrenmesiYapay Zeka
  3. PCA (Principal Component Analysis) nasıl çalışır? Ne zaman kullanılır, ne zaman kullanılmamalıdır?OrtaMakine ÖğrenmesiYapay Zeka
  4. NumPy kullanarak k-means algoritmasını sıfırdan yazın. k değerini nasıl seçersiniz ve algoritmanın sınırlamaları nelerdir?ZorMakine ÖğrenmesiYapay Zeka
  5. XGBoost ve LightGBM klasik gradient boosting'den hangi açılardan farklıdır? En önemli hiperparametreleri nelerdir?ZorMakine ÖğrenmesiYapay Zeka
  6. Random Forest ile Gradient Boosting arasındaki fark nedir? Bagging ve boosting'i karşılaştırın.OrtaMakine ÖğrenmesiYapay Zeka

Bu konuda başka bir soru biliyor musun?

Mülakatta karşılaştığın soruları ekle, onaylandıktan sonra yayına alınsın.

Soru ekle