Bir veri bilimi projesinde uygun bir model oluşturup uyguladıktan sonra, modelin başarısını değerlendirirken bazı sorunlarla karşılaşabiliriz. Bunlardan bazıları, makine öğrenimi modellerinde sıkça karşılaşılan “overfitting” ve “underfitting” terimleridir. Peki bunlar tam olarak ne anlama gelir ve bu iki uç arasında mükemmel dengeyi nasıl sağlarız? Hadi birlikte inceleyelim!
Geliştirilen bir modelin amacı, bağımlı ve bağımsız değişkenler arasındaki ilişkiyi ve bu ilişkinin anlamını çıkarmaktır. Bu durumda modelimizden veriyi ezberlemesini değil, veriler arasındaki yapıyı öğrenmesini bekleriz.
Modelin verilerdeki temel örüntüleri yakalamak için çok basit olması ve bu nedenle kötü performans göstermesi olarak tanımlanır.
Modelin çok karmaşık olması nedeniyle verilerdeki gürültüyü veya rastgele dalgalanmaları yakalamaya başlaması ve bu nedenle modelin daha önce karşılamadığı yeni verilere genelleme yaparken kötü performans göstermesi olarak tanımlanabilir.
Hedef, bu iki uç arasında dolaşan ve hem yanlılığı (modelin tahminlerinin gerçek değerlerden ne kadar farklı olduğu) hem de varyansı (modelin tahminlerinin farklı veri kümeleri için ne kadar değiştiği) en aza indiren optimal modeli bulmaktır. Bu model, eğitim veri setinin temsil edildiği veya ezberlendiği bir model değildir. Optimal modelin amacı veri setindeki ilişkinin, örüntünün yani yapının doğru temsil edilmesidir.
Aşırı öğrenme sorunu eğitim seti ve test setinin, model karmaşıklığı ve tahmin hatası çerçevesinde, birlikte değerlendirilmesi ile tespit edilebilir. Eğitim seti ve test setindeki hata değişimleri incelenir.
İki hatanın birbirinden ayrılmaya başladığı nokta (çatallanmanın başladığı nokta) itibariyle aşırı öğrenme başlamış demektir.
Kurulan bir modelin hassasiyetini artırarak daha detaylı tahminler yapabilmesi için özelliklerini güçlendirmeye odaklanırız. Bu süreç doğrusal modeller, ağaç yöntemleri ve sinir ağları gibi farklı yöntemler için değişiklik gösterir. Ancak bu durum model karmaşıklığını artırmak dolayısı ile aşırı öğrenme problemi ile karşılaşabilme ihtimalini artırmak demektir. Model karmaşıklığını (eğitim süresi, iterasyon süresi vb.) azaltmak, aşırı öğrenmenin önüne geçilmesindeki ana felsefedir. Model karmaşıklığını artırmak, belirli bir noktaya kadar hataları azaltasa da model performasının optimum olduğu noktanın ardından eğitim setinde ezberleme ve bunun neticesinde test seti ile yapılan analizlerde hataların artması durumu, yani overfitting ile karşılaşılacaktır.
Aynı zamanda aşırı öğrenmeyi önlemek için korelasyon, eksik değer ve aykırı değer analizleri büyük önem taşır. Örneğin, veri setinde yüksek korelasyona sahip bağımsız değişkenlerin varlığı, aynı bilgiyi taşımaları nedeniyle hem yanlılığa hem de aşırı öğrenmeye neden olabilir. Bu nedenle veri setinde yüksek korelasyon gösteren değişkenlerin yeniden irdelenmesi gerekebilir.
Overfitting sorununu çözümlendirmek için çeşitli yöntemler kullanılabilir. Bu yöntemlerden bazıları şunlardır:
Farklı makine öğrenimi modelleri, aşırı öğrenmeye neden olabilecek farklı değişkenlere sahiptir. Modellere göre çözümlendirme tekniklerine örnek verelim:
Aşırı öğrenme problemine sektörün içinden gerçek iş problemi örneği verelim:
Yüz tanıma uygulamalarında, aşırı öğrenme probleminin önüne geçmek büyük önem taşır. Örneğin, bir güvenlik kamerası sistemi yüz tanıma özelliği kullanarak belirli kişilerin binaya girişini otomatik olarak denetlemek isteyebilir. Eğitim setindeki yüz görüntüleri, farklı ışık koşulları, açılar ve yüz ifadeleri ile sınırlıdır. Bu durumda, modelin eğitim setini ezberlemesi ve yeni, daha önce görülmemiş yüz görüntülerine kötü genelleme yapması büyük bir sorun teşkil eder.
Bu problemin çözümü için data augmentation ve çapraz doğrulama yöntemleri kullanılabilir. Data augmentation ile eğitim veri setindeki yüz görüntülerini döndürerek, yeniden ölçeklendirerek ve farklı ışık koşulları altında görüntüleyerek veri seti zenginleştirilir. Bu sayede model, farklı koşullar altında daha iyi genelleme yapabilecek şekilde eğitilir. Çapraz doğrulama ile de modelin performansı sürekli olarak kontrol edilerek aşırı öğrenme riski azaltılır.
Sonuç olarak, aşırı öğrenme probleminin çözümü için farklı teknikler ve yöntemler kullanılabilir. İdeal çözüm, projeye ve kullanılan makine öğrenimi modeline bağlı olarak değişkenlik gösterebilir. Aşırı öğrenme problemini önlemeye yönelik bu tekniklerin uygulanması, modelin başarımını artırarak gerçek hayatta daha güvenilir ve doğru tahminler yapabilmesini sağlar.
Aşırı öğrenme problemi ve makine öğrenmesi ile ilgili eğitimler almak için Miuul’un sunmuş olduğu içeriklere göz atabilir; böylece veri bilimi kariyerinizde, Miuul’un uzman kadro ve desteği ile, emin adımlarla ilerleyebilirsiniz.
Kaynaklar
Towards Data Science, Overfitting
Wikipedia, Overfitting
Veri Bilimi Okulu, Aşırı öğrenme (overfitting)
Miuul, Makine öğrenmesi
GeeksforGeeks, ML | Underfitting and Overfitting