Diagnostyka kolinearności jest problematyczna tylko wtedy, gdy uwzględniony jest termin interakcji

26

Przeprowadziłem regresję w hrabstwach USA i sprawdzam kolinearność moich „niezależnych” zmiennych. Diagnostyka regresji Belsleya, Kuha i Welscha sugeruje przyjrzenie się wskaźnikowi stanu i proporcjom rozkładu wariancji:

library(perturb)
## colldiag(, scale=TRUE) for model with interaction
Condition
Index   Variance Decomposition Proportions
           (Intercept) inc09_10k unins09 sqmi_log pop10_perSqmi_log phys_per100k nppa_per100k black10_pct hisp10_pct elderly09_pct inc09_10k:unins09
1    1.000 0.000       0.000     0.000   0.000    0.001             0.002        0.003        0.002       0.002      0.001         0.000            
2    3.130 0.000       0.000     0.000   0.000    0.002             0.053        0.011        0.148       0.231      0.000         0.000            
3    3.305 0.000       0.000     0.000   0.000    0.000             0.095        0.072        0.351       0.003      0.000         0.000            
4    3.839 0.000       0.000     0.000   0.001    0.000             0.143        0.002        0.105       0.280      0.009         0.000            
5    5.547 0.000       0.002     0.000   0.000    0.050             0.093        0.592        0.084       0.005      0.002         0.000            
6    7.981 0.000       0.005     0.006   0.001    0.150             0.560        0.256        0.002       0.040      0.026         0.001            
7   11.170 0.000       0.009     0.003   0.000    0.046             0.000        0.018        0.003       0.250      0.272         0.035            
8   12.766 0.000       0.050     0.029   0.015    0.309             0.023        0.043        0.220       0.094      0.005         0.002            
9   18.800 0.009       0.017     0.003   0.209    0.001             0.002        0.001        0.047       0.006      0.430         0.041            
10  40.827 0.134       0.159     0.163   0.555    0.283             0.015        0.001        0.035       0.008      0.186         0.238            
11  76.709 0.855       0.759     0.796   0.219    0.157             0.013        0.002        0.004       0.080      0.069         0.683            

## colldiag(, scale=TRUE) for model without interaction
Condition
Index   Variance Decomposition Proportions
           (Intercept) inc09_10k unins09 sqmi_log pop10_perSqmi_log phys_per100k nppa_per100k black10_pct hisp10_pct elderly09_pct
1    1.000 0.000       0.001     0.001   0.000    0.001             0.003        0.004        0.003       0.003      0.001        
2    2.988 0.000       0.000     0.001   0.000    0.002             0.030        0.003        0.216       0.253      0.000        
3    3.128 0.000       0.000     0.002   0.000    0.000             0.112        0.076        0.294       0.027      0.000        
4    3.630 0.000       0.002     0.001   0.001    0.000             0.160        0.003        0.105       0.248      0.009        
5    5.234 0.000       0.008     0.002   0.000    0.053             0.087        0.594        0.086       0.004      0.001        
6    7.556 0.000       0.024     0.039   0.001    0.143             0.557        0.275        0.002       0.025      0.035        
7   11.898 0.000       0.278     0.080   0.017    0.371             0.026        0.023        0.147       0.005      0.038        
8   13.242 0.000       0.001     0.343   0.006    0.000             0.000        0.017        0.129       0.328      0.553        
9   21.558 0.010       0.540     0.332   0.355    0.037             0.000        0.003        0.003       0.020      0.083        
10  50.506 0.989       0.148     0.199   0.620    0.393             0.026        0.004        0.016       0.087      0.279        

?HH::vif sugeruje, że VIF> 5 są problematyczne:

library(HH)
## vif() for model with interaction
        inc09_10k           unins09          sqmi_log pop10_perSqmi_log      phys_per100k      nppa_per100k       black10_pct        hisp10_pct 
         8.378646         16.329881          1.653584          2.744314          1.885095          1.471123          1.436229          1.789454 
    elderly09_pct inc09_10k:unins09 
         1.547234         11.590162 

## vif() for model without interaction
        inc09_10k           unins09          sqmi_log pop10_perSqmi_log      phys_per100k      nppa_per100k       black10_pct        hisp10_pct 
         1.859426          2.378138          1.628817          2.716702          1.882828          1.471102          1.404482          1.772352 
    elderly09_pct 
         1.545867 

Podczas gdy diagnostyka regresji Johna Foxa sugeruje spojrzenie na pierwiastek kwadratowy VIF:

library(car)
## sqrt(vif) for model with interaction
        inc09_10k           unins09          sqmi_log pop10_perSqmi_log      phys_per100k      nppa_per100k       black10_pct        hisp10_pct 
         2.894589          4.041025          1.285917          1.656597          1.372987          1.212898          1.198428          1.337705 
    elderly09_pct inc09_10k:unins09 
         1.243879          3.404433 
## sqrt(vif) for model without interaction
        inc09_10k           unins09          sqmi_log pop10_perSqmi_log      phys_per100k      nppa_per100k       black10_pct        hisp10_pct 
         1.363608          1.542121          1.276251          1.648242          1.372162          1.212890          1.185108          1.331297 
    elderly09_pct 
         1.243329 

W pierwszych dwóch przypadkach (w których sugeruje się wyraźne ograniczenie) model jest problematyczny tylko wtedy, gdy uwzględniony zostanie termin interakcji.

Model z terminem interakcji do tej pory był moją preferowaną specyfikacją.

Mam dwa pytania dotyczące tego dziwactwa danych:

  1. Czy termin interakcji zawsze pogarsza kolinearność danych?
  2. Ponieważ dwie zmienne bez składnika interakcji nie przekraczają wartości progowej, czy mogę używać modelu z tym pojęciem? W szczególności myślę, że może to być w porządku, ponieważ używam metody Kinga, Tomza i Wittenberga (2000) do interpretacji współczynników (ujemny model dwumianowy), gdzie ogólnie utrzymuję inne współczynniki na średniej, a następnie interpretować, co dzieje się z przewidywaniami mojej zmiennej zależnej, gdy poruszam się inc09_10ki poruszam unins09niezależnie i wspólnie.
Ari B. Friedman
źródło

Odpowiedzi:

31

Tak, zwykle dzieje się tak w przypadku interakcji niecentrowanych. Szybkie spojrzenie na to, co dzieje się z korelacją dwóch zmiennych niezależnych i ich „interakcji”

set.seed(12345)
a = rnorm(10000,20,2)
b = rnorm(10000,10,2)
cor(a,b)
cor(a,a*b)

> cor(a,b)
[1] 0.01564907
> cor(a,a*b)
[1] 0.4608877

A kiedy je wyśrodkujesz:

c = a - 20
d = b - 10
cor(c,d)
cor(c,c*d)

> cor(c,d)
[1] 0.01564907
> cor(c,c*d)
[1] 0.001908758

Nawiasem mówiąc, to samo może się zdarzyć z włączeniem terminów wielomianowych (tj. ) bez pierwszego centrowania.X, X2), ...

Więc możesz spróbować ze swoją parą.


Dlaczego centrowanie pomaga - ale wróćmy do definicji kowariancji

Cov(X,XY)=mi[(X-mi(X))(XY-mi(XY))]=mi[(X-μx)(XY-μxy)]=mi[X2)Y-Xμxy-XYμx+μxμxy]=mi[X2)Y]-mi[X]μxy-mi[XY]μx+μxμxy

Nawet biorąc pod uwagę niezależność X i Y

=mi[X2)]mi[Y]-μxμxμy-μxμyμx+μxμxμy=(σx2)+μx2))μy-μx2)μy=σx2)μy

Nie ma to bezpośredniego związku z problemem regresji, ponieważ prawdopodobnie nie masz całkowicie niezależnych i , a ponieważ korelacja między dwiema zmiennymi objaśniającymi nie zawsze powoduje problemy z wielokoliniowością w regresji. Ale pokazuje, w jaki sposób interakcja między dwiema niecentrowanymi zmiennymi niezależnymi powoduje pojawienie się korelacji, a korelacja ta może powodować problemy z wielokoliniowością.YXY


Intuicyjnie do mnie, mając zmienne non-centered interakcji oznacza po prostu, że jeśli jest duża, a następnie jest również będzie większy w skali bezwzględnej, niezależnie od , a więc i skończy skorelowane, a podobnie do .X Y Y X X Y YXXYYXXYY

Affine
źródło
Ciekawe dzięki. Czy masz wyjaśnienie lub uzasadnienie, dlaczego centrowanie ma znaczenie?
Ari B. Friedman,
Myślę, że taka odpowiedź nie zasługuje na całą nagrodę, ale chciałbym dać jej połowę nagrody. Nie jestem pewien, czy tak się stanie, chyba że uzyska drugie głosowanie: - /.
Ari B. Friedman,
1
@ AriB.Friedman, nie masz (dokładnie) opcji oddania połowy nagrody. Można nie przyzna nagrodę (choć nadal będziesz utracili rep obu kierunkach) i ten post będzie prawdopodobnie przyznawane automatycznie pół laski (patrz odpowiedni rozdział na stronie pomocy ). Dlaczego jednak ta odpowiedź nie zasługuje na nagrodę? Affine jest dokładnie tutaj (+1).
gung - Przywróć Monikę
@gung Szukałem pre-edycji. Zdecydowanie na to zasługuje teraz. Dzięki @Affine! Jeśli chodzi o część za pół-nagrodę, rozumiem, że >=odpowiedź +2 otrzymuje pół-nagrodę, jeśli nagroda nie zostanie przyznana ręcznie.
Ari B. Friedman,
@ AriB.Friedman, zgadza się, ale zanim skomentowałem (i głosowałem, a także ktoś inny), nie miał ponad 2 głosów pozytywnych.
Gung - Przywróć Monikę
0

Przydatne są następujące publikacje na ten temat:

Robinson & Schumacker (2009): Efekty interakcji: centrowanie, współczynnik inflacji wariancji i problemy interpretacyjne

„Wpływ skalowania predyktorów na współczynniki równań regresji (rozwiązania wyśrodkowane w porównaniu z rozwiązaniami niecentrowanymi i efekty interakcji wyższego rzędu (interakcje 3-kierunkowe; kategorycznie według efektów ciągłych) zostały starannie omówione przez Aikena i Westa (1991). Ich przykład ilustruje tę znaczną wielokoliniowość wprowadza się do równania regresji ze składnikiem interakcji, gdy zmienne nie są wyśrodkowane. ”

Afshartous i Preston (2011): Kluczowe wyniki modeli interakcji z centrowaniem

„Motywacje do zastosowania zmiennego centrowania obejmują ulepszoną interpretację współczynników i zmniejszoną niestabilność liczbową do oszacowania związanego z wielokoliniowością”.

Oczywiście Aiken i West (1991) również zajmują się tym tematem, ale nie mam ich książki.

Poklepać
źródło