Przewaga LASSO nad wyborem do przodu / eliminacją do tyłu pod względem błędu prognozowania walidacji krzyżowej modelu

10

Otrzymałem trzy zredukowane modele z oryginalnego pełnego modelu przy użyciu

  • wybór do przodu
  • eliminacja wsteczna
  • Technika penalizacji L1 (LASSO)

Dla modeli uzyskanych za pomocą selekcji do przodu / eliminacji wstecznej uzyskałem oszacowane krzyżowo oszacowanie błędu prognozowania przy użyciu CVlmpakietu DAAGdostępnego w R. Do modelu wybranego przez LASSO użyłem cv.glm.

Błąd prognozy dla LASSO był mniejszy niż błąd uzyskany dla pozostałych. Tak więc model uzyskany za pomocą LASSO wydaje się lepszy pod względem zdolności predykcyjnej i zmienności. Czy jest to ogólne zjawisko, które zawsze występuje, czy może jest specyficzne dla problemu? Jakie jest teoretyczne uzasadnienie tego, jeśli jest to zjawisko ogólne?

użytkownik41512
źródło
3
Upewnij się, że nie używasz niewłaściwej reguły punktacji dokładności, takiej jak proporcja sklasyfikowana jako poprawna, ponieważ nagradza to nieodpowiednie prognozy / modele. I porównaj z normą L2. Założę się, że będzie lepiej niż 3 podejścia, które próbowałeś.
Frank Harrell,

Odpowiedzi:

16

Zarówno LASSO, jak i wybór modelu do przodu / do tyłu mają zarówno zalety, jak i ograniczenia. Nie można sformułować żadnych daleko idących zaleceń. Aby to rozwiązać, zawsze można zbadać symulację.

pnpn

Przeregulowaniu można zaradzić za pomocą weryfikacji krzyżowej próbki podzielonej (CV) do oceny modelu. Ponieważ tego nie opisałeś, zakładam, że tego nie zrobiłeś. W przeciwieństwie do stopniowego wyboru modelu, LASSO wykorzystuje parametr strojenia, aby ukarać liczbę parametrów w modelu. Możesz naprawić parametr strojenia lub użyć skomplikowanego procesu iteracyjnego, aby wybrać tę wartość. Domyślnie LASSO robi to drugie. Odbywa się to za pomocą CV, aby zminimalizować MSE prognozowania. Nie znam żadnej implementacji stopniowego wyboru modelu, który wykorzystuje tak wyrafinowane techniki, nawet BIC jako kryterium ucierpiałoby na wewnętrznej tendencyjności walidacji. Z mojego konta, to automatycznie daje LASSO dźwignię w stosunku do „gotowego” stopniowego wyboru modelu.

Wreszcie stopniowy wybór modelu może mieć różne kryteria włączenia / wyłączenia różnych regresorów. Jeśli użyjesz wartości p dla testu Walda określonych parametrów modelu lub wynikowego modelu R ^ 2, nie zrobisz tego dobrze, głównie z powodu wewnętrznej tendencyjności walidacji (ponownie, można to naprawić za pomocą CV). Zaskakujące jest dla mnie to, że takie modele wciąż są wdrażane. AIC lub BIC są znacznie lepszymi kryteriami wyboru modelu.

Z każdą metodą wiąże się wiele problemów. Problemy wyboru modelu krokowego są znacznie lepiej rozumiane i znacznie gorsze niż problemy LASSO. Główny problem, jaki widzę w twoim pytaniu, polega na tym, że używasz narzędzi wyboru funkcji do oceny prognozy . Są to odrębne zadania. LASSO jest lepszy do wyboru funkcji lub rzadkiego wyboru modelu. Regresja grzbietu może dać lepsze przewidywanie, ponieważ wykorzystuje wszystkie zmienne.

pn

pn

AdamO
źródło
4

Chcesz wybrać podzbiór predyktorów zgodnie z niektórymi kryteriami. Może to być AIC w próbie, skorygowany R ^ 2 lub krzyżowa walidacja, nie ma znaczenia.

Możesz przetestować każdą kombinację podzbioru predyktorów i wybrać najlepszy podzbiór. jednak

  • Bardzo czasochłonne ze względu na kombinatoryczną eksplozję parametrów.
  • Działa, jeśli masz więcej parametrów niż obserwacji w tym sensie, że testujesz wszystkie kombinacje predyktorów, które dają rozwiązanie

Możesz użyć krokowego wyboru do przodu

  • Mniej czasochłonne, ale może nie uzyskać absolutnie najlepszej kombinacji, szczególnie. gdy predyktory są skorelowane (może wybrać jeden predyktor i nie będzie w stanie uzyskać dalszej poprawy po dodaniu 2 innych predyktorów wykazałoby poprawę)
  • Działa nawet wtedy, gdy masz więcej parametrów niż obserwacji

Możesz użyć eliminacji wstecznej

  • Nie działa, jeśli masz więcej parametrów niż obserwacje, nie ma jednego dobrego punktu początkowego (teoretycznie możesz zacząć od wszystkich prawidłowych punktów początkowych, pracować wstecz, wybrać najlepszy, ale nie to zwykle oznacza eliminacja wsteczna)
  • Podobnie jak krok naprzód, mniej czasochłonne niż wszystkie podzbiory, ale może nie uzyskać absolutnie najlepszej kombinacji, szczególnie. gdy predyktory są skorelowane

Możesz użyć LASSO

  • Działa nawet wtedy, gdy masz więcej parametrów niż obserwacji
  • Wydajny procesor, gdy masz wiele parametrów i kombinatoryczną eksplozję podzbiorów
  • Dodaje regularyzację

Co do pytania, dlaczego LASSO lepiej radzi sobie z danymi w CV

  • Jedną z możliwości jest opisana powyżej zależność od ścieżki - LASSO może znaleźć lepszy podzbiór. Być może miał szczęście, może LASSO ogólnie / czasem dostaje lepsze podzbiory, nie jestem pewien. Być może istnieje literatura na ten temat.
  • Inną (bardziej prawdopodobną) możliwością jest regularyzacja LASSO, która zapobiega nadmiernemu dopasowaniu, więc LASSO działa lepiej w CV / poza próbką.

Podsumowując, LASSO zapewnia regularyzację i efektywny wybór podzbiorów, szczególnie gdy masz wiele predyktorów.

BTW, możesz zrobić LASSO i wybrać swój model za pomocą CV (najczęściej), ale także za pomocą AIC lub innego kryterium. Uruchom swój model z regularyzacją L1 i bez ograniczeń, a następnie stopniowo dokręcaj wiązanie, aż AIC osiągnie minimum, błąd CV lub kryterium wyboru. Zobacz http://scikit-learn.org/stable/auto_examples/linear_model/plot_lasso_model_selection.html

Rocky McNuts
źródło