W niektórych wykładach i samouczkach , które widziałem, sugerują podzielenie danych na trzy części: szkolenie, walidacja i test. Nie jest jednak jasne, w jaki sposób należy używać zestawu danych testowych, ani w jaki sposób to podejście jest lepsze niż weryfikacja krzyżowa całego zestawu danych.
Załóżmy, że zapisaliśmy 20% naszych danych jako zestaw testowy. Następnie bierzemy resztę, dzielimy ją na k fałdy i, korzystając z weryfikacji krzyżowej, znajdujemy model, który najlepiej prognozuje nieznane dane z tego zestawu danych. Powiedzmy, że najlepszy model, który znaleźliśmy, daje nam 75% dokładności.
Różne samouczki i wiele pytań na różnych stronach z pytaniami i odpowiedziami mówią, że teraz możemy zweryfikować nasz model na zapisanym (testowym) zbiorze danych. Ale wciąż nie mogę zrozumieć, jak to dokładnie zostało zrobione, ani jaki jest tego sens.
Powiedzmy, że mamy dokładność 70% w zestawie danych testowych. Co więc robimy dalej? Czy wypróbowujemy inny model, a potem inny, dopóki nie uzyskamy wysokiej oceny w naszym zestawie danych testowych? Ale w tym przypadku wygląda na to, że po prostu znajdziemy model, który pasuje do naszego ograniczonego (tylko 20%) zestawu testowego . Nie oznacza to, że znajdziemy model, który jest ogólnie najlepszy.
Co więcej, jak możemy uznać ten wynik za ogólną ocenę modelu, jeśli jest on obliczany tylko na podstawie ograniczonego zestawu danych? Jeśli ten wynik jest niski, być może mieliśmy pecha i wybraliśmy „złe” dane testowe.
Z drugiej strony, jeśli wykorzystamy wszystkie dane, które mamy, a następnie wybierzmy model przy użyciu k-krotnej walidacji krzyżowej, znajdziemy model, który najlepiej prognozuje nieznane dane z całego zestawu danych .