Data leakage nedir? Gerçek projelerden örnekler verin ve nasıl önlersiniz?

Cevap

Data leakage, modelin eğitim sırasında prediction anında gerçekte erişemeyeceği bir bilgiye erişmesidir. Sonuç: offline metrikler mükemmel, production'da model çöker.

Yaygın türler ve örnekler

  • Target leakage: Hedefin sonucu olan bir özellik. Örnek: kredi temerrüt modelinde "tahsilat departmanına aktarıldı mı" kolonu. Bu bilgi temerrütten sonra oluşur.
  • Train-test contamination: Scaler'ı veya imputer'ı tüm veriye fit etmek, sonra split yapmak. Test istatistikleri train'e sızar.
  • Zamansal leakage: Rastgele split ile geleceği görmek. Ya da "son 30 günün ortalaması" özelliğini prediction tarihinden sonraki verilerle hesaplamak.
  • Duplicate / grup leakage: Aynı hastanın görüntüleri hem train'de hem test'te.
  • Preprocessing leakage: Oversampling (SMOTE) işlemini split'ten önce yapmak.

Önleme

  1. Önce split, sonra her şey. Tüm dönüşümleri Pipeline içine koy.
  2. Her özellik için "bu değer prediction anında biliniyor mu?" sorusunu sor (point-in-time correctness).
  3. Zamana bağlı verilerde zaman bazlı split kullan.
  4. Şüpheli derecede yüksek feature importance'a sahip özellikleri incele.
  5. Feature store'larda point-in-time join kullan.
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import cross_val_score

pipe = Pipeline([("scale", StandardScaler()), ("clf", LogisticRegression())])
cross_val_score(pipe, X, y, cv=5)  # scaler her fold'da yalnızca train'e fit edilir
  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