Jak wybrać najlepszą transformację, aby osiągnąć liniowość?


10

Chcę wykonać wielokrotną regresję liniową, a następnie przewidzieć nowe wartości przy niewielkiej ekstrapolacji. Mam zmienną odpowiedzi w zakresie od -2 do +7 oraz trzy predyktory (zakresy od +10 do +200). Rozkład jest prawie normalny. Ale związek między odpowiedzią a predyktorami nie jest liniowy, widzę krzywe na wykresach. Na przykład jak to: http://cs10418.userapi.com/u17020874/153949434/x_9898cf38.jpg

Chciałbym zastosować transformację, aby osiągnąć liniowość. Próbowałem przekształcić zmienną odpowiedzi, sprawdzając różne funkcje i patrząc na uzyskane wykresy, aby zobaczyć liniową zależność między odpowiedzią a predyktorami. Odkryłem, że istnieje wiele funkcji, które mogą dać mi widoczną zależność liniową. Na przykład funkcje

t1=log(y+2.5)

t2=1log(y+5)

t3=1y+5

t4=1(y+10)3

t5=1(y+3)13 itd. dają podobne wyniki: http://cs10418.userapi.com/u17020874/153949434/x_06f13dbf.jpg

Po tym, jak zamierzam przekształcić przewidywane wartości (dla jako i tak dalej). Rozkłady są mniej więcej podobne do normalnych. r'=1t=1(y+10)3y=1t1310

Jak mogę wybrać najlepszą transformację dla moich danych? Czy istnieje ilościowy (i niezbyt skomplikowany) sposób oceny liniowości? Aby udowodnić, że wybrana transformacja jest najlepsza lub znaleźć ją automatycznie, jeśli to możliwe.

Czy jedynym sposobem jest wykonanie nieliniowej regresji wielokrotnej?


Próbowałem poprawić formatowanie twoich formuł, ale mogłem wprowadzić pewne błędy - sprawdź.
Peter Ellis,

Nie wierzę ci. Matematycznie nie jest możliwe, aby do t 5 jednocześnie wykazywały zależność liniową z szóstą zmienną w zakresie 0 200 . Myślę, że popełniłeś błąd przy obliczaniu tych przekształceń y . t1t50200y
whuber


2
Masz rację. To dość niesamowite, że tak szeroki zakres ponownych wyrażeń y pozostałby w relacji liniowej z r. Dzięki za udostępnienie tego. Jeśli wykreślić pozostałości, można zauważyć, że rozgląda się najlepiej, a następnie R nie wymaga ponownego wyrażenia: . 1/(y+5)rplot(lm(1/(y+5)~r))
whuber

Odpowiedzi:


14

To trochę sztuka, ale są pewne standardowe, proste rzeczy, których zawsze można próbować.

Pierwszą rzeczą do zrobienia jest ponowne wyrażenie zmiennej zależnej ( ), aby reszty były normalne. Tak naprawdę nie ma to zastosowania w tym przykładzie, w którym punkty wydają się opadać wzdłuż gładkiej krzywej nieliniowej z bardzo małym rozproszeniem. Więc przechodzimy do następnego kroku.y

Następną rzeczą jest ponowne wyrażenie zmiennej niezależnej ( ) w celu linearyzacji zależności. Jest to prosty i łatwy sposób to zrobić. Wybierz trzy reprezentatywne punkty wzdłuż krzywej, najlepiej na obu końcach i na środku. Z pierwszej cyfry odczytałem uporządkowane pary ( r , y ) = ( 10 , 7 ) , ( 90 , 0 ) i ( 180 , - 2 ) . Bez żadnych innych informacji poza tym, że r zawsze wydaje się być pozytywny, dobrym wyborem jest zbadanie transformacji Box-Coxar(r,y)(10,7)(90,0)(180,2)r dla różnych uprawnień p , zazwyczaj dobrany jako wielokrotność 1 / 2 lub 1 / 3 , a zazwyczaj pomiędzy - 1 i 1 . (Wartość graniczna, gdy p zbliża się do 0, to log ( r ) .) Ta transformacja utworzy przybliżoną zależność liniową, pod warunkiem, że nachylenie między dwoma pierwszymi punktami jest równe nachyleniu między drugą parą.r(rp1)/pp1/21/311p0log(r)

(07)/(9010)0.088(20)/(18090)0.022p=1/2(07)/(901/211/2101/211/2)16.632.4p07.36.6y=α+βlog(r)y aby były w przybliżeniu symetryczne i iterować.

y


Dziękujemy za radę transformacji Box-Coxa. Czy ma sens sprawdzanie R-kwadrat lm (1 / (y + 5) ~ r) i lm innych funkcji, a następnie porównywanie tych R-kwadrat?
nadya

rR2rR2

Wielkie dzięki za odpowiedź! Nie zamierzam przekształcać moich zmiennych niezależnych
nadya

y

@Erich Każda część tej książki jest bardzo satysfakcjonująca: w końcu jeśli możesz coś zrobić ołówkiem i papierem, możesz zaprogramować komputer, aby to robił :-). Z jedną zmienną często miło jest ją przekształcić do symetrii (jej rozkładu empirycznego); Tukey nazywa to „drobną sprawą”. Prosty sposób zidentyfikowania takiej transformacji opisano w sekcji 3E, „Szybkie wyszukiwanie”. Ilustruje to, czego można się nauczyć na pierwszy rzut oka na podsumowanie N-literowe (Tukey sugeruje podsumowanie 7- lub 9-literowe). Zdobycie tej umiejętności jest cenniejsze niż posiadanie programu komputerowego.
whuber

1

Jeśli twoja zmienna odpowiedzi (a raczej to, co stanie się resztkami zmiennej odpowiedzi) w oryginalnej skali ma rozkład normalny, jak sugerujesz, to przekształcenie jej w celu utworzenia relacji liniowej z innymi zmiennymi będzie oznaczało, że nie jest już normalna zmieni również związek między jego wariancją a wartościami średnimi. Więc z tej części opisu myślę, że lepiej jest użyć regresji nieliniowej niż transformację odpowiedzi. W przeciwnym razie, po liniowej transformacji odpowiedzi, będziesz potrzebować bardziej złożonej struktury błędu (chociaż może to być kwestia osądu i trzeba by to sprawdzić za pomocą metod graficznych).

Alternatywnie, zbadaj transformację zmiennych objaśniających . Oprócz prostych przekształceń masz również opcję dodawania w kategoriach kwadratowych.

Mówiąc bardziej ogólnie, transformacja jest bardziej sztuką niż nauką, jeśli nie istnieje żadna teoria, która sugerowałaby, co należy wykorzystać jako podstawę transformacji.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.