Me gustaría ejecutar algún modelo de aprendizaje automático como bosque aleatorio, aumento de gradiente o SVM en mi conjunto de datos. Hay más de 200 variables predictoras en mi conjunto de datos y mis clases objetivo son una variable binaria.
¿Necesito ejecutar la selección de características antes de la adaptación del modelo? ¿Afecta significativamente el rendimiento del modelo o no hay mucha diferencia si ajusto directamente el modelo usando todas las variables predictoras?
Respuestas:
La selección de funciones puede considerarse una etapa a evitar. Debe pasar tiempo de cómputo para eliminar características y, de hecho, perder datos, y los métodos que tiene que hacer para seleccionar las características no son óptimos, ya que el problema es NP-Complete . Usarlo no suena como una oferta que no puedes rechazar.
Entonces, ¿cuáles son los beneficios de usarlo?
Ahora para su caso específico: le recomiendo que comience a calcular las correlaciones entre las características y el concepto. Calcular correlaciones entre todas las características también es informativo. Tenga en cuenta que hay muchos tipos de correlaciones útiles (p. Ej., Pearson , información mutua ) y muchos atributos que podrían afectarlos (p. Ej., Escasez, desequilibrio de conceptos). Examinarlos en lugar de ir ciegamente con un algoritmo de selección de características podría ahorrarle mucho tiempo en el futuro.
No creo que tenga muchos problemas de tiempo de ejecución con su conjunto de datos. Sin embargo, su proporción de muestras / características no es demasiado alta, por lo que podría beneficiarse de la selección de características.
Elija un clasificador de baja complejidad (p. Ej., Regresión lineal, un pequeño árbol de decisión) y utilícelo como punto de referencia. Pruébelo en el conjunto de datos completo y en algunos conjuntos de datos con un subconjunto de las características. Tal punto de referencia lo guiará en el uso de la selección de funciones. Necesitará dicha orientación ya que hay muchas opciones (por ejemplo, la cantidad de características para seleccionar, el algoritmo de selección de características) y dado que el objetivo suele ser la predicción y no la selección de características, por lo que la retroalimentación está al menos a un paso de distancia.
fuente
Publiqué una pregunta muy similar en Cross Validated hace unos meses y obtuve una gran cantidad de respuestas. Lee las respuestas y los comentarios.
/stats/215154/variable-selection-for-predictive-modeling-really-needed-in-2016
fuente
Sí, la selección de características es una de las tareas más cruciales para los problemas de aprendizaje automático, después de realizar una disputa y limpieza de datos. Aquí puede encontrar las funciones que implementan el proceso de selección de funciones utilizando la función XGBOOST.
https://github.com/abhisheksharma4194/Machine-learning
fuente