Importancia de los predictores en regresión múltiple:

21

Me pregunto cuál es la relación exacta entre parcial y los coeficientes en un modelo lineal y si debería usar solo uno o ambos para ilustrar la importancia y la influencia de los factores.R2

Hasta donde sé, con las summaryestimaciones de los coeficientes y con anovala suma de los cuadrados para cada factor, la proporción de la suma de los cuadrados de un factor dividido por la suma de la suma de los cuadrados más los residuos es parcial (el siguiente código está en ).R2R

library(car)
mod<-lm(education~income+young+urban,data=Anscombe)
    summary(mod)

Call:
lm(formula = education ~ income + young + urban, data = Anscombe)

Residuals:
    Min      1Q  Median      3Q     Max 
-60.240 -15.738  -1.156  15.883  51.380 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept) -2.868e+02  6.492e+01  -4.418 5.82e-05 ***
income       8.065e-02  9.299e-03   8.674 2.56e-11 ***
young        8.173e-01  1.598e-01   5.115 5.69e-06 ***
urban       -1.058e-01  3.428e-02  -3.086  0.00339 ** 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1

Residual standard error: 26.69 on 47 degrees of freedom
Multiple R-squared:  0.6896,    Adjusted R-squared:  0.6698 
F-statistic: 34.81 on 3 and 47 DF,  p-value: 5.337e-12

anova(mod)
Analysis of Variance Table

Response: education
          Df Sum Sq Mean Sq F value    Pr(>F)    
income     1  48087   48087 67.4869 1.219e-10 ***
young      1  19537   19537 27.4192 3.767e-06 ***
urban      1   6787    6787  9.5255  0.003393 ** 
Residuals 47  33489     713                      
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1

El tamaño de los coeficientes para 'joven' (0.8) y 'urbano' (-0.1, aproximadamente 1/8 del primero, ignorando '-') no coincide con la varianza explicada ('joven' ~ 19500 y 'urbano' ~ 6790, es decir, alrededor de 1/3).

Así que pensé que necesitaría escalar mis datos porque supuse que si el rango de un factor es mucho más amplio que el rango de otro factor, sus coeficientes serían difíciles de comparar:

Anscombe.sc<-data.frame(scale(Anscombe))
mod<-lm(education~income+young+urban,data=Anscombe.sc)
summary(mod)

Call:
lm(formula = education ~ income + young + urban, data = Anscombe.sc)

Residuals:
     Min       1Q   Median       3Q      Max 
-1.29675 -0.33879 -0.02489  0.34191  1.10602 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept)  2.084e-16  8.046e-02   0.000  1.00000    
income       9.723e-01  1.121e-01   8.674 2.56e-11 ***
young        4.216e-01  8.242e-02   5.115 5.69e-06 ***
urban       -3.447e-01  1.117e-01  -3.086  0.00339 ** 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1

Residual standard error: 0.5746 on 47 degrees of freedom
Multiple R-squared:  0.6896,    Adjusted R-squared:  0.6698 
F-statistic: 34.81 on 3 and 47 DF,  p-value: 5.337e-12

anova(mod)
Analysis of Variance Table

Response: education
          Df  Sum Sq Mean Sq F value    Pr(>F)    
income     1 22.2830 22.2830 67.4869 1.219e-10 ***
young      1  9.0533  9.0533 27.4192 3.767e-06 ***
urban      1  3.1451  3.1451  9.5255  0.003393 ** 
Residuals 47 15.5186  0.3302                      
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1    

Pero eso realmente no hace una diferencia, parcial y el tamaño de los coeficientes (estos ahora son coeficientes estandarizados ) todavía no coinciden:R2

22.3/(22.3+9.1+3.1+15.5)
# income: partial R2 0.446, Coeff 0.97
9.1/(22.3+9.1+3.1+15.5)
# young:  partial R2 0.182, Coeff 0.42
3.1/(22.3+9.1+3.1+15.5)
# urban:  partial R2 0.062, Coeff -0.34

Entonces, ¿es justo decir que 'joven' explica tres veces más la varianza que 'urbano' porque parcial para 'joven' es tres veces mayor que 'urbano'? R2¿Por qué el coeficiente de 'joven' no es tres veces mayor que el de 'urbano' (ignorando el signo)?

Supongo que la respuesta a esta pregunta también me indicará la respuesta a mi consulta inicial: ¿Debería usar parcial o coeficientes para ilustrar la importancia relativa de los factores? (Ignorando la dirección de influencia - signo - por el momento).R2

Editar:

El eta-cuadrado parcial parece ser otro nombre para lo que llamé parcial . etasq {heplots} es una función útil que produce resultados similares:R2

etasq(mod)
          Partial eta^2
income        0.6154918
young         0.3576083
urban         0.1685162
Residuals            NA
robert
fuente
¿Qué estás tratando de hacer o mostrar exactamente? La influencia estimada? ¿El significado?
IMA
Sí, estoy familiarizado con las pruebas T y F. Me gustaría mostrar una influencia estimada, para la cual las pruebas t y F afaik no son adecuadas.
robert
1
Mi pregunta es: ¿Debería usar R² parcial o los coeficientes para mostrar cuánta influencia tiene cada factor en el resultado? Supuse que ambos apuntaban en la misma dirección. Está diciendo que eso no es cierto porque hay datos multicolineales. Muy bien, entonces, cuando quiero hacer una declaración como que el factor 'joven' influye en el resultado x veces más / es x veces más importante que el factor 'urbano', ¿veo R² parcial o coeficientes?
robert
1
No estoy de acuerdo con @IMA. R al cuadrado parcial está directamente relacionado con la correlación parcial, que es una buena manera de estudiar las relaciones ajustadas por factores de confusión entre iv y dv.
Michael M
1
Edité su pregunta para que vuelva a aparecer en la portada. Estaría muy interesado en una buena respuesta; Si no aparece ninguno, incluso podría ofrecer una recompensa. Por cierto, los coeficientes de regresión después de estandarizar todos los predictores se denominan "coeficientes estandarizados". Puse este término en su pregunta, para que quede más claro.
ameba dice Reinstate Monica

Respuestas:

10

En resumen , no usaría tanto el parcial como los coeficientes estandarizados en el mismo análisis, ya que no son independientes. Yo diría que, por lo general, es probablemente más intuitivo comparar relaciones utilizando los coeficientes estandarizados porque se relacionan fácilmente con la definición del modelo (es decir, Y = β X ). El parcial R 2 , a su vez, es esencialmente la proporción de varianza compartida única entre el predictor y la variable dependiente (dv) (por lo que para la primera predictor es el cuadrado de la correlación parcial r x 1 y . X 2 . . . X norteR2Y=βXR2rx1y.x2...xn) Además, para un ajuste con un error muy pequeño, todos los coeficientes parciales tienden a 1, por lo que no son útiles para identificar la importancia relativa de los predictores.R2


Las definiciones del tamaño del efecto

  • coeficiente estandarizado, - los coeficientes β obtenidos de la estimación de un modelo sobre las variables estandarizadas (media = 0, desviación estándar = 1).βstdβ
  • parcial : la proporción de variación residual explicada al agregar el predictor al modelo restringido (el modelo completo sin el predictor). Igual que:R2

    • el cuadrado de la correlación parcial entre el predictor y la variable dependiente, controlando todos los demás predictores en el modelo. .Rpartial2=rxiy.Xxi2
    • parcial - la proporción de tipo III sumas de cuadrados de la predictor a la suma de cuadrados atribuidas al predictor y el error SS efecto / ( SS efecto + SS error )η2SSeffect/(SSeffect+SSerror)
  • : la diferencia en R 2 entre el modelo restringido y el modelo completo. Igual a:ΔR2R2

    • correlación semipartita al cuadrado rxi(y.Xxi)2
    • para el tipo III suma de los cuadrados de las SS efecto / SS totales - lo que calculaban como parcial R 2 en la pregunta.η2SSeffect/SStotalR2

Todos estos están estrechamente relacionados, pero difieren en cómo manejan la estructura de correlación entre las variables. Para comprender un poco mejor esta diferencia, supongamos que tenemos 3 variables estandarizadas (media = 0, sd = 1) cuyas correlaciones son r x y , r x z , r y z . Tomaremos x como la variable dependiente e y y zx,y,zrxy,rxz,ryzxyzcomo los predictores Expresaremos todos los coeficientes de tamaño del efecto en términos de las correlaciones para que podamos ver explícitamente cómo cada estructura maneja la estructura de correlación. Primero, enumeraremos los coeficientes en el modelo de regresión estimados usando OLS. La fórmula para los coeficientes: β y = r x y - r y z r z xx=βyY+βzZ la raíz cuadrada delR2parcialpara los predictores será igual a:

βy=rxyryzrzx1ryz2βz=rxzryzryx1ryz2,
Rpartial2

Rxy.z2=rxyryzrzx(1rxz2)(1ryz2)Rxz.y2=rxzryzryx(1rxy2)(1ryz2)

ΔR2

Rxyz2Rxz2=ry(x.z)=rxyryzrzx(1ryz2)Rxzy2Rxy2=rz(x.y)=rxzryzryx(1ryz2)

βΔR2Rpartial2βstd

anovaR2lm

AnovacarFtF(1,n)=t2(n)anova(mod)Anova(mod, type = 2)options(contrasts = c("contr.sum","contr.poly"))Anova(mod,type=3)R2etasq()pR2


Crédito

Chris Novak
fuente
β=(XX)Xy
1
Tienes razón, lo que quise decir es que las pruebas de tipo III SS y t para coeficientes dan básicamente la misma prueba F y valor p.
Chris Novak
2
@amoeba después de hacer algunos cálculos, edité mi respuesta para incluir sus sugerencias, aclarar un poco las diferencias entre los dos tamaños de efectos y abordar mejor la respuesta del OP.
Chris Novak
1
ΔR2R2R2R2
1
ΔR2Rp2ΔR2Rp2R21
ameba dice Reinstate Monica el
8

Como ya se explicó en varias otras respuestas y comentarios, esta pregunta se basó en al menos tres confusiones:

  1. anova()tAnova()car

  2. R2βstd

  3. R2SSeffect/(SSeffect+SSerror)SSeffect/SStotalR2SSeffect

Después de aclarar estas confusiones, queda la pregunta de cuáles son las medidas más apropiadas del tamaño o importancia del efecto predictor.


En R, hay un paquete relaimpoque proporciona varias medidas de importancia relativa.

library(car)
library(relaimpo)
mod <- lm(education~income+young+urban, data=Anscombe)
metrics <- calc.relimp(mod, type = c("lmg", "first", "last", "betasq", "pratt", "genizi", "car"))

Usando el mismo Anscombeconjunto de datos que en su pregunta, esto produce las siguientes métricas:

Relative importance metrics: 

              lmg      last      first    betasq       pratt     genizi        car
income 0.47702843 0.4968187 0.44565951 0.9453764  0.64908857 0.47690056 0.55375085
young  0.14069003 0.1727782 0.09702319 0.1777135  0.13131006 0.13751552 0.13572338
urban  0.07191039 0.0629027 0.06933945 0.1188235 -0.09076978 0.07521276 0.00015460

Algunas de estas métricas ya se han discutido:

  • betasqson coeficientes estandarizados al cuadrado, los mismos valores que obtuvo con lm().
  • firstSSeffect/SStotalSSeffectanova()
  • lastR2SSeffect/SStotalSSeffectR2anova()

R2

Hay cuatro métricas adicionales relaimpo, y una más (la quinta) está disponible si el paquete relaimpose instala manualmente: la versión CRAN excluye esta métrica debido a un posible conflicto con su autor, quien, por extraño que parezca, tiene una patente estadounidense en su método . Estoy ejecutando R en línea y no tengo acceso a él, así que si alguien puede instalarlo manualmente relaimpo, agregue esta métrica adicional a mi salida anterior para completarla.

Hay dos métricas prattque pueden ser negativas (malas) y genizique son bastante oscuras.

Dos enfoques interesantes son lmgy car.

SSeffect/SStotalSSeffect

El segundo se introduce en (Zuber & Strimmer, 2011) y tiene muchas propiedades teóricas atractivas; es coeficientes estandarizados al cuadrado después de que los predictores se estandarizaron primero y luego se blanquearon con la transformación ZCA / Mahalanobis (es decir, se blanquearon mientras se minimiza el error de reconstrucción).

2:1lmg878:1car

Bibliografía:

  1. Referencias sobre importancia relativa en el sitio web de Ulrike Grömping : es la autora de relaimpo.

  2. Grömping, U. (2006). Importancia relativa para la regresión lineal en R: El paquete relaimpo . Revista de software estadístico 17, número 1.

  3. Grömping, U. (2007). Estimadores de importancia relativa en regresión lineal basados ​​en la descomposición de la varianza . El estadístico estadounidense 61, 139-147.

  4. Zuber, V. y Strimmer, K. (2010). Regresión de alta dimensión y selección de variables utilizando puntajes CAR . Aplicaciones estadísticas en genética y biología molecular 10.1 (2011): 1-27.

  5. Grömping, U. (2015). Importancia variable en modelos de regresión . Revisiones interdisciplinarias de Wiley: Estadísticas computacionales, 7 (2), 137-152. (detrás del muro de pago)

ameba dice Reinstate Monica
fuente
Muy buen resumen con información valiosa adicional sobre varios coeficientes de importancia. Por cierto, ¿está utilizando en línea este motor R pbil.univ-lyon1.fr/Rweb u otro?
ttnphns 01 de
1
Uso r-fiddle.org , pero nunca intenté otra cosa y no sé cómo se compara. Sin embargo, se ve bastante elegante.
ameba dice Reinstate Monica
Resumen muy claro e información adicional sobre los tamaños del efecto (+1)
Chris Novak
4

Tu escribiste:

Mi pregunta es: ¿Debería usar R² parcial o los coeficientes para mostrar cuánta influencia tiene cada factor en el resultado?

Es importante no confundir dos cosas aquí. Primero, está la cuestión de la especificación del modelo. El algoritmo lm supone que se cumplen los supuestos OLS. Entre otras cosas, esto significa que, para estimaciones no sesgadas, NO puede faltar ninguna variable significativa en el modelo (excepto cuando no está correlacionado con todos los demás regresores, raro).
Entonces, al encontrar un modelo, la influencia adicional en R² o R² ajustado es, por supuesto, de interés. Uno podría pensar que es apropiado agregar regresores hasta que el R² ajustado deje de mejorar, por ejemplo. Existen problemas interesantes con los procedimientos de regresión gradual como este, pero este no es el tema. En cualquier caso, supongo que hubo una razón por la que eligió su modelo.

SIN EMBARGO: esta influencia adicional en el R² no es idéntica a la influencia real o total del regresor en la variable independiente, precisamente debido a la multicollineridad: si quita el regresor, parte de su influencia ahora se atribuirá a los otros regresores que están correlacionados con eso. Entonces ahora la verdadera influencia no se muestra correctamente.

Y hay otro problema: las estimaciones solo son válidas para el modelo completo con todos los demás regresores presentes. O este modelo aún no es correcto y, por lo tanto, la discusión sobre la influencia no tiene sentido, o es correcto y luego no puede eliminar un regresor y aún utilizar los métodos OLS con éxito.

Entonces: ¿es apropiado su modelo y el uso de OLS? Si es así, las estimaciones responden a su pregunta: son su mejor conjetura literal de la influencia de las variables en las variables regresivas y dependientes.
Si no, entonces su primer trabajo es encontrar un modelo correcto. Para esto, el uso de R² parcial puede ser una forma. Una búsqueda en la especificación del modelo o la regresión gradual producirá muchos enfoques interesantes en este foro. Lo que funcione dependerá de sus datos.

IMA
fuente
1
¡Gracias a cuatro por tu respuesta! No estoy seguro de que su afirmación de que "esta influencia adicional en el R² no sea idéntica a la influencia real o total del regresor en la variable independiente" no es controvertida. El paquete relaimpo cran.r-project.org/web/packages/relaimpo/relaimpo.pdf, por ejemplo, utiliza R² parcial "para evaluar la importancia relativa en modelos lineales".
robert
1
¿Cree que podría proporcionar una referencia para su opinión de que R² solo debe usarse para la selección del modelo?
robert
1
@robert: La razón de ser de relaimpoes proporcionar alternativas a R ^ 2 parcial, ¡exactamente por la razón que da IMA!
Scortchi - Restablece a Monica
1
@Scortchi: Wow, después de mirar el manual del relaimpopaquete, me di cuenta de que hay un mundo entero de enfoques diferentes para cuantificar la importancia relativa de los predictores en la regresión lineal. Actualmente estoy revisando algunos documentos vinculados allí ( este preprint 2010 se ve bastante bien hasta ahora), ¡y esto es un desastre! No me di cuenta de que este problema es tan complicado cuando ofrecí mi recompensa. No parece haber sido discutido adecuadamente en CV. ¿Es este un tema oscuro? Si es así, ¿por qué?
ameba dice Reinstate Monica
2
@amoeba: Una respuesta inesperada es que "la importancia relativa de los predictores" no es tan importante para la mayoría de los propósitos. Si tiene un modelo con el que está contento, puede usarlo para decir cosas como fumar un cigarrillo al día es equivalente a comer cinco hamburguesas en términos del riesgo de sufrir un ataque cardíaco; la importancia viene de la interpretación sustantiva de qué estas modelando; si está comparando modelos, compara modelos completos , digamos unos con y sin un par de predictores costosos de medir, y no necesita preocuparse por cómo el poder predictivo podría dividirse bastante.
Scortchi - Restablece a Monica
3

Con respecto a la diferencia entre el coeficiente de regresión lineal y la correlación parcial, puede leer esto , por ejemplo.

Sin embargo, la confusión expresada en la pregunta parece ser de otra naturaleza. Parece ser sobre el tipo predeterminado de sumas de cuadrados utilizado por este o aquel paquete estadístico (tema, discutido repetidamente en nuestro sitio). La regresión lineal utiliza lo que se llama en el cálculo de ANOVA Tipo III SS. En muchos programas ANOVA, esa también es la opción predeterminada. En Rfunción anova, me parece (no soy usuario de R, así que supongo que) el cálculo predeterminado es SS Tipo I (un "SS secuencial" que depende del orden en que se especifican los predictores en el modelo). Entonces, la discrepancia que observó y que no desapareció cuando estandarizó ("escaló") sus variables es porque especificó el ANOVA con la opción predeterminada de Tipo I.

A continuación se muestran los resultados obtenidos en SPSS con sus datos:

enter image description here enter image description here enter image description here enter image description here

Puede seleccionar en estas impresiones que los parámetros (coeficientes regresivos) son los mismos independientemente del tipo de cálculo de SS. También puede observar que el ETA cuadrado parcial [que es SSeffect / (SSeffect + SSerror) y = parcial R-cuadrado en nuestro caso porque los predictores son covariables numéricas] es completamente el mismo en la tabla de efectos y coeficientes solo cuando el tipo SS es III. Cuando el tipo SS es I, solo el último de los 3 predictores, "urbano", conserva el mismo valor (.169); Esto se debe a que en la secuencia de entrada de los predictores es el último. En el caso de SS tipo III, el orden de entrada no importa, como en la regresión. Por cierto, la discrepancia también se observa en los valores p. Aunque no lo ve en mis tablas porque solo hay 3 dígitos decimales en la columna "Sig",

Es posible que desee leer más sobre los diferentes "tipos de SS" en ANOVA / modelo lineal. Conceptualmente, el tipo III o "regresión" de SS es fundamental y primordial. Otros tipos de SS (I, II, IV, existen aún más) son dispositivos especiales para estimar los efectos de manera más integral, menos derrochadora de lo que permiten los parámetros de regresión en la situación de predictores correlacionados.

En general, los tamaños de los efectos y sus valores p son más importantes para informar que los parámetros y sus valores p, a menos que el objetivo del estudio sea crear un modelo para el futuro. Los parámetros son los que le permiten predecir, pero "influencia" o "efecto" pueden ser un concepto más amplio que "fuerza de predicción lineal". Para informar influencia o importancia, son posibles otros coeficientes además del Eta cuadrado parcial. Un ser es el coeficiente de dejar uno afuera: la importancia de un predictor es la suma residual de cuadrados con el predictor eliminado del modelo, normalizado de modo que los valores de importancia para todos los predictores sumen 1.

ttnphns
fuente
+1, gracias por unirse a la discusión. Tengo una pregunta terminológica. "Parcial R cuadrado" se define como SSeffect / (SSeffect + SSerror). ¿Cuál es el nombre de SSeffect / SStotal? Según tengo entendido (corríjame si estoy equivocado), si usamos la descomposición SS tipo III, este efecto SS / total SS será igual a la correlación parcial al cuadrado entre la respuesta y este predictor (controlando todos los demás predictores). ¿Esta cantidad tiene un nombre? El R2 parcial es análogo al eta cuadrado parcial, pero ¿por qué no hay un nombre para el análogo del cuadrado mismo? Estoy confundido por esto.
ameba dice Reinstate Monica
Vaya, creo que escribí algunas tonterías arriba: la correlación parcial al cuadrado es SSeffect / (SSeffect + SSerror), es decir, exactamente R2 parcial, ¿correcto? Aún así, la pregunta sobre cómo llamar a SSeffect / SStotal (que es lo que OP intentó calcular en su pregunta original). ¿Deberíamos llamarlo eta cuadrado? ¿O "R2 particionado" (entendiendo, por supuesto, que para el tipo III SS, estas "particiones" no sumarán el R2 total)?
ameba dice Reinstate Monica
1
Sí, SSeffect / SStotal es simplemente eta cuadrado. Es eta cuadrado del predictor en ese modelo específico (no confundir con eta cuadrado al cuadrado = eta cuadrado cuando el predictor es solo uno en el modelo = Pearson r ^ 2 de orden cero, en nuestro caso de predictores continuos).
ttnphns 01 de
1
Exacto así. La correlación parcial es (una instancia específica de) eta. Creo que es apropiado, por lo tanto, llamar a eso eta en la parte del modelo eta. Simplemente no recuerdo ningún texto donde encuentro el término "parte" o "semipartial" eta. Si lo descubre, hágamelo saber.
ttnphns 01 de
1
Sí; por qué, pienso de la misma manera. Pero r, parcial r, semipartial r son casos particulares del eta correspondiente. Sin embargo, la importante distinción terminológica entre los dos surge en el contexto cuando, además del efecto categórico (ficticio) categórico general, agregamos un efecto lineal (o polinomial) del predictor como si tuviera un código numérico. Aquí mostramos 3 efectos: Etasq combinado = Rsq lineal + Desviación de linealidad.
ttnphns