¿Por qué las estimaciones del coeficiente de regresión rlm () son diferentes de lm () en R?


15

Estoy usando rlm en el paquete R MASS para hacer retroceder un modelo lineal multivariante. Funciona bien para varias muestras, pero obtengo coeficientes casi nulos para un modelo en particular:

Call: rlm(formula = Y ~ X1 + X2 + X3 + X4, data = mymodel, maxit = 50, na.action = na.omit)
Residuals:
       Min         1Q     Median         3Q        Max 
-7.981e+01 -6.022e-03 -1.696e-04  8.458e-03  7.706e+01 

Coefficients:
             Value    Std. Error t value 
(Intercept)    0.0002   0.0001     1.8418
X1             0.0004   0.0000    13.4478
X2            -0.0004   0.0000   -23.1100
X3            -0.0001   0.0002    -0.5511
X4             0.0006   0.0001     8.1489

Residual standard error: 0.01086 on 49052 degrees of freedom
  (83 observations deleted due to missingness)

A modo de comparación, estos son los coeficientes calculados por lm ():

Call:
lm(formula = Y ~ X1 + X2 + X3 + X4, data = mymodel, na.action = na.omit)

Residuals:
    Min      1Q  Median      3Q     Max 
-76.784  -0.459   0.017   0.538  78.665 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept)  -0.016633   0.011622  -1.431    0.152    
X1            0.046897   0.004172  11.240  < 2e-16 ***
X2           -0.054944   0.002184 -25.155  < 2e-16 ***
X3            0.022627   0.019496   1.161    0.246    
X4            0.051336   0.009952   5.159  2.5e-07 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 

Residual standard error: 2.574 on 49052 degrees of freedom
  (83 observations deleted due to missingness)
Multiple R-squared: 0.0182, Adjusted R-squared: 0.01812 
F-statistic: 227.3 on 4 and 49052 DF,  p-value: < 2.2e-16 

El diagrama de mm no muestra valores atípicos particularmente altos, medidos por la distancia de Cook:

lm diagnóstico

EDITAR

Como referencia y después de confirmar los resultados basados ​​en la respuesta proporcionada por Macro, el comando R para establecer el parámetro de ajuste k, en el estimador Huber es ( k=100en este caso):

rlm(y ~ x, psi = psi.huber, k = 100)

Los errores estándar residuales, en combinación con la otra información, hacen que parezca que la rlmfunción de peso está descartando casi todas las observaciones. ¿Estás seguro de que es la misma Y en las dos regresiones? (Solo verificando ...) Intente method="MM"en su rlmllamada, luego intente (si eso falla) psi=psi.huber(k=2.5)(2.5 es arbitrario, solo más grande que el predeterminado 1.345) que extiende la lmregión similar a la función de peso.
jbowman

@jbowman Y es correcto. Se agregó el método MM. Mi intuición es la misma que mencionaste. Los residuos de este modelo son relativamente compactos en comparación con los otros que he probado. Parece que la metodología está descartando la mayoría de las observaciones.
Robert Kubrick

1
@RobertKubrick entiendes qué configuración k a 100 medios , ¿verdad?
user603

Basado en esto: Múltiple R cuadrado: 0.0182, R cuadrado ajustado: 0.01812 , debe examinar su modelo una vez más. Valores atípicos, transformación de la respuesta o predictores. O debería considerar el modelo no lineal. El predictor X3 no es significativo. Lo que hiciste no es un buen modelo lineal.
Marija Milojevic

Respuestas:


15

La diferencia es que se rlm()ajusta a los modelos usando su elección de varios estimadores diferentes , mientras que usa mínimos cuadrados ordinarios.Mlm()

En general, el estimador para un coeficiente de regresión minimizaM

i=1nρ(YiXiβσ)

en función de , donde Y i es la i -ésima respuesta y X i son los predictores para el individuo i . Mínimos cuadrados es un caso especial de esto donde ρ ( x ) = x 2βYiiXii

ρ(x)=x2
rlm()M

ρ(x)={12x2if |x|kk|x|12k2if |x|>k.

krlm()k=1.345 . Estos dos estimadores están minimizando criterios diferentes, por lo que no sorprende que las estimaciones sean diferentes.

Editar: desde el gráfico QQ que se muestra arriba, parece que tiene una distribución de error de cola muy larga. Este es el tipo de situación para la cual está diseñado el estimador M de Huber y, en esa situación, puede dar estimaciones bastante diferentes:

ρ|x|<k|x|>k


He intentado varios otros modelos (el mismo número de observaciones, el mismo IV) y los coeficientes son bastante similares entre rlm y lm. Debe haber algo en este conjunto de datos en particular que esté produciendo la gran diferencia en los coeficientes.
Robert Kubrick

1
k

1
k=1.5,2,2.5,3,3.5,4psi.huberk aumenta, debería haber algún enfoque para las lmestimaciones. Además, es posible que la estimación inicial de propagación (MAD) con este conjunto de datos sea muy, muy pequeña, lo que puede verificar calculando MAD en los residuos a partir de rlm; en este caso, se descarta todo de cualquier magnitud porque la estimación de propagación es demasiado pequeña, y variar k algunos no hará la diferencia.
jbowman

1
Eso es para la información adicional, @jbowman: estos son comentarios útiles. Con respecto a su último comentario, esas grandes observaciones no se están descartando exactamente: su influencia solo se está reduciendo (como parece que debería ser), ¿verdad?
Macro

1
σσ
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.