![](https://crypto4nerd.com/wp-content/uploads/2023/07/1v2l5YMXbCubVqvPe1hlgxQ.png)
Makine öğrenmesi modellerinin tahminlerindeki bias ve variance değerlerinin önemini anlamak için bu bilgilerin nasıl kullanılabileceğine odaklanacağız.
Bir makine öğrenmesi modelini eğittiğimizi düşünelim, ancak model yeterli performansa ulaşamadı. Bu durumda, modeli geliştirmek için neler yapabileceğimizi düşünmeye başlarız.
- Veri setine yeni veriler ekleyebiliriz.
- Feature sayısını azaltabilir veya artırabiliriz.
- Polinom özellikler (x₁², x₂², x₁x₂) ekleyebiliriz.
- Regularizasyon parametresini küçültebiliriz veya yükseltebiliriz.
Hangi senaryoda hangi yolu izlememiz gerektiğini belirlemek için, bias ve variance değerlerine dikkat etmek oldukça önemlidir. Bu, model geliştirme aşamasında büyük bir zaman tasarrufu sağlayabilir.
Bias ve variance kavramlarına değinelim. Bias ve variance, bir modelin performansını ve genelleme yeteneğini gösteren iki önemli ölçüdür. Bu kavramların tanımları şu şekildedir:
Bias, bir modelin tahminlerinin gerçek değerlere göre ne kadar sapma gösterdiğini ifade eder. Yani, hedef fonksiyonu ne kadar doğru tahmin ettiğini belirtir.
Variance ise, bir modelin farklı veri kümelerine uygulandığında, eğitim veri setinde iyi performans gösterse bile tahminlerinin ne kadar değişkenlik gösterdiğini ifade eder. Bu, modelin genelleme yeteneğini ve eğitim veri setine ne kadar iyi uyarlandığını gösteren bir ölçüdür.
Sol grafikte yüksek bir bias gözlenir ve model underfit durumundadır. Ortadaki grafik ise ideal bir durumu yansıtır. Sağdaki grafikte ise yüksek bir variance gözlenir ve model overfit olmuştur.
Daha açıklayıcı olmak gerekirse, soldaki grafikte Jtrain oldukça yüksektir ve aynı zamanda Jcv değeri de yüksektir (Jtrain ≈ Jcv). Ortadaki grafikte her iki değer de düşüktür. Sağdaki grafikte ise Jtrain düşük olmasına rağmen Jcv oldukça yüksektir (Jcv >> Jtrain).
(Jtrain, modelin eğitim veri seti üzerindeki hatasını; Jcv, modelin validation veri seti üzerindeki hatasını temsil eder.)
Burada belirtmek önemlidir ki, bir modelin performansını, Jcv veya Jtrain değerlerine bakarak kesin olarak yorumlayamayız. Jtest değeri, modelin gerçek dünyadaki performansını değerlendirmek için daha güvenli bir yoldur.
Bias ile Variance arasındaki ilişkiyi aşağıdaki şekilde gösterebiliriz:
Grafikte, modelin karmaşıklığını yani esnekliğini temsil eden x ekseni bulunurken, y ekseni üzerinde ise modelin hatası veya hata karelerinin toplamı (örneğin Jtrain veya Jcv) yer almaktadır.
Düşük karmaşıklığa sahip bir model, sol tarafta yer alan noktadan temsil edilir. Bu durumda model, veri setine yeterince uyum sağlamaz (yüksek bias) ve underfit olur. Yani, gerçek ilişkileri yeterince yakalayamaz.
Orta bölgedeki nokta ise optimum karmaşıklığı temsil eder. Bu nokta, modelin doğru bir dengeye sahip olduğu ve hem eğitim veri setine uyum sağladığı hem de yeni veri noktalarında iyi tahminler yaptığı noktayı gösterir.
Yüksek karmaşıklığa sahip bir model ise sağ tarafta yer alan noktadan temsil edilir. Bu durumda model, eğitim veri setine aşırı uyum sağlar (yüksek variance) ve overfit olur. Yani, veri setindeki gürültülere de uyum sağlayarak genelleme yapma yeteneğini kaybeder.
Bu grafik, bias ve variance arasındaki dengeyi gösterir. Optimum değer, modelin overfit olmadan ve underfit olmadan genelleme yapabildiği ideal durumdur. Model geliştirme aşamasında, bias ve variance değerlerine göre modelin karmaşıklığını ayarlamak, bu optimum dengeyi bulmamıza yardımcı olur.