Önyükleme ve çapraz doğrulama arasındaki fark nedir?


21

Makine öğrenim modellerimin sağlam değerlendirmesi için K-kat çapraz doğrulamasını uygulardım. Ancak bu amaçla bootstrapping yönteminin varlığından da haberdarım. Ancak performans tahmini açısından aralarındaki temel farkı göremiyorum.

Gördüğüm kadarıyla, bootstrapping de belirli sayıda rastgele eğitim + test alt kümesi üretiyor (farklı bir şekilde de olsa), bu yüzden bu yöntemi CV üzerinde kullanmanın avantajı nedir? Önyükleme durumunda, yapay olarak bu tür alt kümelerin yapay olarak rasgele sayıda üretebileceğini anlayabildiğim tek şey, CV için örneklerin sayısı bunun için bir tür sınırdır. Ancak bu konu çok az sıkıntı gibi görünüyor.

Yanıtlar:


18

Hem çapraz doğrulama hem de önyükleme yeniden örnekleme yöntemleridir.

  • bootstrap değiştirilmiş örnekleri (ve genellikle orijinal veri kümesiyle aynı sayıda vakaya sahip yeni "vekil" veri kümeleri üretir). Değiştirilen çizim nedeniyle, önyüklemeli bir veri kümesi aynı orijinal vakaların birden fazla örneğini içerebilir ve diğer orijinal vakaları tamamen atlayabilir.
  • çapraz doğrulama, değiştirilmeden yeniden örneklenir ve böylece orijinalinden daha küçük vekil veri setleri üretir. Bu veri setleri sistematik bir şekilde üretilir, böylece önceden belirlenmiş sayıda vekil veri seti sonra orijinal vakanın her biri tam olarak bir kez dışarıda bırakılır. Buna ile k-kat çapraz doğrulama veya bırak- x -çıkış çapraz doğrulaması denir , örn. Her çıkış kümesi için bir kerelik çapraz doğrulama geçersiz kılma 1 durumu, yani .knx=nkk=n

  • Çapraz doğrulamanın adından da anlaşılacağı gibi, asıl amacı bir modelin performansını (genelleştirme) ölçmektir. Buna karşılık, önyükleme öncelikle geniş bir istatistik yelpazesi için ampirik dağıtım fonksiyonları oluşturmak için kullanılır (örneğin, ortalamanın var olan torbalı topluluk modellerindeki modellerin varyasyonuna kadar geniş bir yelpazede olduğu gibi).

  • Önyükleme prosedürünün bir defaya mahsus analogu jackknifing olarak adlandırılır (ve aslında bootstrapping'den daha eskidir).

  • Genelleme hatasının çapraz doğrulama tahminlerine önyükleme analog denir dışı bootstrap tahmini (test durumları nedeniyle bootstrap dışarıda bırakıldığını olanlar eğitim seti resampled).

[çapraz validaton ve bootstrap dışı validasyon karşılaştırması] Ancak, performans tahmini açısından aralarındaki temel farkı göremiyorum.

Bu sezgi doğrudur: pratikte, yinelenen katlanmış çapraz doğrulama ile önyükleme dışı arasında çok fazla fark yoktur . Benzer toplam değerlendirilmiş vekil model sayısı ile, oob tipik olarak karşılık gelen CV tahminlerinden daha fazla sapmaya ve daha az sapmaya sahip olmasına rağmen, toplam modelin [model tahmin hatası ölçümünün] toplam hatası benzer bulunmuştur.k

Oob yanlılığını (.632-bootstrap, .632 + -bootstrap) azaltmak için bir dizi girişim vardır, ancak durumu gerçekten iyileştirip iyileştirmeyecekleri mevcut duruma bağlıdır.

Edebiyat:


Önyükleme durumunda, yapay olarak bu tür alt kümelerin yapay olarak rasgele sayıda üretebileceğini anlayabildiğim tek şey, CV için örneklerin sayısı bunun için bir tür sınırdır.

Evet, CV için önyüklemeden daha az kombinasyon mümkündür. Ancak CV sınırı muhtemelen bildiğinizden daha yüksektir. vaka ve katlı çapraz doğrulama içeren bir veri kümesi için ,nk

  • CV kombinasyon olmadan kombinasyonlar ( genellikle değerlendirilen olasılıklarından çok daha fazla olan <n için ) vs.(nk)k
  • bootstrap / oob kombinasyonlar (yine değerlendirilen 100 veya 1000 vekil modellerden çok daha fazla)(2n1n)

3

Önyükleme, değiştirme ile rastgele örneklemeye dayanan herhangi bir test veya metriktir.Öngörülü bir model performansının doğrulanması, topluluk yöntemleri, önyargı tahmini ve bir modelin parametresinin varyansı vb.Gibi birçok durumda yardımcı olan bir yöntemdir. orijinal veri kümesinden değiştirme ile örnekleme yapmak ve aynı zamanda seçilmemiş veri noktalarının test veri kümesi olduğunu varsayarsak. Bu prosedürü birkaç kez tekrarlayabilir ve ortalama puanı model performansımızın tahmini olarak hesaplayabiliriz. Ayrıca, Bootstrapping topluluk eğitim yöntemleri ile ilgilidir, çünkü her bootstrap veri kümesini kullanarak bir model oluşturabilir ve bu modelleri bir grupta çoğunluk oylamasını (sınıflandırma için) veya ortalamanın (sayısal tahminler için) tümünü kullanarak hesaplayabiliriz. Bu modeller nihai sonuç olarak.

Çapraz doğrulama, bir modelin performansını doğrulamak için bir prosedürdür ve eğitim verilerinin k parçalara bölünmesiyle yapılır. K-1 parçalarının eğitim seti olduğunu ve diğer parçayı da test setimiz olduğunu varsayıyoruz. Her seferinde verilerin farklı bir kısmını tutarak bu k zamanlarını farklı şekilde tekrarlayabiliriz. Son olarak, performans tahminimiz olarak k skorlarının ortalamasını alıyoruz. Çapraz doğrulama önyargı veya varyanstan muzdarip olabilir. Bölme sayısını arttırarak, varyans da artacak ve sapma azalacaktır. Öte yandan, bölünme sayısını azaltırsak, sapma artacak ve sapma azalacaktır.

Özet olarak, Çapraz doğrulama birden çok veri kümesi oluşturmak için kullanılabilir veri kümesini böler ve Önyükleme yöntemi, yedeklemeyle yeniden örnekledikten sonra birden çok veri kümesi oluşturmak için orijinal veri kümesini kullanır. Önyükleme, model doğrulaması için kullanıldığında Çapraz doğrulama kadar güçlü değildir. Önyükleme daha çok topluluk modelleri oluşturmak veya sadece parametreleri tahmin etmekle ilgilidir.


2

Çapraz doğrulama, modelinizin eğitilmemiş veriler üzerinde ne kadar iyi genelleştirildiğini görmeyi amaçlayan bir tekniktir. Algoritma sonuçlarınızı etkilemez, sadece değerlendirir .

Bootstrapping, ortalama çıktı üretmek için Karar Ağaçları gibi çeşitli modellerin çıktılarını toplayan bir Ensemble yöntemidir . Teknik olarak, tek bir modele dayanan bir sınıflandırma algoritmasının varyansını azaltır, çünkü aynı model yapısının (farklı parametrelerle) çeşitli varyantlarının çıktıları üzerindeki çıktıyı ortalar. Bu nedenle sınıflandırma algoritmasının performansını değiştirir , değerlendirmez .

Başka bir deyişle : Çapraz doğrulama, bir algoritmanın ne kadar iyi genelleme yaptığını değerlendirirken, önyükleme aslında algoritmanın daha iyi genelleme yapmasına yardımcı olur.

Aslında, ne kadar iyi genelleştirildiğini görmek için önyüklemeli bir modelde çapraz doğrulamayı kullanabilirsiniz.


3
Bu torbalama bootstrapping değil mi?
elemolotiv

0
  • Çapraz Doğrulama: test hatasıyla ilgili tahminler verin.
  • Bootstrap: tahminlerin standart hatasını verir.
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.