Tengo 6 variables ( ) que estoy usando para predecir . Al realizar mi análisis de datos, primero probé una regresión lineal múltiple. A partir de esto, solo dos variables fueron significativas. Sin embargo, cuando ejecuté una regresión lineal comparando cada variable individualmente con , todas menos una fueron significativas ( cualquier lugar de menos de 0.01 a menos de 0.001). Se sugirió que esto se debía a la multicolinealidad. y y p
Mi investigación inicial sobre esto sugiere verificar la multicolinealidad mediante el uso de VIF . Descargué el paquete apropiado de R y terminé con los VIF resultantes: 3.35, 3.59, 2.64, 2.24 y 5.56. Según varias fuentes en línea, el punto en el que debe preocuparse por la multicolinealidad con sus VIF es 4 o 5.
Ahora estoy perplejo sobre lo que esto significa para mis datos. ¿Tengo o no tengo un problema de multicolinealidad? Si lo hago, ¿cómo debo proceder? (No puedo recopilar más datos, y las variables son partes de un modelo que obviamente no están relacionadas) Si no tengo este problema, entonces, ¿qué debo tomar de mis datos, particularmente el hecho de que estas variables son altamente significativas individualmente, pero no significativo en absoluto cuando se combinan.
Editar: se han hecho algunas preguntas con respecto al conjunto de datos, por lo que me gustaría ampliar ...
En este caso particular, buscamos comprender cómo las señales sociales específicas (gesto, mirada, etc.) afectan la probabilidad de que alguien produzca alguna otra señal. Nos gustaría que nuestro modelo incluya todos los atributos importantes, por lo que me incomoda eliminar algunos que parecen redundantes.
No hay ninguna hipótesis con esto en este momento. Más bien, el problema no se ha estudiado, y estamos buscando obtener una mejor comprensión de qué atributos son importantes. Por lo que puedo decir, estos atributos deberían ser relativamente independientes entre sí (no se puede decir que la mirada y los gestos son los mismos, o uno el subconjunto de otro). Sería bueno poder informar valores p para todo, ya que nos gustaría que otros investigadores entiendan lo que se ha observado.
Edición 2: dado que apareció en algún lugar debajo, mi es 24.
fuente
Respuestas:
Para comprender lo que puede suceder, es instructivo generar (y analizar) datos que se comporten de la manera descrita.
Por simplicidad, olvidemos esa sexta variable independiente. Entonces, la pregunta describe regresiones de una variable dependiente contra cinco variables independientes , en las quey X1, x2, x3, x4 4, x5 5
Cada regresión ordinaria es significativa a niveles de a menos de .y∼ xyo 0,01 0.001
La regresión múltiple produce coeficientes significativos solo para y .y∼ x1+ ⋯ + x5 5 X1 X2
Todos los factores de inflación de varianza (VIF) son bajos, lo que indica un buen condicionamiento en la matriz de diseño (es decir, falta de colinealidad entre ).Xyo
Hagamos que esto suceda de la siguiente manera:
Genere valores normalmente distribuidos para y . (Elegiremos más tarde).n x1 x2 n
Sea donde es un error normal independiente de la media . Se necesitan algunas pruebas y errores para encontrar una desviación estándar adecuada para ; funciona bien (y es bastante dramático: está extremadamente bien correlacionado con y , aunque solo está moderadamente correlacionado con y individualmente).ε 0 ε 1 / 100 y x 1 x 2 x 1 x 2y=x1+x2+ε ε 0 ε 1/100 y x1 x2 x1 x2
Deje = , , donde es un error normal estándar independiente. Esto hace que solo dependan ligeramente de . Sin embargo, a través de la estrecha correlación entre e , esto induce una pequeña correlación entre y estos .x 1 / 5 + δ j = 3 , 4 , 5 δ x 3 , x 4 , x 5 x 1 x 1 y y x jxj x1/5+δ j=3,4,5 δ x3,x4,x5 x1 x1 y y xj
Aquí está el problema: si hacemos suficientemente grande, estas correlaciones leves darán lugar a coeficientes significativos, a pesar de que se explica casi por completo solo por las dos primeras variables.yn y
Descubrí que funciona bien para reproducir los valores p informados. Aquí hay una matriz de diagrama de dispersión de las seis variables:n=500
Al inspeccionar la columna derecha (o la fila inferior) puede ver que tiene una buena correlación (positiva) con y pero poca correlación aparente con las otras variables. Al inspeccionar el resto de esta matriz, puede ver que las variables independientes parecen no estar correlacionadas entre sí (la máscara aleatoria de las pequeñas dependencias que sabemos que existen). No hay datos excepcionales, nada terriblemente periférico o con alto apalancamiento. Los histogramas muestran que las seis variables están aproximadamente distribuidas normalmente, por cierto: estos datos son tan comunes y "simples" como uno podría desear.x 1 x 2 x 1 , … , x 5 δy x1 x2 x1,…,x5 δ
En la regresión de contra y , los valores de p son esencialmente 0. En las regresiones individuales de contra , luego contra e contra , los valores de p son 0.0024, 0.0083 y 0.00064, respectivamente : es decir, son "altamente significativos". Pero en la regresión múltiple completa, los valores p correspondientes se inflan a .46, .36 y .52, respectivamente: no son significativos en absoluto. La razón de esto es que una vez que ha sido regresado contra yx 1 x 2 y x 3 y x 4 y x 5 y x 1 x 2 ε x i x 1 x 2 x i i = 3 , 4 , 5 x 1 x 2y x1 x2 y x3 y x4 y x5 y x1 x2 , lo único que queda por "explicar" es la pequeña cantidad de error en los residuos, que se aproximará a , y este error no está relacionado con el restante . ("Casi" es correcto: hay una relación muy pequeña inducida por el hecho de que los residuos se calcularon en parte a partir de los valores de y y el , , tiene una relación débil con y . Sin embargo, esta relación residual es prácticamente indetectable, como vimos).ε xi x1 x2 xi i=3,4,5 x1 x2
El número de acondicionamiento de la matriz de diseño es solo 2.17: es muy bajo, no muestra ninguna indicación de alta multicolinealidad. (La perfecta falta de colinealidad se reflejaría en un número de condicionamiento de 1, pero en la práctica esto solo se ve con datos artificiales y experimentos diseñados. Los números de condicionamiento en el rango 1-6 (o incluso más, con más variables) no son notables). Esto completa la simulación: ha reproducido con éxito todos los aspectos del problema.
Las ideas importantes que ofrece este análisis incluyen
Los valores p no nos dicen nada directamente sobre la colinealidad. Dependen fuertemente de la cantidad de datos.
Las relaciones entre los valores p en regresiones múltiples y los valores p en regresiones relacionadas (que involucran subconjuntos de la variable independiente) son complejas y generalmente impredecibles.
En consecuencia, como otros han argumentado, los valores p no deberían ser su única guía (o incluso su guía principal) para la selección del modelo.
Editar
No es necesario que sea tan grande como para que aparezcan estos fenómenos.n 500 Inspirado por información adicional en la pregunta, el siguiente es un conjunto de datos construido de manera similar con (en este caso para ). Esto crea correlaciones de 0,38 a 0,73 entre y . El número de condición de la matriz de diseño es 9.05: un poco alto, pero no terrible. (Algunas reglas generales dicen que los números de condición tan altos como 10 están bien.) Los valores p de las regresiones individuales contran=24 xj=0.4x1+0.4x2+δ j=3,4,5 x1−2 x3−5 x3,x4,x5 son 0.002, 0.015 y 0.008: significativo a altamente significativo. Por lo tanto, está involucrada cierta multicolinealidad, pero no es tan grande como para trabajar para cambiarla. La idea básica sigue siendo la misma : significado y multicolinealidad son cosas diferentes; solo hay restricciones matemáticas leves entre ellos; y es posible que la inclusión o exclusión de incluso una sola variable tenga profundos efectos en todos los valores p, incluso sin que la multicolinealidad grave sea un problema.
fuente
No es una situación de uno u otro. Y soy escéptico sobre la directriz "4 o 5". Para cada uno de sus predictores, el error estándar del coeficiente es entre 2.2 y 5.6 veces mayor que si el predictor no estuviera correlacionado con los demás. Y la porción de un predictor dado que no puede explicarse por los otros varía de 1 / 2.2 a 1 / 5.6, o 18% a 45%. En conjunto, eso parece una cantidad bastante sustancial de colinealidad.
Pero retrocedamos un minuto. ¿Realmente estás tratando de predecir * Y *, en lugar de tratar de explicarlo ? Si es lo primero, entonces supongo que no debe preocuparse si el nivel de significancia de una variable dada cambia cuando hay otros presentes en el modelo. Su trabajo es realmente mucho más fácil de lo que sería si se necesitara una explicación verdadera.
Si su objetivo es la explicación, deberá considerar la forma en que estas variables se interrelacionan, algo que requiere más que información estadística. Es evidente que se superponen en la forma en que se relacionan con Y , y esto colinealidad harán que sea difícil establecer, por ejemplo, su orden de rango de importancia en la contabilización de Y . En esta situación, no hay un camino claro para seguir.
En cualquier caso, espero que esté considerando métodos de validación cruzada.
fuente
Tienes multicolinealidad. Su análisis inicial lo demostró. En lo que respecta a ser un problema, esa es otra pregunta que parece tener muchas respuestas en su caso.
Tal vez si comprendes mejor el problema básico, ¿sería más obvio qué hacer? ...
Con la multicolinealidad, sus coeficientes de regresión son sobre las contribuciones únicas (mucho más cercanas a las únicas) de cada variable a su modelo. Si algunos están correlacionados entre sí, entonces la contribución única de cada uno correlacionado es menor. Probablemente sea por eso que ninguno es significativo cuando están todos juntos, pero cuando se usan solos pueden serlo.
Lo primero que probablemente deba hacer es considerar qué significa la intercorrelación entre sus variables. Por ejemplo, ¿tiene un montón de variables que simplemente representan lo mismo? ¿Acabas de medir tus predictores en una escala pobre y obtener correlaciones incidentales? No intentes arreglar la regresión, trata de entender tus variables.
Considere X1 y X2 con una correlación muy fuerte entre ellos, digamos r = 0.90. Si coloca X1 en el modelo y es un predictor significativo, es probable que otro modelo con X2 solo sea también significativo porque son casi lo mismo. Si los coloca en el modelo juntos, al menos uno de ellos tendrá que sufrir porque la regresión múltiple resolverá sus contribuciones únicas. Ambos podrían no ser significativos. Pero ese no es el punto, el punto es reconocer por qué se superponen tanto y si incluso dicen algo diferente el uno del otro y si los necesitas o no. Tal vez uno expresa una idea más significativa y más relacionada con su variable de respuesta que el otro. Tal vez concluirás que son lo mismo con diferentes niveles de variabilidad.
Además, al mirar modelos de cualquier tipo, pero especialmente con predictores intercorrelacionados, los valores p son una forma terrible de saber si un nuevo predictor hace una contribución significativa (si eso es lo que está tratando de hacer ... no está seguro de lo que intenta hacerlo porque parece que solo está tratando de hacer que la regresión sea A) simple o B) salga de la manera que desea ... ninguno de los cuales es factible). Probablemente sea mejor mirar AIC para ayudarlo a determinar qué predictores debe mantener y cuáles no contribuyen en nada.
fuente
Personalmente, usaría índices de condición y la tabla explicada de varianza para analizar la colinealidad.
Tampoco usaría los valores de p como criterio para la construcción de modelos, y al comparar modelos con 6 IVs con modelos con 1, miraría los cambios en el tamaño del efecto del parámetro para la variable que es ambas.
Pero ciertamente puede obtener los resultados que menciona sin colinealidad. La colinealidad solo se trata de las variables X y su relación. Pero dos variables podrían relacionarse fuertemente con Y mientras que no se relacionan fuertemente entre sí.
fuente
Con respecto a la multicolinealidad, se mencionan varios umbrales que generalmente convergen alrededor de un VIF de 10 correspondiente a un valor R cuadrado subyacente de 0,90 entre la variable probada y las otras variables independientes. Los VIF de sus variables parecen transitables, y técnicamente podría mantenerlos en un modelo.
Sin embargo, usaría un método de regresión gradual para ver cuáles son la mejor combinación de variables y cuánta más explicación (aumento incremental en R Square) obtienes al agregar variables. El punto de referencia de arbitraje debe ser el valor R cuadrado ajustado que ajusta el valor R cuadrado hacia abajo penalizando el modelo para agregar variables.
Sus variables están algo correlacionadas entre sí. Esto es inevitable, es solo una cuestión de grado. Dados los VIF que menciona, sospecho intuitivamente que obtendrá la gran mayoría de la información / explicación de la mejor combinación de 2 variables. Y que agregar variables puede agregar solo un valor incremental marginal.
Al observar la combinación de variables que se seleccionan mediante el proceso de regresión gradual, también me gustaría ver qué variables se seleccionan y si sus signos de coeficiente de regresión son consistentes con su correlación con y. Si no lo son, puede deberse a una interacción legítima entre las variables. Pero también podría ser el resultado del sobreajuste del modelo y que los coeficientes de regresión son espurios. Reflejan un ajuste matemático, pero no tienen sentido en términos de causalidad subyacente.
Otra forma de seleccionar sus variables es decidir desde un punto de vista lógico cuáles son las principales 2 o 3 variables que deberían estar en el modelo. Comienzas con esos y luego verificas cuánta más información obtienes agregando una variable. Verifique el cuadrado R ajustado, la consistencia del coeficiente de regresión en relación con la regresión original y, obviamente, pruebe todos los modelos con período de espera. Muy pronto, será evidente cuál es tu mejor modelo.
fuente
fortune(224)
: no hay trolls aquí, solo quiero resaltar que no necesariamente necesitas confiar en lo que el software te ofrece (u ofrece) automáticamente como una opción.Si sus variables explicativas son datos de recuento, y no es irrazonable suponer que están distribuidas normalmente, puede transformarlas en variables normales estándar con el
scale
comando R. Hacer esto puede reducir la colinealidad. Pero eso probablemente no resolverá todo el problema.En el blog de Florian Jaeger se encuentra un lote útil de comandos R para analizar y tratar la colinealidad , que incluye:
La
z.
función convierte un vector en una variante normal estándar. Lar.
función devuelve residuos estandarizados para hacer retroceder un predictor contra otro. Puede usar esto para dividir efectivamente la desviación del modelo en diferentes tramos para que solo algunas variables tengan acceso al tramo más antiguo, luego el siguiente tramo se ofrecerá a las variables residuales. (Perdón por mi terminología casera) Entonces, si un modelo del formularioY ~ A + B
sufre de multicolinealidad, entonces puede ejecutar cualquiera de
Y ~ A + r.(B)
Y ~ r.(A) + B
de modo que solo los residuos de la variable "tramo junior" (cuando se retroceden frente a la variable "tramo senior") se ajustan al modelo. De esta manera, está protegido de la multicolinealidad, pero tiene un conjunto de parámetros más complicado para informar.
fuente