Próbuję dokonać wyboru modelu na niektórych predyktorach kandydujących przy użyciu LASSO z ciągłym wynikiem. Celem jest wybór optymalnego modelu o najlepszej wydajności predykcji, co zwykle można wykonać przez K-krotnie walidację krzyżową po uzyskaniu ścieżki rozwiązania parametrów strojenia z LASSO. Problem polega na tym, że dane pochodzą ze złożonego, wieloetapowego projektu ankiety (NHANES), z próbkowaniem i stratyfikacją klastrów. Część szacunkowa nie jest trudna, ponieważ glmnet
w R może przyjmować wzorce masy. Ale część dotycząca walidacji krzyżowej jest dla mnie mniej jasna, ponieważ obserwacje już nie są już dostępne, i w jaki sposób procedura może uwzględniać próbkowanie wag reprezentujących skończoną populację?
Więc moje pytania to:
1) Jak przeprowadzić K-krotnie weryfikację krzyżową ze złożonymi danymi pomiarowymi, aby wybrać optymalny parametr strojenia? Mówiąc dokładniej, jak odpowiednio podzielić przykładowe dane na zestawy szkoleniowe i walidacyjne? A jak zdefiniować oszacowanie błędu prognozy?
2) Czy istnieje alternatywny sposób wyboru optymalnego parametru strojenia?
źródło
Odpowiedzi:
Nie mam szczegółowej odpowiedzi, tylko kilka wskazówek do pracy, które chciałem przeczytać:
Możesz rzucić okiem na McConville (2011) na temat kompleksowej ankiety LASSO, aby upewnić się, że korzystanie z LASSO jest odpowiednie dla twoich danych. Ale może to nie jest wielka sprawa, jeśli robisz LASSO tylko do wyboru zmiennych, a następnie dopasowujesz coś innego do pozostałych zmiennych.
W celu weryfikacji krzyżowej ze złożonymi danymi ankietowymi (choć nie LASSO) McConville przytacza także Opsomer i Miller (2005) i You (2009). Ale wydaje się, że w ich metodach stosuje się pomijane CV, a nie K-fold.
Rezygnacja z jednego rozwiązania powinna być prostsza w realizacji dzięki złożonym ankietom - mniej obawy o to, jak odpowiednio podzielić dane na partycje. (Z drugiej strony, uruchomienie może potrwać dłużej niż składanie K. A jeśli Twoim celem jest wybór modelu, wiadomo, że pominięcie może być gorsze niż składanie K dla dużych próbek.)
źródło
EDYCJA przez PO: Nie dotyczy złożonych danych ankietowych.
Funkcja cv.glmet może pomóc w przeprowadzeniu wymaganej weryfikacji krzyżowej. Wartość lambda.min to wartość λ, przy której błąd CV jest minimalny. Lambda.1se reprezentuje wartość λ w wyszukiwaniu, która była prostsza niż najlepszy model (lambda.min), ale która zawiera błąd w granicach 1 błędu standardowego najlepszego modelu.
Dostęp do wartości lambda.min można uzyskać z samego modelu, jak pokazano poniżej.
źródło