K katlamalı çapraz doğrulama i̇çin basit bir kılavuz
Bir modelin veri seti üzerindeki performansını değerlendirmek için modelin yaptığı tahminlerin gözlemlenen verilerle ne kadar iyi eşleştiğini ölçmemiz gerekir.
Bunu ölçmenin en yaygın yolu, aşağıdaki şekilde hesaplanan ortalama karesel hatanın (MSE) kullanılmasıdır:
MSE = (1/n)*Σ(y ben – f(x ben )) 2
Altın:
- n: toplam gözlem sayısı
- y i : i’inci gözlemin yanıt değeri
- f(x i ): i’inci gözlemin tahmin edilen tepki değeri
Model tahminleri gözlemlere ne kadar yakınsa MSE o kadar düşük olacaktır.
Uygulamada belirli bir modelin MSE’sini hesaplamak için aşağıdaki süreci kullanırız:
1. Veri setini eğitim seti ve test seti olarak ikiye bölün.
2. Yalnızca eğitim setindeki verileri kullanarak modeli oluşturun.
3. Test seti hakkında tahminlerde bulunmak ve testin MSE’sini ölçmek için modeli kullanın.
MSE testi bize bir modelin daha önce görmediği veriler üzerinde ne kadar iyi performans gösterdiğine dair bir fikir verir. Ancak tek test seti kullanmanın dezavantajı, MSE testinin eğitim ve test setlerinde kullanılan gözlemlere bağlı olarak önemli ölçüde değişebilmesidir.
Bu sorunu önlemenin bir yolu, her seferinde farklı bir eğitim ve test seti kullanarak bir modeli birden çok kez sığdırmak ve ardından test MSE’sini tüm test MSE’lerinin ortalaması olarak hesaplamaktır.
Bu genel yöntem, çapraz doğrulama olarak bilinir ve bunun özel bir biçimi , k-katlı çapraz doğrulama olarak bilinir.
K-Fold çapraz doğrulama
K-katlı çapraz doğrulama, bir modeli değerlendirmek için aşağıdaki yaklaşımı kullanır:
Adım 1: Bir veri kümesini rastgele olarak yaklaşık olarak eşit büyüklükte k gruba veya “katlamaya” bölün.
Adım 2: Tutma setiniz olarak kıvrımlardan birini seçin. Şablonu kalan k-1 kıvrımlarına göre ayarlayın. Gerilmiş kattaki gözlemler üzerinden MSE testini hesaplayın.
Adım 3: Her seferinde dışlama kümesi olarak farklı bir küme kullanarak bu işlemi k kez tekrarlayın.
Adım 4: Testin k MSE’lerinin ortalaması olarak testin genel MSE’sini hesaplayın.
MSE testi = (1/k)*ΣMSE i
Altın:
- k: Katlama sayısı
- MSE i : MSE’yi i’inci yinelemede test edin
K nasıl seçilir
Genel olarak, k-katlı çapraz doğrulamada ne kadar çok kat kullanırsak, MSE test sapması o kadar düşük, ancak varyans da o kadar yüksek olur. Tersine, ne kadar az katlama kullanırsak, sapma o kadar yüksek, ancak varyans da o kadar düşük olur. Bu, makine öğrenimindeki önyargı-varyans değişiminin klasik bir örneğidir.
Uygulamada genellikle 5 ila 10 kat arasında kullanmayı tercih ediyoruz. İstatistiksel Öğrenmeye Giriş’te belirtildiği gibi, bu katlama sayısının önyargı ve varyans arasında optimal bir denge sağladığı ve dolayısıyla testin MSE’sine ilişkin güvenilir tahminler sağladığı gösterilmiştir:
Özetlemek gerekirse, k-katlı çapraz doğrulamada k seçimiyle ilişkili bir önyargı-varyans değiş tokuşu vardır.
Tipik olarak, bu hususlar göz önüne alındığında, k = 5 veya k = 10 kullanılarak k-katlı çapraz doğrulama gerçekleştirilir, çünkü bu değerlerin ne aşırı yüksek önyargıya ne de çok yüksek varyansa maruz kalmayan test hata oranı tahminlerini sağladığı ampirik olarak gösterilmiştir.
-Sayfa 184, İstatistiksel Öğrenmeye Giriş
K-Fold Çapraz Doğrulamanın Faydaları
Bir veri setini tek bir eğitim seti ve tek bir test setine ayırdığımızda, test setindeki gözlemler üzerinden hesaplanan test MSE’si, eğitim ve test setlerinde kullanılan gözlemlere bağlı olarak önemli ölçüde farklılık gösterebilir.
K-katlı çapraz doğrulamayı kullanarak, MSE testini, eğitim ve test setlerinin birkaç farklı varyasyonunu kullanarak hesaplayabiliyoruz. Bu bize testin MSE’sine ilişkin tarafsız bir tahmin elde etme şansımızı artırır.
K-katlı çapraz doğrulama aynı zamanda Bir-Dışarıda Bırakma Çapraz Doğrulamaya (LOOCV) göre hesaplama açısından bir avantaj sağlar çünkü bir modele n kez yerine yalnızca k kez sığması gerekir.
Sığdırılması uzun zaman alan modeller için, k-katlı çapraz doğrulama, test MSE’sini LOOCV’den çok daha hızlı hesaplayabilir ve birçok durumda, yeterli sayıda katlama kullanırsanız her bir yaklaşımla hesaplanan test MSE’si oldukça benzer olacaktır.
K Katlamalı Çapraz Doğrulama Uzantıları
Aşağıdakiler dahil, k-katlı çapraz doğrulamanın çeşitli uzantıları vardır:
Tekrarlanan k-katlı çapraz doğrulama: Bu, k-katlı çapraz doğrulamanın n kez tekrarlandığı yerdir. Eğitim ve test setleri karıştırıldığında bu, test MSE tahminindeki sapmayı daha da azaltır, ancak bunun tamamlanması sıradan k-katlı çapraz doğrulamadan daha uzun sürer.
Bir-Dışarıda Bırakma Çapraz Doğrulaması: Bu, k = n olan k-katlı çapraz doğrulamanın özel bir durumudur. Bu yöntem hakkında daha fazla bilgiyi buradan edinebilirsiniz.
Katmanlı k-katlı çapraz doğrulama: Bu, veri kümesinin her katın bütünü temsil edecek şekilde yeniden düzenlendiği k-katlı çapraz doğrulamanın bir versiyonudur. Kohavi’nin belirttiği gibi bu yöntem, sıradan k-katlı çapraz doğrulamayla karşılaştırıldığında önyargı ve varyans arasında daha iyi bir denge sağlama eğilimindedir.
İç İçe Çapraz Doğrulama: Burası, her çapraz doğrulama katında k-katlı çapraz doğrulamanın gerçekleştirildiği yerdir. Bu genellikle model değerlendirmesi sırasında hiperparametre ayarlaması yapmak için kullanılır.