Intervalos de previsão com heterocedasticidade


8

Estou usando R para executar regressão linear. Vi maneiras de calcular intervalos de previsão, mas estes dependem de dados homoscedásticos. Existe uma maneira de calcular intervalos de previsão com dados heterocedásticos?

Respostas:


4

Isso dependeria da natureza da heterocedasticidade. Se você deseja um intervalo de previsão, geralmente precisa de uma especificação paramétrica como:

yiN(xiβ,σi(xi,zi))
ou seja, é normalmente distribuído com a média , e desvio padrão , em que o desvio padrão é alguma função conhecida do ou talvez algum outro conjunto de variáveis , dessa forma, você pode estimar o desvio padrão para cada observação.x i β σ i ( x i , z i ) x i z i i t hyixiβσi(xi,zi)xiziith

Exemplos de funções possíveis incluem; (Estudos de lucros firmes, um exemplo da "Análise Econométrica" ​​de Greene "7ª edição CH 9), onde é o observação da variável dependente, ou, se estiver a trabalhar com os dados de séries de tempo, GARCH e / ou especificações de volatilidade estocástica. x i , k i t h k t hσi2(xi)=σ2xi,kxi,kithkth

Você pode usar as estimativas como os erros padrão para seus intervalos de previsão, se desejar. Vou renunciar a um tratamento formal aqui porque a contabilização de erros de estimativa em pode ser complicada, mas, com uma amostra suficientemente grande, ignorar o erro de estimativa não afeta o intervalo de previsão tanto. Em resumo, não é necessário abrir essa lata de minhocas aqui. Para uma explicação mais detalhada de tudo isso e mais exemplos, consulte o livro de Wooldridge "Econometria Introdutória: Uma Abordagem Moderna" , Cap. 8. σ i(xi,zi)σ^i(xi,zi)σ^i(xi,zi)

O problema é que, quando as pessoas se referem à regressão heterocedástica ou "robusta", geralmente estão se referindo à situação em que a natureza precisa da heterocedasticidade (a função ) não é conhecido; nesse caso, é utilizado um estimador branco ou em duas etapas . Eles oferecem estimativas consistentes para mas não para o , e, portanto, você não tem uma maneira natural de estimar intervalos de previsão. v um r ( β ) σ i σi(xi,zi)var(β^)σi Eu argumentaria que os intervalos de previsão não são significativos neste contexto de qualquer maneira. A idéia por trás desses estimadores tipo sanduíche é estimar consistentemente o erro padrão dos coeficientes,ββ^, sem o ônus de oferecer intervalos de previsão precisos para cada observação individual, tornando as estimativas mais "robustas".

Editar:

Só para ficar claro, o acima exposto considera apenas regressão de mínimos quadrados. Outras formas de regressão não paramétrica, como a regressão quantílica, podem oferecer meios de obter um intervalo de predição sem especificação paramétrica de erro padrão residual.


4

A regressão quantométrica não paramétrica fornece uma abordagem muito geral que permite tanto a heterocedasticidade quanto a não linearidade. Consulte a seção 9: http://www.econ.uiuc.edu/~roger/research/rq/vig.pdf

ATUALIZAÇÃO: Uma aproximação razoável para um intervalo de previsão de 90% é o espaço entre a curva de regressão do 5º percentil e a curva de regressão do 95º percentil. (Dependendo dos detalhes da técnica de estimativa de curvas e da esparsidade dos dados, convém usar algo mais parecido com os percentis 4 e 96 para ser "conservador"). A intuição para esse tipo de intervalo de previsão não paramétrico está aqui na wikipedia .

Esta resposta é apenas um ponto de partida. Uma quantidade significativa de trabalho foi realizada em intervalos de previsão de regressão quantílica . Ou apenas faça intervalos de previsão de regressão não paramétricos .


É verdade, mas como você obtém intervalos de previsão na regressão quantílica?
Zachary Blumenfeld

2

Se a regressão de sua resposta em sua variável explicativa for uma linha reta e sua variação aumentar com a variável explicativa, será necessário um modelo de regressão ponderado com ou (se sua variação não constante for mais extrema) como seu peso. Isso pesa sua variação pelo seu valor x, para que haja um relacionamento proporcional.

Aqui está o código com os pesos incluídos no modelo e na previsão. Observe que você precisa adicionar os pesos ao seu conjunto de dados original e ao seu novo conjunto de dados.

Agradecemos a @PopcornKing por seu código original de Calculando intervalos de previsão a partir de dados heterocedásticos .

library(ggplot2)
dummySamples <- function(n, slope, intercept, slopeVar){
  x = runif(n)
  y = slope*x+intercept+rnorm(n, mean=0, sd=slopeVar*x)
  return(data.frame(x=x,y=y))
}

myDF <- dummySamples(20000,3,0,5)
plot(myDF$x, myDF$y)
w = 1/myDF$x**2
t = lm(y~x, data=myDF, weights=w) 
summary(t)

newdata = data.frame(x=seq(0,1,0.01))
w = 1/newdata$x**2
p1 = predict.lm(t, newdata, interval = 'prediction', weights=w)
a <- ggplot()
a <- a + geom_point(data=myDF, aes(x=x,y=y), shape=1)
a <- a + geom_abline(intercept=t$coefficients[1], slope=t$coefficients[2])         
a <- a + geom_abline(intercept=t$coefficients[1],   slope=t$coefficients[2], color='blue')  
a <- ggplot()
a <- a + geom_point(data=myDF, aes(x=x,y=y), shape=1)
a <- a + geom_abline(intercept=t$coefficients[1], slope=t$coefficients[2],  color='blue')
newdata$lwr = p1[,c("lwr")]
newdata$upr = p1[,c("upr")]
a <- a + geom_ribbon(data=newdata, aes(x=x,ymin=lwr, ymax=upr),   fill='yellow', alpha=0.3)
a

insira a descrição da imagem aqui

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.