Yanlılık ve varyans arasındaki denge: model neden ya yetersiz ya aşırı öğrenir?
Sözlük

Yanlılık ve varyans arasındaki denge: model neden ya yetersiz ya aşırı öğrenir?

Hazırlayan: Mindset Institute EditörlüğüGüncellendi: 4 dk okuma

Yanlılık-varyans dengesi, bir makine öğrenmesi modelinin hem basit kalıp hem aşırı ezberci olmaktan nasıl kaçındığını açıklar. Örnek ve çözüm yolları.

Yanlılık-varyans dengesi nedir?

Yanlılık-varyans dengesi (bias-variance tradeoff), bir makine öğrenmesi modelinin yeni veride yaptığı hatanın farklı kaynaklardan geldiğini ve bu kaynaklardan birini azaltmaya çalışırken çoğu zaman diğerini artırdığını anlatan kavramdır. Amaç, bunların toplam etkisini en düşük düzeyde tutan model karmaşıklığını bulmaktır.

Yanlılık, modelin varsayımlarının gerçek ilişkiyi yakalamak için fazla basit kalmasından doğan sistematik hatadır. Varyans ise modelin eğitim verisindeki küçük değişikliklere aşırı duyarlı olmasından doğan hatadır. Kavram, modelin eğitim verisinde iyi görünüp yeni veride neden başarısız olabildiğini açıklamak için kullanılır.

Yanlılık ve varyans tek tek ne anlama gelir?

Yüksek yanlılık, modelin ilişkiyi baştan yanlış biçimde sınırlaması demektir. Örneğin eğri biçimli bir ilişkiyi düz bir çizgiyle açıklamaya çalışan doğrusal model, ne kadar çok veri görürse görsün aynı sistematik hatayı yapar. Bu duruma yetersiz öğrenme (underfitting) denir ve model hem eğitim hem sınama verisinde zayıf sonuç verir.

Yüksek varyans ise modelin eğitim verisindeki gürültüyü bile öğrenmesi demektir. Çok derin bir karar ağacı, eğitim örneklerinin neredeyse hepsini doğru tahmin eder ama farklı bir örneklemle eğitildiğinde bambaşka kurallar üretir. Bu duruma aşırı öğrenme (overfitting) denir: eğitim verisinde hata çok düşüktür, görmediği veride yüksektir.

Bunlara ek olarak indirgenemeyen hata vardır: verinin kendi gürültüsünden gelir ve hiçbir model onu ortadan kaldıramaz.

Denge nasıl çalışır? Karmaşıklık ve hata ilişkisi

Model karmaşıklığı arttıkça, yani daha esnek bir model seçildikçe veya daha fazla özellik eklendikçe yanlılık genellikle düşer, varyans yükselir. Karmaşıklık azaldıkça tersi olur. Sınama hatasının toplamı çoğunlukla çan eğrisine benzer bir yol izler: başta modelin esnekliği hatayı düşürür, belli bir noktadan sonra aşırı öğrenme hatayı yeniden yükseltir.

Pratikte bu eğriyi öğrenme eğrileriyle izlenir. Eğitim ve doğrulama hataları birbirine yakın ve yüksekse sorun yanlılıktır. Eğitim hatası düşük, doğrulama hatası yüksek ve aralarında geniş bir boşluk varsa sorun varyanstır. Hangi durumda olduğunuzu bilmek, ne yapacağınızı belirler: yanlılık sorununa daha fazla veri eklemek fazla yardım etmez, varyans sorununa model karmaşıklığını artırmak zarar verir.

Küçük bir örnek: konut fiyatı tahmini

Örneğin bir ekip, konutların fiyatını metrekare ve konum bilgisinden tahmin eden bir model kurmak istiyor. Yalnızca metrekareyi kullanan doğrusal bir model hem eğitim hem sınama verisinde benzer ve yüksek hata verir: yanlılığı yüksektir, çünkü konumun etkisini hiç görmemektedir.

Ekip sonra çok sayıda özellik ve çok derin bir ağaç topluluğu denerse eğitim hatası neredeyse sıfıra iner ama sınama hatası yükselir. Model bazı mahallelerdeki birkaç alışılmadık satışı ezberlemiştir; varyansı yüksektir. Orta karmaşıklıkta bir model, uygun özellikler ve düzenlileştirme ile uç noktalar arasında dengeli sonuç verir.

Dengeyi sağlamak için hangi yöntemler kullanılır?

Yanlılığı düşürmek için daha esnek bir model ailesine geçmek, anlamlı yeni özellikler üretmek veya düzenlileştirmeyi gevşetmek denenir. Varyansı düşürmek için daha fazla eğitim verisi toplamak, özellik sayısını azaltmak, düzenlileştirmeyi (L1, L2) güçlendirmek, ağaçlarda derinliği sınırlamak veya erken durdurma kullanmak yaygındır.

Topluluk yöntemleri farklı yönlerde çalışır: bagging (örneğin rastgele orman) birçok modelin ortalamasını alarak varyansı düşürür, boosting ise ardışık modellerle yanlılığı azaltmaya odaklanır. Çapraz doğrulama ve hiperparametre arama ise doğru karmaşıklık noktasını ölçmenin yoludur; ayar işlemi doğrulama verisinde yapılır, nihai değerlendirme hiç dokunulmamış sınama verisinde bırakılır.

Sık yapılan hatalar ve ilişkili kavramlar

En yaygın hata, eğitim verisindeki başarıya bakıp modelin iyi olduğuna karar vermektir. Bir diğeri, veri sızıntısı yüzünden doğrulama hatasını olduğundan düşük görmek ve varyans sorununu gizlemektir. Ayrıca her başarısızlığı "daha fazla veri" ile çözmeye çalışmak yanlılık kaynaklı sorunlarda boşa emektir.

İlişkili kavramlar: aşırı öğrenme yüksek varyansın, yetersiz öğrenme yüksek yanlılığın sonucudur. Düzenlileştirme, model karmaşıklığına ceza getirerek varyansı kontrol eden bir araçtır. Modern derin öğrenmede çok büyük modellerin bazen bu klasik çan eğrisini izlemediği de gözlenir; yine de dengeyi anlamak, hata tanısı koymanın temel dilidir.

Bu kavramı Mindset programlarında nerede çalışırsınız?

Makine öğrenmesi pratiği yapan veri bilimcileri ve analitik ekipleri için bu kavram, model seçiminin ve doğrulamanın çerçevesidir. Makine Öğrenmesi (Uygulamalı) Programı'ndaki model doğrulama ve hiperparametre optimizasyonu ile topluluk yöntemleri modülleri, dengeyi uygulamalı olarak ele almak için uygun başlangıç noktalarıdır.

Databricks ile İleri Düzey Makine Öğrenmesi programındaki model değerlendirme ve iyileştirme başlığı ile Azure Machine Learning programındaki model eğitimi ve deney takibi modülü, aynı kavramı bulut ortamında deney kayıtlarıyla izlemek isteyen ekiplere yöneliktir.

İlgili Mindset programı

Makine Öğrenmesi (Uygulamalı) Programı

Sık sorulanlar

Sık sorulan sorular

Yüksek yanlılık ve yüksek varyansı pratikte nasıl ayırt ederim?

Eğitim ve doğrulama hatalarını birlikte inceleyin. Hatalar birlikte yüksekse ve birbirine yakınsa model fazla basittir, yani yanlılık yüksektir. Eğitim hatası düşük ama doğrulama hatası belirgin biçimde yüksekse model eğitim verisini ezberlemiştir, yani varyans yüksektir. Öğrenme eğrileri bu ayrımı görsel olarak gösterir.

Daha fazla veri her zaman sorunu çözer mi?

Hayır. Daha fazla veri esas olarak varyansı düşürür, çünkü model gürültüyü ezberlemekte zorlanır. Model yapısal olarak fazla basitse yani yanlılık sorunu varsa, veri artsa da hata belli bir seviyede kalır; bu durumda daha esnek model veya daha anlamlı özellikler gerekir.

Aşırı öğrenme ile yüksek varyans aynı şey mi?

Birbirine çok yakındırlar. Aşırı öğrenme, modelin eğitim verisini ezberleyip yeni veride kötü performans göstermesini anlatan gözlemdir. Yüksek varyans ise bunun istatistiksel nedenidir: modelin tahminleri eğitim örneklemine göre çok değişir. Günlük kullanımda çoğu zaman birbirinin yerine kullanılırlar.

Düzenlileştirme (regularization) bu dengede ne yapar?

Düzenlileştirme model parametrelerine ceza getirerek karmaşıklığı sınırlar. Böylece biraz yanlılığı artırmayı göze alıp varyansı daha fazla düşürür ve genelleme başarısını iyileştirir. Ceza katsayısı ne kadar büyükse model o kadar basit kalır, bu yüzden değeri doğrulama verisiyle ayarlanır.

Yanlılık-varyans dengesi derin öğrenme için de geçerli mi?

Temel mantık geçerlidir: model çok basitse yetersiz, veriye göre fazla esnekse aşırı öğrenme görülür. Ancak çok büyük sinir ağlarında klasik çan eğrisinin her zaman izlenmediği gözlemlenmiştir. Yine de erken durdurma, bırakma (dropout) ve veri artırma gibi yöntemlerin gerekçesi bu dengedir.

Yanlılık-Varyans Dengesi (Bias-Variance) Nedir?