Jak poradzić sobie z niestabilnymi oszacowaniami

13

Stabilność beta w regresji liniowej z wysoką wielokolinearnością?

Powiedzmy, że w regresji liniowej zmienne i mają wysoką wielokoliniowość (korelacja wynosi około 0,9).x 2x1x2

Jesteśmy zaniepokojony stabilności współczynnika więc musimy traktować multi-kolinearność.β

Rozwiązaniem podręcznika byłoby po prostu wyrzucenie jednej ze zmiennych.

Ale nie chcemy stracić przydatnych informacji, po prostu wyrzucając zmienne.

Jakieś sugestie?

Luna
źródło
5
Czy próbowałeś jakiegoś programu regularyzacji (np. Regresji grzbietu)?
Néstor,

Odpowiedzi:

11

Możesz wypróbować podejście regresji grzbietu w przypadku, gdy macierz korelacji jest bliska liczbie pojedynczej (tzn. Zmienne mają wysokie korelacje). Zapewni to wiarygodne oszacowanie .β

Jedyne pytanie brzmi: jak wybrać parametr regularyzacji . Nie jest to prosty problem, ale sugeruję wypróbowanie różnych wartości.λ

Mam nadzieję że to pomoże!

Paweł
źródło
2
Walidacja krzyżowa to zwykła rzecz do wybrania ;-). λ
Néstor,
faktycznie (+1 za odpowiedź i komentarz Nestora), a jeśli wykonasz obliczenia w „formie kanonicznej” (używając rozkładu własnego , możesz znaleźć minimalizującą pomijany błąd weryfikacji krzyżowej metodą Newtona bardzo tanioλXTXλ
Dikran Marsupial
wielkie dzięki! Jakieś samouczki / uwagi, jak to zrobić, w tym weryfikację krzyżową w R?
Luna,
Sprawdź rozdział 3 tej książki: stanford.edu/~hastie/local.ftp/Springer/ESLII_print5.pdf . Wdrożenie regresji grzbietu odbywa się w języku R przez niektórych autorów (Google jest twoim przyjacielem!).
Néstor,
2
Możesz użyć lm.ridgeprocedury w pakiecie MASS. Jeśli przekażesz mu zakres wartości dla , np. Wywołanie podobne , otrzymasz z powrotem uogólnione statystyki walidacji krzyżowej i możesz wykreślić je względem : aby wybrać minimum. λλfoo <- lm.ridge(y~x1+x2,lambda=seq(0,10,by=0.1))fooλplot(foo$GCV~foo$lambda)
jbowman
10

Jest jedna metoda ad hoc, której użyłem wcześniej. Nie jestem pewien, czy ta procedura ma nazwę, ale ma sens intuicyjnie.

Załóżmy, że Twoim celem jest dopasowanie modelu

Yi=β0+β1Xi+β2Zi+εi

Xi,Zip

Zi=α0+α1Xi+ηi

ηiXiZiXi

Yi=θ0+θ1Xi+θ2ηi+νi

R2

Edycja: OP poprosił o wyjaśnienie, dlaczego reszty nie mają definitywnie przykładowej korelacji zera z predyktorem, gdy pominiesz przechwytywanie, tak jak robią to, gdy przechwycenie jest uwzględnione. To zbyt długo, aby móc dodawać komentarze, więc dokonałem edycji tutaj. To wyprowadzenie nie jest szczególnie pouczające (niestety nie mogłem wymyślić rozsądnego intuicyjnego argumentu), ale pokazuje, czego wymagało OP :

β^=xiyixi2ei=yixixiyixi2xiei

xe¯x¯e¯
¯

Najpierw mamy

xe¯=1n(xiyixi2xiyixi2)=xy¯(1xi2xi2)=0

ale

x¯e¯=x¯(y¯x¯xy¯x2¯)=x¯y¯x¯2xy¯x2¯

eixix¯e¯0

y¯=x¯xy¯x2¯

x,y

Makro
źródło
To przypomina mi wykresy częściowej regresji .
Andy W
3
(X,Z)
3
XZ
1
Cześć Macro, dziękuję za doskonały dowód. Tak, teraz to rozumiem. Kiedy mówimy o korelacji próbki między x a resztami, wymaga to uwzględnienia terminu przechwytywania, aby korelacja próbki wynosiła 0. Z drugiej strony, kiedy mówimy o ortogonalności między x a resztami, nie wymaga to terminu przechwytywania należy uwzględnić, aby zachować ortogonalność.
Luna
1
@Luna, szczególnie nie zgadzam się z regresją kalenicową - właśnie to przyszło mi do głowy (odpowiedziałem wcześniej, niż to zasugerowano). Jedno mogę powiedzieć, że szacunki regresji grzbietu są tendencyjne, więc w pewnym sensie faktycznie szacujesz nieco inną (skurczoną) wielkość niż w przypadku zwykłej regresji, co sprawia, że ​​interpretacja współczynników może być trudniejsza (jako gung nawiązuje do). Ponadto to, co tu opisałem, wymaga jedynie zrozumienia podstawowej regresji liniowej i może być dla niektórych bardziej intuicyjne.
Makro
4

Podobają mi się obie dotychczasowe odpowiedzi. Pozwól mi dodać kilka rzeczy.

Inną opcją jest możliwość łączenia zmiennych. Odbywa się to poprzez standaryzację obu (tj. Przekształcenie ich w z-score), uśrednienie ich, a następnie dopasowanie modelu do zmiennej złożonej. To byłoby dobre podejście, jeśli uważasz, że są to dwie różne miary tego samego konstruktu bazowego. W takim przypadku masz dwa pomiary, które są zanieczyszczone błędem. Najbardziej prawdopodobna prawdziwa wartość zmiennej, którą naprawdę masztroska jest między nimi, dlatego uśrednienie ich daje dokładniejsze oszacowanie. Standaryzujesz je najpierw, aby umieścić je w tej samej skali, aby problemy nominalne nie zanieczyszczały wyniku (np. Nie chciałbyś uśredniać kilku pomiarów temperatury, jeśli niektóre to Fahrenheita, a niektóre Celsjusza). Oczywiście, jeśli są już w tej samej skali (np. Kilka bardzo skorelowanych sondaży opinii publicznej), możesz pominąć ten krok. Jeśli uważasz, że jedna ze zmiennych może być dokładniejsza niż druga, możesz zrobić średnią ważoną (być może wykorzystując odwrotność błędów pomiaru).

r>.98połączyłem je, ale po co? Zależy to jednak krytycznie od faktu, że zmienne są skorelowane, ponieważ są to dwie różne wersje tej samej rzeczy; jeśli istnieje inny powód ich korelacji, może to być całkowicie niewłaściwe.

X1X2YXZ Xx1x2XZ

Zgadzam się, że regresja grzbietu jest prawdopodobnie lepsza, ponieważ pozwala na użycie zmiennych, które pierwotnie zamierzałeś, i może dać bety, które są bardzo zbliżone do ich prawdziwych wartości (chociaż będą tendencyjne - zobacz tutaj lub tutaj, aby uzyskać więcej informacji ). Niemniej jednak uważam, że ma również dwa potencjalne wady: jest bardziej skomplikowany (wymaga większego zaawansowania statystycznego), a moim zdaniem model wynikowy jest trudniejszy do interpretacji.

Rozumiem, że być może najlepszym rozwiązaniem byłoby dopasowanie modelu równania strukturalnego. To dlatego, że pozwoliłoby ci sformułować dokładny zestaw relacji, które uważasz za działające, w tym zmienne ukryte. Jednak nie znam SEM wystarczająco dobrze, aby cokolwiek na ten temat powiedzieć, oprócz wspominania o możliwości. (Podejrzewam również, że byłoby to przesadą w sytuacji, którą opisujesz za pomocą tylko dwóch zmiennych towarzyszących).

gung - Przywróć Monikę
źródło
4
X1eX1X2=X1+eX1Y=eYX1X2YX1X2Y=X2X1X1X2YY
Wielkie dzięki Gung! Pytanie 1 Dlaczego to podejście działa: „Odbywa się to poprzez standaryzację obu (tj. Przekształcenie ich w z-score), uśrednienie ich, a następnie dopasowanie do modelu tylko zmiennej złożonej”. Q2 Dlaczego regresja Ridge'a byłaby lepsza? Pytanie 3 Dlaczego SEM byłby lepszy? Czy ktoś mógłby rzucić na to trochę światła? Dziękuję Ci!
Luna
Cześć Luna, miło mi pomóc. Mam zamiar to ponownie edytować; @ whuber miał więcej racji, niż początkowo się spodziewałem. Spróbuję dodać więcej, aby pomóc w dodatkowych pytaniach, ale zajmie to dużo czasu, więc może to chwilę potrwać. Zobaczymy jak to będzie.
gung - Przywróć Monikę