Walidacja krzyżowa, w tym szkolenie, walidacja i testowanie. Dlaczego potrzebujemy trzech podzbiorów?

28

Mam pytanie dotyczące procesu weryfikacji krzyżowej. Jestem w trakcie kursu uczenia maszynowego na Cursera. Jeden z tematów dotyczy weryfikacji krzyżowej. Trochę trudno było mnie śledzić. Wiem, dlaczego potrzebujemy CV, ponieważ chcemy, aby nasze modele działały dobrze na przyszłych (nieznanych) danych, a CV zapobiega nadmiernemu dopasowaniu. Jednak sam proces jest mylący.

Zrozumiałem, że dzielę dane na 3 podzbiory: szkolenie, sprawdzanie poprawności i testowanie. Train and Validation to znalezienie optymalnej złożoności modelu. To, czego nie rozumiem, to trzeci podzbiór. Rozumiem, że biorę szereg funkcji dla modelu, trenuję go i sprawdzam w podzbiorze Walidacja i szukam funkcji kosztu minimalnego po zmianie struktury. Kiedy go znalazłem, testuję model na podzbiorze Test. Jeśli już znalazłem funkcję minimalnego kosztu w podzbiorze sprawdzania poprawności, dlaczego miałbym go ponownie testować w podzbiorze testowym?

Czy ktoś mógłby mi to wyjaśnić?

Dziękuję Ci

Celdor
źródło
Artykuł i dyskusja w [1] nie są bez znaczenia dla twojego pytania. Z pamięci wspomina trzy podzbiory: pierwszy formułuje model, drugi szacuje jego parametry, a trzeci weryfikuje go przez prognozowanie. [1] Chatfield, C. Niepewność modelu, eksploracja danych i wnioskowanie statystyczne (z dyskusją) Journal of Royal Statistics Society. Seria A (Statystyka w społeczeństwie), 1995, 158, 419-466
Hibernacja
Twoje zdrowie! Wątek za tym linkiem jest również dobrym źródłem do zrozumienia tego :)
Celdor,

Odpowiedzi:

38
  • Zestaw treningowy służy do wyboru optymalnych parametrów dla danego modelu. Należy zauważyć, że ocena określonego zestawu parametrów za pomocą zestawu szkoleniowego powinna dać obiektywną ocenę funkcji kosztu - jest to czynność polegająca na wybraniu parametrów, które optymalizują oszacowanie funkcji kosztu w oparciu o zestaw szkoleniowy, który wpływa na oszacowanie, które zapewniają . Wybrano parametry, które najlepiej sprawdzają się na zestawie treningowym; stąd pozorna wydajność tych parametrów, oceniana na zestawie treningowym, będzie zbyt optymistyczna.
  • Po przeszkoleniu przy użyciu zestawu treningowego zestaw walidacyjny służy do wyboru najlepszego modelu. Ponownie zauważ, że ocena dowolnego modelu przy użyciu zestawu sprawdzania poprawności powinna dać ci reprezentatywne oszacowanie funkcji kosztu - to właśnie wybranie modelu, który działa najlepiej na zbiorze sprawdzania poprawności, dostarcza oszacowań. Wybrano model, który działa najlepiej na zestawie sprawdzania poprawności; stąd pozorna wydajność tego modelu, oceniona na zestawie walidacyjnym, będzie zbyt optymistyczna.
  • Po przeszkoleniu każdego modelu przy użyciu zestawu szkoleniowego i wybraniu najlepszego modelu przy użyciu zestawu sprawdzającego, zestaw testowy mówi ci, jak dobry jest twój ostateczny wybór modelu. Daje to obiektywną ocenę rzeczywistej wydajności, jaką uzyskasz w czasie wykonywania, co jest ważne z wielu powodów. Nie można do tego użyć zestawu treningowego, ponieważ parametry są do niego tendencyjne. Nie można do tego użyć zestawu sprawdzania poprawności, ponieważ sam model jest do nich tendencyjny. Stąd potrzeba trzeciego zestawu.
Poklepać
źródło
Teraz to widzę. Dziękuję Ci. Nie myślałem o tym, że potrzebuję jeszcze jednego podzbioru, aby znaleźć obiektywną wydajność pod względem struktury modelu. Pozdrawiam :) To bardzo dobre wytłumaczenie.
Celdor,
Czy to oznacza, że ​​końcowy zestaw testowy nie odgrywa żadnej roli ani w optymalizacji modelu, ani w wyborze najlepszego modelu?
Anmol Singh Jaggi
1
Nie. W rzeczywistości należy go używać tylko do oszacowania oczekiwanej wydajności. Jeśli więc nie podoba ci się wynik działania zestawu testowego, naprawdę powinieneś unikać potrzeby strojenia swojego modelu, aby zoptymalizować wynik testu, ponieważ twój model byłby ponownie tendencyjny.
Ytsen de Boer
12

Jeśli już znalazłem funkcję minimalnego kosztu w podzbiorze sprawdzania poprawności, dlaczego miałbym ponownie go testować w podzbiorze testowym

Z powodu błędu losowego: zazwyczaj masz tylko skończoną liczbę przypadków.

Optymalizacja wydajności sprawdzania poprawności (testu wewnętrznego) oznacza, że ​​możesz być nadmiernie dopasowany do tego zestawu testów wewnętrznych. Wewnętrzny zestaw testowy przyczynia się do oszacowania ostatecznego modelu, a zatem nie jest niezależny od modelu.

Oznacza to, że musisz mieć inny (zewnętrzny) zestaw testowy, który jest niezależny od całej procedury modelowania (w tym wszystkich procesów optymalizacji i wstępnego przetwarzania danych lub wyboru modelu), jeśli chcesz oszacować właściwości uogólniające.

Zalecam wykonanie symulacji i porównanie trzech różnych oszacowań błędów, jakie możesz mieć

  • resubstitution: przewidywanie składu pociągu
    mierzy dobroć dopasowania
  • zestaw testów wewnętrznych (w twojej nomenklaturze: sprawdzanie poprawności): jakość, którą według optymalizatora jest osiągnięta
  • zewnętrzny zestaw testowy: błąd uogólnienia, niezależny od szkolenia modelu.

W symulacji można łatwo porównać je również z odpowiednim, dużym, niezależnie generowanym zestawem testowym. Jeśli konfiguracja jest poprawna, test zewnętrzny powinien być bezstronny (w porównaniu z ocenianym modelem zastępczym, a nie w „ostatecznym” modelu zbudowanym na całym zestawie danych). Test wewnętrzny jest zwykle tendencyjnie tendencyjny, a resubstytucja jeszcze bardziej optymistycznie tendencyjny.

W mojej dziedzinie test wewnętrzny łatwo nie doceniłby błędu uogólnienia o współczynnik 2–5 (znacznie więcej w przypadku agresywnych schematów optymalizacji).


Uwaga: nomenklatura zestawów nie jest uniwersalna. W mojej dziedzinie (chemia analityczna) walidacja zwykle oznaczałaby dowód wykonania ostatecznej procedury - a więc bardziej to, co robi zestaw „testowy” niż to, co robi zestaw „walidacji”.

Dlatego wolę mówić o wewnętrznym i zewnętrznym zestawie testowym lub zestawie testowym optymalizacji (= wewnętrzny zestaw testowy), a wtedy zestaw sprawdzania poprawności oznaczałby zewnętrzny zestaw testowy.

cbeleites wspiera Monikę
źródło
2

Podczas szkolenia modelu należy wybrać meta parametry dla modelu (na przykład parametr regularyzacji) lub nawet wybrać kilka modeli. W tym przypadku podzbiór sprawdzania poprawności jest używany do wybierania parametrów, ale podzbiór testowy do ostatecznego oszacowania predykcji.

oraz
źródło