Estoy intentando crear un modelo de regresión predictiva para predecir el valor de una variable continua. No es que la multicolinealidad me importe mucho, ya que solo busco predicciones, pero tengo registradas una gran cantidad de variables categóricas (más de 20) (junto con más de 20 variables continuas) y quiero realizar una selección de características/reducción de variables para no sobreajustar los datos. Me preguntaba si existe una buena manera de realizar la reducción de variables en JMP para variables categóricas o encontrar aquellas que podrían estar correlacionadas. No tengo ningún modelo específico en mente y usaré JMP PRO.
Hola @mjz5448 ,
Veo dos puntos en tus preguntas:
- ¿Cómo evaluar la multicolinealidad al modelar variables categóricas?
Puede evaluar la multicolinealidad de las variables continuas y categóricas de su modelo mostrando los valores de VIF en las Estimaciones de Parámetros para Predictores Originales (haga clic derecho en la tabla, luego en "Columnas" y "VIF"). Valores altos de VIF indican un problema de colinealidad entre los términos del modelo. También encontrará información de singularidad en la columna "Detalles de Singularidad" si algunos términos son linealmente dependientes entre sí, así como la indicación "Sesgado" o "Ajustado a cero" antes de las estimaciones de parámetros.

Ver más aquí: Modelos con dependencias lineales entre términos del modelo
- ¿Cómo seleccionar características/reducir variables?
Si desea realizar una selección de características o una reducción de variables, puede haber varias opciones según el tipo de modelo que esté utilizando:- Para modelos de regresión lineal generalizada multivariante, se puede usar la selección podada hacia adelante o, si la multicolinealidad es importante, probar opciones de métodos de estimación penalizados como Lasso, que seleccionan variables aplicando estimaciones a 0 para las variables correlacionadas. Un enfoque menos agresivo sería la estimación de red elástica, que combina las penalizaciones de Lasso y Ridge.
- Bosque aleatorio también podría ser interesante por sí solo o utilizándolo como una opción de selección de predictores , utilizando la importancia de las características (contribución de las columnas) para identificar las características más importantes/activas.
- También puede intentar utilizar el complemento Asistente de selección de predictores que ayuda a seleccionar variables en función de una versión mejorada del Predictor Screening que utiliza el método de selección de características de Boruta y Rendom Forest:

- También puede combinar los diferentes enfoques de modelado anteriores (y más) y comparar los modelos obtenidos para ver qué términos están incluidos y qué tan similares o diferentes son los modelos.
Espero que esta respuesta pueda ayudarte.
¡Gracias, Víctor! Es justo lo que buscaba.
¿Hay alguna idea sobre los pasos para reducir un modelo?
- ¿Debería eliminar las variables correlacionadas o realizar una reducción de dimensión primero antes de avanzar con LASSO/Ridge?
- ¿O deberíamos hacer ambas cosas: reducir las variables y luego ir a LASSO/Ridge, así como usar todas las funciones y hacer LASSO/Ridge y comparar cuál tiene el mejor RASE en los datos de validación?
Hola @mjz5448 ,
Sólo para dar algunas explicaciones sobre las diferencias entre LASSO y Ridge (Elastic Net es una mezcla de penalizaciones LASSO y Ridge):
- LASSO tiene la capacidad de establecer en cero los coeficientes de las características que no considera "interesantes". Esto significa que el modelo realiza una "selección automática de características" para decidir cuáles deben incluirse por sí solo. Esta propiedad tiene la ventaja de reducir la complejidad del modelo (lo que ayuda a evitar el sobreajuste). Sin embargo, los coeficientes se ven sesgados por esta penalización (reducción de coeficientes) y la regresión LASSO puede ser inestable al entrenarse con datos con características correlacionadas: una de las características se selecciona de forma arbitraria y todas las demás características altamente correlacionadas con ella se descartan del modelo. Esto puede llevar a alguien a concluir erróneamente que solo la característica seleccionada para permanecer en el modelo es importante, cuando en realidad algunas de las otras características pueden ser igual o incluso más importantes.
LASSO es robusto ante valores atípicos y tiende a ser más efectivo cuando hay un pequeño subconjunto de variables con un fuerte efecto en la respuesta entre muchas otras variables con efectos pequeños o nulos.
- Ridge tiene la capacidad de minimizar los coeficientes de las características correlacionadas (cercanos a 0, pero no a 0). Esta propiedad permite utilizar la regresión de Ridge en conjuntos de datos con muchas características correlacionadas, ya que minimiza el impacto negativo de estas y reduce el sobreajuste. Al introducir una penalización, también se obtendrán estimaciones de coeficientes sesgadas.
Ridge permite considerar todas las características y tiende a ser más eficaz cuando hay una gran cantidad de variables con efectos grandes y comparables.
- Elastic Net combina ambos métodos de penalización, por lo que reduce algunos coeficientes a 0 y minimiza otros, por lo que puede ser un buen compromiso para realizar la selección de características y manejar características correlacionadas con importancia similar en la respuesta.
Puede obtener más información sobre los modelos de regresión generalizados (y penalizados) en este Mastering: Uso de regresión generalizada en JMP® Pro para crear modelos lineales robustos
Para la selección de características, recomiendo encarecidamente mirar la importancia de las características de un bosque aleatorio, ya que este modelo no requiere un ajuste fino extenso, puede manejar características correlacionadas y no es sensible al sobreajuste, por lo que puede proporcionar una buena comparación de referencia.
No estoy completamente seguro de cuál es su objetivo con este modelo, ya que menciona datos de validación: ¿comprensión del sistema (objetivo explicativo) u objetivo predictivo?
¿Son datos de validación (utilizados para la optimización del modelo (ajuste fino de hiperparámetros, selección de características/umbrales, ...) y selección del modelo) o datos de prueba (utilizados para la generalización y la evaluación del rendimiento predictivo del modelo seleccionado en datos nuevos/no vistos)?
- En el primer caso (datos de validación), puede intentar usar estos datos de validación como su método de validación en el panel de inicio de Regresión generalizada, para asegurarse de que la penalización esté configurada y fijada correctamente en su conjunto de datos, y comparar los diferentes modelos en estos datos de validación: métodos de regresión penalizados, Random Forest, ...
- En el segundo caso (datos de prueba), recomiendo no usar este conjunto de datos hasta haber comparado los modelos y seleccionado el más prometedor. Dependiendo de su objetivo principal (comprensión del sistema o predicción) y del método de validación de su modelo (criterio de información como AICc o BIC, o validación de K-folds/Holdback/Leave-One-Out si le interesa el rendimiento predictivo), puede elegir un método de validación adecuado y comparar los resultados de los modelos con sus datos de entrenamiento/validación para seleccionar el modelo más interesante. Una vez elegido, puede confirmar su generalización y rendimiento predictivo en el conjunto de prueba (datos no vistos).
Espero que esta respuesta te ayude.