Estabilidade beta em regressão linear com alta multicolinearidade?
Digamos que em uma regressão linear, as variáveis e têm alta multicolinearidade (a correlação é de cerca de 0,9).
Estamos preocupados com a estabilidade do coeficiente , portanto temos que tratar a multicolinearidade.
A solução do livro seria apenas jogar fora uma das variáveis.
Mas não queremos perder informações úteis simplesmente jogando fora as variáveis.
Alguma sugestão?
Respostas:
Você pode tentar a abordagem de regressão de crista no caso em que a matriz de correlação é quase singular (ou seja, as variáveis têm altas correlações). Ele fornecerá uma estimativa robusta de .β
A única questão é como escolher o parâmetro de regularização . Não é um problema simples, embora eu sugira tentar valores diferentes.λ
Espero que isto ajude!
fonte
lm.ridge
rotina no pacote MASS. Se você passar um intervalo de valores para , por exemplo, uma chamada como , você retornará as estatísticas generalizadas de validação cruzada e poderá plotá-las contra λ : para escolher o mínimo.foo <- lm.ridge(y~x1+x2,lambda=seq(0,10,by=0.1))
foo
plot(foo$GCV~foo$lambda)
Bem, há um método ad hoc que eu já usei antes. Não tenho certeza se esse procedimento tem um nome, mas faz sentido intuitivamente.
Suponha que seu objetivo seja ajustar o modelo
onde os dois preditores - - estão altamente correlacionados. Como você apontou, usá-los no mesmo modelo pode fazer coisas estranhas às estimativas do coeficiente e valores- p . Uma alternativa é ajustar o modeloXi,Zi p
Em seguida, o resíduo será não correlacionado com X i e pode, de alguma forma, ser considerada como a parte de Z i que não é absorvido pela sua relação linear com X i . Em seguida, você pode prosseguir para ajustar o modeloηi Xi Zi Xi
que irá capturar todos os efeitos do primeiro modelo (e, de fato, têm exatamente o mesmo como o primeiro modelo), mas os preditores já não são colineares.R2
Editar: O OP solicitou uma explicação de por que os resíduos não possuem, por definição, uma correlação de amostra zero com o preditor quando você omite a interceptação, como eles fazem quando a interceptação é incluída. Como é muito longo para postar nos comentários, fiz uma edição aqui. Essa derivação não é particularmente esclarecedora (infelizmente não consegui apresentar um argumento intuitivo razoável), mas mostra o que o OP solicitou :
Quando a intercepção é omitido na regressão linear simples , β = Σ x i y iβ^=∑xiyi∑x2i ei=yi−xi∑xiyi∑x2i xi ei
Primeiro nós temos
but
so in order for theei and xi to have a sample correlation of exactly 0, we need x¯¯¯e¯¯¯ to be 0 . That is, we need
which does not hold in general for two arbitrary sets of datax,y .
fonte
I like both of the answers given thus far. Let me add a few things.
Another option is that you can also combine the variables. This is done by standardizing both (i.e., turning them into z-scores), averaging them, and then fitting your model with only the composite variable. This would be a good approach when you believe they are two different measures of the same underlying construct. In that case, you have two measurements that are contaminated with error. The most likely true value for the variable you really care about is in between them, thus averaging them gives a more accurate estimate. You standardize them first to put them on the same scale, so that nominal issues don't contaminate the result (e.g., you wouldn't want to average several temperature measurements if some are Fahrenheit and some are Celsius). Of course, if they are already on the same scale (e.g., several highly-correlated public opinion polls), you can skip that step. If you think one of your variables might be more accurate than the other, you could do a weighted average (perhaps using the reciprocals of the measurement errors).
If your variables are just different measures of the same construct, and are sufficiently highly correlated, you really could just throw one out without losing much information. As an example, I was actually in a situation once, where I wanted to use a covariate to absorb some of the error variance and boost power, but where I didn't care about that covariate--it wasn't germane substantively. I had several options available and they were all correlated with each otherr>.98 . I basically picked one at random and moved on, and it worked fine. I suspect I would have lost power burning two extra degrees of freedom if I had included the others as well by using some other strategy. Of course, I could have combined them, but why bother? However, this depends critically on the fact that your variables are correlated because they are two different versions of the same thing; if there's a different reason they are correlated, this could be totally inappropriate.
As that implies, I suggest you think about what lies behind your correlated variables. That is, you need a theory of why they're so highly correlated to do the best job of picking which strategy to use. In addition to different measures of the same latent variable, some other possibilities are a causal chain (i.e.,X1→X2→Y ) and more complicated situations in which your variables are the result of multiple causal forces, some of which are the same for both. Perhaps the most extreme case is that of a suppressor variable, which @whuber describes in his comment below. @Macro's suggestion, for instance, assumes that you are primarily interested in X and wonder about the additional contribution of Z after having accounted for X 's contribution. Thus, thinking about why your variables are correlated and what you want to know will help you decide which (i.e., x1 or x2 ) should be treated as X and which Z . The key is to use theoretical insight to inform your choice.
I agree that ridge regression is arguably better, because it allows you to use the variables you had originally intended and is likely to yield betas that are very close to their true values (although they will be biased--see here or here for more information). Nonetheless, I think is also has two potential downsides: It is more complicated (requiring more statistical sophistication), and the resulting model is more difficult to interpret, in my opinion.
I gather that perhaps the ultimate approach would be to fit a structural equation model. That's because it would allow you to formulate the exact set of relationships you believe to be operative, including latent variables. However, I don't know SEM well enough to say anything about it here, other than to mention the possibility. (I also suspect it would be overkill in the situation you describe with just two covariates.)
fonte