Selección de variables: Para qué? Para mejorar la performance de los métodos de aprendizaje: Algunos métodos trabajan mucho mejor con menos variables. Aunque los métodos modernos de ML suelen ser muy resistentes al problema de la dimensionalidad. En ciertos casos muchas variables no son informativas del problema (ruido o redundancias). Al eliminarlas reducimos el riesgo de sobreajuste.
Selección de variables: Para qué? Para descubrir: Cuáles son las variables más importantes en un problema. Cuáles variables están correlacionadas, co-reguladas, o son dependientes y cuáles no.
La selección de variables no es más una técnica de pre-procesado, actualmente es una herramienta para descubrir información de un problema.
Métodos Univariados consideran una variable a la vez. Multivariados: consideran subconjuntos de variables al mismo tiempo. Filtros: Ordenan las variables con criterios de importancia independientes del predictor. Wrappers: Usan el predictor final para evaluar la utilidad de las variables.
Métodos Problema Base: Seleccionar un subconjunto óptimo de n variables de las p variables originales, dado un criterio. Por qué no evaluar todas las posibilidades? Explosión combinatoria:
Se usan soluciones sub-óptimas sobre eurísticas.
Métodos de Filtro Elige las mejores variables usando criterios razonables de “importancia”. El criterio es generalmente independiente del problema real. Usualmente se usan criterios univariados. Se ordenan las variables en base al criterio y se retienen las más importantes (criterio de corte!)
Métodos de Filtro: ejemplos Clasificación: Relevantes e Irrelevantes (Gp:) xi (Gp:) densidad (Gp:) Clases Y=1 Y=-1
(Gp:) ?- (Gp:) ?+ (Gp:) ?- (Gp:) ?+ (Gp:) xi
Wrappers. Claves Seleccionar las mejores variables para modelar (usando el criterio final) Para cada subconjunto de variables resolver el problema de modelado. Conservar la mejor solución. Como ya discutimos, la búsqueda completa es exponencialmente larga.
Wrappers. Alternativas Búsquedas Greedy: forward selection backward elimination combinaciones de ambas Búsquedas pseudo-random: Simulated annealing genetic algorithm
Wrappers. Ejemplo Kohavi-John, 1997 Espacio de búsqueda para un problema con 4 variables. 0 ausente – 1 presente
Wrappers. Forward search Variantes: Floating search. 1 paso adelante, 1 atrás
Wrappers. Backward search Variantes: Floating search
Métodos embebidos Los wrappers backward son potencialmente los mejores métodos de selección. Son computacionalmente muy pesados. A cada paso construyen todos los clasificadores intermedios posibles para evaluarlos. Para rankear p variables crean O(p2) modelos. La solución ideal sería un método backward, basado directamente en el modelo final, pero eficiente.
Métodos embebidos Para evaluar cuál es la próxima variable a eliminar, el wrapper back construye todos los modelos con una variable menos. Los evalúa a todos y “da un paso” en la dirección de máximo descenso del error. Se puede hacer algo parecido sin calcular todos los modelos target?
Métodos embebidos Lo que necesitamos conocer es la derivada del error respecto de cada variable. O alguna aproximación a la derivada Se las llama “medidas internas de importancia” Si la función error es razonablemente suave, dar el paso en la dirección de máximo descenso de la derivada debería ser lo mismo que el máximo descenso del error.
Métodos embebidos Recursive Feature elimination (RFE): Ajustar un modelo a los datos Rankear las variables usando una medida interna de importancia. Más importante es la que más empeora al modelo al ser eliminada Eliminar la variable (o un grupo) con el ranking más bajo iterar
Medidas de importancia Ejemplos de medidas de importancia: SVM: componentes de W Random Forest: Shuffling OOB Variación del GINI index. LDA o PDA o Regresión logística: weights Partial Least Squares (PLS): Scores ANN: Saliency (Solla et al, NIPS) Shuffling OOB (Izetta, CACIC09)
Problemas con el RFE Variables importantes pero correlacionadas Si el modelo original usa las dos, las dos “comparten” la importancia. En la práctica aparecen como menos importantes que otras variables. Al eliminar una de ellas, la otra toma toda la importancia y suele subir bruscamente en el ranking (por esto es necesario iterar).
Problemas con el RFE Variables importantes pero correlacionadas Cuál es eliminada y cuál promocionada es casi chance. Como resultado, el ranking de variables tiende a ser inestable.
Método sugerido Usar el train para elegir las variables. Usar validación independiente para determinar la cantidad de variables a retener. Hacer una selección final con train+validación. Estimar el error con el test set.
Página anterior | Volver al principio del trabajo | Página siguiente |