Eğitim ve Test Kümeleri: Verileri Bölme

Önceki modülde, veri kümenizi iki alt kümeye bölme fikrini tanıtmıştık:

  • eğitim grubu: Model eğitmek için kullanılan bir alt kümedir.
  • test kümesi: Eğitilen modeli test etmek için kullanılan bir alt kümedir.

Tek veri kümesini aşağıdaki gibi bölümlere ayırabilirsiniz:

%80'i eğitim seti, %20'si de test seti olmak üzere iki parçaya ayrılmış yatay bir çubuk.

Şekil 1. Tek bir veri kümesini bir eğitim kümesi ve test kümesine bölme.

Test kümenizin aşağıdaki iki koşulu karşıladığından emin olun:

  • İstatistiksel olarak anlamlı sonuçlar verecek kadar büyük.
  • Veri kümesini bütün olarak temsil eder. Yani eğitim kümesinden farklı özelliklere sahip bir test seti seçmeyin.

Test kümenizin önceki iki koşulu karşıladığını varsayarsak hedefiniz yeni verilere iyi genellenen bir model oluşturmaktır. Test kümemiz yeni veriler için bir proxy işlevi görür. Örneğin, aşağıdaki resme bakın. Eğitim verileri için öğrenilen modelin çok basit olduğuna dikkat edin. Bu model mükemmel bir iş çıkaramaz, birkaç tahmin yanlıştır. Ancak bu model, eğitim verilerinde olduğu gibi test verilerinde de geçerlidir. Diğer bir deyişle, bu basit model eğitim verilerine fazla sığmaz.

İki model: Biri eğitim verileri, diğeri test verileri üzerinde çalışır.  Model çok basit. Yalnızca turuncu noktaları mavi noktalardan ayıran bir çizgi var.  Eğitim verilerindeki kayıp, test verilerindeki kayıpla benzerdir.

Şekil 2. Eğitilen modeli test verilerine göre doğrulama.

Hiçbir zaman test verileriyle eğitilemez. Değerlendirme metriklerinizde şaşırtıcı derecede iyi sonuçlar görmeniz yanlışlıkla test seti üzerinde eğitim verdiğinizin bir işareti olabilir. Örneğin, yüksek doğruluk, test verilerinin eğitim veri kümesine sızdığını gösterebilir.

Örneğin, bir e-postanın spam olup olmadığını tahmin etmek için konu satırını, e-posta gövdesini ve gönderenin e-posta adresini özellik olarak kullanan bir modeli ele alalım. Verileri, eğitim ve test kümelerine 80-20 şeklinde böleriz. Eğitimden sonra model, hem eğitim kümesinde hem de test kümesinde% 99 hassasiyete ulaşır. Test kümesinde daha düşük bir hassasiyet beklenir, bu yüzden verileri tekrar inceler ve test kümesindeki örneklerin çoğunun, eğitim kümesindeki örneklerin kopyası olduğunu keşfederiz (verileri bölmeden önce giriş veritabanımızdan aynı spam e-postasına ilişkin yinelenen girişleri silmeyi ihmal ettik). Test verilerimizden bazılarıyla ilgili istemeden eğitim gerçekleştirdik ve sonuç olarak, modelimizin yeni veriler için ne kadar iyi genelleme yaptığını artık doğru bir şekilde ölçmüyoruz.