La eliminación del término de intercepción estadísticamente significativo aumenta en el modelo lineal

101

En un modelo lineal simple con una sola variable explicativa,

αi=β0+β1δi+ϵi

Encuentro que eliminar el término de intercepción mejora mucho el ajuste (el valor de va de 0.3 a 0.9). Sin embargo, el término de intercepción parece ser estadísticamente significativo.R2

Con intercepción:

Call:
lm(formula = alpha ~ delta, data = cf)

Residuals:
     Min       1Q   Median       3Q      Max 
-0.72138 -0.15619 -0.03744  0.14189  0.70305 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  0.48408    0.05397    8.97   <2e-16 ***
delta        0.46112    0.04595   10.04   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

Residual standard error: 0.2435 on 218 degrees of freedom
Multiple R-squared: 0.316,    Adjusted R-squared: 0.3129 
F-statistic: 100.7 on 1 and 218 DF,  p-value: < 2.2e-16

Sin intercepción:

Call:
lm(formula = alpha ~ 0 + delta, data = cf)

Residuals:
     Min       1Q   Median       3Q      Max 
-0.92474 -0.15021  0.05114  0.21078  0.85480 

Coefficients:
      Estimate Std. Error t value Pr(>|t|)    
delta  0.85374    0.01632   52.33   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

Residual standard error: 0.2842 on 219 degrees of freedom
Multiple R-squared: 0.9259,   Adjusted R-squared: 0.9256 
F-statistic:  2738 on 1 and 219 DF,  p-value: < 2.2e-16

¿Cómo interpretaría estos resultados? ¿Debe incluirse un término de intercepción en el modelo o no?

Editar

Aquí están las sumas residuales de cuadrados:

RSS(with intercept) = 12.92305
RSS(without intercept) = 17.69277
Ernest A
fuente
14
Recuerdo que es la razón de la varianza explicada a la total SOLAMENTE si se incluye la intersección. De lo contrario, no se puede derivar y pierde su interpretación. R2
Momo
@Momo: Buen punto. He calculado las sumas residuales de cuadrados para cada modelo, lo que parece sugerir que el modelo con término de intercepción se ajusta mejor independientemente de lo que diga. R2
Ernest A
44
Bueno, el RSS tiene que bajar (o al menos no aumentar) cuando incluye un parámetro adicional. Más importante aún, gran parte de la inferencia estándar en los modelos lineales no se aplica cuando se suprime la intercepción (incluso si no es estadísticamente significativa).
Macro
14
Lo que hace cuando no hay intersección es que calcula lugar (observe, no resta la media en los términos del denominador). Esto hace que el denominador sea más grande, lo que, para el mismo MSE o similar, hace que aumente. R 2 = 1 - Σ i ( y i - y i ) 2R R2
R2=1i(yiy^i)2iyi2
R2
cardenal
55
El no es necesariamente más grande. Solo es más grande sin una intercepción, siempre que el MSE del ajuste en ambos casos sea similar. Pero, tenga en cuenta que, como señaló @Macro, el numerador también se hace más grande en el caso sin intercepción, ¡así que depende de cuál gane! Tiene razón en que no deben compararse entre sí, pero también sabe que el SSE con intercepción siempre será más pequeño que el SSE sin intercepción. Esto es parte del problema con el uso de medidas en muestra para el diagnóstico de regresión. ¿Cuál es su objetivo final para el uso de este modelo? R2
cardenal

Respuestas:

131

En primer lugar, debemos entender qué Restá haciendo el software cuando no se incluye ninguna intercepción en el modelo. Recuerde que el cálculo habitual de cuando hay una intersección es La primera igualdad solo ocurre debido a la inclusión de la intercepción en el modelo , aunque esta sea probablemente la más popular de las dos formas de escribirlo. ¡La segunda igualdad en realidad proporciona la interpretación más general! Este punto también se aborda en esta pregunta relacionada .R 2 = Σ i ( y i - ˉ y ) 2R2

R2=i(y^iy¯)2i(yiy¯)2=1i(yiy^i)2i(yiy¯)2.

Pero, ¿qué sucede si no hay intercepción en el modelo?

Bueno, en ese caso, R( ¡en silencio! ) Usa la forma modificada

R02=iy^i2iyi2=1i(yiy^i)2iyi2.

Ayuda a recordar lo que está tratando de medir. En el primer caso, está comparando su modelo actual con el modelo de referencia que solo incluye una intercepción (es decir, término constante). En el segundo caso, no hay intercepción, por lo que tiene poco sentido compararlo con dicho modelo. Entonces, en su lugar, se calcula , que utiliza implícitamente un modelo de referencia correspondiente solo al ruido .R 2 0R2R02

En lo que sigue a continuación, me concentro en la segunda expresión para y ya que esa expresión se generaliza a otros contextos y generalmente es más natural pensar en las cosas en términos de residuos.R 2 0R2R02

Pero, ¿cómo son diferentes y cuándo?

Tomemos una breve digresión en un poco de álgebra lineal y veamos si podemos descubrir qué está sucediendo. En primer lugar, llamemos a los valores ajustados del modelo con intercepción y los valores ajustados del modelo sin interceptar . y^y~

Podemos reescribir las expresiones para y como y respectivamente.R2R02

R2=1yy^22yy¯122,
R02=1yy~22y22,

Ahora, desde , entonces si y solo si y22=yy¯122+ny¯2R02>R2

yy~22yy^22<1+y¯21nyy¯122.

El lado izquierdo es mayor que uno ya que el modelo correspondiente a está anidado dentro del de . El segundo término en el lado derecho es la media cuadrática de las respuestas dividida por el error cuadrático medio de un modelo de solo intercepción. Por lo tanto, cuanto mayor sea la media de la respuesta en relación con la otra variación, más "holgura" tenemos y una mayor probabilidad de que domine .y~y^R02R2

Observe que todas las cosas dependientes del modelo están en el lado izquierdo y las cosas que no dependen del modelo están a la derecha.

Ok, entonces, ¿cómo hacemos que la relación en el lado izquierdo sea pequeña?

Recuerde que and donde y son matrices de proyección correspondientes a los subespacios y modo que .y~=P0yy^=P1yP0P1S0S1S0S1

Entonces, para que la relación sea cercana a uno, necesitamos que los subespacios y sean muy similares. Ahora y difieren solo en si es un vector base o no, por lo que significa que ser un subespacio que ya se encuentre muy cerca de .S0S1S0S11S01

En esencia, eso significa que es mejor que nuestro predictor tenga un desplazamiento medio fuerte y que este desplazamiento medio domine la variación del predictor.

Un ejemplo

Aquí intentamos generar un ejemplo con una intersección explícita en el modelo y que se comporta cerca del caso en la pregunta. A continuación se muestra un Rcódigo simple para demostrar.

set.seed(.Random.seed[1])

n <- 220
a <- 0.5
b <- 0.5
se <- 0.25

# Make sure x has a strong mean offset
x <- rnorm(n)/3 + a
y <- a + b*x + se*rnorm(x)

int.lm   <- lm(y~x)
noint.lm <- lm(y~x+0)  # Intercept be gone!

# For comparison to summary(.) output
rsq.int <- cor(y,x)^2
rsq.noint <- 1-mean((y-noint.lm$fit)^2) / mean(y^2)

Esto da el siguiente resultado. Comenzamos con el modelo con intercepción.

# Include an intercept!
> summary(int.lm)

Call:
lm(formula = y ~ x)

Residuals:
      Min        1Q    Median        3Q       Max
-0.656010 -0.161556 -0.005112  0.178008  0.621790

Coefficients:
            Estimate Std. Error t value Pr(>|t|)
(Intercept)  0.48521    0.02990   16.23   <2e-16 ***
x            0.54239    0.04929   11.00   <2e-16 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.2467 on 218 degrees of freedom
Multiple R-squared: 0.3571,     Adjusted R-squared: 0.3541
F-statistic: 121.1 on 1 and 218 DF,  p-value: < 2.2e-16

Luego, vea qué sucede cuando excluimos la intercepción.

# No intercept!
> summary(noint.lm)

Call:
lm(formula = y ~ x + 0)

Residuals:
     Min       1Q   Median       3Q      Max
-0.62108 -0.08006  0.16295  0.38258  1.02485

Coefficients:
  Estimate Std. Error t value Pr(>|t|)
x  1.20712    0.04066   29.69   <2e-16 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.3658 on 219 degrees of freedom
Multiple R-squared: 0.801,      Adjusted R-squared: 0.8001
F-statistic: 881.5 on 1 and 219 DF,  p-value: < 2.2e-16

A continuación se muestra una gráfica de los datos con el modelo con intersección en rojo y el modelo sin intersección en azul.

Gráfico de datos con líneas de regresión.

cardenal
fuente
44
Esto es realmente espectacular, +1. Una pregunta: a menudo, cuando queremos adjudicar modelos b / t 2, realizamos una prueba de modelo anidado, ¿esto excluye eso o seguiría siendo válido probar un modelo reducido sin la intercepción contra un modelo completo con él? ?
gung
55
@gung: No, no creo que haya nada que nos excluya de la típica pruebaLa prueba no depende de la presencia de una intersección y, de hecho, creo que la estadística funcionará en este caso como . Esto nos da un poco de información cuantitativa, ya que si , entonces sabemos que suponiendo, por supuesto, que hice el álgebra correctamente. FF
F=(n2)(\y\ytilde22\y\yhat221)
R02>R12
F<(n2)y¯2n1\yy¯\one22,
cardenal
1
Prefiero la expresiónR02=Y~2Y2
Stéphane Laurent
3
@ naught101: No diría que es más cierto, pero es un punto de vista igualmente razonable, en general. Para la presente exposición, es conveniente considerarla ausente en el sentido de que, en última instancia, estamos interesados ​​en la relación entre los subespacios y . La diferencia entre los dos es la presencia, o la falta del mismo, del vector base . S1S01
cardenal
1
Me falta algo Es lo que hace R, ¿ correcto ? Quiero decir, ¿es el valor R ^ 2 que se informa, incluso remotamente comparable entre los casos con y sin intercepción?
Andy Clifton
1

Basaría mi decisión en un criterio de información como los criterios de Akaike o Bayes-Schwarz en lugar de R ^ 2; incluso entonces no los vería como absolutos.

Si tiene un proceso donde la pendiente está cerca de cero y todos los datos están lejos del origen, su R ^ 2 correcto debería ser bajo ya que la mayor parte de la variación en los datos se debe al ruido. Si intenta ajustar dichos datos a un modelo sin una intercepción, generará un término de pendiente grande e incorrecto y probablemente un R ^ 2 más atractivo si se utiliza la versión libre de intercepción.

El siguiente gráfico muestra lo que sucede en estos casos extremos. Aquí el proceso de generación es que x = 100,100.1, .... e y es solo 100 + ruido aleatorio con media 0 y desviación estándar .1. Los puntos son círculos negros, el ajuste sin la intersección es la línea azul y el ajuste con la intersección (reducción a cero de la pendiente) es la línea roja:

[Lo siento, no me deja publicar el gráfico; ejecuta el código R a continuación para generarlo. Muestra el origen en la esquina inferior izquierda, el grupo de puntos en la esquina superior derecha. El ajuste incorrecto sin intersección va de la esquina inferior izquierda a la esquina superior derecha y el ajuste correcto es una línea paralela al eje x]

El modelo correcto para esto debería tener un R ^ 2 de cero --- ser una constante más un ruido aleatorio. R le dará a usted y R ^ 2 de .99 para el ajuste sin intercepción. Esto no importará mucho si solo usa el modelo para la predicción con valores de x dentro del rango de los datos de entrenamiento, pero fallará miserablemente si x sale del rango estrecho del conjunto de entrenamiento o si está tratando de obtener información verdadera más allá de la predicción

El AIC muestra correctamente que se prefiere el modelo con la intersección. El código R para esto es:

 Nsamp=100
x=seq(1,100,1)*.1+100 # x=101.1,101.2,....
y=rnorm(n=length(x))+100 # random noise +100 (best model is constant)

model_withint=lm(y~x)
print(summary(model_withint))
flush.console()
model_noint=lm(y~x+0) 
print(summary(model_noint))
print (AIC(model_withint))
print(sprintf ('without intercept  AIC=%f',AIC(model_noint)))
print(sprintf ('with intercept  AIC=%f',AIC(model_withint)))
print(sprintf ('constant model  AIC=%f',AIC(lm(y~1))))
plot(x,y,ylim=c(0,105),xlim=c(0,105))
lines( c(0,105),c(0,105)*model_noint$coefficients['x'],col=c('blue'))
lines( c(0,105),c(1,1)*(lm(y~1)$coefficients['(Intercept)']),col=c('red'))

La salida AIC es

   "without intercept  AIC=513.549626"
    "with intercept  AIC=288.112573"
    "constant model  AIC=289.411682"

Tenga en cuenta que el AIC todavía obtiene el modelo incorrecto en este caso, ya que el modelo verdadero es el modelo constante; pero otros números aleatorios arrojarán datos para los cuales el AIC es más bajo para el modelo constante. Tenga en cuenta que si descarta la pendiente, debe volver a ajustar el modelo sin ella, no intente utilizar la intersección del modelo e ignore la pendiente.

Jonathan Harris
fuente