¿Abrumado por demasiadas variables en el modelo predictivo?En los problemas de regresión, a menudo nos enfrentamos con la elección de un conjunto de variables predictoras de lo que puede ser un conjunto muy grande de predictores candidatos. Cuando construimos nuestro modelo, queremos encontrar un conjunto significativo de predictores que produzca predicciones precisas. Los métodos clásicos como la selección hacia adelante y la regresión de todos los subconjuntos no siempre satisfacen este objetivo.
Los métodos de Regresión de Ángulo Mínimo (LARS) y de regresión penalizada como el Operador de Selección y Reducción Absoluto Mínimo (LASSO) y Elastic Net son enfoques más nuevos y más prometedores para la selección de variables. Los paquetes R "lars" y "elasticnet" proporcionan herramientas para ajustar varias de estas técnicas más nuevas. La documentación incluida con los paquetes es un buen punto de partida para aprender más sobre los métodos en sí. Usando la nueva funcionalidad de integración R en JMP 9 Para llamar a estos paquetes, podemos presentar los resultados y construir gráficos en JMP . Revisar la Complemento de Regresión Penalizado (Se requiere inicio de sesión SAS gratuito para el acceso y la descarga), que hace precisamente eso.
Cuando instala el complemento de regresión penalizada, obtiene tres herramientas diferentes para ajustar estos modelos. Aparecen bajo el encabezado “R complementos”. El "LASSO con validación cruzada" utiliza la validación cruzada para elegir el parámetro de ajuste de LASSO y le permite ver cómo cambian las estimaciones de los parámetros a medida que ajusta el parámetro de ajuste. La herramienta "Comparación del método de regresión penalizada" nos permite comparar las soluciones LASSO, LARS y Forward Stagewise. Los resultados de estos tres métodos son a veces casi idénticos. Por último, pero no menos importante, “Elastic Net con validación cruzada” traza la solución Elastic Net y utiliza la validación cruzada para elegir la mejor combinación de parámetros de ajuste. Elastic Net es complicado porque tiene dos parámetros de ajuste, pero descubrí que la capacidad de ver cómo cambia la solución en función de los parámetros de ajuste es muy útil.
Ahora, veamos un ejemplo de uso de LASSO con validación cruzada. Usando el conjunto de datos de diabetes que se incluye con el paquete "lars", obtenemos los resultados en la siguiente captura de pantalla. Con estos datos estamos tratando de modelar la progresión de la diabetes utilizando la edad, el sexo, el índice de masa corporal, la presión arterial y varias mediciones de suero sanguíneo.

El gráfico parece un poco extraño, pero contiene mucha información. Nos muestra cómo cambian las estimaciones de los parámetros en función del parámetro de ajuste. A medida que movemos el control deslizante para aumentar el parámetro de ajuste, el informe de estimación de parámetros en las actualizaciones correctas para que podamos ver cuando cada variable ingresa al modelo.
El índice de masa corporal es la primera variable que ingresa al modelo. También encontramos que la edad es la última variable para ingresar, lo que sugiere que la edad puede no desempeñar un papel importante en la progresión de la diabetes. El complemento nos permite ver los resultados de validación cruzada, lo que puede ayudarnos a elegir el parámetro de ajuste. Una vez que estemos contentos con el parámetro de ajuste, podemos guardar los valores pronosticados en nuestra tabla de datos.
Clay Barker escribió: Benjamin y Anders: Lamento que estés ... Arcilla barker escribió:
Benjamin y Anders: Lamento que estés teniendo problemas. Desafortunadamente, el problema será difícil de identificar. Debido a que el complemento llama a R, el problema podría estar en la instalación de R, los paquetes de R que se están llamando o el complemento. Aquí hay algunas sugerencias que pueden ayudarte:
1. Asegúrese de que no falten valores en su conjunto de datos. Dado que el complemento no está destinado a ser una plataforma totalmente funcional, no pude admitir los valores perdidos. Así que imputa cualquier valor faltante antes de llamar al complemento.
2. Por los mismos motivos que el # 1, el complemento ignora los estados de las filas (como las filas excluidas).
3. El complemento solo está diseñado para hacer mínimos cuadrados. Si está interesado en adoptar un enfoque similar a la regresión logística, se podría construir una interfaz similar a R para llamar al paquete glmnet para ajustar modelos lineales generalizados penalizados.
¿Hay otros usuarios de JMP por ahí que tengan sugerencias?
Anders escribió: Tengo el mismo problema que Benjamin. Casi... Anders escribió:
Tengo el mismo problema que Benjamin. Casi tiré mi computadora por la ventana. Este complemento no funciona para mí. Para empeorar las cosas, ¡no hay documentación sangrienta sobre cómo hacer que este complemento funcione! Muy frustrado porque tengo que hacer una regresión logística y tener una gran cantidad de variables y quiero evitar Stepwise.
Gabriel Andraos escribió: Querido Clay. Gracias por esta clara p ... Gabriel andraos escribió:
Querida Clay. Gracias por esta clara presentación. ¿Cómo son estas técnicas mejores que usar la plataforma de partición en JMP 9.0 con el fin de seleccionar las variables más predictivas?
Mejor,
Clay Barker escribió: Hola Gabriel, esta es una muy buena pregunta ... Arcilla barker escribió:
Hola Gabriel, esta es una muy buena pregunta. En general, no podemos decir qué técnica funcionará mejor para un conjunto de datos en particular. Por lo tanto, probablemente vale la pena probar ambas técnicas y comparar los resultados. Una ventaja potencial de usar algo como LARS o LASSO para construir su modelo de predicción es que el modelo lineal resultante es a menudo más fácil de interpretar.
Benjamin escribió: Clay, Gracias por crear esto. Tengo inst ... Benjamín escribió:
Arcilla,
Gracias por crear esto. He instalado R y los paquetes necesarios (lars y elasticnet), y he verificado que R reconoce el comando lars. También veo su complemento en JMP 9.0.0 y aparece el cuadro de diálogo apropiado. Sin embargo, después de seleccionar los datos y ejecutarlos, no sucede nada: el diálogo se cierra y verifico que la CPU no está preparada para nada. He intentado con y sin R ya abierto y después de reiniciar JMP. ¿Alguna sugerencia?
¡Gracias!
Benjamín