[Podobne pytanie zostało zadane tutaj bez odpowiedzi]
Dopasowałem model regresji logistycznej z regularyzacją L1 (regresja logistyczna Lasso) i chciałbym przetestować dopasowane współczynniki pod kątem istotności i uzyskać ich wartości p. Wiem, że testy Walda (na przykład) są opcją testowania znaczenia poszczególnych współczynników w pełnej regresji bez regularyzacji, ale w przypadku Lasso myślę, że pojawiają się dalsze problemy, które nie pozwalają na zastosowanie zwykłych formuł Walda. Na przykład szacunki wariancji potrzebne do testu nie są zgodne ze zwykłymi wyrażeniami. Oryginalny papier Lasso
http://statweb.stanford.edu/~tibs/lasso/lasso.pdf
sugeruje procedurę opartą na bootstrapie, aby oszacować wariancję współczynników, która (jak sądzę) może być potrzebna do testów (sekcja 2.5, ostatni akapit strony 272 i początek 273):
Jedno podejście polega na bootstrapie: albo można naprawić, albo możemy zoptymalizować ponad dla każdej próbki bootstrap. Naprawianie jest analogiczne do wybierania najlepszego podzbioru ( funkcji ), a następnie używania błędu standardowego najmniejszych kwadratów dla tego podzbiorut t
Rozumiem: dopasuj regresję Lasso wielokrotnie do całego zestawu danych, aż znajdziemy optymalną wartość parametru regularyzacji (nie jest to część bootstrap), a następnie użyj tylko funkcji wybranych przez Lasso, aby dopasować regresje OLS do podpróbek danych i zastosuj zwykłe formuły, aby obliczyć wariancje dla każdej z tych regresji. (I co powinienem zrobić z tymi wszystkimi wariancjami każdego współczynnika, aby uzyskać ostateczną ocenę wariancji dla każdego współczynnika?)
Ponadto, czy właściwe jest stosowanie zwykłych testów istotności (na przykład testu Walda, który wykorzystuje oszacowane bety i wariancje) z oszacowaniami Lasso współczynników i wariancji szacowanych na początku ładowania? Jestem całkiem pewien, że tak nie jest, ale jakakolwiek pomoc (skorzystaj z innego testu, zastosuj prostsze podejście, niezależnie od tego ...) jest mile widziana.
Według odpowiedzi tutaj podejrzewam, że wnioskowania i wartości p po prostu nie można uzyskać. W moim przypadku wartości p są wymogiem zewnętrznym (chociaż wybór regularyzacji L1 był moim wyborem).
Wielkie dzięki
EDYCJA Co się stanie, jeśli dopasuję regresję logistyczną OLS, używając tylko zmiennych wybranych w poprzednim przebiegu regresji logistycznej Lasso? Najwyraźniej (patrz tutaj ),
Nie ma potrzeby ponownego uruchamiania modelu po przeprowadzeniu walidacji krzyżowej (otrzymujesz współczynniki z danych wyjściowych cv.glmnet), a w rzeczywistości, jeśli dopasujesz nowy model regresji logistycznej bez kary, to nie udaje Ci się użyć lasso
Ale co jeśli zrobię to wyłącznie w celu obliczenia wartości p przy jednoczesnym utrzymaniu niskiej liczby zmiennych? Czy to bardzo brudne podejście? :-)
Odpowiedzi:
Problem ze zwykłymi testami istotności polega na tym, że przyjmują one wartość zerową, tzn. Że istnieją zmienne losowe, bez związku ze zmiennymi wynikowymi. Jednak to, co masz z lasso, to kilka losowych zmiennych, z których wybierasz najlepsze z lasso, również bety są zmniejszane. Więc nie możesz go użyć, wyniki będą stronnicze.
O ile mi wiadomo, bootstrap nie jest używany do oszacowania wariancji, ale do prawdopodobieństwa wyboru zmiennej. A to są twoje wartości p. Sprawdź darmową książkę Hasie, „Nauka statystyczna ze sparcytami”, rozdział 6 mówi o tym samym. http://web.stanford.edu/~hastie/StatLearnSparsity/
Sprawdź również ten papier, aby poznać inne sposoby uzyskania wartości p z lasso https://arxiv.org/pdf/1408.4026.pdf Prawdopodobnie jest więcej
źródło
Problem z przeprowadzaniem wnioskowania po wybraniu modelu polega na tym, że wybierasz najbardziej predykcyjne zmienne, a następnie przeprowadzasz wnioskowanie tak, jakby były wybrane niezależnie od danych. Możliwe jest wykazanie, że dopasowanie modelu regresji po dokonaniu wyboru modelu za pomocą lasso (lub dowolnej innej metody wyboru modelu!) Może prowadzić do oszacowań niezależnych od (co jest jednym z powodów, dla których proste przybliżenie gaussowskie często zawiedzie dla przedziałów ufności)n−−√
Na szczęście w ostatnich latach poczyniono znaczne postępy w opracowywaniu metod wnioskowania uwzględniających selekcję wstępną. Niektóre odnośne odniesienia dla Twojej sprawy to: http://projecteuclid.org/euclid.aos/1460381681 i https://arxiv.org/pdf/1602.07358.pdf . Techniki omówione w tych odnośnikach są zaimplementowane w pakiecie R selektywnyInferencje- https://cran.r-project.org/web/packages/selectiveInference/index.html . Pakiet SelektywneInferencje powinien generować prawidłowe przedziały ufności, których potrzebujesz.
źródło