Jakie są nowoczesne, łatwe w użyciu alternatywy dla regresji stopniowej?

76

Mam zestaw danych z około 30 zmiennymi niezależnymi i chciałbym zbudować uogólniony model liniowy (GLM) w celu zbadania zależności między nimi a zmienną zależną.

Wiem, że metoda, której nauczono mnie w tej sytuacji, stopniowa regresja, jest obecnie uważana za grzech statystyczny .

Jakie nowoczesne metody wyboru modelu należy zastosować w tej sytuacji?

fmark
źródło
4
Inne osoby wspominają o procedurach statystycznych, które mogą być pomocne, ale najpierw zapytam, czy macie jakąś teorię na temat siły i kształtu zależności między zmiennymi. Jak duża jest twoja próbka? Czy masz powody, by unikać skomplikowanych modeli?
Michael Bishop
2
Czy ktoś rozważał uśrednienie modelu jako alternatywę w walce z problemem błędu wstępnego testowania i problemami ze specyfikacją? Z grubsza mówiąc, wszystkie zmienne są potencjalnymi predyktorami i możesz oszacować prawdopodobieństwo, że będą one przydatne. Tak więc połączony estymator nie tylko poprawia wydajność prognozowania, ale także generuje dobre oszacowania właściwości dla parametrów zmiennych w „zakresie”.
Dmitrij Celov,
1
Kurczenie się. Miejmy nadzieję, że nikt już nie korzysta ze stopniowania
Aksakal

Odpowiedzi:

56

Istnieje kilka alternatyw dla regresji krokowej . Najczęściej używane, jakie widziałem, to:

  • Opinia eksperta, aby zdecydować, które zmienne należy uwzględnić w modelu.
  • Częściowa regresja najmniejszych kwadratów . Zasadniczo otrzymujesz ukryte zmienne i robisz z nimi regresję. Możesz także zrobić PCA samodzielnie, a następnie użyć głównych zmiennych.
  • Operator najmniejszego bezwzględnego skurczu i wyboru (LASSO).

Zarówno regresja PLS, jak i LASSO są zaimplementowane w takich pakietach R.

PLS : http://cran.r-project.org/web/packages/pls/ i

LARS : http://cran.r-project.org/web/packages/lars/index.html

Jeśli chcesz tylko zbadać związek między zmienną zależną a zmiennymi niezależnymi (np. Nie potrzebujesz testów istotności statystycznej), poleciłbym również metody uczenia maszynowego , takie jak losowe lasy lub drzewa klasyfikacji / regresji . Lasy losowe mogą również przybliżać złożone nieliniowe relacje między zmiennymi zależnymi i niezależnymi, które mogły nie zostać ujawnione za pomocą technik liniowych (takich jak regresja liniowa ).

Dobrym punktem wyjścia do uczenia maszynowego może być widok zadania Uczenie maszynowe w CRAN:

Widok zadań uczenia maszynowego : http://cran.r-project.org/web/views/MachineLearning.html

Johannes
źródło
10
Pakiet glmnet jest także bardzo szybką implementacją lasso
David J. Harris
2
Ostrzegłbym, że w społeczności ukrytych zmiennych PLSers tworzą własną bardzo odizolowaną klikę i nigdy nie byli w stanie przeniknąć do poważnej literatury (przez którą rozumiem na przykład asymptotyczną teorię estymatorów najmniejszych kwadratów w pracach Michaela Browne, Peter Bentler, Albert Satorra i Alex Shapiro oraz instrumentalne modelowanie zmiennych Ken Bollen, aby wymienić tylko kilka najważniejszych). O dziwo, PLS wydaje się być akceptowalną metodą w kręgach statystycznych, która generalnie utrzymywała wyższy standard rygorystyczny niż społeczność utajonego modelowania zmiennych.
StasK,
6
The Elements of Statistical Learning mieć porównanie differend zmiennych metod selekcji i skurczowych (OLS,) najlepiej podzbiorem, grzbiet, lasso, PLS, PCR.
cbeleites,
19

Inną opcją, którą można rozważyć przy wyborze i regulowaniu zmiennych, jest siatka elastyczna . Jest zaimplementowany w R za pośrednictwem pakietu glmnet .

Zach
źródło
16

Uśrednianie modelu jest jedną z dróg (podejście teoretyczne). Pakiet R glmulti może wykonywać modele liniowe dla każdej kombinacji zmiennych predykcyjnych i przeprowadzać uśrednianie modelu dla tych wyników.

Zobacz http://sites.google.com/site/mcgillbgsa/workshop/glmulti

Nie zapomnij jednak najpierw zbadać kolinearności między zmiennymi predykcyjnymi. Przydatne są tutaj czynniki wariancji inflacji (dostępne w pakiecie R „samochód”).

OliP
źródło
Dzięki. Czy to naprawdę pasuje do wszystkich możliwych modeli? Nawet bez interakcji to w tym przypadku około miliarda modeli.
Peter Ellis
AFAIK może, ale istnieje opcja algorytmu genetycznego, która znacznie skraca czas oceny wszystkich modeli. Zobacz www.jstatsoft.org/v34/i12/paper
OliP
3
również MuMIn, AICcmodavgopakowania, choć glmultijest mądrzejszy o dużych zestawów modelowych.
Ben Bolker,
8

@johannes dał doskonałą odpowiedź. Jeśli jesteś użytkownikiem SAS, LASSO jest dostępne przez PROC GLMSELECT, a częściowe najmniejsze kwadraty za pośrednictwem PROC PLS.

David Cassell i ja przeprowadziliśmy prezentację na temat LASSO (i regresji metodą najmniejszego kąta) w kilku grupach użytkowników SAS. Jest dostępny tutaj

Peter Flom
źródło
7

Interesująca dyskusja. Określanie regresji krokowej jako grzechu statystycznego jest trochę religijnym stwierdzeniem - dopóki ktoś wie, co robi i cele tego ćwiczenia są jasne, jest to zdecydowanie dobre podejście z własnym zestawem założeń i na pewno jest stronniczy i nie gwarantuje optymalności itp. Jednak to samo można powiedzieć o wielu innych rzeczach, które robimy. Nie widziałem wspomnianego CCA, który rozwiązuje bardziej fundamentalny problem struktury korelacji w przestrzeni współzmiennej, gwarantuje optymalność, jest już od dłuższego czasu i ma nieco krzywą uczenia się. Jest wdrażany na różnych platformach, w tym R.

gillesc
źródło