W niektórych literaturach czytałem, że regresja z wieloma zmiennymi objaśniającymi, jeśli jest w różnych jednostkach, wymaga standaryzacji. (Standaryzacja polega na odjęciu średniej i podzieleniu przez odchylenie standardowe). W jakich innych przypadkach muszę standaryzować swoje dane? Czy istnieją przypadki, w których powinienem jedynie wyśrodkowywać moje dane (tj. Bez dzielenia przez odchylenie standardowe)?
multiple-regression
standardization
centering
mathieu_r
źródło
źródło
Odpowiedzi:
W regresji często zaleca się centrowanie zmiennych, aby predyktory miały średnią0 . To sprawia, że pojęcie przechwytywania jest interpretowane jako oczekiwana wartość Yja gdy wartości predyktora są ustawione na ich średnie . W przeciwnym razie punkt przecięcia jest interpretowany jako oczekiwana wartość Yja gdy predyktory są ustawione na 0, co może nie być sytuacją realistyczną lub możliwą do interpretacji (np. Co, jeśli predyktorami były wzrost i waga?). Innym praktycznym powodem skalowania w regresji jest sytuacja, gdy jedna zmienna ma bardzo dużą skalę, np. Jeśli używasz wielkości populacji kraju jako predyktora. W takim przypadku współczynniki regresji mogą mieć wartość abardzo mały rząd wielkości (np. 10- 6 ), co może być trochę irytujące podczas czytania danych wyjściowych z komputera, więc możesz przekonwertować zmienną na, na przykład, wielkość populacji w milionach. Konwencja, w której standaryzujesz predykcje, istnieje przede wszystkim po to, aby jednostki współczynników regresji były takie same.
Jak @gung wyraźnie nawiązuje do @ MånsT (+1 do obu, btw), centrowanie / skalowanie nie wpływa na wnioskowanie statystyczne w modelach regresji - szacunki są odpowiednio korygowane, a wartościp będą takie same.
Inne sytuacje, w których przydatne może być centrowanie i / lub skalowanie:
gdy próbujesz zsumować lub uśrednić zmienne, które są w różnych skalach , być może w celu stworzenia pewnego rodzaju złożonego wyniku. Bez skalowania może się zdarzyć, że jedna zmienna ma większy wpływ na sumę wyłącznie ze względu na jej skalę, co może być niepożądane.
Aby uprościć obliczenia i notację. Na przykład, próbka kowariancji z macierzy wartości skupione przez ich środek jest po prostu próbkiX′X . Podobnie, w przypadku jednowymiarowego zmienną losową X został średni scentrowany, a v a r (X) = E( X2)) i odchylenia może być określona na próbce, patrząc na średnią próbek kwadratów wartości obserwowanych.
W związku z powyższym PCA można interpretować jedynie jako rozkład wartości pojedynczej macierzy danych, gdy kolumny zostały najpierw wyśrodkowane za ich pomocą.
Zauważ, że skalowanie nie jest konieczne w dwóch ostatnich punktach, o których wspomniałem, a centrowanie może nie być konieczne w pierwszym, o którym wspomniałem, więc nie muszą one zawsze iść w parze.
źródło
Spotkałeś powszechne przekonanie. Zasadniczo jednak nie trzeba wyśrodkowywać ani standaryzować danych w celu regresji wielokrotnej. Różne zmienne objaśniające są prawie zawsze w różnych skalach (tzn. Mierzone w różnych jednostkach). To nie jest problem; bety są szacowane w taki sposób, aby odpowiednio przeliczały jednostki każdej zmiennej objaśniającej na jednostki zmiennej odpowiedzi. Jedną rzeczą, którą ludzie czasem mówią, jest to, że jeśli najpierw ustandaryzowałeś zmienne, możesz zinterpretować bety jako miary ważności. Na przykład, jeśli , a β 2 = .3β1= .6 β2)= .3 , wówczas pierwsza zmienna objaśniająca jest dwa razy ważniejsza niż druga. Chociaż pomysł ten jest atrakcyjny, niestety nie jest ważny. Jest kilka problemów, ale być może najłatwiejszym do naśladowania jest brak możliwości kontrolowania możliwych ograniczeń zakresu w zmiennych. Wnioskowanie o „znaczeniu” różnych zmiennych objaśniających względem siebie jest bardzo trudnym zagadnieniem filozoficznym. Nic z tego nie sugeruje, że standaryzacja jest zła lub zła , tylko że zwykle nie jest to konieczne .
Jedynym przypadkiem, który mogę wymyślić z góry głowy, w którym pomocne jest centrowanie, jest stworzenie warunków mocy. Powiedzmy, że masz zmiennej , które waha się od 1 do 2, ale można podejrzewać krzywoliniowy związek z zmiennej odpowiedzi, a więc musiał stworzyć X. 2 terminu. Jeśli najpierw nie wyśrodkujesz X , twój kwadrat do kwadratu będzie silnie skorelowany z X , co może utrudnić oszacowanie beta. Centrowanie najpierw rozwiązuje ten problem.X X2) X X
(Aktualizacja dodana znacznie później :) Analogicznym przypadkiem, o którym zapomniałem wspomnieć, jest tworzenie warunków interakcji . Jeśli interakcja / produkt zostanie utworzona z dwóch zmiennych, które nie są wyśrodkowane na 0, zostanie wywołana pewna ilość kolinearności (z dokładną ilością zależną od różnych czynników). Centrowanie w pierwszej kolejności rozwiązuje ten potencjalny problem. Aby uzyskać pełniejsze wyjaśnienie, zobacz tę doskonałą odpowiedź z @Affine: Diagnostyka kolinearności jest problematyczna tylko wtedy, gdy uwzględniony jest termin interakcji .
źródło
Oprócz uwag w innych odpowiedziach chciałbym zauważyć, że skala i lokalizacja zmiennych objaśniających nie wpływa w żaden sposób na ważność modelu regresji.
Rozważ model .r= β0+ β1x1+ β2)x2)+ … + Ε
Do najmniejszych kwadratów estymatory z nie są dotknięte przez przesuwanie. Powodem jest to, że są to nachylenia powierzchni pasowania - o ile zmienia się powierzchnia, jeśli zmienisz x 1 , x 2 , … jedną jednostkę. To nie zależy od lokalizacji. ( Jednak robi to estymator β 0 ).β1, β2), … x1, x2), … β0
Patrząc na równaniach dla estymatorów widać, że skalowanie ze współczynnikiem a łuski p 1 przez współczynnik 1 / . Aby to zobaczyć, zwróć uwagę na tox1 za β^1 1 / a
A zatem
Patrząc na odpowiedniej formule P 2 (na przykład) jest (oby) jest jasne, że nie ma wpływu na skalowanie estymatorów innych tras.β^2)
Zatem skalowanie po prostu odpowiada skalowaniu odpowiednich nachyleń.
źródło
W przypadku korzystania z opadania gradientu w celu dopasowania do modelu, ujednolicenie współzmiennych może przyspieszyć konwergencję (ponieważ w przypadku nieskalowanych zmiennych towarzyszących odpowiednie parametry mogą niewłaściwie zdominować gradient). Aby to zilustrować, niektóre kod R:
Ponadto w przypadku niektórych aplikacji SVM skalowanie może poprawić wydajność predykcyjną: skalowanie funkcji w opisie danych wektora pomocniczego .
źródło
Wolę „solidne powody” zarówno dla centrowania, jak i standaryzacji (istnieją one bardzo często). Zasadniczo mają one więcej wspólnego z zestawem danych i problemem niż z metodą analizy danych.
Bardzo często wolę wyśrodkować (tj. Przesunąć źródło danych) do innych punktów, które są fizycznie / chemicznie / biologicznie / ... bardziej znaczące niż średnia (patrz także odpowiedź Makro), np.
średnia z grupy kontrolnej
pusty sygnał
Stabilność numeryczna to powód związany z algorytmem centrowania i / lub skalowania danych.
Zobacz także podobne pytanie dotyczące normalizacji . Co obejmuje również „tylko centrum”.
źródło
Aby zilustrować problem stabilności liczbowej wspomniany przez @cbeleites, oto przykład Simona Wooda na temat „łamania”
lm()
. Najpierw wygenerujemy proste dane i dopasujemy prostą krzywą kwadratową.Ale jeśli dodamy 900 do X, wynik powinien być prawie taki sam, z wyjątkiem przesunięcia w prawo, nie? Niestety nie...
Edytuj, aby dodać do komentarza @Scortchi - jeśli spojrzymy na obiekt zwrócony przez lm (), zobaczymy, że kwadrat nie został oszacowany i jest pokazany jako NA.
I rzeczywiście, jak sugeruje @Scortchi, jeśli spojrzymy na matrycę modelu i spróbujemy rozwiązać bezpośrednio, to się „zepsuje”.
Jednak
lm()
nie daje mi żadnych ostrzeżeń ani komunikatów o błędach innych niżNA
s naI(X^2)
liniisummary(B)
w R-3.1.1. Inne algorytmy można oczywiście „łamać” na różne sposoby, używając różnych przykładów.źródło
lm
nie szacuje współczynnika dla wyrażenia kwadratowego i ostrzega przed pojedynczą macierzą projektową - być może bardziej bezpośrednio ilustrującą problem niż te wykresy.Wątpię poważnie, czy wyśrodkowanie lub standaryzacja oryginalnych danych może naprawdę złagodzić problem wielokoliniowości, gdy do regresji włączone są terminy kwadratowe lub inne warunki interakcji, co niektórzy z was, szczególnie Gung, zalecili powyżej.
Aby zilustrować mój punkt, rozważmy prosty przykład.
Załóżmy, że prawdziwa specyfikacja ma następującą postać, taką jak:
Zatem odpowiednie równanie OLS podano przez
Podsumowując, jeśli moje rozumienie centrowania jest prawidłowe, nie sądzę, aby centrowanie danych pomogło w złagodzeniu problemu MC spowodowanego włączeniem wyrażeń kwadratowych lub innych wyrażeń wyższego rzędu do regresji.
Z przyjemnością usłyszę twoje opinie!
źródło
x = c(1,2,3); x2 = x^2; cor(x, x2); # [1] 0.9897433; xc = c(-1,0,1); xc2 = xc^2; cor(xc, xc2) # [1] 0
.