Czytałem o walidacji k-fold i chcę się upewnić, że rozumiem, jak to działa.
Wiem, że w przypadku metody wstrzymania dane są podzielone na trzy zestawy, a zestaw testowy jest używany tylko na samym końcu do oceny wydajności modelu, podczas gdy zestaw sprawdzania poprawności służy do dostrajania hiperparametrów itp.
W metodzie k-fold nadal trzymamy zestaw testowy na samym końcu i używamy tylko pozostałych danych do treningu i dostrajania hiperparametrów, tzn. Dzielimy pozostałe dane na kfold, a następnie używamy średniej dokładności po treningu z każdym foldem (lub jakimkolwiek wskaźnikiem wydajności, który zdecydujemy się dostroić nasze hiperparametry)? Czy też w ogóle nie używamy osobnego zestawu testów i po prostu dzielimy cały zestaw danych na k fałdy (jeśli tak jest, zakładam, że bierzemy pod uwagę średnią dokładność k fałd jako naszą ostateczną dokładność)?
źródło
Odpowiedzi:
Tak. Z reguły zestawu testowego nigdy nie należy używać do zmiany modelu (np. Jego hiperparametrów).
Jednak walidację krzyżową można czasem zastosować do celów innych niż dostrajanie hiperparametrów, np. Określenie, w jakim stopniu podział pociąg / test wpływa na wyniki.
źródło
Ogólnie tak. Zasadniczo mówimy o kompromis wariancji uprzedzeń. Jeśli użyjesz danych do zbudowania modelu (dane dotyczące szkolenia i walidacji) i wykonasz iterację po różnych hiperparametrach i spróbujesz zmaksymalizować uśrednioną metrykę wydajności, model może nie być tak dobry, jak wskazano.
Jednak szczególnie w małych zestawach danych dodatkowy podział może prowadzić do jeszcze mniejszego zestawu treningów i skutkować złym modelem.
źródło
W idealnym przypadku walidacja (do wyboru modelu) i test końcowy nie powinny być mieszane. Jeśli jednak wartość k jest wysoka lub jest pomijana, użycie wyniku testu do wyboru modelu jest mniej szkodliwe. W tym scenariuszu, jeśli piszesz artykuł akademicki, nie rób tego (chyba że próbujesz wyjaśnić) - co oznacza, że zawsze masz osobny zestaw testów. Jeśli budujesz praktyczny projekt, możesz to zrobić.
źródło