Overfitting ve Underfitting: Nasıl Tespit Edilir ve Önlenir?
Makine öğrenmesi modellerinin pratikte başarısız olmasının en yaygın iki nedeni overfitting (aşırı uyum) ve underfitting (yetersiz uyum) sorunlarıdır. Her ikisi de modelin gerçek dünya verisinde iyi performans gösterememesine yol açar; ancak kökenleri ve çözümleri birbirinden farklıdır. Bu yazıda her iki sorunu detaylıca inceliyor, learning curve analizi ile nasıl tespit edileceğini ve hangi tekniklerle giderileceğini açıklıyoruz.
Bias-Variance Tradeoff
Model hatasını anlamanın teorik temeli bias-variance tradeoff'tur. Bir modelin beklenen tahmin hatası üç bileşenden oluşur: Hata = Yanlılık² + Varyans + İndirgenemez Gürültü.
- Yanlılık (Bias): Modelin gerçek ilişkiyi ne kadar yanlış temsil ettiğinin ölçüsüdür. Yüksek yanlılık underfitting'e işaret eder; model çok basittir ve verideki örüntüleri yakalayamaz.
- Varyans: Modelin eğitim verilerindeki küçük değişikliklere ne kadar duyarlı olduğunu gösterir. Yüksek varyans overfitting'e işaret eder; model eğitim verisindeki gürültüyü de ezberler.
İdeal model, yanlılık ile varyansı dengeleyen modelin ta kendisidir. Modeli karmaşıklaştırdıkça yanlılık azalır ancak varyans artar; basitleştirince tam tersi olur. Bu dengeyi bulmak model geliştirmenin özünü oluşturur.
Overfitting: Belirtiler ve Çözümler
Overfitting, modelin eğitim verisini ezberlemesi ancak yeni veriye genelleyememesidir. Temel belirtisi şudur: eğitim seti hatası çok düşükken doğrulama/test seti hatası yüksek kalır ya da artmaya başlar. Learning curve grafiğinde iki eğri arasında büyük bir boşluk görülür.
Çözümler:
- Regularizasyon L1 (Lasso): Kayıp fonksiyonuna ağırlıkların mutlak değerinin toplamını ekler; önemsiz özellikleri sıfıra çekerek özellik seçimi de yapar.
- Regularizasyon L2 (Ridge): Ağırlıkların karelerinin toplamını ceza olarak ekler; tüm ağırlıkları küçülterek modeli düzleştirir.
- Dropout: Derin öğrenmede eğitim sırasında nöronları rastgele devre dışı bırakarak ağın belirli nöronlara aşırı bağımlılığını önler.
- Data Augmentation: Mevcut eğitim verisini döndürme, kırpma, renk değiştirme gibi dönüşümlerle çoğaltır; modelin daha çeşitli örnekler görmesini sağlar.
- Erken Durdurma (Early Stopping): Doğrulama hatası artmaya başladığında eğitimi durdurur.
- Daha fazla veri toplamak: En etkili ve kalıcı çözümdür; mümkün olduğunda öncelikle bu yol denenmelidir.
İpucu: Learning curve çizmek overfitting/underfitting tespitinde en güvenilir yöntemdir. Eğitim ve doğrulama hatalarını epoch veya örnek sayısı boyunca görselleştirin. İkisi arasındaki makas büyüyorsa overfitting; ikisi de yüksek seyrediyor ve yakınsamıyorsa underfitting söz konusudur.
Underfitting: Belirtiler ve Çözümler
Underfitting, modelin hem eğitim hem test verisinde zayıf performans göstermesidir. Learning curve'de her iki eğri de yakın seyreder; ancak her ikisi de kabul edilemeyecek kadar yüksek hata düzeyindedir.
Çözümler:
- Daha karmaşık model mimarisi kullanmak (daha fazla katman, nöron veya ağaç derinliği).
- Regularizasyon parametrelerini azaltmak.
- Daha fazla ve daha anlamlı özellik mühendisliği uygulamak.
- Eğitim süresini artırmak (daha fazla epoch).
- Learning rate'i düşürerek daha ince optimizasyon sağlamak.
Doğrulama Stratejileri
| Strateji | Açıklama | Ne Zaman Kullanılır? |
|---|---|---|
| Train / Val / Test Ayrımı | %70 eğitim, %15 doğrulama, %15 test | Büyük veri setlerinde |
| k-Fold Çapraz Doğrulama | Veri k parçaya bölünür, k kez farklı parça test seti olur | Orta büyüklükteki veri setlerinde |
| Stratified k-Fold | Sınıf dağılımı korunarak k-fold uygulanır | Dengesiz sınıflarda |
| Leave-One-Out (LOO) | Her seferinde tek bir örnek test seti olur | Çok küçük veri setlerinde |
| Time Series Split | Zaman sırasına saygı gösterecek şekilde bölünür | Zaman serisi verilerinde |
Pratik Kontrol Listesi
Model geliştirme sürecinde aşağıdaki kontrol listesini sistematik olarak uygulayın:
- Eğitim ve doğrulama kayıp eğrilerini her zaman çizin.
- Eğitim/test performansı arasındaki fark %5'i geçiyorsa overfitting araştırın.
- Baseline modeli önce basit tutun; karmaşıklığı adım adım artırın.
- Regularizasyon eklemeden önce veri kalitesini ve miktarını değerlendirin.
- Hiperparametre araması için mutlaka k-fold çapraz doğrulama kullanın.
- Nihai modeli yalnızca bir kez test setiyle değerlendirin; test seti hiperparametre seçiminde kullanılmamalıdır.
Kaynaklar
- Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep Learning. MIT Press.
- Hastie, T., Tibshirani, R., & Friedman, J. (2009). The Elements of Statistical Learning (2nd ed.). Springer.
Modelinizde Overfitting mi Var?
Model tanılaması, doğrulama stratejisi tasarımı ve regularizasyon uygulaması konusunda uzman desteği alın.
Ücretsiz Danışmanlık Al