Eğitim, doğrulama ve test dahil olmak üzere çapraz doğrulama. Neden üç alt gruba ihtiyacımız var?


28

Çapraz doğrulama işlemiyle ilgili bir sorum var. Cursera'da Makine Öğrenimi kursunun ortasındayım. Konulardan biri Çapraz doğrulama ile ilgili. Takip etmesi biraz zor buldum. Neden CV'ye ihtiyacımız olduğunu biliyorum, çünkü modellerimizin gelecekteki (bilinmeyen) veriler üzerinde iyi çalışmasını istiyoruz ve CV aşırı yüklemeyi engelliyor. Ancak, sürecin kendisi kafa karıştırıcıdır.

Anladığım kadarıyla verileri 3 alt gruba ayırdım: eğitim, doğrulama ve test. Tren ve Doğrulama, bir modelin optimum karmaşıklığını bulmaktır. Benim anlamadığım üçüncü altküme. Model için bir takım özellikler alıyorum, eğitiyorum ve Validasyon altkümesinde doğruladığımı ve yapıyı değiştirdiğimde minimum Maliyet Fonksiyonunu aradığımı biliyorum. Bulduğumda, modeli Test altkümesinde test ediyorum. Doğrulama alt kümesinde zaten minimum Maliyet Fonksiyonu bulmuşsam neden test alt kümesinde tekrar test etmem gerekir?

Birisi lütfen bunu benim için açıklayabilir mi?

teşekkür ederim


Makaleyi ve tartışmayı [1] 'de, sorunuzla alakasız bulacaksınız. Bellekten, üç alt kümeden bahseder: birincisi bir model formüle eder, ikincisi parametrelerini tahmin eder ve üçüncüsü tahmin ile doğrular. [1] Chatfield, C. Model Belirsizliği, Veri Madenciliği ve İstatistiksel Çıkarım (Tartışma ile) Kraliyet İstatistik Kurumu Dergisi. Seri A (Toplumdaki İstatistikler), 1995, 158, 419-466
hazırda bekleme


Şerefe! Bu bağlantının ardındaki konu da bunu anlamak için iyi bir kaynaktır :)
Celdor

Yanıtlar:


37
  • Eğitim seti, belirli bir model için en uygun parametreleri seçmek için kullanılır. Eğitim seti kullanılarak verilen bazı parametre setlerini değerlendirmenin, maliyet fonksiyonunuzun tarafsız bir tahminini vermesi gerektiğini unutmayın - bu, maliyet fonksiyonunuzun tahminini, sağladıkları tahmini önyargıya dayalı eğitim setine göre optimize eden parametreleri seçme eylemidir. . Eğitim setinde en iyi performansı gösteren parametreler; Bu nedenle, eğitim setinde değerlendirildiği gibi, bu parametrelerin görünür performansı aşırı iyimser olacaktır.
  • Eğitim seti kullanılarak eğitim almış olan doğrulama seti, en iyi modeli seçmek için kullanılır. Yine, herhangi bir modelin validasyon setini kullanarak değerlendirilmesinin size maliyet fonksiyonunun temsili bir tahminini vermesi gerektiğini unutmayın - sağladıkları tahminin önyargısını veren validasyon setinde en iyi performansı gösteren modeli seçme eylemidir . Doğrulama setinde en iyi performansı gösteren model seçilmiştir; Bu nedenle, bu modelin, geçerlilik setinde değerlendirildiği gibi görünen performansı aşırı iyimser olacaktır.
  • Olması eğitilmiş kullanarak her modeli eğitim seti ve seçilen kullanarak en iyi modeli doğrulama seti, test set modelin sizin son seçim ne kadar iyi olduğunu söyler. Size çalışma zamanında elde edeceğiniz gerçek performans hakkında tarafsız bir tahmin sunar; bu, birçok nedenden ötürü bilmek önemlidir. Bunun için eğitim setini kullanamazsınız, çünkü parametreler ona doğru eğilim gösterir. Ve bunun için yapılan doğrulama setini kullanamazsınız, çünkü modelin kendisi bunlara taraflı. Bu nedenle, üçüncü bir gruba olan ihtiyaç.

Bunu şimdi görebiliyorum. Teşekkür ederim. Model yapısı açısından tarafsız performans bulmak için bir alt gruba daha ihtiyacım olacağı hakkında düşünmedim. Şerefe :) Çok iyi bir açıklama.
Celdor

Yani, son test setinin modeli optimize etmede veya en iyi modeli seçmede hiçbir rolü olmadığı anlamına mı geliyor?
Anmol Singh Jaggi,

1
Hayır. Aslında, sadece beklenen performansı tahmin etmek için kullanılmalıdır. Bu nedenle, test setindeki performansın sonucunu beğenmiyorsanız, test sonucunu optimize etmek için modelinizi ayarlama dürtüsünden kaçınmalısınız, çünkü modeliniz bir kez daha önyargılı olacaktır.
Ytsen de Boer

12

Validasyon alt kümesinde zaten minimum Maliyet Fonksiyonu bulduysam, neden Test alt kümesinde tekrar test etmem gerekiyor?

Rastgele hata nedeniyle: Genellikle yalnızca sınırlı sayıda vakaya sahipsiniz.

Doğrulama (iç test) performansının optimizasyonu, o iç test setine aşırı uyarlanmış olabileceğiniz anlamına gelir. İç test seti nihai modelin tahminine katkıda bulunur ve bu nedenle modelden bağımsız değildir.

Bu, genelleme özelliklerini tahmin etmek istiyorsanız, tüm modelleme prosedüründen bağımsız (dışa dönük bir test seti) (tüm optimizasyon ve veri odaklı ön işleme veya model seçim süreçleri dahil) olması gerektiği anlamına gelir.

Bir simülasyon yapmanızı ve sahip olabileceğiniz üç farklı hata tahminini karşılaştırmanızı öneririm.

  • yeniden yerleştirme: tren setinin tahmini uyum iyiliğini
    ölçer
  • iç test (terminolojinizde: doğrulama) set: optimize edicinin düşündüğü kalite
  • dış test seti: genelleme hatası, model eğitiminden bağımsız.

Bir simülasyonda bunları kolayca uygun, büyük, bağımsız olarak üretilen bir test setiyle de karşılaştırabilirsiniz. Kurulum doğru ise, dış test tarafsız olmalıdır (tüm veri setine dayanan “nihai” bir model ile değil, değerlendirdiği taşıyıcı model ile). İç test genellikle iyimser önyargılıdır ve yeniden yapılanma daha iyimser önyargılıdır.

Benim alanımda, iç test genelleme hatasını 2 - 5 faktörle (agresif optimizasyon programları için çok daha fazlası) kolayca küçümseyebilirdi.


Not: setlerin isimlendirilmesi evrensel değildir. Alanımda (analitik kimya), validasyon genellikle nihai prosedürün performansının kanıtı anlamına gelir - bu nedenle "test" setinizin "validasyon" setinizin yaptığından daha fazlasını yapması gerekir.

Bu nedenle iç ve dış test setlerinden veya optimizasyon test setinden (= iç test setinden) bahsetmeyi tercih ederim ve daha sonra doğrulama seti dış test setini ifade eder.


2

Modelin eğitimi sırasında modelin meta parametrelerini (örneğin, normalleştirme parametresini) seçmesi veya hatta birkaç model arasından seçim yapması gerekir. Bu durumda doğrulama altkümesi parametre seçimi için kullanılır, ancak son kestirim tahmini için altkümeyi test eder.

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.