Wybór najlepszego modelu spośród różnych „najlepszych” modeli

28

Jak wybrać model spośród różnych modeli wybranych różnymi metodami (np. Wybór do tyłu lub do przodu)?

Co to jest model oszczędny?

Tomek
źródło
Zredagowałem tytuł, aby (miejmy nadzieję) wyjaśnić twój punkt widzenia.

Odpowiedzi:

39

Model oszczędny to model, który osiąga pożądany poziom wyjaśnienia lub przewidywania przy możliwie najmniejszej liczbie zmiennych predykcyjnych.

Do oceny modelu istnieją różne metody w zależności od tego, co chcesz wiedzieć. Istnieją zasadniczo dwa sposoby oceny modelu: Na podstawie prognoz i na podstawie dopasowania do bieżących danych. W pierwszym przypadku chcesz wiedzieć, czy Twój model odpowiednio przewiduje nowe dane, w drugim chcesz wiedzieć, czy Twój model odpowiednio opisuje relacje w twoich bieżących danych. To są dwie różne rzeczy.

Ocena na podstawie prognoz

Najlepszym sposobem oceny modeli używanych do prognozowania jest walidacja krzyżowa. Bardzo krótko, wycinasz swój zestaw danych np. 10 różnych elementów, użyj 9 z nich, aby zbudować model i przewidzieć wyniki dla dziesiątego zestawu danych. Prosta średnia kwadratowa różnica między zaobserwowanymi a przewidywanymi wartościami daje miarę dokładności prognozowania. Powtarzając to dziesięć razy, obliczasz średnią kwadratową różnicę dla wszystkich dziesięciu iteracji, aby uzyskać ogólną wartość ze standardowym odchyleniem. Pozwala to ponownie porównać dwa modele pod względem dokładności prognozowania przy użyciu standardowych technik statystycznych (test t lub ANOVA).

Wariantem na temat jest kryterium PRASY (Prediction Sum of Squares), zdefiniowane jako

ja=1n(Yja-Y^ja(-ja))2)

Gdzie Y i ( - i ) jest przewidywana wartość dla obserwacji ith wykorzystaniem modelu opartego na wszystkich obserwacji minus wartość i-tego. To kryterium jest szczególnie przydatne, jeśli nie masz dużo danych. W takim przypadku podzielenie danych jak w podejściu krzyżowej weryfikacji może spowodować, że podzbiory danych będą zbyt małe, aby zapewnić stabilne dopasowanie.Y^ja(-ja)

Ocena na podstawie dopasowania

Po pierwsze, pozwól mi stwierdzić, że tak naprawdę różni się to w zależności od używanego modelu. Na przykład test współczynnika prawdopodobieństwa może działać w przypadku uogólnionych addytywnych modeli mieszanych przy użyciu klasycznego gaussa dla błędów, ale nie ma znaczenia w przypadku wariantu dwumianowego.

Najpierw masz bardziej intuicyjne metody porównywania modeli. Możesz użyć Aikake Information Criterion (AIC) lub Bayesian Information Criterion (BIC), aby porównać stopień dopasowania dwóch modeli. Ale nic nie mówi, że oba modele naprawdę się różnią.

Kolejnym jest kryterium C Mallowa. To zasadniczo sprawdza możliwe odchylenie w twoim modelu, porównując model ze wszystkimi możliwymi podmodelami (lub starannym ich wyborem). Zobacz także http://www.public.iastate.edu/~mervyn/stat401/Other/mallows.pdf

Jeśli modele, które chcesz porównać, są modelami zagnieżdżonymi (tj. Wszystkie predyktory i interakcje bardziej oszczędnego modelu występują również w bardziej kompletnym modelu), możesz użyć formalnego porównania w postaci testu współczynnika wiarygodności (lub chi-kwadrat lub test F w odpowiednich przypadkach, np. przy porównywaniu prostych modeli liniowych dopasowanych przy użyciu najmniejszych kwadratów). Ten test zasadniczo kontroluje, czy dodatkowe predyktory lub interakcje naprawdę poprawiają model. To kryterium jest często stosowane w krokowych metodach do przodu lub do tyłu.

O automatycznym wyborze modelu

Masz zwolenników i wrogów tej metody. Ja osobiście nie jestem zwolennikiem automatycznego wyboru modelu, zwłaszcza gdy chodzi o opisywanie modeli, a to z kilku powodów:

  • W każdym modelu powinieneś sprawdzić, czy odpowiednio radzisz sobie z myleniem. W rzeczywistości wiele zestawów danych zawiera zmienne, których nigdy nie należy umieszczać w modelu w tym samym czasie. Często ludzie zapominają o tym kontrolować.
  • Automatyczny wybór modelu to metoda tworzenia hipotez, a nie ich testowania. Wszelkie wnioskowania oparte na modelach pochodzących z automatycznego wyboru modelu są nieprawidłowe. Nie ma sposobu, aby to zmienić.
  • Widziałem wiele przypadków, w których rozpoczynając od innego punktu początkowego, stopniowa selekcja zwróciła zupełnie inny model. Metody te są dalekie od stabilnych.
  • Trudno również wprowadzić przyzwoitą regułę, ponieważ testy statystyczne w celu porównania dwóch modeli wymagają zagnieżdżenia modeli. Jeśli używasz np. AIC, BIC lub PRESS, wartość graniczna dla naprawdę istotnej różnicy jest wybierana arbitralnie.

Zasadniczo widzę więcej w porównaniu wybranych wcześniej wybranych modeli. Jeśli nie zależy ci na statystycznej ocenie modelu i testowaniu hipotez, możesz użyć walidacji krzyżowej, aby porównać dokładność predykcyjną swoich modeli.

Ale jeśli naprawdę zależy ci na wyborze zmiennych do celów predykcyjnych, możesz rzucić okiem na inne metody wyboru zmiennych, takie jak obsługa wektorowych maszyn, sieci neuronowe, losowe lasy i podobne. Są one znacznie częściej stosowane np. W medycynie, aby dowiedzieć się, które z tysięcy zmierzonych białek mogą odpowiednio przewidzieć, czy masz raka czy nie. Aby podać (sławny) przykład:

http://www.nature.com/nm/journal/v7/n6/abs/nm0601_673.html

http://www.springerlink.com/content/w68424066825vr3l/

Wszystkie te metody mają również warianty regresji dla danych ciągłych.

Joris Meys
źródło
Który model wybrałbyś między Mallows Cp a wyborem wstecznym? Czy modele z niskim SSE i znaczącymi współczynnikami są dobre?
tom
2
@tom: porównujesz jabłka z pomarańczami. wsteczna selekcja jest metodą, kryterium jest Mallows Cp. Cp Mallowa można wykorzystać jako kryterium wyboru wstecznego. I jak możesz przeczytać, nie dokonuję selekcji wstecznej. Jeśli muszę wybrać zmienne, używam do tego odpowiednich metod. Nie wspominałem o metodach LASSO i LAR, o których wspominał Peter Flom, ale zdecydowanie są one warte spróbowania.
Joris Meys,
xx-1
2
@FrankHarrell mała symulacja może udowodnić, że korelacja między wartościami p (zakładając, że mówisz o teście F lub równoważnym) a AIC nie istnieje (0,01 w mojej symulacji). Więc nie, nie ma związku między wartościami P a AIC. To samo dla BIC i Cp. Kolejna mała symulacja pokaże również, że uzyskuje się całkiem inne wyniki w procedurze krokowej, w zależności od zastosowanego kryterium. Więc nie: Cp, AIC, BIC nie są w żaden sposób tylko przekształceniami wartości P. W rzeczywistości, patrząc na wzory, nie mogę w żaden sposób wskazać na matematyczny związek lub transformację.
Joris Meys,
1
@FrankHarrell, co nie znaczy, że opowiadam się za krokiem, wręcz przeciwnie. Ale twoje oświadczenie jest co najmniej sformułowane nieco silnie.
Joris Meys,
20

α=0,50

Frank Harrell
źródło
Pytanie nie dotyczy kroku, ale wyboru najlepszego modelu spośród wyników różnych podejść ...
Joris Meys,
4
Bardzo podoba mi się: „parsimony jest twoim wrogiem”.
Peter Flom - Przywróć Monikę
1
Dzięki Peter. Joris - wybór spośród różnych podejść różni się nieco od wyboru krokowego, ale niewiele.
Frank Harrell,
16

Korzystanie z wyboru wstecz lub w przód jest powszechną strategią, ale nie mogę jej polecić. Wszystkie wyniki takiego budowania modelu są błędne. Wartości p są zbyt niskie, współczynniki są odchylone od zera i istnieją inne powiązane problemy.

Jeśli musisz dokonać automatycznego wyboru zmiennych, poleciłbym użycie bardziej nowoczesnej metody, takiej jak LASSO lub LAR.

Napisałem na ten temat prezentację SAS, zatytułowaną „Stopniowe zatrzymywanie: dlaczego stopniowe i podobne metody są złe i czego powinieneś używać”

Ale jeśli to możliwe, całkowicie unikałbym tych zautomatyzowanych metod i polegam na wiedzy specjalistycznej w tej dziedzinie. Jednym z pomysłów jest wygenerowanie około 10 rozsądnych modeli i porównanie ich w oparciu o kryterium informacyjne. @Nick Sabbe wymienił kilka z nich w swojej odpowiedzi.

Peter Flom - Przywróć Monikę
źródło
2
+1 za odniesienie do artykułu. Chociaż nie koduję w SAS, przeczytałem go kilka miesięcy temu i uznałem, że jest to miły, wysoki poziom rozwiązania problemu.
Josh Hemann
11

Odpowiedź na to pytanie będzie w dużej mierze zależeć od twojego celu. Być może szukasz statystycznie znaczących współczynników lub możesz uniknąć wielu błędnych klasyfikacji przy przewidywaniu wyniku dla nowych obserwacji, lub możesz po prostu interesować się modelem z najmniej fałszywymi pozytywami; być może po prostu chcesz, aby krzywa była „najbliższa” danym.

W każdym z powyższych przypadków potrzebujesz jakiegoś środka do tego, czego szukasz. Niektóre popularne miary z różnymi aplikacjami to AUC, BIC, AIC, błąd resztkowy, ...

Obliczasz miarę, która najlepiej pasuje do celu dla każdego modelu, a następnie porównujesz „wyniki” dla każdego modelu. To prowadzi do najlepszego modelu dla twojego celu.

Niektóre z tych miar (np. AIC) kładą dodatkowy nacisk na liczbę niezerowych współczynników w modelu, ponieważ użycie zbyt wielu może po prostu przerastać dane (tak więc model jest bezużyteczny, jeśli użyjesz go do nowych danych, a tym bardziej do populacja). Mogą istnieć inne powody, dla których model musi przechowywać zmienne „jak najmniej”, np. Jeśli pomiar wszystkich z nich w celu prognozowania jest po prostu kosztowny. „Prostota” lub „niewielka liczba zmiennych” w modelu jest zwykle określana jako jego parsimony.

Krótko mówiąc, model oszczędny jest modelem „prostym”, nie zawierającym zbyt wielu zmiennych.

Jak często przy tego rodzaju pytaniach, odsyłam cię do doskonałej książki Elementy statystycznego uczenia się, aby uzyskać głębsze informacje na ten temat i powiązane zagadnienia.

Nick Sabbe
źródło
1
Fajna książka, którą tam polecasz. Kolejny, który mógłbym polecić, to stosowane liniowe modele statystyczne, które zawierają kilka rozdziałów dotyczących kryteriów wyboru, wyboru modelu i porównania modeli.
Joris Meys,
-1

Uważam, że dyskusja tutaj jest interesująca, szczególnie debata pomiędzy Parsimonious i Model z większą liczbą współczynników i zmiennych.

Mój prof. Późny dr Steve podkreślał oszczędny model z niskim R ^ 2 w porównaniu z innym modelem z lepszym dopasowaniem / dużym R ^ 2.

Dzięki za wszystkie ryby tutaj!

Akash

Akash Sondhi - nowicjusz modelujący
źródło