Aşırı uyum vs eksik uyum: Overfitting ve underfitting örnekleri
Makine öğrenmesinde modelin eğitim verisine ne kadar iyi uyduğu, gerçek dünya performansının belirleyicilerinden biridir. İki uç durum sık görülür: model eğitim verisini "ezberleyip" yeni veride başarısız olur (aşırı uyum / overfitting) veya model ham verinin temel desenlerini öğrenemez ve hem eğitim hem testte kötü sonuç verir (eksik uyum / underfitting). Bu rehberde her iki kavramı tanımlayacak, somut örneklerle nasıl tespit edileceğini gösterecek ve pratik çözümler sunacağım.
Overfitting (Aşırı Uyum) nedir?
Overfitting, modelin eğitim setindeki gürültü ve rastgele detayları da öğrendiği; bu yüzden yeni, görülmemiş veride genelleme yapamadığı durumdur. Başka bir deyişle model, eğitim verisini çok iyi tahmin ederken doğrulama/test performansı önemli ölçüde düşer. Bu kavram hakkında teknik ve uygulamalı açıklamalar için kaynaklara bakabilirsiniz (Ultralytics, Index).
Overfitting'e örnekler
- Polinom regresyonda dereceyi çok yükseltmek: Eğri eğitim verisindeki her noktayı takip eder, gürültüyü modelin bir parçası haline getirir.
- Derin ağa çok sayıda parametre vermek ama yeterli veri olmamak: Ağ eğitim verisini "ezberler"; testte hata artar.
- Karar ağacını derinleştirip budama yapmamak: Ağacın dalları nadir örneklere göre şekillenir ve genelleme bozulur.
- Örnek uygulama: Görüntü sınıflandırmada arka plan veya kamera artefaktları modelin kararını etkiliyorsa, model gerçek obje yerine bu gereksiz detayları öğrenmiş olabilir.
Underfitting (Eksik Uyum) nedir?
Underfitting, modelin verideki temel desenleri bile yeterince öğrenememesi sonucunda hem eğitim hem doğrulama/test setlerinde zayıf performans göstermesidir. Model genellikle çok basittir veya uygun olmayan özelliklerle eğitilmiştir; dolayısıyla hem hata yüksektir hem de modelin kapasitesi yetersiz kalır (Ultralytics).
Underfitting'e örnekler
- Gerçek ilişki doğrusal iken çok basit bir lineer model kullanmak ve önemli özellikleri modelden hariç tutmak.
- Çok kısa süre eğitilmiş sinir ağı veya aşırı yüksek regularizasyon uygulanan model—hem eğitim hem test hatası yüksek çıkar.
- Yetersiz özellik mühendisliği: veri sinyali modelin görebileceği şekilde temsil edilmemiş olabilir.
Model performansını nasıl teşhis ederiz?
Basit ama etkili yaklaşım: eğitim ve doğrulama/test hatalarını karşılaştırın. Bu karşılaştırma genellikle modelin hangi uçta olduğunu söyler:
- Eğitim hatası düşük, doğrulama/test hatası yüksek → aşırı uyum.
- Eğitim hatası yüksek, doğrulama/test hatası da yüksek → eksik uyum.
- Her iki hata da düşüyorsa ve yakınsa → model muhtemelen iyi genelleme yapıyor.
Bu süreçte learning curve (öğrenme eğrileri) çizmek çok yararlıdır: eğitim/validasyon hatasını eğitim veri miktarı veya eğitim epochlarına göre görselleştirir. Ayrıca çapraz doğrulama (cross-validation) ile modelin farklı veri bölmeleri üzerindeki performansı daha güvenilir şekilde ölçülür (özet kaynak).
Overfitting'i azaltmak için pratik stratejiler
- Daha fazla veri: Eğitimi genişletmek modelin genellemesini iyileştirir; gerçek veriyi toplamak en etkili çözümlerden biridir.
- Veri artırma (data augmentation): Görüntü, ses veya metin alanında dönüşümlerle veri çeşitliliği sağlamak aşırı uyumu azaltır.
- Model karmaşıklığını azaltma: Daha basit mimariler, daha düşük derece polinomlar veya ağaç derinliğini kısıtlama.
- Regularizasyon: L1/L2, dropout veya weight decay gibi yöntemler parametrelerin fazla büyük olmasını engeller.
- Erken durdurma (early stopping): Doğrulama hatası artmaya başladığında eğitimi durdurmak aşırı öğrenmeyi engeller.
- Çapraz doğrulama: Hiperparametre ayarlarını daha güvenilir hale getirir, rastlantısal varyasyondan kaynaklı hatalara karşı dayanıklı sonuç verir.
- Ağaç tabanlı modellerde budama (pruning) veya sınırlı derinlik: Aşırı dallanmaya bağlı ezberlemeyi sınırlar.
Bu tekniklerin kombinasyonu çoğu durumda etkili olur; hangi yöntemin en uygun olduğu veri türüne ve model ailesine bağlıdır (kaynak).
Underfitting'i düzeltme yolları
- Model kapasitesini artırma: Daha karmaşık bir model, daha fazla katman veya düğüm gibi değişikliklerle sinyali yakalama gücü arttırılabilir.
- Özellik mühendisliği: Yeni değişkenler oluşturmak, kategorik değişkenleri uygun şekilde kodlamak veya etkileşim terimleri eklemek fayda sağlar.
- Eğitimi uzatma: Yetersiz epoch/iterasyon sayısı bazen öğrenmeyi engeller; uygun erken durdurma eşiklerine dikkat ederek eğitim süresini artırın.
- Regularizasyonu azaltma: Çok yüksek regularizasyon katsayısı modelin öğrenmesini engelleyebilir; parametre ayarı gereklidir.
Hızlı kontrol listesi (checklist)
- İlk olarak basit bir baseline model kurun ve sonuçları kaydedin.
- Learning curve çizin: eğitim vs doğrulama hatası.
- Train-test gap varsa (fark büyükse) → aşırı uyum adayıdır; model sadeleştirme, regularizasyon, daha fazla veri deneyin.
- Her iki hata yüksekse → underfitting ihtimali; model karmaşıklığını artırın, özellikleri iyileştirin.
- Hiperparametreleri çapraz doğrulama ile ayarlayın; değişikliklerin etkisini küçük adımlarla test edin.
- Son olarak, gerçek dünya dağılımına uygun bir test seti ile genelleme performansını doğrulayın.
Kısa karar tablosu
| Senaryo | Belirti | Öneri |
|---|---|---|
| Aşırı uyum | Eğitim hatası düşük, doğrulama/test hatası yüksek | Daha fazla veri, regularizasyon, model sadeleştirme, erken durdurma |
| Eksik uyum | Hem eğitim hem test hatası yüksek | Model kapasitesini artırma, özellik mühendisliği, daha uzun eğitim |
| İyi genelleme | Hatalar makul ve birbirine yakın | Modeli sabit tutup üretim testi yapın; gerekirse ince ayar yapın |
Uygulamalı vaka: Polinom regresyon ve karar ağacı akışı
Pratik bir akış şöyle olabilir: önce basit lineer modeli deneyin. Eğer lineer model altında kalıyorsanız (yüksek hata), polinom derece veya ağaç derinliği gibi kapasiteyi kademeli artırın. Her artışta doğrulama hatasını kontrol edin; doğrulama hatası azalıp sonra artmaya başlarsa bu aşamada aşırı uyum başlamış demektir—burada regularizasyon veya budama ile geri dönün. Bu tip adım adım deney, hem underfitting hem overfitting'i kontrol etmenizi sağlar.
Sonuç
Overfitting ve underfitting, model geliştirme sürecinin doğal parçasıdır. Anahtar, düzenli ölçüm yapmak, öğrenme eğrilerine bakmak ve sistematik olarak değişiklikleri test etmektir. Çoğu proje için birden fazla stratejiyi kombinleyerek en iyi sonucu elde edersiniz. Daha derin teknik açıklamalar ve örnekler için kaynaklara bakabilirsiniz: Ultralytics, Index, Erdoğan Bavaş.