90 votos

¿Cuáles son alternativas modernas y fáciles de usar al regresión paso a paso?

Tengo un conjunto de datos con alrededor de 30 variables independientes y me gustaría construir un modelo lineal generalizado (GLM) para explorar la relación entre ellas y la variable dependiente.

Soy consciente de que el método que me enseñaron para esta situación, la regresión paso a paso, ahora se considera un pecado estadístico.

¿Qué métodos modernos de selección de modelos se deben usar en esta situación?

4 votos

Otras personas mencionan procedimientos estadísticos que pueden ser útiles, pero primero me gustaría preguntar si tienes alguna teoría sobre la fuerza y forma de la relación entre variables. ¿Qué tan grande es tu muestra? ¿Tienes razones para evitar modelos complejos?

2 votos

¿Alguien ha considerado el promedio de modelos como una alternativa para combatir el sesgo de preprueba y los problemas de mala especificación? A grandes rasgos, todas las variables son posibles predictores y puede estimar la probabilidad de que sean útiles. Por lo tanto, el estimador combinado no solo mejora el rendimiento de pronóstico, sino que también produce buenas estimaciones de propiedades para los parámetros de variables bajo "scope".

1 votos

Contracción. Nadie usa stepwise ya, con suerte

61voto

mj2008 Puntos 4815

Hay varias alternativas a Regresión Paso a Paso. Las más utilizadas que he visto son:

  • Opinión de expertos para decidir qué variables incluir en el modelo.
  • Regresión de Cuadrados Mínimos Parciales. Básicamente obtienes variables latentes y haces una regresión con ellas. También podrías hacer PCA tú mismo y luego usar las variables principales.
  • Operador de Encogimiento y Selección Absoluto Mínimo (LASSO).

Tanto la Regresión de Cuadrados Mínimos Parciales como el LASSO están implementados en paquetes de R como

PLS: http://cran.r-project.org/web/packages/pls/ y

LARS: http://cran.r-project.org/web/packages/lars/index.html

Si solo quieres explorar la relación entre tu variable dependiente y las variables independientes (por ejemplo, no necesitas pruebas de significancia estadística), también recomendaría métodos de Aprendizaje Automático como Random Forests o Árboles de Clasificación/Regresión. Random Forests también puede aproximar relaciones no lineales complejas entre tu variable dependiente y las variables independientes, que podrían no haber sido reveladas por técnicas lineales (como Regresión Lineal).

Un buen punto de partida para Aprendizaje Automático podría ser la vista de tareas de Aprendizaje Automático en CRAN:

Vista de Tareas de Aprendizaje Automático: http://cran.r-project.org/web/views/MachineLearning.html

11 votos

El paquete glmnet es una implementación muy rápida del lasso.

2 votos

Advertiría que dentro de la comunidad de variables latentes, los PLSers forman una secta muy aislada y nunca pudieron penetrar en la literatura seria (por ejemplo, la teoría asintótica de los estimadores de mínimos cuadrados en las obras de Michael Browne, Peter Bentler, Albert Satorra y Alex Shapiro, y la modelización de variables instrumentales de Ken Bollen, por nombrar algunos de los más importantes). Sin embargo, sorprendentemente, PLS parece ser un método aceptable en círculos estadísticos, que generalmente mantienen un estándar más alto de rigor que lo que la comunidad de modelización de variables latentes hace.

6 votos

Los Elementos del Aprendizaje Estadístico tienen una comparación de diferentes métodos de selección de variables y contracción: (OLS,) mejor subconjunto, ridge, lasso, PLS, PCR.

21voto

Boris Tsirelson Puntos 191

Otra opción que podría considerar para la selección de variables y regularización es el elastic net. Está implementado en R a través del paquete glmnet.

17voto

joshtynjala Puntos 4428

El promedio de modelos es una forma de proceder (un enfoque de teoría de la información). El paquete R glmulti puede realizar modelos lineales para cada combinación de variables predictoras y realizar un promedio de modelos para estos resultados.

Ver http://sites.google.com/site/mcgillbgsa/workshops/glmulti

No olvides investigar la colinealidad entre las variables predictoras primero. Los factores de inflación de la varianza (disponibles en el paquete R "car") son útiles aquí.

0 votos

Gracias. ¿Realmente se ajusta a todos los modelos posibles? Incluso sin interacciones, en este caso se trata de alrededor de mil millones de modelos.

0 votos

AFAIK it can, but there is a genetic algorithm option that considerably decreases the time it takes to evaluate all models. See www.jstatsoft.org/v34/i12/paper

3 votos

También los paquetes MuMIn, AICcmodavg, aunque glmulti es más ingenioso sobre grandes conjuntos de modelos.

10voto

gillesc Puntos 51

Interesante discusión. Etiquetar la regresión paso a paso como un pecado estadístico es un poco como una afirmación religiosa, siempre y cuando se sepa lo que se está haciendo y que los objetivos del ejercicio estén claros, definitivamente es un enfoque válido con su propio conjunto de suposiciones y ciertamente es sesgado y no garantiza la optimalidad, etc. Sin embargo, lo mismo se puede decir de muchas otras cosas que hacemos. No he visto mencionado CCA, que aborda el problema más fundamental de la estructura de correlación en el espacio de covariables, garantiza la optimalidad, ha estado presente durante bastante tiempo y tiene cierta curva de aprendizaje. Está implementado en una variedad de plataformas, incluido R.

8voto

Zizzencs Puntos 1358

@johannes dio una excelente respuesta. Si eres usuario de SAS, LASSO está disponible a través de PROC GLMSELECT y mínimos cuadrados parciales a través de PROC PLS.

David Cassell y yo hicimos una presentación sobre LASSO (y Regresión de Ángulo Mínimo) en un par de grupos de usuarios de SAS. Está disponible aquí

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X