KonuAnlatım.com

Overfitting nedir?

Yapay Zekâ · Bölüm 28Yapay ZekâDers

Bir makine öğrenmesi modeli eğitim verisinde neredeyse kusursuz sonuç verirken yeni verilerde neden başarısız olur? Bu derste makine öğrenmesinin en klasik tuzağı olan overfitting'i (aşırı öğrenme) sıfırdan ele alıyoruz: ne anlama gelir, nasıl anlaşılır, neden oluşur ve hangi yöntemlerle önlenir? Konu, Yapay Zekâ dersleri bölümümüzdeki Makine Öğrenmesi ünitesinin bir parçasıdır; ünitedeki diğer derslerle birlikte okumak kavramları pekiştirir.

Overfitting Nedir?

Overfitting, bir modelin eğitim verisini ezberlemesi ama hiç görmediği yeni verilerde başarısız olması durumudur. Türkçede 'aşırı öğrenme' ya da 'aşırı uyum' olarak çevrilir. Model, verideki genel kuralları çıkarmak yerine örnekleri tüm ayrıntılarıyla, hatta gürültüsüyle birlikte aklında tutmuştur; bu yüzden eğitildiği veride mükemmel, gerçek hayatta zayıftır. Sorun şudur: modelin aklında kural değil, cevap anahtarı vardır.

En bilinen benzetme sınav hazırlığıdır. Soru bankasındaki her soruyu cevabıyla birlikte ezberleyen bir öğrenci, aynı sorular gelirse tam not alır; ama sorular değişince çöker. Mantığı kavrayan öğrenci ise görmediği sorularda bile başarılıdır. Modellerden beklenen de ikinci tür öğrenmedir: ezber değil, kural çıkararak genelleme yapmak. Bu genelleme becerisinin temelini makine öğrenmesi dersinde atmıştık; overfitting ise tam olarak bu becerinin bozulduğu noktadır.

Somut bir örnekle görelim. Elinizde 200 eve ait metrekare, oda sayısı ve fiyat verisi olsun; amaç fiyat tahmini olsun. Gereğinden karmaşık bir regresyon modeli, 200 evin her birinin fiyatına neredeyse tam oturan kıvrımlı bir eğri üretebilir ve eğitim hatası sıfıra yaklaşır. Ancak bu eğri 'metrekare arttıkça fiyat genel olarak artar' gibi taşınabilir bir bilgiyi değil, o 200 evin kaderini ezberlemiştir. 201. ev için yapılan tahmin, aynı bölgedeki benzer daireleri bile anlamsız biçimde yüksek ya da düşük gösterebilir.

Overfitting Nasıl Anlaşılır?

En belirgin belirti, eğitim başarısı ile test başarısı arasındaki makastır. Model eğitim verisinde yüzde 99 doğruluk gösterirken hiç görmediği veride yüzde 70'te kalıyorsa, aradaki fark büyük olasılıkla ezberlemeden kaynaklanır. Tek başına yüksek eğitim doğruluğu hiçbir şey kanıtlamaz; model, kendi defterini okumaktadır. Eğitim ve test kümelerinin neden ayrı tutulması gerektiğini eğitim ve test verisi dersinde ayrıntılı işliyoruz.

İkinci ipucu eğitim sürecinin kendisinden gelir: eğitim ilerledikçe eğitim hatası düşmeye devam ederken doğrulama hatası önce düşer, belli bir noktadan sonra artmaya başlar. Eğrinin bu dönüş noktası, modelin öğrenmeyi bırakıp ezberlemeye başladığı andır. Doğrulama kümesi ve çapraz doğrulama gibi model değerlendirme teknikleri de aşırı öğrenmeyi erken yakalamanın standart yollarıdır.

Overfitting Neden Oluşur?

Aşırı öğrenmenin arkasında genellikle şu nedenlerden biri ya da birkaçı birlikte bulunur:

  • Gereğinden karmaşık model: Verinin yapısı için fazla sayıda parametre ya da katman içeren, çok esnek bir model seçmek.
  • Az veri: 50 örnekle eğitilen model bu 50 örneği ezberlemeye çok yatkındır; veri arttıkça ezberlemek giderek zorlaşır.
  • Çok uzun eğitim: Aynı veri üzerinde aşırı sayıda tur (epoch) tekrarlamak. Model önce genel örüntüyü öğrenir, kalan süreyi veriye iyice yapışmakla geçirir.
  • Gürültü ve aykırı değerler: Yanlış etiketlenmiş örnekler ve istisnalar, model bunları da kural sanarak öğrenir.
  • Veri çeşitliliğinin azlığı: Örnekler tek kaynaktan ve birbirine çok benziyorsa model, gerçek dünyadaki çeşitliliği hiç görmemiş olur.

Overfitting Nasıl Önlenir?

Overfitting ile mücadelede kullanılan başlıca yöntemler şunlardır:

  • Daha fazla ve daha çeşitli veri: Çoğu zaman en etkili çözüm budur. Veri toplamak mümkün değilse görüntüleri döndürüp kesmek, cümleleri farklı biçimlerde yeniden yazmak gibi veri artırma (data augmentation) teknikleri devreye girer.
  • Modeli sadeleştirmek: Katman ve parametre sayısını azaltmak ya da daha düşük karmaşıklıkta bir model seçmek.
  • Erken durdurma (early stopping): Doğrulama hatası düşmeyi bırakıp artmaya başladığında eğitimi o noktada kesmek.
  • Düzenlileştirme (regularization): L1 ve L2 gibi ceza terimleri modelin ağırlıklarını küçük tutmaya zorlar; böylece model tek tek örneklere tam oturan aşırı hassas çözümlerden uzak durur.
  • Dropout: Derin ağlarda her eğitim adımında nöronların bir kısmının rastgele kapatılmasıdır; ağ tek bir nörona yaslanan ezberci çözümler kuramaz. Bu teknik, yapay sinir ağları ve derin öğrenme çalışmalarının temel araçlarından biridir.
  • Çapraz doğrulama: Veriyi farklı bölümlerle defalarca eğitim ve doğrulama olarak bölerek modelin başarısını tek bir şanslı bölünmeye bağlamamak.

Büyük modellerin çağında da sorun aynı özü koruyor: 2024-2025 döneminde büyük dil modellerinde bile eğitim verisini neredeyse kelimesi kelimesine geri çağıran 'ezberleme' davranışı, overfitting'in ölçeklenmiş hâli olarak inceleniyor. Değişen şey, çözüm listesinin en üstüne veri kalitesi ve özenli veri seçiminin geçmiş olması; az ya da kirli veriyle eğitilen dev bir model de ezberci davranıyor.

Overfitting ile Underfitting Farkı

Overfitting'in karşıtı underfitting (eksik öğrenme)tir: model gereğinden basit kaldığı için eğitimi bile öğrenemez. İkisini yan yana koyunca tablo netleşir:

  • Overfitting: Eğitim başarısı yüksek, test başarısı düşük. Model çok karmaşıktır, veriyi ezberler.
  • Underfitting: Hem eğitim hem test başarısı düşük. Model çok basittir, hiç öğrenemez.
  • Hedef: İkisinin ortasında, eğitim ve test başarısının yüksek ve birbirine yakın olduğu denge noktasıdır.

Pratikte karar kuralı basittir: eğitim başarısı bile düşükse modeli karmaşıklaştırın ya da daha uzun eğitin; eğitim ile test arasındaki makas açıldıysa modeli sadeleştirin, veri ekleyin ya da düzenlileştirme uygulayın.

Sık Yapılan Hatalar ve Yanılgılar

Aşırı öğrenmeyle uğraşan yeni uygulayıcıların en sık düştüğü durumlardan bazıları şunlardır:

  • Eğitim doğruluğunu başarı sanmak: En klasik yanılgı budur. Test verisine bakılmadan duyurulan yüzde 99 gibi oranlar, ezberi gizleyebilir.
  • Test setini erken harcamak: Test verisine bakıp model ayarlarıyla sürekli oynamak, test kümesini fiilen eğitim kümesine çevirir; test seti yalnızca son değerlendirme için saklanmalıdır.
  • Veri sızıntısı (data leakage): Hedefe doğrudan bağlı bir bilginin özellikler arasına karışması; model tahmin ediyormuş gibi görünür ama gerçek hayatta çalışmaz.
  • Çözümü hep modelde aramak: Bazen daha güçlü bir model değil, daha çok ya da daha temiz veri gerekir.
  • Düzenlileştirmeyi abartmak: Aşırı güçlü ceza ya da çok yüksek dropout oranı, modeli bu kez underfitting'e sürükler.

Özetle overfitting, modelin 'öğrenen' değil 'ezberleyen' yüzünün öne çıktığı durumdur. Eğitim ile test ayrımını ciddiye alan, doğrulama başarısıyla modeli izleyen ve gerektiğinde sadeleşen biri, bu tuzağın büyük bölümünden kolayca kaçınır.

Sık Sorulan Sorular

Overfitting nedir?

Overfitting (aşırı öğrenme), bir makine öğrenmesi modelinin eğitim verisini gürültüsü ve tesadüfi ayrıntılarıyla birlikte ezberlemesi durumudur. Model eğitim verisinde çok başarılı görünür ama hiç görmediği yeni verilerde düşük performans gösterir.

Overfitting ile underfitting arasındaki fark nedir?

Overfitting'de model eğitimde çok iyi, yeni veride zayıftır; underfitting'de model gereğinden basit kaldığı için hem eğitim hem yeni veride başarısızdır. Birincisi aşırı uyum, ikincisi yetersiz uyumdur.

Overfitting nasıl önlenir?

Daha fazla ve çeşitli veri toplamak, modeli basitleştirmek, düzenlileştirme (L1/L2), erken durdurma, dropout, veri artırma ve çapraz doğrulama en yaygın çözümlerdir. Amaç, modelin veriyi ezberlemek yerine örüntüleri genellemesini sağlamaktır.

Dersler

Tümü →