Jak wybrać model z tego wyjścia [zewnętrzna weryfikacja krzyżowa]?
Krótka odpowiedź: nie.
Traktuj wewnętrzną walidację krzyżową jako część procedury dopasowania modelu. Oznacza to, że dopasowanie, w tym dopasowanie hiperparametrów (tutaj kryje się wewnętrzna walidacja krzyżowa), jest jak każda inna procedura esitmacji modelu.
Zewnętrzna walidacja krzyżowa szacuje wydajność tego podejścia do dopasowania modelu. W tym celu stosuje się zwykłe założenia
- te k zewnętrzne modele zastępcze są równoważne do „prawdziwego” modelu zbudowanego przez
model.fitting.procedure
wszystkich danych.
- k
k
Jak więc użyć zagnieżdżonego CV do wyboru modelu?
Wewnętrzna CV ma wybór.
Wydaje mi się, że wybranie najlepszego modelu spośród zwycięskich modeli K nie byłoby uczciwym porównaniem, ponieważ każdy model został przeszkolony i przetestowany na różnych częściach zestawu danych.
k
- Brak takich samych danych testowych: ponieważ chcesz później twierdzić, że wyniki testu uogólniają się na dane nigdy nie widziane, nie może to mieć znaczenia.
- Brak tych samych danych treningowych:
- jeśli modele są stabilne, nie robi to różnicy: Stabilność tutaj oznacza, że model nie zmienia się (dużo), jeśli dane treningowe są „zaburzone” przez zastąpienie kilku przypadków innymi przypadkami.
- jeśli modele nie są stabilne, ważne są trzy kwestie:
- k
- k
- Jeśli niestabilność stanowi prawdziwy problem, nie można dobrze ekstrapolować na wydajność modelu „rzeczywistego”.
Co prowadzi mnie do twojego ostatniego pytania:
Jakie analizy / kontrole mogę zrobić z wynikami uzyskanymi z zewnętrznych K foldów?
- sprawdź stabilność prognoz (użyj iterowanej / powtarzanej walidacji krzyżowej)
sprawdź stabilność / zmienność zoptymalizowanych hiperparametrów.
Po pierwsze, gwałtownie rozpraszające hiper-parametry mogą wskazywać, że wewnętrzna optymalizacja nie zadziałała. Po drugie, może to pozwolić ci zdecydować o hiperparametrach bez kosztownego kroku optymalizacji w podobnych sytuacjach w przyszłości. Z kosztownymi nie odnoszę się do zasobów obliczeniowych, ale do faktu, że ta „kosztowna” informacja może być lepiej wykorzystana do oszacowania „normalnych” parametrów modelu.
sprawdź różnicę między wewnętrznym i zewnętrznym oszacowaniem wybranego modelu. Jeśli istnieje duża różnica (wewnętrzna jest zbyt optymistyczna), istnieje ryzyko, że wewnętrzna optymalizacja nie działała dobrze z powodu przeregulowania.
aktualizacja @ pytanie użytkownika user99889: Co zrobić, jeśli zewnętrzne CV znajdzie niestabilność?
Po pierwsze, wykrycie w zewnętrznej pętli CV, że modele nie dają stabilnych prognoz w tym zakresie, tak naprawdę nie różni się od wykrycia, że błąd predykcji jest zbyt wysoki dla aplikacji. Jest to jeden z możliwych wyników walidacji (lub weryfikacji) modelu, co oznacza, że model, który mamy, nie jest odpowiedni do swoich celów.
W komentarzu do @davips zastanawiałem się nad rozwiązaniem problemu niestabilności w wewnętrznym CV - czyli w ramach procesu optymalizacji modelu.
Ale z pewnością masz rację: jeśli zmienimy nasz model w oparciu o ustalenia zewnętrznego CV, konieczna jest kolejna runda niezależnych testów zmienionego modelu.
Jednak niestabilność w zewnętrznym CV byłaby również znakiem, że optymalizacja nie była dobrze skonfigurowana - więc znalezienie niestabilności w zewnętrznym CV oznacza, że wewnętrzne CV nie karało niestabilności w niezbędny sposób - to byłby mój główny punkt krytyka w takiej sytuacji. Innymi słowy, dlaczego optymalizacja pozwala / prowadzi do modeli o wysokim stopniu dopasowania?
Jest jednak jedna osobliwość, że IMHO może usprawiedliwić dalszą zmianę „ostatecznego” modelu po starannym rozważeniu dokładnych okoliczności : Ponieważ wykryliśmy nadmierne dopasowanie, każda proponowana zmiana (mniej df / bardziej restrykcyjnych lub agregujących) w modelu być w kierunku mniej nadmiernego dopasowania (lub przynajmniej hiperparametrów, które są mniej podatne na nadmierne dopasowanie). Celem niezależnych testów jest wykrycie przeregulowania - niedopasowanie można wykryć na podstawie danych, które zostały już wykorzystane w procesie szkolenia.
Więc jeśli mówimy, powiedzmy, o dalszym zmniejszeniu liczby ukrytych zmiennych w modelu PLS, które byłyby porównywalnie łagodne (jeśli proponowana zmiana byłaby zupełnie innym typem modelu, powiedzmy PLS zamiast SVM, wszystkie zakłady byłyby wyłączone ) i byłbym jeszcze bardziej zrelaksowany, gdybym wiedział, że i tak jesteśmy na pośrednim etapie modelowania - w końcu jeśli zoptymalizowane modele są nadal niestabilne, nie ma wątpliwości, że potrzeba więcej przypadków. Ponadto w wielu sytuacjach konieczne będzie przeprowadzenie badań, które mają na celu prawidłowe przetestowanie różnych aspektów wydajności (np. Uogólnienie na dane pozyskane w przyszłości). Nadal jednak nalegam, aby należało zgłosić pełny proces modelowania i że konsekwencje tych późnych zmian trzeba będzie dokładnie omówić.
Również agregacja, w tym oszacowanie wydajności analogowego CV po wyjęciu z torby, byłoby możliwe na podstawie już dostępnych wyników - co jest drugim rodzajem „przetwarzania końcowego” modelu, który chciałbym tutaj rozważyć jako łagodny. Po raz kolejny byłoby lepiej, gdyby badanie zostało zaprojektowane od początku w celu sprawdzenia, czy agregacja nie daje przewagi nad poszczególnymi predykcjami (co jest innym sposobem stwierdzenia, że poszczególne modele są stabilne).
Aktualizacja (2019): im więcej myślę o tych sytuacjach, tym bardziej przychylam się do podejścia „walidacja krzyżowa zagnieżdżona najwyraźniej bez zagnieżdżania” .