Kiedy w regresji liniowej należy zastosować log zmiennej niezależnej zamiast wartości rzeczywistych?

164

Czy szukam lepszego zachowania dla danej zmiennej niezależnej, czy też ograniczenia efektu wartości odstających, czy czegoś innego?

d_2
źródło
1
Zastanawiasz się, jak zmniejszyć efekt wartości odstających lub kiedy użyć dziennika jakiejś zmiennej?
Benjamin Bannier,
23
Myślę, że OP mówi: „Słyszałem o ludziach używających zmiennych wejściowych logowania: dlaczego to robią?”
Shane,
Dlaczego tylko dziennik? Czy to pytanie nie powinno mieć zastosowania do jakiejkolwiek techniki transformacji danych, której można by użyć do zminimalizowania reszt związanych z mx + b?
AsymLabs,
1
@AsymLabs - dziennik może być wyjątkowy w regresji, ponieważ jest to jedyna funkcja przekształcająca produkt w sumę.
probabilityislogic
12
Ostrzeżenie dla czytelników: Pytanie dotyczy transformacji IV, ale niektóre odpowiedzi wydają się mówić o przyczynach transformacji DV. Nie daj się zwieść myśleniu, że są to również powody do transformacji IV - niektóre mogą, inne na pewno nie. W szczególności rozkład IV nie ma na ogół znaczenia (w rzeczywistości rozkład krańcowy DV też nie jest).
Glen_b,

Odpowiedzi:

168

Zawsze waham się przeskoczyć do wątku z tyloma doskonałymi odpowiedziami, ale uderza mnie to, że niewiele odpowiedzi daje powód, aby preferować logarytm od innej transformacji, która „wyciska” dane, takie jak root lub wzajemność.

Zanim do tego dojdziemy , podsumujmy mądrość istniejących odpowiedzi w bardziej ogólny sposób. Niektóre nieliniowe ponowne wyrażanie zmiennej zależnej jest wskazane, gdy spełniony jest jeden z poniższych warunków:

  • Resztki mają przekrzywiony rozkład. Celem transformacji jest uzyskanie resztek, które są w przybliżeniu symetrycznie rozmieszczone (oczywiście około zera).

  • Rozkład reszt zmienia się systematycznie wraz z wartościami zmiennej zależnej („heteroscedastyczność”). Celem transformacji jest usunięcie tej systematycznej zmiany w rozprzestrzenianiu, osiągając w przybliżeniu „homoscedastyczność”.

  • Zlinearyzować relację.

  • Gdy wskazuje teoria naukowa. Na przykład chemia często sugeruje wyrażanie stężeń jako logarytmów (dawanie aktywności lub nawet dobrze znane pH).

  • Gdy bardziej mglista teoria statystyczna sugeruje, że reszty odzwierciedlają „błędy losowe”, które nie kumulują się addytywnie.

  • Aby uprościć model. Na przykład czasami logarytm może uprościć liczbę i złożoność terminów „interakcji”.

(Te wskazówki mogą być ze sobą sprzeczne; w takich przypadkach konieczna jest ocena).

Tak więc, gdy jest logarytm wskazano zamiast innej transformacji?

  • Reszty mają „silnie” dodatnio wypaczony rozkład. W swojej książce o EDA John Tukey podaje ilościowe sposoby oszacowania transformacji (w rodzinie Box-Coxa, czyli transformacji mocy) na podstawie statystyk rangowych reszt. Naprawdę sprowadza się to do tego, że jeśli przyjmowanie logu symetrycznego do reszt, to prawdopodobnie była to właściwa forma ponownego wyrażania; w przeciwnym razie konieczne jest inne wyrażenie.

  • Gdy SD reszt jest wprost proporcjonalne do dopasowanych wartości (a nie do pewnej mocy dopasowanych wartości).

  • Gdy relacja jest bliska wykładniczej.

  • Kiedy uważa się, że reszty odzwierciedlają błędy kumulujące się wielokrotnie.

  • Naprawdę potrzebujesz modelu, w którym zmiany marginalne w zmiennych objaśniających są interpretowane w kategoriach zmian multiplikatywnych (procentowych) w zmiennej zależnej.

Wreszcie niektóre inne powody, dla których nie należy używać wyrażenia :

  • Wykonywanie wartości odstających nie wygląda jak wartości odstające. Wartość odstająca to układ odniesienia, który nie pasuje do pewnego oszczędnego, stosunkowo prostego opisu danych. Zmiana opisu w celu poprawienia wyglądu wartości odstających jest zwykle niepoprawnym odwróceniem priorytetów: najpierw uzyskaj naukowo poprawny, statystycznie dobry opis danych, a następnie zbadaj wartości odstające. Nie pozwól, aby okazjonalne wartości odstające określały, jak opisać resztę danych!

  • Ponieważ oprogramowanie zrobiło to automatycznie. (Wystarczająco powiedziane!)

  • Ponieważ wszystkie dane są pozytywne. (Pozytywność często oznacza skośność dodatnią, ale nie musi. Co więcej, inne transformacje mogą działać lepiej. Na przykład root często działa najlepiej z zliczonymi danymi).

  • Aby „złe” dane (być może niskiej jakości) wyglądały na dobrze zachowane.

  • Aby móc wykreślić dane. (Jeśli transformacja jest potrzebna do wykreślenia danych, prawdopodobnie jest potrzebna z co najmniej jednego dobrego powodu, o którym już wspomniano. Jeśli jedynym powodem transformacji jest naprawdę kreślenie, śmiało i zrób to - ale tylko aby wykreślić dane. Pozostaw dane nietransformowane do analizy).

Whuber
źródło
1
Co ze zmiennymi, takimi jak gęstość zaludnienia w regionie lub stosunek liczby dzieci do nauczycieli w każdym okręgu szkolnym lub liczba zabójstw na 1000 w populacji? Widziałem, jak profesorowie zapisują dziennik tych zmiennych. Nie jest dla mnie jasne, dlaczego. Na przykład, czy wskaźnik zabójstw nie jest już procentem? Dziennik będzie procentową zmianą stawki? Dlaczego log relacji dziecko-nauczyciel byłby preferowany? Czy należy przyjmować transformację logarytmiczną dla każdej zmiennej ciągłej, gdy nie ma teorii leżącej u podstaw prawdziwej formy funkcjonalnej?
user1690130,
1
@JG Małe proporcje mają zwykle krzywe rozkłady; logarytmy i pierwiastki prawdopodobnie uczynią je bardziej symetrycznymi. Nie rozumiem twoich pytań związanych z wartościami procentowymi: być może łączysz różne zastosowania wartości procentowych (jedno do wyrażenia czegoś jako proporcji całości, a drugie do wyrażenia względnej zmiany)? Nie sądzę, że napisałem cokolwiek, co przemawia za tym, aby zawsze stosować logarytmy - wręcz przeciwnie! Więc nie rozumiem podstawy twojego ostatniego pytania.
whuber
2
„Kiedy uważa się, że reszty odzwierciedlają błędy kumulujące się wielokrotnie”. Mam problem z interpretacją tego wyrażenia. Czy można to trochę wzbogacić o kolejne zdanie lub dwa? Do jakiej akumulacji się odnosisz?
Hatszepsut
@ user1690130 dla współczynników i gęstości, powinny one ogólnie być dopasowane jako rozkład rodziny Poissona dla zliczeń z przesunięciem ekspozycji. Np. Liczba osób to liczba, a przesunięcie to obszar regionu. Zobacz to pytanie, aby uzyskać dobre wyjaśnienie - stats.stackexchange.com/questions/11182/…
Michael Barton
2
@ Hatszepsut prostym przykładem mnożących się błędów byłaby objętość jako zmienna zależna i błędy w pomiarach każdego wymiaru liniowego.
abalter
73

Zawsze mówię uczniom, że istnieją trzy powody, aby przekształcić zmienną, przyjmując logarytm naturalny. Powód zarejestrowania zmiennej określa, czy chcesz rejestrować zmienne niezależne, zależne czy oba. Mówiąc jasno, mówię o przyjęciu logarytmu naturalnego.

Po pierwsze, aby poprawić dopasowanie modelu, jak zauważyli inni plakaty. Na przykład, jeśli twoje reszty nie są normalnie rozłożone, wówczas przyjęcie logarytmu skośnej zmiennej może poprawić dopasowanie, zmieniając skalę i sprawiając, że zmienna jest bardziej „normalnie” rozłożona. Na przykład zarobki są obcinane do zera i często wykazują dodatnie pochylenie. Jeśli zmienna ma ujemne pochylenie, możesz najpierw odwrócić zmienną przed przyjęciem logarytmu. Myślę tu szczególnie o skalach Likerta, które są wprowadzane jako zmienne ciągłe. Chociaż zwykle dotyczy to zmiennej zależnej, czasami masz problemy z resztkami (np. Heteroscedastyczność) spowodowane przez zmienną niezależną, którą czasami można skorygować, przyjmując logarytm tej zmiennej. Na przykład podczas uruchamiania modelu, który wyjaśniał oceny wykładowców na zbiorze wykładowców i zmiennych towarzyszących klasy, zmienna „wielkość klasy” (tj. Liczba studentów na wykładzie) miała wartości odstające, które wywoływały heteroscedastyczność, ponieważ wariancja ocen wykładowcy była mniejsza w większym kohorty niż mniejsze kohorty. Rejestrowanie zmiennej ucznia pomogłoby, chociaż w tym przykładzie albo obliczenie Solidnych Standardowych Błędów, albo użycie Ważonych Najmniejszych Kwadratów może ułatwić interpretację.

β β

β

β

β100

β/100

I wreszcie może istnieć teoretyczny powód. Na przykład niektóre modele, które chcielibyśmy oszacować, są multiplikatywne, a zatem nieliniowe. Biorąc logarytmy, modele te można oszacować za pomocą regresji liniowej. Dobrym przykładem tego jest funkcja produkcji Cobba-Douglasa w ekonomii i równanie Mincera w edukacji. Funkcja produkcji Cobba-Douglasa wyjaśnia, w jaki sposób dane wejściowe są przekształcane w dane wyjściowe:

Y=ALαKβ

gdzie

Y

A

L

K

αβ

Biorąc logarytmy tego, funkcja ta jest łatwa do oszacowania za pomocą regresji liniowej OLS jako takiej:

log(Y)=log(A)+αlog(L)+βlog(K)
Graham Cookson
źródło
5
„Log Y i X - wzrost X o jedną jednostkę doprowadziłby do β ∗ 100% wzrostu / spadku Y”: Myślę, że dotyczy to tylko, gdy β jest małe, więc exp (β) ≈ 1 + β
Ida
1
ładne i jasne dzięki! Jedno pytanie, jak interpretujesz przechwyty w przypadku Log Y i X? i ogólnie jestem zaniepokojony tym, jak zgłosić regresje transformowane logami ...
Bakaburg
2
Jestem frajerem odpowiedzi, które zawierają przykłady z ekonomii [„Miałeś mnie na„ Funkcji produkcyjnej Cobba-Douglasa ””]… Jedno jednak: należy zmienić wyraz przechwytujący w drugim równaniu na log (A ), aby było zgodne z pierwszym równaniem.
Steve S,
100×(eβ1)
21

Aby uzyskać więcej informacji na temat doskonałego argumentu Whubera na temat powodów, dla których wolę logarytm od niektórych innych przekształceń, takich jak pierwiastek lub odwrotność, ale skupiając się na unikalnej interpretacji współczynników regresji wynikających z transformacji logarytmicznej w porównaniu do innych przekształceń, zobacz:

Oliver N. Keene. Transformacja dziennika jest wyjątkowa. Statystyka w medycynie 1995; 14 (8): 811–819. DOI: 10.1002 / sim . 4780140810 . (PDF wątpliwej legalności dostępny na stronie http://rds.epi-ucsf.org/ticr/syllabus/courses/25/2009/04/21/Lecture/readings/log.pdf ).

Jeśli logujesz zmienną niezależną x do podstawy b , możesz interpretować współczynnik regresji (i CI) jako zmianę zmiennej zależnej y na b- krotny wzrost x . (Logi do podstawy 2 są zatem często przydatne, ponieważ odpowiadają zmianie y na podwojenie x lub logi do podstawy 10, jeśli x zmienia się w wielu rzędach wielkości, co jest rzadsze). Inne transformacje, takie jak pierwiastek kwadratowy, nie mają tak prostej interpretacji.

Jeśli zarejestrujesz zmienną zależną y (nie pierwotne pytanie, ale takie, na które odnosiło się kilka poprzednich odpowiedzi), uważam, że pomysł Tima Cole'a na „sympercenty” jest atrakcyjny do prezentacji wyników (użyłem ich nawet raz w gazecie), chociaż wydaje się, że nie złapali się tak szeroko:

Tim J Cole. Sympercents: symetryczne różnice procentowe w skali 100 log (e) upraszczają prezentację danych transformowanych logami. Statystyka w medycynie 2000; 19 (22): 3109–3125. DOI: 10.1002 / 1097-0258 (20001130) 19:22 <3109 :: AID-SIM558> 3.0.CO; 2-F [Cieszę się, że Stat Med przestał używać SICI jako DOI ...]

jeden przystanek
źródło
1
Dzięki za referencje i bardzo dobre punkty. Pytanie dotyczy tego, czy ten problem dotyczy wszystkich transformacji, a nie tylko dzienników. Dla nas statystyki / prawdopodobieństwo jest przydatne, ponieważ umożliwia skuteczne przewidywanie wyników lub skuteczne kryteria / wytyczne. Przez lata stosowaliśmy transformacje mocy (logi pod inną nazwą), transformacje wielomianowe i inne (nawet transformacje fragmentaryczne), aby spróbować zmniejszyć resztki, zacieśnić przedziały ufności i ogólnie poprawić zdolność predykcyjną z danego zestawu danych. Czy mówimy teraz, że jest to nieprawidłowe?
AsymLabs
1
@AsymLabs, jak odrębne są dwie kultury Breimana (z grubsza predyktory i modelerzy)? Por. Dwie kultury - sporne.
denis
15

Zwykle przyjmuje się dziennik zmiennej wejściowej, aby go skalować i zmieniać rozkład (np. Aby był normalnie dystrybuowany). Nie można tego jednak zrobić na ślepo; podczas skalowania należy zachować ostrożność, aby mieć pewność, że wyniki będą nadal interpretowalne.

Jest to omówione w większości wstępnych tekstów statystycznych. Możesz także przeczytać artykuł Andrew Gelmana na temat „Skalowania danych regresji poprzez podzielenie przez dwa odchylenia standardowe” w celu omówienia tego. Ma również bardzo miłą dyskusję na ten temat na początku „Analizy danych przy użyciu regresji i modeli wielopoziomowych / hierarchicznych” .

Zapisywanie dziennika nie jest odpowiednią metodą radzenia sobie ze złymi danymi / wartościami odstającymi.

Shane
źródło
12

Masz tendencję do robienia dzienników danych, gdy występuje problem z resztkami. Na przykład, jeśli wykreślisz reszty względem określonego współzmiennego i zaobserwujesz rosnący / malejący wzór (kształt lejka), transformacja może być odpowiednia. Reszty nieprzypadkowe zwykle wskazują, że założenia modelu są błędne, tj. Dane nienormalne.

Niektóre typy danych automatycznie poddają się transformacjom logarytmicznym. Na przykład zwykle biorę dzienniki, gdy mam do czynienia z koncentracją lub wiekiem.

Chociaż transformacje nie są przede wszystkim używane do rozwiązywania wartości odstających, pomagają, ponieważ zapisywanie dzienników niszczy dane.

csgillespie
źródło
1
Ale nadal, używając logu zmienia model - dla regresji liniowej jest to y ~ a * x + b, a dla regresji liniowej na logu jest to y ~ y0 * exp (x / x0).
1
Zgadzam się - biorąc dziennik zmiany twojego modelu. Ale jeśli musisz przekształcić swoje dane, oznacza to, że Twój model nie był odpowiedni.
csgillespie
2
@cgillespie: Koncentracje, tak; ale wiek? To jest dziwne.
whuber
@ whuber: Przypuszczam, że to bardzo zależy od danych, ale zestawów danych, których użyłem, zobaczysz dużą różnicę między 10 a 18 rokiem życia, ale niewielką różnicę między 20 a 28 rokiem życia. Nawet w przypadku małych dzieci różnica między 0-1 rokiem życia nie jest taka sama jak różnica między 1-2.
csgillespie
1
@landroni Jest krótko sformułowany. Nie powiedziałbym, że jest kiepski, z wyjątkiem tego, że prawdopodobnie „np.” Był zamierzony zamiast „tj.” Rozumiem użycie „losowego” tutaj w znaczeniu „niezależnego i identycznie rozmieszczonego”, co jest rzeczywiście najbardziej ogólnym założeniem przyjętym przez OLS. W niektórych ustawieniach ludzie dodatkowo zakładają, że ten wspólny podstawowy rozkład jest normalny, ale nie jest to absolutnie konieczne w praktyce ani w teorii: wszystko, co jest konieczne, to to, aby rozkłady próbkowania odpowiednich statystyk były zbliżone do normalnych.
whuber
10

XXX

XXX3rmsXx

require(rms)
dd <- datadist(mydata); options(datadist='dd')
cr <- function(x) x ^ (1/3)
f <- ols(y ~ rcs(cr(X), 5), data=mydata)
ggplot(Predict(f))  # plot spline of cr(X) against X

X3X

Frank Harrell
źródło
E[Y|X]=f(X)
9

Chciałbym odpowiedzieć na pytanie użytkownika 1690130, które zostało jako komentarz do pierwszej odpowiedzi z 26 października 12 i brzmi następująco: „A co ze zmiennymi, takimi jak gęstość zaludnienia w regionie lub stosunek liczby dzieci do nauczycieli w każdym okręgu szkolnym lub liczba zabójstw na 1000 w populacji? Widziałem, jak profesorowie biorą dziennik tych zmiennych. Nie jest dla mnie jasne, dlaczego. Na przykład, czy wskaźnik zabójstw nie jest już procentem? Dziennik byłby procentową zmianą oceń? Dlaczego log relacji dziecko-nauczyciel byłby preferowany? ”

Chciałem odpowiedzieć na podobny problem i chciałem podzielić się tym, co mówi mój stary podręcznik statystyk ( Jeffrey Wooldridge. 2006. Wstępna ekonometria - nowoczesne podejście, wydanie czwarte. Rozdział 6 Analiza wielu regresji: Dalsze problemy. 191 ). Wooldridge radzi:

Zmienne występujące w postaci procentowej lub procentowej, takie jak stopa bezrobocia, wskaźnik uczestnictwa w planie emerytalnym, odsetek studentów zdających standardowy egzamin oraz wskaźnik aresztowania w sprawie zgłoszonych przestępstw - mogą występować w postaci oryginalnej lub logarytmicznej , chociaż istnieje tendencja do używania ich w postaci poziomej . Wynika to z faktu, że wszelkie współczynniki regresji obejmujące zmienną pierwotną - niezależnie od tego, czy jest to zmienna zależna, czy zmienna niezależna - będą miały interpretację zmiany punktu procentowego. Jeśli użyjemy, powiedzmy, log ( unem ) w regresji, gdzie unem to odsetek osób bezrobotnych, musimy bardzo ostrożnie rozróżniać zmianę punktu procentowego od zmiany procentowej. Pamiętaj, że jeśli unemwynosi od 8 do 9, co stanowi wzrost o jeden punkt procentowy, ale wzrost o 12,5% w stosunku do początkowego poziomu bezrobocia. Korzystanie z dziennika oznacza, że ​​patrzymy na procentową zmianę stopy bezrobocia: log (9) - log (8) = 0,118 lub 11,8%, co jest logarytmicznym przybliżeniem rzeczywistego wzrostu o 12,5%.

Opierając się na tym i skarbonce na wcześniejszym komentarzu Whubera do pytania użytkownika 1690130, unikałbym użycia logarytmu zmiennej gęstości lub stopy procentowej w celu uproszczenia interpretacji, chyba że użycie postaci dziennika powoduje poważny kompromis, taki jak możliwość zmniejszenia skośności gęstości lub zmienna stawki.

Sannita
źródło
Często dla wartości procentowych (tj. Proporcji na (0,1) stosuje się transformację logitową. Jest tak, ponieważ dane proporcjonalne często naruszają założenie o normalności reszt, w pewien sposób transformacja logiczna nie będzie poprawna.
colin
3

Punkt Shane'a, że ​​podejmowanie dziennika w celu radzenia sobie ze złymi danymi jest dobrze przemyślane. Podobnie jak Colin w kwestii znaczenia normalnych reszt. W praktyce uważam, że zwykle można uzyskać normalne wartości resztkowe, jeśli zmienne wejściowe i wyjściowe są również względnie normalne. W praktyce oznacza to przyglądanie się rozkładowi przekształconych i nietransformowanych zestawów danych oraz upewnianie się, że stały się one bardziej normalne i / lub przeprowadzanie testów normalności (np. Testy Shapiro-Wilka lub Kołmogorowa-Smirnowa) i ustalenie, czy wynik jest bardziej normalny. Ważna jest także interpretacja i tradycja. Na przykład w psychologii poznawczej często stosuje się logarytmiczne transformacje czasu reakcji, jednak przynajmniej dla mnie interpretacja log RT jest niejasna. Ponadto,

russellpierce
źródło
2
Odpowiedzi zostaną uporządkowane na podstawie głosów, więc staraj się nie odwoływać do innych odpowiedzi.
Vebjorn Ljosa,
4
Test normalności jest zwykle zbyt trudny. Często wystarczy uzyskać symetrycznie rozmieszczone reszty. (W praktyce reszty mają zwykle silnie pikowane rozkłady, częściowo jako artefakt oszacowania, który podejrzewam, i dlatego przetestują się jako „znacząco” nienormalny bez względu na to, jak ponownie wyrażają dane.)
whuber
@whuber: Zgoda. Właśnie dlatego określiłem „stań się bardziej normalny”. Celem powinno być obserwowanie statystyk testu pod kątem zmian, a nie podejmowanie decyzji o przyjęciu / odrzuceniu na podstawie wartości p testu.
russellpierce
ZAWSZE należy odnieść się odpowiednio do innych odpowiedzi!
abalter
@abalter? Nie podążam.
russellpierce