Tengo una pregunta con respecto a la necesidad de utilizar métodos de selección de características (los bosques aleatorios tienen un valor de importancia de características o métodos de selección de características univariadas, etc.) antes de ejecutar un algoritmo de aprendizaje estadístico.
Sabemos que para evitar el sobreajuste podemos introducir una penalización de regularización en los vectores de peso.
Entonces, si quiero hacer una regresión lineal, entonces podría introducir los parámetros de regularización neta L2 o L1 o incluso Elastic. Para obtener soluciones dispersas, la penalización L1 ayuda en la selección de funciones.
Entonces, ¿es necesario hacer una selección de funciones antes de ejecutar la regresión de regularización L1 como Lasso ?. Técnicamente, Lasso me está ayudando a reducir las funciones mediante la penalización L1, ¿por qué es necesaria la selección de funciones antes de ejecutar el algo?
Leí un artículo de investigación que decía que hacer Anova y luego SVM proporciona un mejor rendimiento que usar SVM solo. Ahora la pregunta es: SVM inherentemente realiza la regularización usando la norma L2. Para maximizar el margen, está minimizando la norma del vector de peso. Entonces está haciendo regularización en su función objetivo. Entonces, técnicamente, los algoritmos como SVM no deberían preocuparse por los métodos de selección de características. Pero el informe aún dice que hacer una selección de características univariantes antes de que SVM normal sea más poderoso.
¿Alguien con pensamientos?
Respuestas:
La selección de funciones a veces mejora el rendimiento de los modelos regularizados, pero en mi experiencia generalmente empeora el rendimiento de generalización. La razón de esto es que cuantas más elecciones hagamos con respecto a nuestro modelo (incluidos los valores de los parámetros, la elección de características, la configuración de hiperparámetros, la elección del kernel ...), más datos necesitamos hacer. Estas elecciones son confiables. En general, hacemos estas elecciones minimizando algunos criterios evaluados sobre un conjunto finito de datos, lo que significa que el criterio inevitablemente tiene una varianza distinta de cero. Como resultado, si minimizamos el criterio de manera demasiado agresiva, podemos ajustarlo en exceso, es decir, podemos tomar decisiones que minimicen el criterio debido a características que dependen de la muestra particular en la que se evalúa, en lugar de porque producirá un Mejora genuina en el rendimiento.
Ahora, el SVM es una implementación aproximada de un límite en el rendimiento de generalización que no depende de la dimensionalidad, por lo que, en principio, podemos esperar un buen rendimiento sin la selección de características, siempre que los parámetros de regularización se elijan correctamente. La mayoría de los métodos de selección de funciones no tienen tales "garantías" de rendimiento.
Para los métodos L1, ciertamente no me molestaría con la selección de funciones, ya que el criterio L1 generalmente es efectivo para recortar funciones. La razón por la que es eficaz es que induce un orden en el que las características entran y salen del modelo, lo que reduce el número de opciones disponibles al seleccionar características y, por lo tanto, es menos propenso a un ajuste excesivo.
La mejor razón para la selección de funciones es descubrir qué funciones son relevantes / importantes. La peor razón para la selección de funciones es mejorar el rendimiento, para los modelos regularizados, generalmente empeora las cosas. Sin embargo, para algunos conjuntos de datos, puede hacer una gran diferencia, por lo que lo mejor que puede hacer es probarlo y usar un esquema de evaluación de rendimiento sólido e imparcial (por ejemplo, validación cruzada anidada) para averiguar si el suyo es uno de esos conjuntos de datos.
fuente
Mucha gente piensa que la regularización es suficiente para encargarse de las variables extrañas y que no se necesita una selección de variables si se regulariza adecuadamente , se realiza una agrupación parcial, se crean modelos jerárquicos, etc., cuando el objetivo es la precisión predictiva. Por ejemplo, si una estimación de parámetro para una variable particular se regulariza hasta o se elimina por completo del modelo ( ) realmente no ' No hace una gran diferencia en los problemas de predicción.β j = 0,0001 β j = 0j β^j= .0001 β^j= 0
Sin embargo, todavía hay razones para eliminar por completo una variable.
fuente
No creo que el sobreajuste sea la razón por la que necesitamos selección de características en primer lugar. De hecho, el sobreajuste es algo que sucede si no le damos a nuestro modelo suficientes datos, y la selección de características reduce aún más la cantidad de datos que le pasamos a nuestro algoritmo.
En cambio, diría que la selección de características es necesaria como un paso de preprocesamiento para los modelos que no tienen el poder de determinar la importancia de las características por sí mismas, o para los algoritmos que se vuelven mucho menos eficientes si tienen que hacer esta ponderación de importancia por su cuenta. .
Tomemos, por ejemplo, un simple algoritmo vecino k-más cercano basado en la distancia euclidiana. Siempre considerará que todas las características tienen el mismo peso o importancia para la clasificación final. Entonces, si le da 100 características pero solo tres de ellas son relevantes para su problema de clasificación, entonces todo el ruido de estas características adicionales ahogará por completo la información de las tres características importantes, y no obtendrá predicciones útiles. Si, en cambio, determina las características críticas de antemano y pasa solo aquellas al clasificador, funcionará mucho mejor (sin mencionar que será mucho más rápido).
Por otro lado, mira un clasificador de bosque aleatorio. Durante el entrenamiento, determinará automáticamente qué funciones son las más útiles al encontrar una división óptima al elegir entre un subconjunto de todas las funciones. Por lo tanto, será mucho mejor examinar las 97 funciones inútiles para encontrar las tres buenas. Por supuesto, aún se ejecutará más rápido si realiza la selección de antemano, pero su poder de clasificación generalmente no se verá afectado al darle muchas características adicionales, incluso si no son relevantes.
Finalmente, mira las redes neuronales. Nuevamente, este es un modelo que tiene el poder de ignorar características irrelevantes, y el entrenamiento por propagación hacia atrás generalmente convergerá en el uso de características interesantes. Sin embargo, se sabe que el algoritmo de entrenamiento estándar converge mucho más rápido si las entradas son "blanqueadas", es decir, escaladas a la varianza de la unidad y con correlación cruzada eliminada (LeCun et al, 1998) . Por lo tanto, aunque no es estrictamente necesario hacer una selección de funciones, puede pagar en términos de rendimiento puro para realizar el preprocesamiento de los datos de entrada.
En resumen, diría que la selección de características tiene menos que ver con el sobreajuste y más con mejorar el poder de clasificación y la eficiencia computacional de un método de aprendizaje. Cuánto se necesita depende mucho del método en cuestión.
fuente
Creo que si no tiene una cantidad suficiente de puntos de datos para optimizar de manera sólida los parámetros, puede hacer una selección de características para eliminar algunas variables. Pero no sugeriría hacer demasiado, ya que puede perder la señal que desea modelar.
Además, es posible que haya ciertas características que no desee en sus modelos en función de la comprensión empresarial que desee eliminar.
fuente
En el caso del lazo, el preprocesamiento de los datos para eliminar las características molestas es bastante común. Para un artículo reciente que discute formas de hacer esto, consulte las Pruebas de detección de Xiang et al . Para problemas de lazo . La motivación común mencionada en los documentos que he visto es reducir la carga computacional de calcular la solución.
fuente