Birini dışarıda bırakma çapraz doğrulamasına (loocv) hızlı bir giriş


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.

Makine öğrenimi eğitimi ve testi

2. Yalnızca eğitim setindeki verileri kullanarak modeli oluşturun.

Makine öğreniminde LOOCV

3. Test seti hakkında tahminlerde bulunmak ve MSE’yi ölçmek için modeli kullanın; buna test MSE denir. Eğitim veya test seti

MSE testi bize bir modelin daha önce görmediği verilerde, yani modeli “eğitmek” için kullanılmamış verilerde 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.

Eğitim seti ve test seti için farklı bir gözlem seti kullanırsak, test MSE’mizin çok daha büyük veya daha küçük olması mümkündür.

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 , Birini Dışarıda Bırakma çapraz doğrulama olarak bilinir.

Bir Çıkışta Çapraz Doğrulama

Birini dışarıda bırakma çapraz doğrulaması, bir modeli değerlendirmek için aşağıdaki yaklaşımı kullanır:

1. Biri hariç tüm gözlemleri eğitim setinin bir parçası olarak kullanarak, bir veri setini bir eğitim seti ve bir test setine bölün:

LOOCV

Eğitim setinin “dışında” yalnızca bir gözlem bıraktığımızı unutmayın. Yöntemin “birini dışarıda bırak” çapraz doğrulama adını aldığı yer burasıdır.

2. Yalnızca eğitim setindeki verileri kullanarak modeli oluşturun.

LOOCV yaklaşımıyla bir model oluşturmak

3. Modelin dışında bırakılan tek gözlemin yanıt değerini tahmin etmek için modeli kullanın ve MSE’yi hesaplayın.

Uygulamasız çapraz doğrulama

4. İşlemi n kez tekrarlayın.

Son olarak, bu işlemi n kez tekrarlıyoruz (burada n , veri kümesindeki toplam gözlem sayısıdır), her seferinde eğitim kümesinden farklı bir gözlemi dışarıda bırakıyoruz.

Daha sonra test MSE’sini tüm test MSE’lerinin ortalaması olarak hesaplıyoruz:

MSE testi = (1/n)*ΣMSE i

Altın:

  • n: veri kümesindeki toplam gözlem sayısı
  • MSEi: i’inci model yerleştirme döneminde yapılan MSE testi.

LOOCV’nin avantajları ve dezavantajları

Birini dışarıda bırakma çapraz doğrulaması aşağıdaki faydaları sağlar:

  • Tek bir test seti kullanmaya kıyasla MSE testinin çok daha az taraflı bir ölçümünü sağlar çünkü bir modeli tekrar tekrar n-1 gözlem içeren bir veri setine yerleştiririz.
  • Tek bir test seti kullanmaya kıyasla testin MSE’sini olduğundan fazla tahmin etme eğilimi yoktur.

Bununla birlikte, müdahalesiz çapraz doğrulamanın aşağıdaki dezavantajları vardır:

  • N büyük olduğunda bu işlemin kullanılması uzun zaman alabilir.
  • Bir modelin özellikle karmaşık olması ve veri kümesine sığdırılmasının uzun sürmesi de zaman alıcı olabilir.
  • Bu hesaplama açısından pahalı olabilir.

Neyse ki, modern bilgi işlem çoğu alanda o kadar verimli hale geldi ki, LOOCV’nin kullanımı yıllar öncesine göre çok daha makul bir yöntem haline geldi.

LOOCV’nin regresyon ve sınıflandırma bağlamlarında da kullanılabileceğini unutmayın. Regresyon problemleri için, MSE testini tahminler ve gözlemler arasındaki ortalama kare farkının kökü olarak hesaplarken, sınıflandırma problemlerinde MSE testini, modelin tekrarlanan n ayarlaması üzerinden doğru şekilde sınıflandırılan gözlemlerin yüzdesi olarak hesaplar.

LOOCV R & Python’da nasıl çalıştırılır

Aşağıdaki eğitimlerde, R ve Python’da belirli bir model için LOOCV’nin nasıl çalıştırılacağına ilişkin adım adım örnekler verilmektedir:

R’de Birini Dışarıda Bırakma Çapraz Doğrulama
Python’da Birini Dışarıda Bırakma Çapraz Doğrulama

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir