Universidad Nacional de Rosario Facultad de Ciencias Exactas, Ingenierı́a y Agrimensura Departamento de Ciencias de la Computación Tesina para optar por el tı́tulo de Licenciado en Ciencias de la Computación “Selección de variables en problemas anchos con alta correlación” Autor: Mauro Di Masso Director: Dr. Pablo Granitto Marzo 2014 Índice 1. Introducción 2 2. Conceptos básicos 5 2.1. Aprendizaje automatizado . . . . . . . . . . . . . . . . . . . . 5 2.2. Support Vector Machines . . . . . . . . . . . . . . . . . . . . . 8 2.3. Selección de variables . . . . . . . . . . . . . . . . . . . . . . . 13 2.3.1. Estabilidad . . . . . . . . . . . . . . . . . . . . . . . . 16 3. Métodos de selección de variables independientes 17 3.1. Recursive Feature Elimination . . . . . . . . . . . . . . . . . . 17 3.2. Fast Correlation Based Filter . . . . . . . . . . . . . . . . . . 18 3.3. SVM-RFE con filtro MRMR . . . . . . . . . . . . . . . . . . . 24 3.4. Stable Recursive Feature Elimination . . . . . . . . . . . . . . 27 3.4.1. El vector de penalización P . . . . . . . . . . . . . . . 28 3.4.2. El método SRFE . . . . . . . . . . . . . . . . . . . . . 29 4. Resultados 32 4.1. Datos artificiales . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.2. Datos reales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 4.2.1. Espectrometrı́a . . . . . . . . . . . . . . . . . . . . . . 46 4.2.2. Colorimetrı́a . . . . . . . . . . . . . . . . . . . . . . . . 57 5. Conclusiones y trabajos futuros 1 77 1. Introducción El aprendizaje automatizado o machine learning es una ciencia que na- ce a mediados del siglo XX y que ha estado en auge desde entonces. Entre sus objetivos se plantea la generación automática de modelos numéricos que, basados en datos de entrenamiento, permitan la correcta predicción sobre observaciones nuevas. Las principales dificultades de dicho modelado subyacen en la cantidad de variables medidas en los datos presentes, ası́ como también en su calidad en términos de ruido, y en la cantidad de mediciones disponibles para llevar a cabo el entrenamiento. Los avances en las tecnologı́as de medición y almacenamiento han facilitado ampliamente la obtención de cantidades masivas de datos, pero con ello también han surgido inconvenientes para obtener información útil a la hora de analizarlos. Cuando se comienza a trabajar en espacios de mayor dimensionalidad, se necesitan exponencialmente más mediciones para obtener la información necesaria a fin de crear un modelo de predicción. Este problema es conocido como “maldición de la dimensionalidad” o curse of dimensionality y afecta a los principales problemas del área hoy en dı́a, tales como los microarrays de ADN y las espectrometrı́as de suero sanguı́neo. Asimismo, con el correr de las décadas, el volúmen de variables que pueden ser medidas ha crecido a tal punto que su procesamiento es incluso costoso para las computadoras más potentes. Estos problemas de grandes cantidades de variables suelen venir acompañados de una escasa colección de observaciones por lo que obtienen la denominación de “problemas anchos”. Al desfazaje entre observaciones y variables por observación se le suma la existencia de una mayor probabilidad de variables correlacionadas y ruidosas dentro del conjunto de datos. Esto hace que la correcta construcción del modelo de datos por parte de los métodos 2 de aprendizaje automatizado sea costoso en términos temporales. Además, por lo general, la buena calidad de las predicciones queda en contraposición con la facilidad para interpretar la información obtenida. La selección de variables o feature selection es una respuesta a los problemas planteados ya que su meta es simplificar el espacio de variables quitando de la ecuación aquéllas irrelevantes a la solución, redundantes y/o con altos niveles de ruido, etc. Para ello se utilizan métodos que generan un ranking de variables caracterizándolas por su importancia o poder predictivo o de clasificación. Este preprocesamiento sobre los datos contribuye a incrementar la eficiencia de los algoritmos de aprendizaje permitiéndoles centrar sus esfuerzos en un grupo reducido de variables. Hoy en dı́a existen múltiples algoritmos de selección de variables, entre los cuales el de Eliminación Recursiva de Variables (Recursive Feature Elimination) o RFE es uno de los más utilizados. RFE permite la obtención de modelos muy precisos ya que su foco está puesto en minimizar el error de clasificación en cada una de sus iteraciones. Este tipo de foco, paradójicamente, reduce la utilidad de la solución a ojos humanos, ya que si bien predice de forma superior, los conjuntos finales de variables elegidas suelen diferir de un experimento a otro debido a que este método no se preocupa por la llamada estabilidad de la solución. Como RFE minimiza el error en cada iteración, tal vez prefiera elegir una variable en lugar de otra cuando en realidad las mismas son redundantes y tan sólo quedaron ordenadas de forma diferente por una mera cuestión de azar durante el entrenamiento. La aparición de distintas variables “más importantes” en diferentes experimentos sobre un mismo conjunto de datos dificultan la interpretación de los resultados y llevan a la problemática que se aborda en esta tesina. 3 Como objetivo de la presente se propone entonces el diseño e implementación de un método de selección de variables, cuyo foco sea la obtención de conjuntos de variables más estables que permita a su vez una mayor interpretabilidad sobre la importancia y correlación de las variables obtenidas; aunque no alcance en algunos casos el mismo nivel de error que otros métodos más codiciosos como RFE. Para un mejor entendimiento del desarrollo experimental se cubren en el capı́tulo dos los conceptos básicos relacionados con el aprendizaje automatizado, la selección de variables y la estabilidad. En el capı́tulo tres, se presentan, explican y exploran los métodos de selección de variables utilizados durante la experimentación. En el capı́tulo cuatro, se muestran los resultados de clasificar diferentes conjuntos de datos, artificiales y reales, con cada método; para luego, en el capı́tulo cinco, determinar las ventajas y las desventajas de cada uno, ası́ como otras conclusiones generales. Por último, se plantean trabajos futuros para indagar en las potencialidades del método generado. 4 2. Conceptos básicos 2.1. Aprendizaje automatizado El aprendizaje automatizado es una rama de la inteligencia artificial cuyo objetivo es el desarrollo de algoritmos que permitan a sistemas informáticos aprender conceptos o criterios de decisión que no son fácilmente programables de otra manera [1]. Esta dificultad se debe principalmente a una carencia en el desarrollo teórico del área de estudio en cuestión que no permite determinar las cualidades subyacentes del problema. Formalmente, un algoritmo de aprendizaje automatizado genera una función de la forma h:X→Y también llamada hipótesis, que transforma elementos del dominio de datos X al conjunto de datos Y de posibles valores objetivo definidos en base al problema en cuestión. El algoritmo de aprendizaje aprende de un subconjunto de datos D, llamado conjunto de entrenamiento, perteneciente al espacio X o X ×Y. D = {x1 , x2 , . . . , xm } ∈ X D = {(x1 , y1 ), (x2 , y2 ), . . . , (xm , ym )} ∈ X × Y En el primer caso, se dice que el problema es de aprendizaje no supervisado, donde h sólo puede basarse en los elementos de entrada xi y debe descifrar las similitudes entre los datos presentes para dar luego una posible clasificación. En el segundo caso, se habla de problemas de aprendizaje supervisado. Aquı́, h utiliza pares (xi , yi ) donde yi es el valor deseado para la entrada xi . Si los valores de yi son continuos, el problema se llama de regresión y el algoritmo busca ajustar una curva que satisfaga los valores de 5 entrenamiento; si los valores de yi son discretos entonces se está en presencia de un problema de clasificación, en el que h subdivide el espacio de soluciones para determinar cómo asignar los posibles valores o etiquetas. Estos últimos problemas son los que trabaja esta tesina. Dado un problema de clasificación concreto, existen infinitas soluciones consistentes con las observaciones dadas. Como no es posible conocer todos los valores a clasificar (no tendrı́a sentido), todos los algoritmos de aprendizaje trabajan sobre el supuesto de que cualquier hipótesis h que pueda aproximar lo suficientemente bien la función ideal de clasificación c para un conjunto de datos lo suficientemente grande D con puntos clasificados xi , también la aproximará lo suficientemente bien para los puntos no clasificados xo . No es difı́cil concluir que si existen infinitas hipótesis, todo punto no clasificado tiene la misma probabilidad de pertenecer a cualquiera de las clases disponibles del problema. Hace falta que el algoritmo ignore algunas de estas hipótesis para hacer posible el aprendizaje, lo que implica que el algoritmo debe suponer algo arbitrario sobre la solución. Estas suposiciones se conocen como sesgo inductivo o inductive bias. Para determinar la utilidad de una hipótesis se debe realizar algún tipo de validación sobre ella. Inicialmente se espera que clasifique bien los datos de entrenamiento, pero esto no garantiza precisión alguna sobre los datos no observados. Existen diversas técnicas de validación de modelos de predicción; entre ellas, la más común e intuitiva es particionar los datos de entrenamiento (muestreo o subsample) en dos conjuntos, uno para el entrenamiento y otro para la validación. De esta manera, se sacrifica parcialmente el aporte al aprendizaje para ganar certeza en la predicción. Tanto el aprendizaje como la validación son mejores si este procedimiento se repite varias veces con subconjuntos de validación disjuntos. La técnica de validación cruzada de k 6 iteraciones o k-fold cross validation subdivide el conjunto de entrenamiento en k subconjuntos, de los cuales utiliza k-1 para entrenar y uno para validar; ası́ k veces hasta que se hubo utilizado cada uno para validar, y luego promedia los errores. De esta manera, todos los datos colaboran en el aprendizaje y la validación. El error de clasificación de una hipótesis h se define formalmente como E(h) = Ne Nt donde Nt es la cardinalidad del conjunto de entrenamiento y donde Ne = Nt X neq(h(xi ), c(xi )) xi ∈ D i=1 siendo D el conjunto de datos sin particionar, c la función clasificadora ideal y 0 si x = y neq(x, y) = 1 si x 6= y Por último, existe una serie de consideraciones a tener en cuenta a la hora de entrenar un algoritmo de aprendizaje automatizado. Para comenzar, cabe recalcar que no existe un algoritmo óptimo para todo tipo de problema, por lo cual es necesario estudiar y conocer las singularidades del dominio con el que se trabaja. Cuando se emplean pocos datos de entrenamiento, o cuando la dimensionalidad del problema es tal que la cantidad de variables supera las observaciones, se corre el riesgo de que el algoritmo aprenda de los datos a tal punto que los errores de medición y demás ruidos se asimilen al modelo. Esto produce modelos que se ajustan muy bien a los datos de entrenamiento pero que tienen errores muy altos al momento de generalizar. Este fenómeno se denomina sobreajuste u overfitting y muestra que es preferible una hipótesis más simple que no se adapte tan bien a los datos de entrenamiento pero que generalice mejor para datos no observados todavı́a. 7 % Error Validación Entrenamiento Complejidad / Ajuste Figura 1: la peor predicción al aumentar la complejidad del modelo muestra el fenómeno de sobreajuste. 2.2. Support Vector Machines Las máquinas de vectores soporte, o SVM por sus siglas en inglés, son el método de aprendizaje automatizado más importante de los últimos años. Fueron desarrolladas en 1992 y posteriormente mejoradas en numerosas ocasiones [2]. En su nivel más básico, son excelentes para problemas de clasificación binarios en un espacio de datos linealmente separable, pero pueden adaptarse para problemas no lineales, de multiclase y de regresión [3]. El principio que gobierna las SVM es la construcción de un hiperplano que maximice la distancia entre él y los puntos de entrenamiento de cada clase. Éste se denomina “hiperplano óptimo” y los vectores posición correspondientes a los puntos de entrenamiento más cercanos son denominados “vectores soporte”. Cuanto mayor es la distancia o “margen” entre los puntos de entrenamiento y el hiperplano, mayor es el poder de generalización de la máquina. Para problemas de separación lineal, el módulo de cada componente del vector normal que define el hiperplano está en directa relación con la relevancia de la variable en el momento de la clasificación. Esto resulta 8 de gran importancia en el uso de algoritmos de selección de variables que se explican en la próxima sección. Formalmente, el hiperplano óptimo y la función objetivo de la SVM se define como máx w,b mı́n{||x − xi || : wT x + b = 0, i = 1, . . . , m} Las variables w y b pueden ser escaladas de tal forma que el punto más cercano al hiperplano wT x + b = 0 cumpla con wT x + b = ±1. De esta manera, para cada xi se tiene que yi [wT x + b] ≥ 1, por lo que el ancho del margen es 2/||w||. Ası́, el problema de encontrar el hiperplano óptimo puede ser replanteado como el problema de optimización de la función objetivo τ (w) tal que mı́n w,b 1 τ (w) = ||w||2 2 con las restricciones yi [wT x + b] ≥ 1 i = 1, . . . , m Para resolverlo se construye el lagrangiano m X 1 L(w, b, α) = ||w||2 − αi (yi [xTi w + b] − 1) 2 i=1 donde αi son multiplicadores de Lagrange, y su minimización lleva a m X αi yi = 0 w= i=1 m X i=1 9 αi yi xi De acuerdo con las condiciones de Karush-Kuhn-Tucker [11] se concluye que αi (yi [xTi w + b] − 1) = 0 i = 1, . . . , m Por lo tanto, los valores no nulos de αi se corresponden con yi [xTi w+b] = 1, lo que significa que los vectores que están en el margen cumplen un rol crucial en la solución del problema de optimización. Estos vectores son los vectores soporte del problema. El problema puede trabajarse todavı́a más, llevándolo a su formal dual, que es de la forma máx α W (α) = m X i=1 m 1X αi − αi αj yi yj xTi xj 2 i,j=1 con restricciones αi ≥ 0 i = 1, . . . , m y m X αi y i = 0 i=1 Usando la solución a este problema, la función objetivo se puede escribir como m X f (x) = sgn( αi yi xT xi + b) i=1 Para problemas no linealmente separables en la dimensión original de los datos, el truco (literalmente, se lo llama kernel trick) es la utilización de una función kernel que construya una biyección de los puntos de entrenamiento hacia una dimensión superior donde sı́ sean separables. Esto se hace reemplazando el producto interno xT x0 por la función kernel k(x, x0 ) = Φ(x)T Φ(x0 ), por lo que la función objetivo queda m X f (x) = sgn( αi yi k(x, xi ) + b) i=1 10 Figura 2: el panel superior muestra un problema donde los datos no son linealmente separables. En el panel inferior se utiliza un kernel trick para agregar una nueva dimensión al problema que efectivamente permite la separación lineal. Los puntos resaltados con halos definen los vectores soporte. Ocurre a veces que las clases están muy superpuestas y no es posible construir un hiperplano que las separe aun usando funciones kernel, ya sea por errores de medición, datos equı́vocos o por la naturaleza misma de los datos de entrenamiento. En esta situación se relaja el problema de optimización utilizando variables slack y entra en juego un parámetro de las SVM llamado C, que determina el balance entre la precisión de entrenamiento de la máquina y el ancho del margen m mı́n w,b,ξ X 1 ||w||2 + C ξi 2 i=1 con restricciones yi [wT xi + b] ≥ 1 − ξi 11 i = 1, . . . , m Y el problema dual queda definido como máx α W (α) = m X i=1 m 1X αi − αi αj yi yj xTi xj 2 i,j=1 con restricciones 0 ≤ αi ≤ C i = 1, . . . , m y m X αi y i = 0 i=1 Esto se traduce en que se le permite a la máquina desplazar aquellos puntos superpuestos hacia el subespacio que les pertenecerı́a según el clasificador, desentrelazar los datos y poder trazar la división. El módulo de C determina la rigidez de dichos desplazamientos y lo que se llama margen blando o soft margin. Figura 3: una SVM clasificando con clases parcialmente superpuestas. Para problemas multiclase existen variadas técnicas, pero la idea es siempre entrenar varios clasificadores binarios y quedarse con la clasificación más correcta o más votada. Las más comunes son “uno contra todos” o one vs all 12 y “uno contra uno” o one vs one. En one vs all, se entrenan c clasificadores, uno para cada clase, considerando el resto de las clases como una sola; mientras que en one vs one, se entrena un clasificador para cada par de clases, para un total de c(c − 1)/2 clasificadores. La clase se termina definiendo por votación de los clasificadores [6]. 2.3. Selección de variables La selección de variables o feature selection es el proceso por el cual se filtran las variables más influyentes de un problema de aprendizaje automatizado para poder construir mejores modelos [4]. Es una técnica de preprocesado de los datos que aporta grandes beneficios. Los algoritmos de selección de variables permiten reducir el número de dimensiones del espacio del problema mejorando la relación entre variables y observaciones, permitiendo un modelado de mayor calidad predictiva e interpretabilidad humana, ya que elimina variables que no aportan nada nuevo a las ya seleccionadas (variables redundantes) o que no aportan información en general al contexto del problema (variables irrelevantes). Existen dos tipos de algoritmos de selección de variables: los de tipo filtro o filter y los de tipo envoltorio o wrapper, que si bien llevan a cabo diferentes estrategias, ofrecen como resultado un ranking de variables según su capacidad predictiva [7]. Los algoritmos de tipo filter son sencillos y muy eficientes computacionalmente. Se basan en mediciones estadı́sticas aplicadas directamente sobre los datos de entrenamiento. Como contrapartida, no tienen la posibilidad de detectar las situaciones en donde múltiples variables interactúan entre sı́ para describir el concepto objetivo. Los métodos wrapper, en cambio, trabajan sobre un algoritmo de aprendizaje automatizado, y realizan varias iteraciones para encontrar el subconjunto de variables que aumentan el 13 rendimiento de ese algoritmo en particular. Suelen tener un desempeño mejor que los filtros en cuanto a precisión, pero son computacionalmente costosos ya que construyen una gran cantidad de modelos de datos en cada iteración. Los algoritmos de selección de variables parten de la base de que en todo problema de selección de variables, en especial en los de tipo ancho, se pueden encontrar tres tipos de variables: fuertemente relevantes débilmente relevantes irrelevantes Sea F el conjunto de todas las variables, Fi una variable en particular, C una clase y Si = F − {Fi }, las clasificaciones anteriores se definen como: Relevancia fuerte: una variable Fi es fuertemente relevante si y sólo si P(C | Fi , Si ) 6= P(C | Si ) Relevancia débil: una variable Fi es débilmente relevante si y sólo si P(C | Fi , Si ) = P(C | Si ) ∧ ∃Si0 ⊂ Si : P(C | Fi , Si0 ) 6= P(C | Si0 ) Irrelevancia: una variable Fi es irrelevante si y sólo si ∀Si0 ⊆ Si : P(C | Fi , Si0 ) = P(C | Si0 ) 14 Por ejemplo, sea {F1 , . . . , F5 } ∈ Bool, con F2 = F¯3 , F4 = F¯5 y el concepto a aprender c(F1 , F2 ), se puede determinar que F1 es fuertemente relevante para la solución, F2 y F3 son débilmente relevantes (la solución no cambia mientras alguna esté presente) y F4 y F5 son completamente irrelevantes. Para obtener la solución óptima a un problema de este tipo, el conjunto de variables seleccionadas debe incluir a todas aquellas fuertemente relevantes, ninguna de las irrelevantes y un subconjunto de variables débilmente relevantes. Sin embargo, no se dispone de un método para decidir qué subconjunto debe utilizarse, por lo que debe definirse algún tipo de redundancia entre las variables relevantes. Normalmente, la redundancia entre variables se mide en torno a la correlación entre ellas. Cuando dos variables están completamente relacionadas, como F2 y F3 , la eliminación de una no afecta la precisión y mejora la solución. Sin embargo, en la práctica no siempre se dan casos tan sencillos, y puede que una variable esté parcialmente correlacionada con otra, o con un conjunto de otras variables. Cobertura de Markov: dada una variable Fi , y sea Mi ⊂ F, Fi ∈ / Mi , Mi es una cobertura de Markov de Fi si y sólo si P(F − Mi − Fi , C | Fi , Mi ) = P(F − Mi − Fi , C | Mi ) La cobertura de Markov no sólo pide que Mi cubra toda la información que proporciona Fi sobre C, sino que además cubra la información sobre todas las otras variables contenidas en F . Si se procede desde el conjunto total de variables, si se encuentra una variable Fi tal que tenga una cobertura de Markov Mi en las variables restantes, es demostrable que la eliminación de Fi es segura y siempre se encontrará una cobertura en el subconjunto restante sin necesidad de volver hacia atrás a revisar eliminaciones previas. También 15 es demostrable que una variable fuertemente relevante no posee coberturas de Markov. Las variables irrelevantes quedan excluidas de la definición de redundancia. Es fácil ver que una variable redundante que es eliminada seguirá siendo redundante sin importar la sucesión de eliminaciones. Variable redundante: sea F 0 el conjunto actual de variables, una variable se considera redundante y debe ser eliminada de F 0 si y sólo si es débilmente relevante y tiene una cobertura de Markov dentro de F 0 . Las definiciones de relevancia dividen entonces a las variables en fuertemente relevantes, débilmente relevantes e irrelevantes. A su vez, la definición de redundancia divide las variables débilmente relevantes en redundantes y no redundantes. El objetivo es entonces encontrar el subconjunto de variables tal que contenga variables fuertemente relevantes o no redundantes. 2.3.1. Estabilidad Un problema particular de los algoritmos de selección de variables es el problema de la estabilidad. Cuando un problema tiene un número elevado de variables y estas variables presentan altos niveles de correlación, puede que la aleatoriedad del muestreo necesario para la validación del modelo lleve a resultados igual de buenos pero con variables totalmente diferentes. La estabilidad de un algoritmo marca la robustez del mismo frente a cambios en los datos de entrenamientos, lo que se condice con la confiabilidad de la información extraı́da por su parte. 16 3. Métodos de selección de variables independientes El problema de la correlación entre variables ya ha sido tratado por otros autores y múltiples algoritmos han surgido de dichos análisis. De ellos, dos métodos resultan particularmente interesantes de analizar por sus aportes conceptuales al problema. Estos son: Fast Correlation Based Filter de Lei Yu y Huan Liu [12]. SVM-RFE with MRMR filter de Piyushkumar A. Mundra y Jagath C. Rajapakse [8]. Además, para el desarrollo de esta tesina se utilizó como referencia y control el método RFE con SVM como clasificador [5]. 3.1. Recursive Feature Elimination El algoritmo de Eliminación Recursiva de Variables, o RFE por sus siglas en inglés, es uno de los métodos de selección de variables más utilizados, tanto por su desempeño a nivel temporal como por la calidad de predicción de sus modelos. RFE es un método del tipo wrapper que consiste en utilizar algún clasificador para generar un modelo de datos y con éste un ranking de variables. Luego se descarta un cierto número de las variables con menor puntuación en base a parámetros de entrada del algoritmo y se repite la iteración con el nuevo subconjunto de variables hasta llegar a un mı́nimo. Por lo general, RFE descarta muchas variables en las primeras iteraciones y se vuelve más cuidadoso cuando la cantidad de variables es menor. RFE es un wrapper particularmente efectivo ya que en lugar de generar un modelo de datos para todas las combinaciones de variables posibles en 17 una iteración dada, como lo hacen los algoritmos de backward elimination y forward selection [7], su foco está puesto en estimar el cambio en la precisión debido a la eliminación de una o más de dichas variables. Esto no resulta tan preciso como generar los modelos, pero es lo que permite al método ser temporalmente factible para problemas con un gran número de variables a considerar. Al usar SVM lineales, está demostrado [5] que la reducción del error está dada por el desplazamiento en la dirección del vector perpendicular al hiperplano de separación. Por eso, el valor de una variable i en un ranking R queda definido como ri = wi , donde wi es la componente correspondiente a i en el vector W perpendicular al hiperplano de separación. RFE es un algoritmo que agresivamente minimiza el error en cada iteración para el clasificador que use; por lo cual, si bien las tasas de error serán bajas, puede sufrir el problema de la estabilidad descrito en la sección anterior para problemas de variables altamente correlacionadas. 3.2. Fast Correlation Based Filter El Filtro Rápido Basado en Correlaciones [12], de ahora en más FCBF, es un método del tipo filter desarrollado para la selección eficiente de variables a través del análisis de la relevancia y redundancia de las mismas, a diferencia de los otros métodos de selección que suelen centrarse únicamente en encontrar las variables más relevantes para el problema. Primero, el análisis de relevancia determina el subconjunto de variables relevantes eliminando aquellas que no lo son. Segundo, el análisis de redundancia elimina las variables redundantes de las relevantes dejando el subconjunto final. Este tipo 18 de búsqueda tiene como ventaja sobre otros algoritmos que al separar ambos análisis evita la búsqueda exhaustiva del subconjunto óptimo y computa una buena aproximación de forma eficiente. La correlación se utiliza ampliamente en el contexto del aprendizaje automatizado como medición de relevancia. Comúnmente, las mediciones de correlación se clasifican en lineales y no lineales. Al trabajar sobre mediciones del mundo real, no es seguro suponer correlaciones del primer tipo, por lo que suele trabajarse con el concepto de la teorı́a de la información llamado “entropı́a”, que es una medida de incertidumbre de una variable aleatoria. La entropı́a H de una variable discreta X se define como H(X) = − X P(xi ) log2 P(xi ), i y la entropı́a de X luego de observar valores de otra variable aleatoria Y es H(X | Y ) = − X j P(yj ) X P(xi | yj ) log2 P(xi | yj ), i donde P(xi ) es la probabilidad a priori de todos los valores de X y P(xi | yj ) es la probabilidad a posteriori de todos los valores de X dadas las ocurrencias de los valores de Y . La reducción en la entropı́a de X dada la ocurrencia de Y se denomina ganancia de información o information gain y se define como IG(X | Y ) = H(X) − H(X | Y ) 19 De acuerdo con esta medida se puede ver que una variable aleatoria Y está más correlacionada con una variable X que con otra variable Z si IG(X | Y ) > IG(Z | Y ) Se puede probar que IG es una medición simétrica y asegura que el orden de dos variables no altera el resultado de la medición [10]. Como IG tiende a favorecer variables con más valores posibles se la normaliza con respecto a la entropı́a, de modo que se obtiene lo que se llama incertidumbre simétrica o symmetrical uncertainty SU (X | Y ) = 2 IG(X | Y ) H(X) − H(Y ) SU compensa el sesgo de la ganancia de información para con las variables con más valores y restringe el resultado al intervalo [0, 1] en problemas de clasificación binaria. Un valor de 1 significa la completa predicción de los valores de una variable dada la otra, y un valor de 0 significa total independencia. Las mediciones basadas en entropı́a utilizan mediciones discretas, por lo que los conjuntos de datos continuos deberán discretizarse de alguna manera para poder trabajar con esta medida. Al usar SU como medida de correlación ya se puede comenzar a definir el algoritmo de selección de variables. Primero se definen dos tipos de correlación para el problema. C-correlación: la correlación entre una variable Fi y una clase C, denotada por SUi,c . F-correlación: la correlación entre un par de variables Fi y Fj con i 6= j, denotada por SUi,j . 20 Para mantener la eficiencia en un primer plano se calcula la C-correlación para cada variable y se utiliza un método heurı́stico para el cálculo de las F-correlaciones. Se dice que Fi es relevante si está altamente correlacionada con la clase C (SUi,c > δ definido por el usuario). Para el cómputo de la redundancia surge la dificultad de no calcular todas las combinaciones posibles por su alto costo computacional en problemas de alta dimensionalidad, razón por la que se busca aproximar el resultado. Partiendo de la definición de coberturas de Markov, en lugar de buscar una medida exacta de redundancia se busca ahora una aproximación. Se parte de la suposición de que una variable con mayor C-correlación que otra tiene más información sobre la clase, y se determina la existencia de una cobertura aproximada de Markov entre dos variables de la siguiente manera: Cobertura aproximada de Markov: para dos variables relevantes Fi y Fj con i 6= j, Fj forma una cobertura aproximada de Markov para Fi si y sólo si SUj,c > SUi,c ∧ SUi,j > SUi,c Al contrario que las coberturas de Markov, la cobertura aproximada no asegura que la eliminación de una variable siga siendo válida en futuras iteraciones. Sin embargo, esto puede solventarse si sólo se eliminan variables para las cuales se encuentre una cobertura aproximada de Markov formada por una variable predominante. Variable predominante: una variable relevante es predominante si y sólo si no tiene ninguna cobertura aproximada de Markov en el conjunto actual de variables. 21 Una variable predominante no será eliminada en ningún caso. Si una variable Fi es eliminada debido a la presencia de una cobertura aproximada dada por Fj , siempre se encontrará una cobertura aproximada en las futuras iteraciones: la misma Fj . En resumen, el algoritmo filtra las variables relevantes, las ordena, y por cada una procede a eliminar aquellas variables cubiertas. De esta manera, se aproxima el subconjunto óptimo de variables a partir del conjunto de variables predominantes. FCBF es un filtro univariado, es decir, no toma en cuenta los casos donde se necesita más de una variable para determinar un concepto, como en el caso de xor. Como tal, su precisión de modelado está seriamente restringida. Además, el algoritmo no considera variables de relevancia similar como posibles variables equivalentes y descarta una de ellas arbitrariamente sin establecer cuidados sobre la estabilidad de la solución. Por último, la penalización de variables no es proporcional a su nivel de redundancia, sino que directamente se elimina y ya no se la considera, privando al usuario de información sobre la variable en cuestión. Algoritmo FCBF Entrada: S = {F1 , . . . , Fn , C}: conjunto de variables y clasificación. δ: umbral de corte para variables relevantes. Salida: R: ranking óptimo de variables. 22 Pseudocódigo for Fi ∈ S do Calcular SUi,c para Fi . if SUi,c > δ then S 0 = S 0 ∪ {Fi }. end if end for Ordenar S 0 por SUi,c decreciente. Fj = pop(S 0 ) repeat Fi = next(S 0 , Fj ) repeat if SUi,j > SUi,c then S 0 = S 0 − {Fi } end if Fi = next(S 0 , Fi ) until Fi == N U LL Fj = next(S 0 , Fj ) until Fj == N U LL R = S0 return R 23 3.3. SVM-RFE con filtro MRMR El método de Mı́nima Redundancia y Máxima Relevancia o MRMR [8] apunta, como su nombre lo indica, a seleccionar variables máximamente relevantes y mı́nimamente redundantes para la clasificación, mediante la combinación del filtro MRMR con el algoritmo SVM-RFE. El filtro MRMR fue introducido por Peng et al. [9]. Sea S = {F1 , F2 , . . . , Fn } un conjunto indexado de variables. Sean C las clases objetivos de las muestras. La información mutua entre la variable Fi y la clase C determinará la relevancia de Fi para la clasificación. Entonces, la relevancia Ri está dada por: Ri = I(C, Fi ). La redundancia de la variable Fi con las otras variables del subconjunto S está dada por: QS,i = 1 |S|2 X I(Fi , Fj ) Fj ∈S,Fj 6=Fi Con el filtro MRMR, el ordenamiento de las variables se realiza optimizando la proporción entre el valor de relevancia de una variable contra el valor de redundancia con las otras variables del conjunto. La variable máximamente relevante y mı́nimamente redundante Fi∗ en el conjunto S está dada por Fi∗ = argmaxFi ∈S Ri QS,i El filtro MRMR usado por sı́ solo puede no ser capaz de obtener una precisión óptima ya que actúa independientemente del clasificador y no está involucrado en la verdadera selección de variables. Por otro lado, SVM-RFE no toma en cuenta la redundancia entre variables. El objetivo es mejorar la selección de variables de SVM-RFE combinándolo con el filtro MRMR para 24 que minimice la redundancia entre variables relevantes. Para eso, lo que se plantea es ordenar las variables por el resultado de la combinación convexa entre la relevancia marcada por los pesos de la SVM y los valores del filtro. Para la i-ésima variable se define ri = β|wi | + (1 − β) Ri , QS,i donde β ∈ [0, 1] define la prevalencia del ranking SVM y el ranking MRMR. Un problema que surge del estudio de este algoritmo es que la selección es inestable. Cuando se encuentra un par de variables redundantes se penaliza a las dos por igual en lugar de determinar un criterio por el cual una de ellas es mejor que la otra. Además, en esta situación una variable poco relevante y poco redundante puede llegar a ocupar un mejor lugar en el ranking final desplazando variables que sı́ son relevantes al problema. A su vez, el algoritmo no hace ningún esfuerzo por controlar la escala de los rankings a la hora de combinarlos. 25 Algoritmo SVM-RFE con filtro MRMR Entrada: S = {F1 , . . . , Fn , C}: conjunto de variables y clasificación. β: factor de importancia entre RFE y MRMR. Salida: R: ranking óptimo de variables. Pseudocódigo repeat W = rf e(S) for Fi ∈ S do Calcular RS,i y QS,i Calcular rS,i end for Fi∗ = argmin(ri ) R = R ∪ {Fi∗ } S = S\{Fi∗ } until S = ∅ return R 26 3.4. Stable Recursive Feature Elimination El algoritmo SRFE es el método de selección de variables desarrollado como eje de esta tesina. Es un algoritmo de la familia wrapper que intenta minimizar, combinando los puntos fuertes de los algoritmos ya descriptos, el problema de la estabilidad que se genera debido a altos niveles de correlación entre las variables. Combina un método para seleccionar la variable a penalizar de una manera estable siguiendo el ejemplo de FCBF con la base de selección precisa y eficiente de SVM-RFE. En esencia, el algoritmo cuenta en primera instancia con un filtro inspirado en FCBF que se encarga de determinar los niveles de correlación y discriminar las variables intercambiables en el momento del aprendizaje. De esta manera, se genera un vector de penalizaciones siguiendo un criterio que considera la estabilidad de la solución, la cual luego se combina con el ranking obtenido a través de RFE para determinar qué variables eliminar. Luego, se itera hasta que todas las variables estén ordenadas. La relevancia de una variable Fi en el problema queda determinada entonces por la ecuación ri = βIi + (1 − β)Pi , donde Ii es la importancia de la variable en cuanto a su aporte a la solución y Pi es la penalización a la misma por redundancia. Como el método utiliza el algoritmo SVM-RFE como base, Ii puede remplazarse por wi , que representa la componente asociada a la variable Fi en el vector que define el hiperplano clasificador, quedando finalmente ri = β|wi | + (1 − β)Pi 27 3.4.1. El vector de penalización P La construcción del vector de penalización P se da en el bucle inicial del algoritmo, que consta del cálculo de la medida de SU para todos los pares de variables y de las variables con las clases. Si bien tiene complejidad O(n2 ), el cálculo es sencillo y se realiza una sola vez, con lo cual se amortiza frente a las n iteraciones posteriores del algoritmo de aprendizaje automatizado. Esto determina el vector de C-correlación SUi,c y la matriz de F-correlación SUi,j . Con estos valores se procede a la construcción del vector P de penalización de variables mediante la búsqueda del par de variables tal que (Fi , Fj ) = argmax(SUi,j ) SRFE, a diferencia de MRMR, penaliza a una sola de las variables del par. Si los valores de correlación SUi,c y SUj,c difieren en menos de un umbral de tolerancia Tp entonces se considera que Fi y Fj aportan el mismo valor predictivo al modelo y, para mantener un criterio estable, se penaliza con un valor de −SUi,j a aquella variable con mayor subı́ndice y se la remueve del conjunto. Si la diferencia sobrepasa el umbral, se considera que las variables son redundantes pero hay una clara relevancia de una por sobre la otra y aquella con menor poder predictivo es penalizada con ese valor y removida. El procedimiento se itera hasta completar el vector P . La severidad de la penalización queda dada por el nivel de redundancia mismo entre las variables. Durante la experimentación, el umbral Tp fue establecido en 0.05 o 5 % de diferencia en la correlación para salvar perturbaciones dadas por el ruido y el muestreo aleatorio. La iteración de este cómputo devuelve un vector P donde el ı́ndice correspondiente a una sola de las variables tiene valor 0 (la de mayor relevancia) y 28 las demás tienen un valor p ∈ [−1, 0) dependiendo del nivel de redundancia medido. Sin embargo, es errado pensar que todas las variables deban ser penalizadas en base a una sola, ya que estarı́amos implicando una redundancia entre todas las variables. El problema es que, en la práctica, SUi,j es siempre distinto de 0, aun para variables independientes. Para solventar esto y mejorar el filtro se planteó la inclusión de un umbral de correlación Tc , inspirado en los algoritmos de clustering jerárquico. El valor de Tc determina el valor de correlación en el cual dos variables ya no se consideran redundantes. De esta manera, Tc actúa como mecanismo de corte del bucle (o del árbol, si se sigue con la idea de clustering) y determina un factor de agrupamiento de las variables: Tc = 0 indica que todas las variables deben considerarse redundantes entre sı́ (un solo cluster), mientras que Tc = 1 indica la consideración de independencia total de las variables (cada variable es un cluster). Un valor adecuado de Tc generará varios conjuntos de variables redundantes en distinta medida con una de ellas especialmente relevante y sin penalizar. 3.4.2. El método SRFE Una vez obtenido el vector de penalizaciones se procede al entrenamiento del algoritmo de aprendizaje automatizado. En la implementación de SRFE se decidió utilizar SVM-RFE por su eficiencia ya descrita. Al obtenerse el vector de pesos W se lo escala junto con el vector P en base a la cantidad restante de variables y se los combina convexamente en base a un parámetro β. Las peores variables son removidas de la lista y se repite el proceso (incluyendo el escalado) hasta que se finaliza el ranking. Como ventaja potencial sobre los métodos ya mencionados, SRFE es menos avaro que RFE al ofrecer un control adicional, opcional y escalable sobre la eliminación de variables, brindando más estabilidad y coherencia en las 29 selecciones. Además, obtiene mejores resultados que FCBF en cuanto a error en la clasificación debido a su naturaleza wrapper, y supera a SVM-RFE con filtro MRMR, ya que considera una mejor escala al momento de combinar las penalizaciones y deja de manera estable una variable de cada grupo sin penalizar. Algoritmo SRFE Entrada: S = {F1 , . . . , Fn , C}: conjunto de variables y clasificación. β: factor de balance entre importancia y redundancia. Tp : factor de tolerancia para determinar la equivalencia de dos variables. Tc : factor de corte en el cálculo de redundancia. Salida: R: ranking óptimo de variables. Pseudocódigo for Fi ∈ S do Calcular SUi,c end for for Fi , Fj ∈ S do Calcular SUi,j end for S0 = S repeat (Fi , Fj ) = argmax(SUi,j ) if SUi,c > SUj,c (1 + TP ) then 30 P [j] = −SUi,j remove(Fj ) else if SUj,c > SUi,c (1 + TP ) then P [i] = −SUi,j remove(Fi ) else w = min(i, j) P [w] = −SUi,j remove(Fw ) end if until S 0 = ∅ ∨ SUi,j < TC repeat W = rf e(S) Escalar W y P [S] Fi∗ = argmin(βW + (1 − β)P [S]) R = R ∪ {Fi∗ } S = S\{Fi∗ } until S = ∅ return R 31 4. Resultados La experimentación se realizó sobre distintos conjuntos de datos o data- sets de diversas caracterı́sticas. Sobre todos ellos se corrieron los algoritmos descriptos en el capı́tulo tres para la obtención de los rankings finales. A continuación, se utilizó el algoritmo SVM con los rankings como argumento para medir la tasa de error en base a la cantidad de variables seleccionadas. Asimismo, se evaluó la estabilidad de la selección. No se tuvo en consideración el factor temporal o de memoria para determinar la efectividad de los métodos. Todos los métodos utilizaron la misma entrada aleatoria y realizaron las mimas validaciones para garantizar la equidad en la experimentación. La obtención de los cien conjuntos de datos de entrenamiento y de prueba se realizó con el método de subsamples del 75 % para entrenamiento y los modelos generados se validaron internamente con las SVM utilizando la técnica de 4-fold cross validation. Las SVM utilizadas fueron configuradas con un kernel lineal y el parametro de costos C se eligió por validación interna entre (0.01, 0.1, 1, 10, 100). En cada una de las secciones siguientes se confeccionaron cuatro gráficas. La primera de ellas muestra, utilizando un mapa de calor o heatmap, el nivel de correlación entre las variables. Cuanto mayor es la correlación, el color tiende del rojo oscuro al blanco. Esta gráfica sirve, en conjunción con las gráficas de estabilidad, para determinar si la selección fue redundante o no. Es común encontar soluciones perfectamente estables pero que tras un análisis de redundancia revelan su baja calidad. No sólo se busca hallar un conjunto de variables estable a lo largo de los experimentos, sino que éste esté, además, formado por variables independientes entre sı́ de manera que la información a extraer sea más abundante. 32 En la segunda, se pueden observar cuatro curvas en las que se comparan los errores de clasificación del modelo generado con un número dado de variables elegidas por los distintos métodos. Esta gráfica sirve para mostrar que el método SRFE obtiene modelos de predicción al menos tan buenos como el resto de los métodos ya publicados. La tercera gráfica muestra, para cada método en forma independiente, la estabilidad de la selección para un número definido de variables. Para esto, se grafica la probabilidad de una variable de ser seleccionada entre las x primeras sobre todos los experimentos realizados. En esta gráfica, se busca que las probabilidades de las primeras x variables tiendan a 1, mientras que el resto tienda a 0, lo que determina una selección estable. El valor de x se determinó en todos los casos buscando un mı́nimo en las curvas de error de la primera figura. La última gráfica muestra, para cada variable, la posición final luego del entrenamiento para cada uno de los rankings obtenidos por los métodos. Se presentan ordenadas de mejor a peor y se busca observar poca variación por lo menos en las primeras x posiciones. Cuando se grafica el dataset completo, cuanto más se asemeja la gráfica a una diagonal, más estable es el método de selección. La presencia de dos o más posiciones distintas y bien marcadas para una variable puede indicar una alta correlación con otras, lo que sugiere que habrı́an intercambiado lugares a lo largo de los experimentos. El parámetro β, donde aplica, fue configurado en 0.5 dando igual importancia a ambas partes en el ranking. Para SRFE, el parámetro Tp se definió en 0.05 por no ser crı́tico y Tc se ajustó de manera empı́rica. 33 4.1. Datos artificiales Para mostrar con claridad las bondades del método presentado en esta tesina, se procedió a la generación de un conjunto de datos que responda a la problemática que se intenta resolver: la selección estable de variables en problemas anchos con una gran cantidad de variables correlacionadas. El dataset “artificial” consta de cien variables agrupadas en conjuntos altamente correlacionados de veinticinco variables. A su vez, el concepto objetivo, que es binario, está determinado por una conjunción de los cuatro grupos, lo que significa que es necesaria la presencia de al menos una variable de cada grupo para obtener la solución correcta. La Figura 4 muestra con un heatmap la estructura de correlaciones entre las variables. Para este caso particular se hicieron tres experimentos con cada vez menos muestras para exponer cómo se va perdiendo la capacidad predictiva a medida que disminuye la información y el espacio se torna más ralo. Además, se muestra cómo la información redundante elude los criterios de selección de los métodos distintos a SRFE. En la primera instancia, de mil variables para una relación 1 : 10 de variables y muestras, se puede observar en la Figura 5 como únicamente el método SRFE logra obtener el modelo óptimo al minimizar el error con cuatro variables. Tanto RFE como MRMR mantienen variables redundantes en las últimas iteraciones y FCBF falla en obtener cualquier tipo de información de los datos porque elimina secuencialmente grupos enteros de variables (de ahı́ los grandes saltos en la gráfica). Las Figuras 6 y 7 exponen la estabilidad de las soluciones. La primera figura muestra la probabilidad de que una variable dada sea seleccionada entre las más importantes para el problema dado. En este caso ese número se fijó en cuatro variables. La segunda, muestra la distribución completa 34 de posiciones que toma cada variable en el ranking a lo largo de todas las corridas efectuadas. Mientras más estable es un método, más angosta serán las distribuciones. En dichas figuras de estabilidad se acentúa más aún la diferencia en la selección. MRMR muestra una estabilidad excelente, pero siempre elige dos pares de variables correlacionadas, con lo cual el modelo resultante es malo. RFE tiene una selección inestable y errónea que no aporta información útil a la interpretación de los resultados al igual que FCBF. SRFE elige de manera estable una variable de cada conjunto. En las segunda y tercera instancias, con relaciones 1 : 1 (Figuras 8 a 10) y 4 : 1 (Figuras 11 a 13), respectivamente, se puede observar como progresivamente aumenta el error de los modelos de predicción generados y disminuye la estabilidad para todos los métodos excepto para SRFE que demuestra su robustez incluso cuando comienzan a surgir los errores de medición consecuencia de la escasez de muestras1 . 1 Debido a que los cálculos con métricas de entropı́a o información requieren de variables discretas, es necesario realizar una discretizacion utilizando bins de datos. Para√generar estos bins con una densidad útil se utiliza una cantidad bastante estándar de n bins donde n es la cantidad de muestras o puntos. Cuando la cantidad de muestras es muy baja (y se reduce más al usar subsamples), el número de bins no alcanza para obtener una medición fidedigna y los resultados tienen menos precisión. 35 Artificial V20 V19 V18 V16 V17 V15 V14 V13 V11 V12 V5 V4 V3 V1 V2 V10 V9 V8 V6 V7 V6 V8 V9 V10 V2 V1 V3 V4 V5 V12 V11 V13 V14 V15 V17 V16 V18 V19 V20 V7 Figura 4: Dataset Artificial: mapa de calor que muestra la correlación entre las variables del dataset (sólo un subconjunto del total). Se pueden ver cuatro grupos de variables altamente correlacionadas dentro del grupo pero independientes de los otros grupos. 36 Artificial (1000) - Selección 0.25 SRFE RFE MRMR 0.20 Error FCBF 0.15 0.10 0.05 0.00 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 Número de variables Artificial (1000) - Selección 0.25 Error 0.20 0.15 0.10 0.05 0.00 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Número de variables Figura 5: Dataset Artificial (1000 puntos): nivel de error en función del número de variables seleccionadas. El panel superior muestra la figura completa mientras que el inferior muestra en detalle el comienzo de la figura. 37 Figura 6: Dataset Artificial (1000 puntos): estabilidad de las soluciones. Para cada método se muestra la probabilidad de cada de variable de estar seleccionada entre las primeras cuatro. 38 Probabilidad de estar entre las mejores cuatro variables Probabilidad de estar entre las mejores cuatro variables V3 V4 V5 V6 V7 V8 V9 V10 V11 V12 V13 V14 V15 V16 Variable 0.0 V2 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 0.1 V1 V7 V26 V30 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 4 5 9 0 V2 V2 V4 V5 Artificial 1000 - Estabilidad MRMR Variable V5 V42 V10 V31 V44 V11 V32 V41 V21 V43 V39 V18 V19 V23 V13 V35 V37 Artificial 1000 - Estabilidad RFE 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 Probabilidad de estar entre las mejores cuatro variables Probabilidad de estar entre las mejores cuatro variables 6 V2 V1 V25 V24 V23 Variable V2 V28 V21 V20 V22 V27 V17 V75 V2 V3 V4 V5 V37 V11 V19 V72 V73 V74 Artificial 1000 - Estabilidad FCBF Variable V1 V26 V51 V76 V52 V79 V78 V81 V82 V53 V54 V57 V61 V67 V73 V77 100 V Artificial 1000 - Estabilidad SRFE _ ____ _ __ _ _ __ _ _ __ _ __ _ __ __ _ _ _ __ _ _ _ _ _ _ _ __ _ _ __ _ __ __ __ ___ __ __ __ __ __ _ _ _ __ _ _ __ __ _ _ __ ___ __ _ _ _ _ _ _ _ _ _ _ __ __ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ _ __ __ __ __ __ _ __ ___ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ______ _ __ __ __ _ _ ___ _ __ _ __ __ __ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ ___ __ _____ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ _ ___ ___ _ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ___ __ __ _ ___ __ _ ___ ___ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _____ ___ _ _ _ __ ___ __ __ _ _ _ _ ______ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _____ _ _ ______ _ ___ ___ __ ___ ___ __ ____ _ __ _ ___ __ _ __ _ __ _ _ _ _ _ __ _ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ __ ______ __ ___ ___ _ __ ____ ___ __ _ _ _ _ _ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ __ ____ __ __ __ _ _ ___ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ ____ _ ___ _ ___ _ __ _ _ _ _ _ _ _ ___ __ _ _ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ _ __ __ _ _ _ __ _ _ _ _ _ _ __ _ _ _ ___ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ___ __ _ ____ ___ ___ __ _ __ _ __ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ ____ _____ ___ ___ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ _ _ ___ ____ ____ ___ ___ ____ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _____ _ __ ___ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ___ _ _ __ ____ __ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ __ __ _ _ _____ _ __ __ ____ _ _ _ __ _ _ _ _ __ _ _ _ __ __ __ ___ __ _ _ __ _ __ _ _ _ _ _ _ _ _ _ __ _ _ _ _ ___ __ _ __ ____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ __ ___ _ __ __ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ ____ _ ___ ___ _ _ __ _ __ __ _ _ _ _ _ __ _ __ _ _ __ _ _ _ _ _ ___ _ _ _____ _ _ _ _ __ ___ _ __ _ _ _ _ _ _ _ _ ___ _ _ _ __ ___ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ __ __ _ __ _ _ _ _ _ _ _ _ __ __ __ _ _ _ ___ __ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ __ _ _ __ _ _ _ _ _ _____ _ _ __ __ ____ _ _ __ _ _ _ _ _ ___ _ _ __ __ _ _ __ __ __ __ _ _ _ _ _ _ __ _ _ _ _ _ __ _ _ _ _ ___ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ _ __ _ _ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _______ _ ___ __ __ _ _ _ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ __ _____ ___ __ ___ __ __ __ ____ __ __ __ __ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ ________ ___ ___ ___ _ _ _ __ __ _ _ __ ___ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ __ _ __ _ _____ __ __ __ __ __ _ __ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ _ __ _ _ __ _ __ ___ __ __ ___ __ ___ _ __ _ _ _ __ _ __ _ ___ _ _ _ __ __ _ __ _ __ __ __ __ __ __ __ __ __ __ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ ___ ___ _ _ __ __ __ _ _ _ _ __ __ _ ___ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _____ __ _______ ___ __ __ ___ _______ __ __ _ ___ _ __ __ _ _ __ _ _ _ __ __ __ ____ ___ __ __ __ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _________ _ _______ __ _ __ __ _____ __ ____ _ __ __ _ __ __ __ _ _ _ _ _ __ __ __ _ _ __ __ __ __ _ __ __ __ __ __ _ _ __ _ _ __ ____ _ _ _ __ _ __ _ _ _ _ _ _ __ _ __ __ __ __ __ __ __ __ __ __ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ __ _ ___ _ _ ___ ____ __ ____ _ _ _ __ ___ __ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ __ __ _ _ ___ ____ __ __ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ ___ _ __ _ ____ ___ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ __ _ _ ______ ___ __ ____ __ __ _ __ __ __ __ ___ _ _ _ _ _ _ _ _ _ _ ___ _ __ _ __ _ _ __ _ __ ____ ___ __ __ ___ _ _ _ __ _ ___ _ _ _ _ _ _ _ _ __ ___ __ ___ ____ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ __ _ _ __ __ ___ _ _ _____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ _ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ __ _ ____ _ _ _ _ _ _ _ ___ _ _ _ _ _ _ _ _____ __ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.2 0.4 0.6 0.8 1.0 Artificial (1000): SRFE Posicionamiento relativo 1.0 0.8 0.6 0.4 Posicionamiento relativo 0.2 Artificial (1000): RFE V26 V1 V76 V51 V2 V28 V5 V42 V31 V30 V19 V3 V8 V32 V21 V10 V23 V37 V44 V41 V35 V52 V85 V15 V18 V22 V11 V49 V13 V29 V43 V47 V78 V27 V53 V39 V14 V77 V6 V9 0.0 _ __ _ __ __ __ _ _ __ _ _ __ __ __ _ _ _ _ _ _ __ __ _ _ __ _ _ __ _ __ __ __ ____ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ __ _ _ _ _ __ ___ _ _ _ _ ___ __ _ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ ___ _ _ __ _ _ _ __ _ __ _ _ _ __ __ ___ _ _ _ _ _ __ ___ __ _ __ _ _ _ _ _ _ _ __ _ _ _ _ _ __ __ _ _ _ _ _ _ _____ __ ___ _ _ _ _ _ _ _ _ _ _ __ _ __ _ _ _ __ __ _ _ _ _ _ _ _ __ __ _ _ _ ___ __ _ _ _ _ _ _ _ _ _ _ _ __ __ _ __ _ _ __ _ _ _ __ _ _ _ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ _ _ _ __ _ __ _ _ __ _ __ __ _ ____ _ _ _ __ __ __ __ ___ _ _ __ __ __ __ _ _ _ _ __ __ __ _ __ ___ __ _ __ ____ __ __ _ _ __ ___ __ _ _ _ _ _ _ _ _ ___ _ __ __ ___ __ __ _ _ _ __ __ _ _ __ _ __ _ _ _ _ _ _ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ _ _ _ _ _ ___ __ __ _ _ ____ __ _ ______ ___ ___ ___ _ __ _ _ _ ___ _ _ _ _ __ __ __ _ _ ____ ___ __ _ _ __ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ ____ ___ ___ _ _ __ _ __ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ ___ _ _ __ _ ____ __ __ __ _ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ ___ __ __ __ ___ ____ _ _ __ __ __ _ __ _ _ ___ _ _ __ __ __ __ __ ___ ___ ___ _ _ _ _ _ _ _ _ __ __ ___ _ _ __ _ ____ __ __ __ __ _ _ __ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _____ _ __ __ __ ___ _ __ _ __ __ __ _ _ _ _ __ _ __ ___ __ _ __ _ _ _ _ _ _ _ __ __ _ __ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ ___ __ __ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ ____ _ __ __ __ ___ _ __ ___ _ _ __ __ __ ___ _ _ __ __ __ _ ___ _ _ _ _ _ _ _ __ __ __ _ _ ____ _ _ _ _ _ ____ ___ _ __ _ __ __ __ __ _ _ _ _ _ _ _ _ _ ____ ___ _ ____ _ _ _ _ _ _ _ _ _ __ _ __ _ _ _ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ __ _ _ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ __ _ __ __ _ ___ __ _ _ _ __ _ _ _ _ _ __ _ _ _ _ __ ____ ___ _ ____ _ __ __ __ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ _ __ _ ____ ___ __ ___ _ _ _ _ _ _________ _ ____ _ __ __ ___ __ __ __ __ ___ __ _ _ _ _ _ __ __ _ _ _ __ ___ _ ___ _ __ __ ___ _ _ _ _ _ ____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ ____ ___ ____ __ _ _ _ __ _ _ _ _ _ _ _ _ _ __ _ _____ __ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _____ __ _ ___ ___ __ __ _ __ _ __ _ _ _ _ _ _ _ __ _ __ ___ __ ____ _ _ __ _ _ __ __ _ _ __ _ __ _ _ _ _ _ __ __ _ __ _ _ __ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ _ _ _ _ _ _ ____ _ _____ _ _ _ _ __ ___ _ _ _ ______ __ _ __ ___ ___ _ __ ____ __ ___ _ _ _ __ _ _ _ _____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ ___ _ __ __ _ __ _ __ _ __ _ __ _ _ _ _ _ _ _ _ ___ 0.4 0.6 0.8 V26 V1 V25 V23 V24 V22 V20 V21 V19 V18 V17 V16 V15 V14 V13 V12 V11 V10 V9 V8 V7 V6 V5 V4 V3 V2 V99 V75 V97 V98 V74 V96 V70 V94 V95 V100 V68 V69 V72 V93 V50 V25 V49 V24 V48 V100 V23 V75 V47 V22 V46 V21 V99 V45 V74 V20 V44 V19 V43 V98 V18 V42 V73 V17 V41 V40 V16 V97 V39 V15 V72 V38 V14 V96 V37 V13 V36 V71 V35 V12 0.0 0.2 Posicionamiento relativo _ 1.0 V5 V42 V10 V85 V11 V31 V32 V21 V19 V23 V30 V44 V78 V13 V35 V26 V49 V8 V22 V37 V68 V3 V41 V47 V18 V43 V15 V56 V1 V64 V28 V97 V99 V52 V29 V45 V39 V84 V65 V77 0.6 Artificial (1000): FCBF 0.2 0.4 Artificial (1000): SVM−RFE c/MRMR 0.0 Posicionamiento relativo 0.8 1.0 0.0 _ Figura 7: Dataset Artificial (1000 puntos): distribución de posiciones que toma cada variable en el ranking realizado por cada uno de los métodos comparados. 39 Artificial (100) - Selección 0.30 SRFE RFE 0.25 MRMR FCBF Error 0.20 0.15 0.10 0.05 0.00 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 Número de variables Artificial (100) - Selección 0.30 0.25 Error 0.20 0.15 0.10 0.05 0.00 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Número de variables Figura 8: Dataset Artificial (100 puntos): nivel de error en función del número de variables seleccionadas. El panel superior muestra la figura completa mientras que el inferior muestra en detalle el comienzo de la figura. 40 Figura 9: Dataset Artificial (100 puntos): estabilidad de las soluciones. Para cada método se muestra la probabilidad de cada de variable de estar seleccionada entre las primeras cuatro. 41 Probabilidad de estar entre las mejores cuatro variables Probabilidad de estar entre las mejores cuatro variables V4 V5 V6 V7 V8 V9 V10 V11 V12 V13 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 Variable 0.0 V3 V7 V19 0.1 V2 V4 V33 V35 V40 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 V1 Artificial 100 - Estabilidad MRMR Variable V6 V26 V46 V11 V17 V21 V49 V43 V31 V10 V29 V37 V47 0 5 0 9 4 8 3 V2 V5 V4 V2 V4 V2 V10 8 V1 Artificial 100 - Estabilidad RFE 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 Probabilidad de estar entre las mejores cuatro variables Probabilidad de estar entre las mejores cuatro variables V2 V3 V5 V6 Variable V4 V7 V8 Variable V1 V26 V49 V50 100 V99 V74 V73 V75 V76 V98 V24 V25 V28 V29 V38 V71 V72 V V2 V3 V9 V10 V11 V12 V13 V14 V15 Artificial 100 - Estabilidad FCBF V1 V26 V76 V51 V52 V28 Artificial 100 - Estabilidad SRFE __ _ _ _ __ __ __ _ _ _ _ __ __ _ __ _ _ ____ _ __ __ __ _ _ _ _ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ __ ___ __ _ __ _ _ _ __ _ __ _ _ _ _ _ _ _ _ _ ___ __ _ _ __ __ _ _ _ __ __ __ _ __ __ __ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ____ _ __ __ __ __ _ _ __ _ _ _ _ _ _ _ __ _ _ _ __ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ ___ _ __ __ _ __ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ __ __ _ __ ___ _ __ __ _____ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ ____ _____ __ __ __ __ __ __ __ ___ _ __ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ____ ___ __ _ __ _ __ __ ___ __ _ __ _ __ __ _ _ __ _ _ _ __ _ __ _ ___ _ __ ___ __ ___ __ __ __ __ ___ __ __ __ __ __ __ __ _ __ __ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _____ ___ __ __ _ _ __ __ __ ___ __ __ _ ___ __ __ _ __ _ _ _ ___ __ __ _ _ __ __ __ ____ __ __ __ __ __ __ __ __ __ __ _ __ _ _ __ __ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ __ _ __ _ _ __ ___ _ __ _ __ _ _ _ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ ___ ________ __ __ __ ___ __ __ __ __ ___ ____ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ ___ _ __ ____ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _________ ___ _ _ _ __ ___ __ ____ ___ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ _ __ _ __ _ _ ____ __ _ _ __ __ _ __ __ _ _ __ _ _ _ _ _ __ _ _ _ _ _ _ ___ ___ __ __ __ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ________ ____ _ __ _______ _ ___ ___ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ __ __ __ _ ___ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ ___ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ ____ __ _________ _ _ _ _ _ _ _ _____ _ _ _ _ _ _ _ _ _ _ _ ____ _ ___ __ _ _ __ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ __ ___ ____ _ _ _ ____ _ __ _ _ _ _ _ _ __ __ __ _ __ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ __ ____ __ ___ _ __ _ _ _ __ __ __ _ _ __ _ _ __ _ _ ___ _ _ _ _ _ __ _ ____ _ _ __ ____ ___ _ _ __ _ _ _ __ _ _ __ _ _ _ __ ___ ____ ___ _ _ _ _ _ __ __ __ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ ___ _ _ _ _ _ _ _ _ 0.4 0.2 V1 V26 V76 V51 V6 V11 V18 V46 V31 V40 V86 V35 V21 V33 V29 V17 V41 V43 V23 V37 V49 V47 V25 V12 V5 V7 V52 V78 V28 V9 V88 V60 V95 V39 V10 V24 V19 V4 V14 V44 0.0 Artificial (100): FCBF ___ _ _ _ __ _ __ _ __ _ _ _ _ ___ _ __ __ _ ___ __ _ __ __ _ _ _ _ _ _ ____ __ __ _ __ __ _ _ __ _ _ _ ____ _ __ __ _ __ __ _ _ _ __ _ ___ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ _ __ ___ __ __ _ __ __ _ __ _ _ __ _ __ _ _ _ ___ _ _ __ __ _ ___ _ _ _ __ _ _ _ __ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ __ __ ___ __ __ _ __ __ __ ___ __ _ _ _ __ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ ___ __ __ _ __ _ _____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ __ __ __ _____ __ ___ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ ___ ___ ____ __ __ _ _ __ _ ____ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ __ ________ __ __ _ _ _ __ ____ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ __ __ __ __ ___ __ __ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ ___ __ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ ___ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ ___ __ ___ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ________ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ___ __ ___ _ __ ___ __ _ _ __ _ _ _ _ _ _ _ __ __ ___ __ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ____ __ _ _ _ _ _ _ _ _ _ _ _ ___ _ ______ _ __ _ _ _ _ _ _ _ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ _ _ _ _ _ __ __ __ _ _ _ __ _ _ _ __ _ ___ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ _ __ __ __ __ __ __ _ _ __ _ __ __ ___ _ _ _ _ _ __ __ ___ _ __ _ __ _ __ ___ __ __ ___ __ _ __ _ __ ____ ___ __ _ _ _ _ __ _ _ _ _ _ __ __ __ _ __ _ _ _ _ _ __ __ _ _ _ _ _ _ __ __ __ _ _ _ ____ _ _ _ _ _ _ _ _ 0.6 0.4 0.2 Posicionamiento relativo 0.8 1.0 V6 V11 V18 V86 V46 V35 V31 V29 V21 V33 V40 V17 V43 V1 V47 V26 V41 V23 V37 V49 V60 V88 V25 V78 V12 V7 V52 V5 V9 V95 V64 V39 V24 V10 V67 V28 V19 V58 V98 V4 _ __ _ _ _ ___ __ _ __ __ __ _ ___ __ __ _ _ _ __ __ _ ___ _ _ _ __ _ _ _ _ _ _ __ _ _ _ _ _ _ __ _ _ __ _ _ __ _ __ _ _ __ _ _ ____ __ _ ______ _ __ _ _ __ _ ____ __ __ _ ___ _ __ _ _ _ _ _ _ _ __ _ _ __ __ _ _ _ __ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ __ __ __ _ _ _ __ __ _ __ __ __ ___ _ _ __ _ __ _ _ _ __ __ ___ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ ____ __ __ _ __ __ _ _ __ ____ ___ ___ __ ____ _ _ ______ _ __ ____ _ _ _ __ _ ____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ V1 V26 V75 V100 V50 V74 V99 V49 V73 V98 V48 V72 V97 V47 V71 V96 V46 V70 V95 V45 V69 V94 V44 V68 V93 V43 V67 V92 V42 V66 V91 V41 V65 V90 V40 V64 V89 V39 V63 V88 V50 V25 V49 V24 V48 V23 V47 V22 V46 V100 V21 V45 V44 V99 V20 V43 V19 V75 V42 V98 V41 V18 V97 V40 V74 V17 V96 V39 V73 V16 V95 V38 V37 V15 V94 V72 V36 V93 V14 V35 0.0 1.0 0.8 0.6 0.4 Posicionamiento relativo Artificial (100): SVM−RFE c/MRMR 0.0 0.2 0.6 0.8 1.0 _ _ __ _ _ _ _ ___ __ __ __ _ _ __ __ _ _ __ _ _ _ __ __ _ __ _ __ _ _ _ _ _ _ _ _ _ __ __ _ __ __ __ _ _ __ __ __ __ __ __ _ _ __ _ __ _ __ __ _ _ _ __ _ __ __ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ __ __ __ __ _ __ __ _ _ _ _ _ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _____ __ __ _____ _ __ _ __ _ _ __ _ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _____ __ _ ___ __ __ _ __ __ __ __ _ _ __ _ __ _ __ __ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ __ ___ ___ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ___ __ _______ __ __ ___ __ __ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ___ ___ ____ ___ __ __ _ __ ___ __ __ _ ___ __ _ _ _ __ _ _ _ _ __ _ _ __ __ __ ___ __ ___ __ ___ __ __ __ __ _ __ __ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ ___ __ ___ ___ _ ____ _ _ __ ____ __ ___ ____ __ _ _ _ _ _ _ _ _ ___ __ _ _ __ _ ___ __ ___ __ _ _ __ __ __ __ __ __ ___ ____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ ___ __ _ __ _ ___ __ _ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ________ __ ____ ___ _ __ ____ ___ ___ ___ __ __ ___ _ _ _ _ _ _ _ ____ __ __ __ ___ ___ _ _ ___ ___ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ __ ___ ___ __ __ __ __ __ ___ _ ____ ___ __ _ _ ___ ___ __ _ _ _ _ _ __ _ _ __ _ _ _ ___ __ _ __ _ _ _ __ ____ _ __ _ _ _ __ ____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ ___ __ ___ __ __ ___ __ _ __ _ ____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ______ ____ __ _ __ _ _ _ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ____ _ ______ _ _____ ___ ____ _______ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _____ __ ___ _ _ __ __ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ __ _ __ __ _ ____ __ _ ___ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _____ __ _ ___ _ ___ __ ___ _ _ _ _ ____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ ______ _ _ __ _ __ __ ___ ____ __ _ _ __ _ _ _ _ _ __ __ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _____ __ ______ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ ___ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ _ _ _ _ _ __ _ _ __ _ _ _ _ _ _ _ _ __ __ __ _ _ _ _ _ _ ___ ___ _ _ _ _ _ __ _ __ _ _ _ _ _ __ __ __ __ __ __ _ __ _ _ _ _ __ _ _ _ _ _ __ _ _ __ _ _ _ __ _ _ __ _ __ _ __ _ __ _ _ _ _ _ _ _ _ _ __ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ Posicionamiento relativo 1.0 0.8 0.6 0.4 Posicionamiento relativo Artificial (100): SRFE 0.0 0.2 Artificial (100): RFE Figura 10: Dataset Artificial (100 puntos): distribución de posiciones que toma cada variable en el ranking realizado por cada uno de los métodos comparados. 42 Artificial (25) - Selección 0.40 SRFE 0.35 RFE MRMR 0.30 FCBF Error 0.25 0.20 0.15 0.10 0.05 0.00 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 Número de variables Artificial (25) - Selección 0.40 0.35 0.30 Error 0.25 0.20 0.15 0.10 0.05 0.00 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Número de variables Figura 11: Dataset Artificial (25 puntos): nivel de error en función del número de variables seleccionadas. El panel superior muestra la figura completa mientras que el inferior muestra en detalle el comienzo de la figura. 43 Figura 12: Dataset Artificial (25 puntos): estabilidad de las soluciones. Para cada método se muestra la probabilidad de cada de variable de estar seleccionada entre las primeras cuatro. 44 Probabilidad de estar entre las mejores cuatro variables Probabilidad de estar entre las mejores cuatro variables V2 V3 V4 Variable 0.0 V1 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 00 V75 V99 V74 V73 V98 V72 V97 V50 V49 V48 V47 V25 V22 V23 V24 V1 Artificial 25 - Estabilidad MRMR Variable 2 5 6 9 8 4 9 5 8 0 3 6 7 7 7 3 6 4 1 3 V1 V1 V1 V4 V1 V6 V5 V2 V3 V5 V4 V7 V2 V3 V1 V2 V6 V7 V3 V3 Artificial 25 - Estabilidad RFE 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 Probabilidad de estar entre las mejores cuatro variables Probabilidad de estar entre las mejores cuatro variables 1 V5 V2 V3 V4 V5 V6 V7 Variable V1 V26 V76 V75 100 V74 V99 V25 V24 V50 V49 V73 V98 V48 V23 V Artificial 25 - Estabilidad FCBF Variable V1 V26 V51 V76 V15 V16 V37 V12 V18 V98 Artificial 25 - Estabilidad SRFE V2 V8 V3 V4 V5 V9 V10 V11 _ _ _ _ _ _ __ _ __ _ _ _ ____ _ _ __ _ ___ _ _ _ __ __ _ __ _ _ _ _ _ _ _ __ __ _ _ __ __ _ _ _ _ _ __ __ ___ _ _ _ __ __ _ _ _ _ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ __ ___ __ __ __ __ __ __ _ _ __ _ __ __ _ _ _ _ __ __ _ __ _ _ __ _ _ _ _ _ _ _ __ _ __ __ ___ _ __ __ _ _ __ __ __ _ _ ___ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ _______ __ ____ ____ _ __ __ _ __ __ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _____ ____ __ _ __ _ _ _ _ _ __ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ____ _____ ___ ___ __ ___ _____ __ ___ ___ __ __ _ _ __ __ __ _ __ __ _ _ _ _ __ _ __ _ _ __ __ _ _ _ __ __ _ _ _ _ _ _ _ ___ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ ___ ___ ____________ __ __ __ __ __ __ __ ___ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ __ _ ___ ___ ______ ____ _ __ __ __ _ __ _ _ _ __ _ __ _ _ _ _ _ _ _ __ __ _ _ _ _ __ __ __ __ __ __ __ _ _ _ __ _ __ _ _ __ _ _ _ _ _ __ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __________ _ ____ _____ _ __ __ ___ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ____ __ __ __ ___ __ _ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ ___ __ ____ __ __ __ __ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ _ _ _ _ _ _ _ _ ___ ___ _____ __ ________ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _____ ________ __ __ _ __ ___ _ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ __ __ ___ _____ __ __ __ ___ __ _ _ __ __ __ __ _ _ _ _ _ __ __ _ _ _ ___ _ _ _ __ __ __ __ _ __ __ _ __ _ _ _ _ ___ __ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _________ ___ ___ __ __ _ _ ___ __ _ __ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ __ ________ ___ __ __ __ __ __ _ __ __ __ _ ___ __ _______ ___ _ __ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ ___ _ _____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ___ ____ __ __ __ ____ __ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ ___ ____ ___ _ ___ _ _ _ _ _ _ _ _ _ _____ __ __ ___ __ _ _ _ _ __ ____ _ _ ____ __ _ _ _ __ ___ ____ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ ___ _ _ __ ___ _ _ _ _ _ __ _ _ _ _ _ _ _ _ ______ _ _ ___ _ _ _ _ _ ___ _ _ _ _ __ __ _ _ _ _ _ _ _ _ _ __ _ _ __ _ _ _ _ _ _ _ __ _ _ __ _ _ _ _ __ _ __ _ __ _ _ _ _ _ _ _ ____ __ _ _ _ __ _ _ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ ___ ______ _ _ _ _ _ __ _ _ _ _ _ _ _ ____ _ _ _ _ __ __ _ _ __ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ 0.6 0.4 Artificial (25): SVM−RFE c/MRMR Artificial (25): FCBF _ ___ _ _ _ __ _ __ _ _ _ __ _ _ ___ _ _ _ _ ___ _ _ _ __ _ _ _ ___ _ _ __ ___ _ _ _ _ __ __ _ _ _ _ _ _ _ _ _ ___ __ _ _ __ __ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _____ _ _____ ___ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ __ _____ __ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ____ _ _ _ __ ___ _ __ ___ __ _ _ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _______ _ _ _ ___ __ ___ __ __ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _____ _____ __ ____ _ ___ _ ___ ___ __ __ ____ __ ___ __ ___ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ _______ _ _____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ______ ___ __ ___ __ ___ __ __ __ ___ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ ___ ___ __ __ __ __ _ ___ _ _ ___ __ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ___ ___ __ ___ ____ _ ___ _ _ __ ____ __ __ ___ _ _ _ _ _ _ _ _ _ _ _ _ ____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ ___ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ ___ ___ _ __ ___ __ ___ __ __ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _____ _ ____ __ __ _ ___ ________ __ _ _ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ ______ __ ___ ___ _ __ __ __ __ ___ _______ _ _ __ _ ___ _ _ __ ____ _ _ _ _ __ _ __ __ __ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ___ __ __ ___ __ ___ _ _ ___ __ __ __ ____ _ _ __ __ __ _ _ _ _ ____ _ _ _ _ _ _ _ ___ ___ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ ____ _ __ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ __ __ _____ ____ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ __ __ __ ___ _ _ __ _ _ _ _ _ _ __ _ ___ __ _ _ _ __ __ _ _ __ _ __ __ __ _ __ __ __ ____ __ _ ___ ___ _ _ _ __ _ __ _ _ _ _ _ _ _ _ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ____ __ __ _ _ _ _ _ _ _ ____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ ____ _ _ __ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ _ __ _ __ __ _ _ _ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ __ _ __ _ _ _ _ _ _ _ _ __ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ __ __ __ _ _ __ __ __ __ __ _ __ __ _ _ _ _ __ __ _ _ _ __ _ __ _ __ __ __ __ _ _ __ _ _ __ __ _ __ __ _ __ _ ___ __ __ __ __ __ _ __ _ _ __ __ _ _ __ _ _ __ _ _ _ _ _ _ _ _ _ __ __ _ _ _ _ ___ __ ___ _ _ __ __ __ __ _ __ __ _ ___ __ _ ___ __ _ __ _ _ __ __ __ ____ __ _ _ _ __ _ _ _ __ _ __ _ __ _ _ _ _ __ __ __ __ __ __ __ ___ __ _ _ _ _ _ _ _ __ __ __ __ _ __ _ _ ___ _ _ __ _ _ __ __ __ __ __ __ __ _ ___ __ __ __ __ __ _ __ __ __ __ __ __ __ __ _ __ __ _ _ __ __ _ __ _ _ _ _ _ _ ___ __ _ _ __ __ ___ _ __ _ _ __ __ __ ___ __ ___ __ __ __ __ _ _ _ __ __ _ __ _ __ ___ _ _ __ __ __ _ __ __ _ _ __ __ _ _ _ _ _ __ _ _ _ ___ __ __ _ __ __ __ _ __ __ __ __ _ _ __ __ _ __ __ __ _ _ _ _ _ _ _ _ __ __ ___ _ __ __ __ __ __ __ __ __ _ __ __ __ __ __ __ _ _ _ _ __ _ _ __ _ __ __ _ _ ___ ___ ___ _ __ __ __ __ ___ ____ __ __ __ _ _ 0.6 0.4 V1 V51 V26 V76 V100 V99 V98 V97 V96 V95 V94 V93 V92 V91 V90 V89 V88 V87 V86 V85 V84 V83 V82 V81 V80 V79 V78 V77 V25 V50 V75 V24 V49 V74 V23 V48 V73 V22 V47 V72 V100 V99 V75 V98 V97 V74 V73 V96 V95 V94 V72 V93 V92 V71 V91 V70 V90 V89 V69 V50 V88 V68 V49 V87 V48 V67 V86 V66 V85 V47 V84 V65 V83 V64 V82 V46 V63 V81 V62 V61 0.0 0.2 Posicionamiento relativo 0.8 1.0 V1 V26 V51 V76 V12 V15 V16 V49 V18 V24 V38 V43 V17 V39 V25 V23 V59 V50 V37 V30 V11 V40 V14 V36 V22 V31 V8 V6 V32 V69 V27 V5 V42 V10 V3 V33 V35 V46 V13 V48 0.0 0.2 Posicionamiento relativo 0.8 1.0 _ _ __ _ __ _ __ __ __ __ __ _ _ _ __ __ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ _ _ _ _ __ __ __ _ __ ___ __ __ __ __ _ _ _ __ _ __ _ _ ___ _ __ _ _ _ _ _ _ _ __ _ _ __ __ ___ _ _ __ __ _ _ _ __ ____ __ ___ _ __ __ __ _ _ ____ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ __ __ ____ __ __ __ _ _ ___ _ ___ __ __ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _____ _ _____ ___ __ __ __ __ _ __ ___ __ __ __ __ ____ _ _ __ _ _ __ _ _ _ _ _ ___ _ _ _ _ __ __ __ __ __ __ __ _ __ __ _ _ __ __ __ __ __ _ _ __ __ __ __ _ _ _ __ __ _ _ _ __ _ _ _ ____ _ __ __ __ __ __ __ ___ _ __ __ __ __ __ __ __ _ __ __ __ _ __ _ __ __ __ __ __ _ _ __ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ __ __ ___ __ __ __ __ _ __ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ _______ __ __ ___ _ ___ __ __ __ ___ __ __ __ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _____ __ __ __ _____ __ __ __ _ ___ ___ ___ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ______ ___ __ __ __ __ __ ____ ___ _ __ __ ___ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ______ _ _ __ __ ___ __ __ _____ ____ __ __ __ _ ____ __ __ __ __ _ _ _ _ __ __ __ __ __ _ __ __ __ __ __ __ __ __ __ __ __ ____ _ _ __ _ _ _ _ _ _ _ _ ___ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _____ __ _ _ _ _ _ ___ _ __ _ ___ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ___ __ __ __ _ __ ___ _____ __ __ __ __ _ _ __ __ __ _ __ __ __ __ __ __ _ _ _ ______ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ __ ___ __ ___ _ _ _ _ _ _ ___ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ ______ ______ _ _ __ _ _____ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ __ __ _ __ __ __ __ __ _ ____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ ____ ___ ___ _ __ ____ ___ __ ___ ___ _ _ _ _ _ _ __ _ _ _ _ _ _ _ ___ _ _ ____ __ ___ ___ _ _____ ___ _ _ _ __ _ _ _ _ _ _ _ _ __ _ __ __ _ __ __ ___ ___ __ __ _ _____ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ ___ __ __ _ __ _ _ _____ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ ___ _ __ __ ___ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ _ __ ____ _ ___ ___ __ _ _ ____ _ _ _ _ _ _ _ _ _ ___ _ __ __ __ _ _ __ _ _ _ _ ___ ____ ___ _ _ ___ ____ __ _ __ __ _ _ _ _ _ __ _ _____ _ _ _ _ ____ _ _ _ _ __ _ __ ___ _ _ _ _ _ _ __ _ _ __ _ _ _ __ ___ _ _ __ ___ _ _ _ _ _ _ _ _ __ __ _ _ _____ _ _ _ __ _ _ __ __ _ _ _ __ _ __ _ _ __ __ _ __ __ __ _ __ __ __ __ _ _ _ _ _ _ _ _ _ _ _ ___ ___ ___ _ _ __ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ _ __ _ _ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ _ __ ___ _ _ _ _ _ _ __ _ _ _ _ __ __ _ __ _ _ _ _ _ _ _ __ _ _ V12 V15 V49 V16 V18 V38 V24 V39 V17 V43 V25 V59 V23 V50 V30 V37 V69 V11 V14 V40 V22 V32 V27 V6 V31 V36 V5 V35 V8 V33 V42 V46 V10 V3 V13 V34 V48 V2 V7 V57 1.0 0.8 0.6 0.4 Posicionamiento relativo 0.2 0.0 1.0 0.8 0.6 0.4 Posicionamiento relativo Artificial (25): SRFE 0.0 0.2 Artificial (25): RFE Figura 13: Dataset Artificial (25 puntos): distribución de posiciones que toma cada variable en el ranking realizado por cada uno de los métodos comparados. 45 4.2. Datos reales Los siguientes datasets corresponden a mediciones sobre problemas del mundo real. En particular, se tratan problemas de espectrometrı́a por su cantidad de variables y problemas de colorimetrı́a por sus altos niveles de correlación. 4.2.1. Espectrometrı́a Mele Este dataset contiene mediciones sobre muestras de distintas especies de manzanas realizadas con un espectrómetro de masa de reacción de transferencia de protón (PTR-MS) acoplado con un detector de tipo tiempo de vuelo (TOF). El espectrómetro mide la composición del aire alrededor de la manzana (el “olor”) y da como respuesta la proporción de compuestos para cada masa atómica desde 1 hasta 250 AMU, aproximadamente. En este caso particular se analizaron 150 muestras de tres variedades distintas de manzanas. Se descartaron las masas con lectura cero y las masas correspondientes al agua e isótopos, quedando un total de 714 variables en el dataset. El objetivo fue discriminar las variedades de manzana en base al perfil quı́mico de su olor. La Figura 14 muestra el heatmap de correlaciones para una parte de las variables, donde se observa la tı́pica correlación en espectrometrı́a de masa entre pequeños grupos de variables, en general isótopos o fracciones de un mismo compuesto. Los resultados de este experimento muestran un subconjunto final óptimo de unas tres variables encontrado por RFE y SRFE, seguido de cerca por FCBF y por último por MRMR, que finaliza con un poco más de nivel de error (Figura 15). 46 Siendo un verdadero problema ancho, y si bien los niveles de error son siempre bajos, ninguno de los métodos utilizados presenta una gran estabilidad en la selección salvo el método MRMR (Figuras 16 y 17). Este método, sin embargo, produce casi el doble de error que RFE y SRFE con pocas variables. Se puede ver también como el único método que no penaliza las redundancias (RFE) presenta un par de variables con alta correlación entre las seleccionadas (26.01 y 42.01). 47 Mele X109.1017952 X110.1050599 X205.1966371 X206.1970201 X82.07379586 X135.117375 X81.07045229 X32.9972236 X29.01320971 X76.04771476 X75.0436852 X71.0853028 X72.08916225 X90.06344783 X89.05964741 X85.06644812 X104.0789309 X103.0750578 X118.0950846 X117.091135 X26.01541424 X42.01034742 X86.10460322 X85.10081206 X30.04214362 X29.03832589 X42.04225474 X41.03832939 X43.05348098 X44.05737011 X27.02303349 X40.0267227 X33.99361767 X31.98850371 X57.06903553 X58.0734386 X44.02166 X43.01700076 X63.0326447 X62.03200527 X109.1017952 X110.1050599 X205.1966371 X206.1970201 X82.07379586 X135.117375 X81.07045229 X32.9972236 X29.01320971 X76.04771476 X75.0436852 X71.0853028 X72.08916225 X90.06344783 X89.05964741 X85.06644812 X104.0789309 X103.0750578 X118.0950846 X117.091135 X26.01541424 X42.01034742 X86.10460322 X85.10081206 X30.04214362 X29.03832589 X42.04225474 X41.03832939 X43.05348098 X44.05737011 X27.02303349 X40.0267227 X33.99361767 X31.98850371 X57.06903553 X58.0734386 X44.02166 X43.01700076 X63.0326447 X62.03200527 Figura 14: Mele: mapa de calor que muestra la correlación entre las variables del dataset (sólo un subconjunto del total). Se pueden distinguir varios grupos de dos variables, generalmente isótopos del mismo compuesto, y un par de grupos de mayor tamaño. 48 Mele - Selección SRFE 0.18 RFE 0.16 MRMR 0.14 FCBF Error 0.12 0.10 0.08 0.06 0.04 0.02 0.00 1 2 4 8 16 32 64 128 256 512 Número de variables Mele - Selección 0.18 0.16 0.14 Error 0.12 0.10 0.08 0.06 0.04 0.02 0.00 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Número de variables Figura 15: Mele: nivel de error en función del número de variables seleccionadas. El panel superior muestra la figura completa mientras que el inferior muestra en detalle el comienzo de la figura. 49 Figura 16: Mele: estabilidad de las soluciones. Para cada método se muestra la probabilidad de cada de variable de estar seleccionada entre las primeras tres. 50 Probabilidad de estar entre las mejores tres variables Probabilidad de estar entre las mejores tres variables Mele - Estabilidad RFE Variable 66 24 27 79 21 72 72 75 01 07 81 83 25 89 52 26 41 34 87 72 74 18 43 15 19 09 47 29 62 88 42 14 62 51 29 84 12 92 22 95 39 182 405 856 646 933 065 095 177 446 358 .11 891 649 100 174 071 087 015 075 1 . . . . 1 . . . 0 0 0 9 9 0 0 0 0 0 0 0 7. 04 9. 3. 8. 5. 22 01 03 1. 4. X15 72. 73. 115 219 13. 13. X14 15. X4 X2 X7 X8 X3 X4 X1 X1 X2 X5 X6 X X X X X X X Variable 0.0 26 24 98 29 13 15 97 91 01 83 93 41 34 87 72 84 66 94 41 27 84 18 16 01 19 39 31 67 62 14 87 12 92 22 95 65 34 53 12 64 74 182 158 236 190 181 225 099 177 .11 .22 071 087 015 075 139 229 863 947 188 1 . . . . . . . . . 1 3 . 0 0 0 0 0 9 9 0 19 04 79 47 20 21 45 50 03 X15 X20 13. 13. X14 15. 15. 15. 15. 15. 16. X2 X2 X2 X2 X2 X2 X2 X1 X2 X X X X X X X X Mele - Estabilidad FCBF 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 Variable 0.0 Mele - Estabilidad MRMR Mele - Estabilidad SRFE 8 1 6 1 2 2 4 2 5 4 2 8 5 9 3 2 3 9 2 8 39 02 46 92 06 97 43 88 97 42 77 14 22 57 91 74 77 56 95 49 18 853 397 461 900 330 566 029 952 541 654 911 916 561 901 034 226 013 002 035 3 . . .0 01 96 02 99 09 .0 01 .0 07 08 08 .1 01 05 .1 03 5 3 03 9. X71 47. 38. 59. 45. 94. X8 101 26. 122 29. 72. 83. 220 42. 60. X9 115 28. X3 X X X X X X X X X X X X X X X X 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 Variable 7 8 3 1 5 2 7 4 2 6 9 5 2 2 6 6 1 3 6 5 39 97 74 44 32 02 42 88 42 57 22 77 83 14 46 28 48 91 00 91 18 952 034 326 054 853 541 029 748 561 916 654 556 115 397 584 111 901 660 813 3 . . 03 1.0 .01 3.0 .04 1.0 .01 85 9.1 .08 .08 2.0 5.1 .06 .01 .03 51 0.1 .07 1.1 9. 0 2 X6 79 X7 26 X 21 83 72 12 13 74 47 64 X1 22 88 22 X3 X1 X4 X X X X X X X X X X X X X 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 Probabilidad de estar entre las mejores tres variables Probabilidad de estar entre las mejores tres variables 0.4 X39.0331 X71.0853 X85.0298 X59.0290 X94.0956 X122.065 X93.0381 X29.0791 X136.022 X74.0611 X26.0154 X106.032 X79.0181 X28.0303 X93.0135 X187.058 X79.0405 X32.0573 X84.0894 X77.0053 X101.095 X16.0261 X115.100 X187.170 X46.0653 X64.0358 X113.096 X73.0649 X89.9417 X85.1008 X138.015 X95.0184 X355.129 X94.0409 X34.0041 X121.065 X148.089 X90.9487 X173.170 X73.0278 _ _ __ _________ __ __ __ __ _ _ _ __ _ __ __ __ __ __ __ __ __ __ __ __ __ __ ___ _ __ __ _ __ __ __ __ __ __ __ __ _ __ ___ __ __ _ __ __ _ _ _ __ _ _ _ _ _ _ _ _ __ __ _ _ __ __ __ __ _ _ __ _ __ __ _____ _ _ __ __ __ _ _ __ ___ _ __ _ __ __ _ _ _ __ _ _ _ __ ___ _ __ _ __ _ __ __ ___ _ __ __ __ __ __ __ _ __ _ __ _ __ _ _ __ _ _ _ _ __ _ _ __ ___ __ _ _ _ _ _ _ __ __ __ __ ___ _ _ _ _ _ _ _ _ __ _ _ _ _ ___ _ _ __ __ __ __ ____ __ _ __ __ __ __ __ __ __ _ __ __ __ __ __ _ __ __ _ __ __ _ _ __ _ __ _ _ __ __ _ _ _ _ _ _ _ _ _ __ _ __ __ __ __ __ _ _ _ _ __ _ __ __ __ __ __ _ _ _ _ _ _ _ _ _ _ __ _ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ __ __ __ __ __ __ _ __ _____ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ _________ __ _ _ _ _ _ _ _ ___ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ ___ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ __ ___ _ ___ ___ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ __ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ _ _ 0.6 0.4 0.2 _ ___ __ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _____ _ __ _ __ _ _ __ __ _ _ __ _ __ _ _ _ _ _ _ _ __ __ _ _ __ __ _ X47.0139 X204.182 X79.0405 X83.0856 X101.095 X122.065 X151.111 X51.0446 X73.0649 X115.100 X219.174 X72.0891 X137.164 X74.0611 X114.092 X60.0522 X134.103 X39.0331 X59.0290 X245.225 X28.0303 X170.096 X115.074 X93.0135 X73.0805 X85.0298 X150.099 X29.0791 X94.0956 X121.065 X113.096 X106.032 X148.089 X134.071 X187.207 X44.9971 X149.098 X279.158 X26.0154 X42.0103 X219.174 X204.182 X221.181 X220.190 X245.225 X279.158 X150.099 X247.236 X203.228 X203.177 X206.197 X205.196 X261.254 X148.089 X259.241 X205.254 X275.268 X201.168 X206.245 X211.208 X187.170 X246.227 X202.182 X355.064 X280.162 X201.204 X151.111 X207.200 X136.022 X149.098 X170.096 X231.207 X356.065 X187.207 X184.084 X371.098 X171.136 X219.145 X199.145 X232.214 0.0 0.2 0.4 0.6 Posicionamiento relativo 0.8 1.0 X101.095 X39.0331 X79.0405 X42.0103 X85.0298 X74.0611 X71.0853 X93.0381 X63.0326 X26.0154 X148.089 X122.065 X64.0358 X55.0393 X88.0766 X136.022 X72.0891 X93.0135 X43.0973 X83.0856 X106.032 X59.0290 X46.0653 X29.0791 X47.0139 X57.0690 X187.170 X32.0573 X28.0303 X38.9646 X58.0734 X121.065 X94.0956 X77.0053 X43.0170 X113.096 X219.174 X44.9971 X62.0320 X95.0184 0.0 0.2 0.4 0.0 Mele: FCBF 0.8 1.0 Mele: SVM−RFE c/MRMR 0.0 Posicionamiento relativo 0.6 0.8 1.0 _ _ __ __ _ __ ___ __ __ __ _ _ __ __ __ __ __ _ _ _ _ __ __ __ __ __ _ _ _ ___ __ _ __ ___ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ __ __ __ __ __ _ _ __ _ __ _ __ __ __ _ __ _ __ __ __ _ __ __ _ __ _ __ __ __ _ _ __ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ __ _ __ __ __ __ __ _ _ __ __ __ __ __ _ __ __ __ __ __ _ __ __ __ __ __ __ __ __ _ __ _ __ __ _ __ _ __ _ _ __ _ __ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ __ __ __ __ ____ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _____ ____ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ __ _ _ _ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Posicionamiento relativo 1.0 _ _ _ ___ __ ___ __ __ _ __ __ __ __ __ ___ __ __ __ __ __ __ _ _ _ __ __ __ _ __ __ _ _ __ _ _ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ __ _ __ _ __ _ _ _ _ __ _ _ __ _ __ _ __ _ __ __ __ __ __ __ __ _ __ _ __ __ __ _ __ __ __ __ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ _ __ __ __ __ __ ___ __ __ __ __ __ _ _ __ _ _ _ _ __ _ _ _ _ __ _ _ _ _ _ __ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ____ _ ___ _ _ _ _ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ _ _ __ _ ____ __ _ __ _ _ __ ___ ___ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ __ _ _ __ _ __ _ _ _ __ _ __ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ 0.6 0.8 Mele: SRFE 0.2 Posicionamiento relativo Mele: RFE Figura 17: Mele: distribución de posiciones que toma cada variable en el ranking realizado por cada uno de los métodos comparados. 51 Fragola Como en Mele, se midieron variedades de frutillas utilizando el PTRMS, en este caso con un detector de tipo cuadrupolo de menor resolución. El dataset contiene 231 registros de nueve clases de frutillas medidos sobre 233 variables. El heatmap correspondiente, Figura 18, muestra nuevamente la tı́pica correlación en espectrometrı́a entre pequeños grupos de variables. Los resultados de este experimento muestran a SRFE y a FCBF como los mejores modeladores con seis y siete variables respectivamente y un error promedio del 10 %, como se muestra en la Figura 19. En cuestión de estabilidad, lo ancho del problema hace que el resultado no sea tan definitivo como en los casos artificiales y de colorimetrı́a (que se muestran a continuación). Aun ası́, se destaca que SRFE y MRMR lideran, seguidos por RFE y finalmente FCBF (Figura 20). El análisis de correlación en las selecciones, considerando los resultados de las Figuras 18 y 20, muestra que tanto RFE como MRMR eligen variables idénticas (isótopos) como las masas 103-104, y 131-132; mientras que SRFE y FCBF reconocen y eliminan dichas redundancias. SRFE logra, en este caso, el mejor rendimiento ya que obtuvo variables independientes. 52 Fragola M131 M132 M105 M104 M103 M76 M75 M84 M83 M61 M62 M50 M49 M60 M59 M35 M34 M33 M90 M89 M146 M145 M72 M71 M118 M117 M37 M38 M30 M20 M21 M44 M43 M78 M77 M66 M65 M52 M51 M42 M41 M131 M132 M105 M104 M103 M76 M75 M84 M83 M61 M62 M50 M49 M60 M59 M35 M34 M33 M90 M89 M146 M145 M72 M71 M118 M117 M37 M38 M30 M20 M21 M44 M43 M78 M77 M66 M65 M52 M51 M42 M41 Figura 18: Fragola: mapa de calor que muestra la correlación entre las variables del dataset (sólo un subconjunto del total). Como en Mele, se pueden distinguir varios grupos de dos variables, generalmente isótopos del mismo compuesto, y algunos grupos de mayor tamaño. 53 Fragola - Selección 0.60 SRFE 0.55 RFE 0.50 MRMR 0.45 FCBF 0.40 Error 0.35 0.30 0.25 0.20 0.15 0.10 0.05 0.00 1 2 4 8 16 32 64 Número de variables Fragola - Selección 0.60 0.55 0.50 0.45 0.40 Error 0.35 0.30 0.25 0.20 0.15 0.10 0.05 0.00 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Número de variables Figura 19: Fragola: nivel de error en función del número de variables seleccionadas. El panel superior muestra la figura completa mientras que el inferior muestra en detalle el comienzo de la figura. 54 Figura 20: Fragola: estabilidad de las soluciones. Para cada método se muestra la probabilidad de cada de variable de estar seleccionada entre las primeras seis. 55 Probabilidad de estar entre las mejores seis variables Probabilidad de estar entre las mejores seis variables 0.0 Variable 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 3 4 1 6 2 9 0 5 1 5 0 7 0 1 2 3 4 5 6 7 10 10 13 M7 13 M4 M5 M7 M9 10 M6 M5 M2 M2 M2 M2 M2 M2 M2 M2 M M M M M Fragola - Estabilidad MRMR Variable 3 4 9 6 1 0 2 5 1 0 7 5 9 0 1 2 3 4 5 6 10 10 M4 M7 13 M5 13 M7 M9 M6 M5 10 M5 M2 M2 M2 M2 M2 M2 M2 M M M M M Fragola - Estabilidad RFE 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 Probabilidad de estar entre las mejores seis variables Probabilidad de estar entre las mejores seis variables Variable 71 03 50 131 57 59 75 60 132 49 104 76 74 72 58 89 62 106 119 20 M M1 M M M M M M M M M M M M M M M M M M Fragola - Estabilidad FCBF Variable 3 1 7 5 9 9 0 6 0 8 1 4 9 2 0 1 2 3 4 5 10 13 M5 M7 M5 M4 M5 M7 M6 M5 M9 10 12 13 M2 M2 M2 M2 M2 M2 M M M M M Fragola - Estabilidad SRFE 0.4 0.2 M103 M49 M57 M59 M75 M131 M91 M106 M71 M143 M129 M50 M58 M105 M60 M56 M70 M76 M48 M33 M85 M132 M61 M92 M45 M30 M102 M74 M104 M87 M99 M114 M138 M41 M43 M84 M67 M111 M151 M89 0.0 _ __ ___ __ _ _ __ _ _ __ __ __ __ __ __ __ _ __ __ __ _ _ _ _ _ _ __ _ __ __ __ _ _ _ _ _ __ __ __ __ _ _ _ _ __ _ ___ __ _ __ __ _ _ __ __ __ __ ___ _ __ __ _ ___ ___ __ __ __ __ __ __ __ __ _ _ __ __ __ _ __ __ _ _ _ _ _ _ __ _ _ __ __ __ __ __ __ _ _ _ __ _ __ ___ __ __ _ __ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ __ ___ __ _ __ _ _ _ __ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ __ _ ___ ___ _ __ __ _ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ __ __ __ _ _ _ _ _ __ _ _ _ _ _ _ _ _ __ __ ___ __ __ __ _ _ _ _ _ _ _ _ __ _ __ __ _ _ _ _ _ _ __ __ _ _ __ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ __ _ _ _ _ _ _ __ __ _ __ __ _ __ _ _ _ ____ _ __ _ __ _ ___ _ _ _ __ _ __ ___ __ ___ _ __ __ _ _ __ __ __ __ __ _ _ __ _ _ _ __ _ _ __ _ _ __ _ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ __ __ _ _ _ __ __ __ __ __ _ _ _ __ __ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ ___ __ _ __ __ _ __ __ __ _ __ __ _ _ __ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ __ __ _ __ _ _ _ _ _ _ _ ____ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ ___ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ _______ __ ___ ____ ____ _ ___ _ __ _ __ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ __ __ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ ___ ___ __ __ _ __ _ __ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ _ ___ __ _ _ _ __ _ _ _ __ _ _ __ _ __ _ _ _ _ _ _ _ __ __ __ __ __ _ _ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ ___ ___ _ _ _ _ _ _ _ __ __ _ _ _ _ _ __ __ _ _ _ _ _ _ __ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ ___ _ _ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ _ _ _ _ _ _ _ _ __ __ _ _ _ _ _ _ _ _ _ ____ __ _ _ _ _ _ __ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ __ __ __ __ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ _ __ _ _ __ _ __ _ _ _ _ _ _ _ _ _ _ _ __ ___ _ _ _ __ __ _ _ _ __ _ _ _ _ _ _ _ _ _ __ __ __ _ _ _ _ _ _ _ __ ___ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.4 0.6 0.8 M103 M131 M50 M71 M57 M59 M75 M62 M76 M60 M61 M63 M79 M58 M85 M64 M72 M48 M93 M49 M92 M91 M144 M70 M143 M95 M69 M119 M129 M176 M120 M132 M38 M133 M155 M99 M35 M24 M180 M182 M103 M104 M49 M76 M131 M132 M75 M50 M57 M91 M105 M60 M59 M72 M58 M106 M92 M143 M71 M56 M85 M61 M129 M30 M102 M74 M48 M70 M62 M41 M89 M144 M99 M133 M138 M114 M43 M83 M87 M119 0.0 0.2 Posicionamiento relativo 0.2 0.4 _ 1.0 M103 M49 M104 M76 M50 M131 M132 M57 M75 M60 M105 M91 M59 M72 M58 M92 M56 M106 M71 M143 M61 M85 M30 M129 M48 M74 M41 M62 M70 M102 M33 M45 M99 M43 M87 M89 M83 M73 M138 M144 0.0 1.0 0.8 Fragola: FCBF 0.6 Fragola: SVM−RFE c/MRMR 0.0 Posicionamiento relativo 0.6 0.8 1.0 _ _ __ __ _ __ __ _ __ _ _ _ _ _ _ _ _ __ _ _ __ _ __ __ _ __ __ __ __ _ _ __ __ _ __ _ _ _ _ _ _ _ _ _ __ __ ___ _ _ __ _ __ __ ___ __ ___ _ _ __ __ _ _ __ _ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ __ __ __ __ __ _ __ ___ ____ _ _ __ __ _ _ _ __ _ _ _ _ _ _ _ _ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ ___ __ _ __ __ __ __ __ _ _ _ _ _ _ _ __ _ _ _ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ __ __ __ _ _ _ ____ _ __ _ __ _ _ _ _ _ _ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ __ _ ___ ___ __ ___ __ __ __ __ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ __ __ _ ___ _ __ _ _ ____ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ __ __ _ __ __ __ __ __ _ ___ __ _ _ _ _ _ _ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ ___ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ _ _ _ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Posicionamiento relativo 1.0 0.8 0.6 _ _ _ _ __ __ __ __ _ ___ _ __ _ _ _ _ _ _ _ __ _ _ _ __ __ _ __ _ __ _ __ __ _ _ _ _ _ _ ___ ___ __ _ __ __ _ __ __ __ ___ __ _ __ __ __ _ _ _ _ ____ _ _ __ __ __ __ __ __ __ _ _ __ __ __ _ __ _ _ _ _ _ _ _ _ _ __ _ _ _ ___ _ _ _ _ __ __ __ ___ __ _ _ __ _ _ __ _ __ _ _ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ ___ _ _ __ __ __ __ _ __ __ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ _ __ _ __ __ _ _ ___ _ _ _ _ _ _ _ __ _ _ _ __ _ _ _ _ _ _ _ _ __ _ _____ _ ___ __ __ __ __ __ _ __ _ _ _ _ _ _ _ _ _ _ ___ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ ____ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ ___ __ __ _ __ ____ _ _ __ _ ___ _ _ _ _ __ _ _ __ _ _ _ __ 0.4 Fragola: SRFE 0.2 Posicionamiento relativo Fragola: RFE Figura 21: Fragola: distribución de posiciones que toma cada variable en el ranking realizado por cada uno de los métodos comparados. 56 4.2.2. Colorimetrı́a Estos datasets contienen mediciones realizadas en tiras reactivas para análisis de orina en laboratorios clı́nicos. Las variables corresponden a distintas mediciones que caracterizan el color del patch reactivo bajo análisis, incluyendo distintas iluminaciones y sistemas de color para la lectura. Si bien no son problemas anchos, se sabe de antemano que contienen numerosas variables correlacionadas y pueden aportar a las conclusiones sobre la efectividad del método SRFE. BIL Este dataset corresponde a mediciones de bilirrubina en 460 muestras de orina, discriminadas en cuatro clases, con 36 variables medidas. La Figura 22 muestra el heatmap correspondiente, donde se aprecian varios grupos de variables con una alta correlación. Los resultados muestran que SRFE es el método que genera el mejor modelo de datos con una cantidad óptima de cuatro variables frente a cinco y siete de MRMR y RFE, respectivamente, con menor error en general (Figura 23). FCBF falla en la obtención de un modelo útil sobre estos datos. En cuestión de estabilidad (Figuras 24 y 25), SRFE y RFE obtienen las soluciones más estables seguidos muy de cerca por MRMR y, en último lugar, por FCBF. El análisis de correlación de las variables muestra como las selecciones de RFE y MRMR son altamente redundantes y, en consecuencia, de peor calidad que las del método SRFE. Si bien las variables de tipo “blanco” tienen un cierto nivel de correlación, esto es debido a que la luz blanca contiene a todos los colores y, es por ende, un resultado normal (de hecho, el resultado óptimo elegido en la experiencia real en los laboratorios). De todas maneras, la redundancia es notablemente menor que en las selecciones de “rojo” de los otros dos métodos, donde las variables son idénticas. 57 BIL azul.R azul.s azul.r rojo.A rojo.s rojo.R azul.A verde.R verde.r verde.s blanco.g blanco.R blanco.h rojo.i rojo.I rojo.r rojo.V rojo.h rojo.g blanco.V blanco.i blanco.I verde.A verde.V verde.i verde.I verde.g verde.h blanco.s blanco.r blanco.A azul.i azul.I azul.h azul.g azul.V azul.R azul.s azul.r rojo.A rojo.s rojo.R azul.A verde.R verde.r verde.s blanco.g blanco.R blanco.h rojo.i rojo.I rojo.r rojo.V rojo.h rojo.g blanco.V blanco.i blanco.I verde.A verde.V verde.i verde.I verde.g verde.h blanco.s blanco.r blanco.A azul.i azul.I azul.h azul.g azul.V Figura 22: BIL: mapa de calor que muestra la correlación entre las variables del dataset. Se pueden distinguir varios grupos de distinto tamaño con una alta correlación interna. 58 BIL - Selección SRFE Error 0.22 RFE 0.21 MRMR 0.20 FCBF 0.19 0.18 0.17 0.16 0.15 0.14 3 6 9 12 15 18 21 24 27 30 33 36 Número de variables BIL - Selección 0.22 0.21 Error 0.20 0.19 0.18 0.17 0.16 0.15 0.14 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Número de variables Figura 23: BIL: nivel de error en función del número de variables seleccionadas. El panel superior muestra la figura completa mientras que el inferior muestra en detalle el comienzo de la figura. 59 Figura 24: BIL: estabilidad de las soluciones. Para cada método se muestra la probabilidad de cada de variable de estar seleccionada entre las primeras cuatro. 60 Probabilidad de estar entre las mejores cuatro variables Probabilidad de estar entre las mejores cuatro variables bl Variable bl .g co an .R co an bl .V co an a bl g o. nc .V jo ro v . de er I a bl R o. nc BIL - Estabilidad MRMR .V jo ro a bl bl V o. nc .A co an a bl A o. nc .R jo ro .R jo ro .A jo ro 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 Variable 0.0 .g jo ro .g jo ro 0.1 .r jo ro .r jo ro 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 .h jo ro .h jo ro BIL - Estabilidad RFE 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 Probabilidad de estar entre las mejores cuatro variables Probabilidad de estar entre las mejores cuatro variables .A jo ro .R co an bl .R ul az .g co an bl .i jo ro .V co an bl e. rd ve Variable .i jo ro V a bl .s ul az Variable .r ul az .r jo ro A o. nc .V jo ro BIL - Estabilidad FCBF .V jo ro BIL - Estabilidad SRFE .h jo ro .R jo ro .g jo ro .A jo ro a bl R R o. nc e. rd ve _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ ___ _ _ _ __ __ ___ __ _ _ _ ___ _ ___ __ _ _ _ _ _ __ _ __ _ _ ___ _ _ _ _ __ _ _ _ __ __ _ __ _ _ _ _ __ _ __ __ __ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ __ _ __ _ _ ___ _ __ __ _ _ __ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ __ _ __ _ __ _ _ _ __ __ __ __ _ _ _ __ _ __ _ __ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ _ _ _ _ _ _ _ _ __ _ _ _ __ _ _ __ _ __ _ _ _ ___ __ _ _ _ __ _ _ _ __ _ _ __ __ _ __ _ _ _ _ _ __ _ _ __ _ __ ___ __ _ _ _ __ _ ___ _ _ __ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ __ ____ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ BIL: SVM−RFE c/MRMR BIL: FCBF 0.8 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ __ __ _ _ _ _ _ _ _ __ _ _ __ __ _ _ _ __ _ _ _ _ _ _ ___ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ __ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ __ __ ___ _ _ __ ___ _ _ __ __ _ _ _ _ _ __ _ _ _ _ _ __ _ _ _ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ rojo.i rojo.A azul.R azul.s azul.r rojo.s verde.R rojo.R verde.s verde.r azul.A blanco.s blanco.g blanco.r blanco.A verde.g verde.h azul.I azul.i azul.V azul.h azul.g blanco.I blanco.i verde.A blanco.R blanco.h verde.I verde.i blanco.V verde.V rojo.V rojo.h rojo.r rojo.g rojo.I _ _ _ _ _ _ _ _ _ _ _ _ _ 0.6 _ _ _ _ _ _ _ _ _ _ _ 0.4 _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ _ _ _ _ __ _ __ _ _ __ 0.2 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.0 _ _ _ _ _ _ _ __ _ _ _ _ _ __ _ _ __ _ _ _ _ __ _ _ _ _ _ _ _ __ _ __ __ _ __ _ _ _ _ _ __ _ Posicionamiento relativo _ _ _ _ _ __ _ _ _ _ ___ __ _ _ _ __ _ _ 1.0 rojo.V blanco.V blanco.g blanco.R verde.s blanco.h azul.A azul.h blanco.s rojo.s verde.V rojo.r rojo.h rojo.R rojo.g verde.A blanco.i verde.i rojo.i verde.h blanco.r verde.I blanco.A verde.R rojo.I blanco.I verde.g azul.s verde.r azul.R rojo.A azul.i azul.r azul.V azul.g azul.I _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ rojo.g rojo.r rojo.h rojo.V blanco.g verde.V blanco.V blanco.R verde.I verde.i verde.A rojo.I rojo.i blanco.s blanco.I verde.r blanco.i verde.s blanco.r azul.A blanco.h rojo.s blanco.A verde.g verde.R verde.h rojo.A azul.R azul.r azul.I azul.i azul.s azul.V azul.h azul.g rojo.R _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ rojo.g rojo.r rojo.h blanco.g rojo.V verde.I verde.i verde.V rojo.I blanco.R blanco.V rojo.i blanco.I verde.r verde.A blanco.s blanco.i verde.s blanco.r verde.g blanco.h azul.I azul.g azul.A rojo.s azul.r verde.h azul.i azul.h verde.R azul.s blanco.A rojo.A azul.R azul.V rojo.R 0.6 0.4 0.2 0.0 Posicionamiento relativo 0.8 1.0 0.0 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.4 _ _ _ _ _ _ _ _ 0.6 _ _ _ _ _ _ _ _ 0.2 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ _ _ _ 0.0 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.4 _ _ _ _ _ _ __ _ _ ___ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ _ _ __ _ _ _ _ _ _ _ _ ___ _ _ 0.8 1.0 BIL: SRFE Posicionamiento relativo _ _ _ __ _ _ ____ __ _ __ _ _ __ _ _ _ _ __ _ _ _ _ __ _ _ _ _ _ _ 0.6 _ _ _ _ _ _ _ __ __ _ 0.2 Posicionamiento relativo 0.8 1.0 BIL: RFE Figura 25: BIL: distribución de posiciones que toma cada variable en el ranking realizado por cada uno de los métodos comparados. 61 Ph Este dataset corresponde a determinaciones del Ph de la orina en tiras reactivas. Hay 440 muestras de 36 variables y seis clases. La Figura 26 muestra las altas correlaciones entre las variables. Los resultados de este experimento, Figura 27, muestran modelos óptimos para los wrappers del mismo nivel de error, si bien SRFE lo logra con dos variables menos (tres en lugar de cinco). FCBF falla en la obtención de un modelo de datos comparable con resto. En cuestión de estabilidad, la selección es clara y estable para los wrappers, pero el análisis de correlación revela gran redundancia en los modelos de RFE y, en particular, de MRMR (Figuras 28 y 29). 62 Ph azul.R azul.s azul.r verde.R verde.r verde.s rojo.A rojo.s blanco.i blanco.I azul.A azul.i azul.I blanco.V blanco.A blanco.s azul.V verde.g verde.h azul.h azul.g verde.A verde.V verde.i verde.I rojo.R blanco.R blanco.r blanco.g blanco.h rojo.i rojo.I rojo.V rojo.r rojo.g rojo.h azul.R azul.s azul.r verde.R verde.r verde.s rojo.A rojo.s blanco.i blanco.I azul.A azul.i azul.I blanco.V blanco.A blanco.s azul.V verde.g verde.h azul.h azul.g verde.A verde.V verde.i verde.I rojo.R blanco.R blanco.r blanco.g blanco.h rojo.i rojo.I rojo.V rojo.r rojo.g rojo.h Figura 26: Ph: mapa de calor que muestra la correlación entre las variables del dataset. Se pueden distinguir varios grupos de distinto tamaño con una alta correlación interna. 63 Ph - Selección 0.35 SRFE RFE MRMR 0.30 Error FCBF 0.25 0.20 0.15 3 6 9 12 15 18 21 24 27 30 33 36 Número de variables Ph - Selección 0.35 Error 0.30 0.25 0.20 0.15 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Número de variables Figura 27: Ph: nivel de error en función del número de variables seleccionadas. El panel superior muestra la figura completa mientras que el inferior muestra en detalle el comienzo de la figura. 64 Figura 28: Ph: estabilidad de las soluciones. Para cada método se muestra la probabilidad de cada de variable de estar seleccionada entre las primeras tres. 65 Probabilidad de estar entre las mejores tres variables Probabilidad de estar entre las mejores tres variables bl Variable .g jo ro .R co an bl .V co an bl .r co an a bl R o. nc a bl V o. nc a bl A o. nc Ph - Estabilidad MRMR .V jo ro bl .R jo ro .A co an .V jo ro .A jo ro v R .A jo ro . de er 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 Variable 0.0 .g jo ro .R jo ro 0.1 .I jo ro .I jo ro 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 .i jo ro .i jo ro Ph - Estabilidad RFE 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 Probabilidad de estar entre las mejores tres variables Probabilidad de estar entre las mejores tres variables a bl s o. nc .V jo ro .R ul az .R jo ro V .i jo ro e. rd ve R o. nc V o. nc a bl Variable a bl s o. nc .V jo ro h o. nc e. rd ve Variable a bl g A o. nc .s ul az a bl Ph - Estabilidad FCBF a bl Ph - Estabilidad SRFE e. rd ve R .A jo ro R .r ul az e. rd ve h A e. rd ve e. rd ve 1.0 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.8 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ __ _ _ _ __ _ _ __ __ _ _ __ _ _ ___ _ _ _ _ _ _ _ _ 0.4 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ _ _ _ _ _ _ __ _ __ _ _ __ _ __ _ _ _ _ _ __ __ _ _ _ _ _ ___ _ _ _ _ _ _ ___ _ __ _ _ __ _ _ _ _ _ _ _ _ __ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ __ _ _ _ __ _ _ _ __ _ _ __ _ _ _ _ _ _ _ _ _ __ _ _ _ _ __ __ _ _ __ _ _ __ __ _ _ _ __ _ _ _ __ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ __ _ _ _ _ __ _ _ __ _ _ _ _ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ _ _ _ _ _ __ __ _ _ _ _ __ __ __ _ _ ___ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ Ph: SVM−RFE c/MRMR Ph: FCBF _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.8 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ _ __ _ _ _ _ ___ _ __ __ __ ___ _ __ ___ _ _ __ _ _ _ _ _ _ _ _ __ _ _ _ __ _ __ _ _ __ _ _ _ _ _ _ __ _ _ __ _ _ ___ __ __ _ _ _ _ _ ___ __ _ __ __ _ _ _ __ _ __ _ __ _ _ __ _ _ ___ __ _ _ _ _ _ _ _ _ __ _ _ _ _ __ _ _ _ __ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ __ __ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ _ _ __ _ __ __ _ ___ __ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ blanco.s azul.R azul.s azul.r rojo.A azul.A rojo.s azul.I blanco.A azul.i verde.R verde.s verde.r azul.V verde.g blanco.I blanco.i azul.h azul.g verde.A verde.I blanco.V verde.i verde.h verde.V rojo.R blanco.g blanco.R blanco.r rojo.r rojo.g rojo.h blanco.h rojo.V rojo.i rojo.I _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ 0.6 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.4 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.2 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.0 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Posicionamiento relativo _ _ _ _ __ _ _ _ _ __ _ _ __ _ _ __ __ __ _ _ _ _ __ _ _ _ __ _ _ __ _ _ _ _ _ _ _ _ _ __ _ _ __ _ __ rojo.I rojo.i rojo.g rojo.r verde.I blanco.r blanco.g rojo.h rojo.R blanco.s rojo.V verde.i blanco.h blanco.I azul.g blanco.R verde.V blanco.i azul.I blanco.V azul.h verde.g azul.A verde.A azul.i verde.r verde.h rojo.s verde.s blanco.A rojo.A verde.R azul.r azul.V azul.s azul.R _ _ _ _ __ _ ____ _ __ __ _ _ _ __ _ __ _ _ __ _ __ _ _ _ _ _ _ _ _ 1.0 rojo.R rojo.V verde.V blanco.s blanco.V blanco.i verde.A verde.h azul.h azul.i blanco.A rojo.s verde.R azul.V blanco.R azul.r blanco.h blanco.r blanco.g rojo.i verde.i rojo.r verde.g azul.A rojo.h azul.g rojo.g rojo.I rojo.A verde.s blanco.I verde.I azul.R verde.r azul.s azul.I _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ rojo.R rojo.I rojo.i verde.V rojo.V rojo.g blanco.V rojo.r blanco.g rojo.h blanco.s blanco.R blanco.r verde.I blanco.h verde.i blanco.I blanco.i azul.g azul.A azul.h verde.A azul.I verde.h azul.i verde.R blanco.A rojo.A verde.g rojo.s verde.r verde.s azul.V azul.r azul.s azul.R _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ _ 0.0 1.0 0.8 0.6 Posicionamiento relativo 0.4 0.2 0.0 _ _ _ _ _ _ _ _ 0.6 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.4 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ _ _ _ _ _ _ 0.2 _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.6 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.2 Posicionamiento relativo 0.8 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.0 _ __ _ _ _ _ __ _ _ _ _ Ph: SRFE Posicionamiento relativo 1.0 Ph: RFE Figura 29: Ph: distribución de posiciones que toma cada variable en el ranking realizado por cada uno de los métodos comparados. 66 SG Este dataset corresponde a determinaciones de la densidad (SG viene de Specific Gravity) de la orina en tiras reactivas. Hay 521 muestras de 36 variables y siete clases. Las altas correlaciones, esperables en este tipo de datos, se muestran en la Figura 30. Este experimento tiene un resultado particular. Si bien es cierto que el método de MRMR, seguido por RFE, puede generar un modelo de datos con un error menor (Figura 31), se requiere un tercio de las variables originales para una mejora del 4 % en un resultado del orden del 30 % de error. Dada la naturaleza de la solución2 , y siendo estos experimentos originalmente casos de screening, se decidió utilizar un modelo dado por tres variables, que corresponde a un mı́nimo local para dos métodos. En cuestión de estabilidad, como se muestra en las Figuras 32 y 33, sólo el método de filtro muestra una mala selección. RFE es muy estable, aunque dos de las variables seleccionadas, rojo.R y rojo.I, son casi idénticas en términos de correlación. SRFE ofrece una solución de menor error que RFE y MRMR, aunque la selección en este caso está bien definida pero es menos estable que la que aporta MRMR. 2 Los resultados de SG en las tiras reactivas se encuentran en el intervalo de colores comprendido entre el azul y el amarillo. Como el amarillo está formado por las luces roja y verde, se puede precisar el color resultante midiendo cualquiera de los canales disponibles. 67 SG azul.R azul.r azul.s verde.R verde.r verde.s azul.A azul.i azul.I verde.A blanco.g azul.h azul.g rojo.A rojo.s verde.h verde.g blanco.A azul.V verde.V verde.i verde.I blanco.V blanco.i blanco.I blanco.s blanco.h blanco.r blanco.R rojo.r rojo.h rojo.g rojo.V rojo.R rojo.i rojo.I azul.R azul.r azul.s verde.R verde.r verde.s azul.A azul.i azul.I verde.A blanco.g azul.h azul.g rojo.A rojo.s verde.h verde.g blanco.A azul.V verde.V verde.i verde.I blanco.V blanco.i blanco.I blanco.s blanco.h blanco.r blanco.R rojo.r rojo.h rojo.g rojo.V rojo.R rojo.i rojo.I Figura 30: SG: mapa de calor que muestra la correlación entre las variables del dataset. Se pueden distinguir varios grupos de distinto tamaño con una alta correlación interna. 68 SG - Selección 0.36 0.35 Error 0.34 0.33 0.32 SRFE RFE 0.31 MRMR 0.30 FCBF 0.29 3 6 9 12 15 18 21 24 27 30 33 36 Número de variables SG - Selección 0.36 0.35 Error 0.34 0.33 0.32 0.31 0.30 0.29 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Número de variables Figura 31: SG: nivel de error en función del número de variables seleccionadas. El panel superior muestra la figura completa mientras que el inferior muestra en detalle el comienzo de la figura. 69 Figura 32: SG: estabilidad de las soluciones. Para cada método se muestra la probabilidad de cada de variable de estar seleccionada entre las primeras tres. 70 Probabilidad de ser la mejor variable Probabilidad de ser la mejor variable 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 .I jo ro .R jo ro bl bl .r co an .r co an a bl bl R o. nc .R co an bl Variable .A co an .V jo ro .A jo ro a bl V o. nc Variable a bl A o. nc .R jo ro .V jo ro SG - Estabilidad MRMR bl .V co an SG - Estabilidad RFE v R .A jo ro . de er e. rd ve v V R . de er V A e. rd ve v . de er Probabilidad de ser la mejor variable Probabilidad de ser la mejor variable 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 .R jo ro .R jo ro R o. nc .V jo ro a bl a bl .i jo ro V o. nc A o. nc Variable .V jo ro .A jo ro a bl r o. nc h o. nc a bl Variable a bl R o. nc a bl R V o. nc e. rd ve SG - Estabilidad FCBF a bl SG - Estabilidad SRFE a bl V A o. nc e. rd ve A .A jo ro e. rd ve e. rd ve R .R ul az 1.0 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.8 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ __ __ _ _ __ __ _ _ _ _ __ _ _ _ __ __ _ _ _ __ __ _ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ __ _ __ _ _ _ __ _ _ __ _ __ _ _ __ __ __ _ _ __ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ _ SG: SVM−RFE c/MRMR SG: FCBF 0.8 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ _ __ _ _ __ _ __ __ _ _ __ _ __ _ __ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ __ _ _ _ _ _ __ _ __ __ _ _ _ _ _ _ _ _ __ _ __ _ _ _ _ ___ __ __ _ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ _ ___ _ _ _ _ _ _ __ _ _ __ _ __ _ _ _ _ __ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ __ _ _ _ _ _ _ _ _ __ _ __ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ rojo.R azul.s azul.r verde.R azul.R verde.s verde.r azul.V rojo.A blanco.A verde.A verde.h verde.g azul.I azul.i blanco.g azul.A rojo.s azul.h azul.g blanco.I blanco.i verde.I verde.i verde.V blanco.V blanco.s blanco.R rojo.r rojo.g rojo.h blanco.h blanco.r rojo.V rojo.I rojo.i _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.6 _ _ _ _ _ _ _ _ _ 0.4 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ __ 0.2 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.0 _ _ _ _ _ _ __ ___ _ _ __ _ _ _ __ _ _ _ __ _ _ _ __ _ __ __ _ _ __ __ _ _ __ __ _ _ _ _ _ __ _ _ _ __ __ _ _ _ __ __ _ _ _ ___ _ _ _ _ _ _ _ _ 1.0 rojo.R verde.V blanco.V azul.A azul.h verde.h verde.A rojo.s blanco.g verde.g blanco.A azul.V blanco.R rojo.h verde.r blanco.s azul.R blanco.r rojo.V rojo.r blanco.h blanco.i verde.i rojo.g rojo.A rojo.i azul.i rojo.I azul.g verde.R blanco.I verde.I azul.s azul.I verde.s azul.r _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ rojo.R blanco.r rojo.I blanco.R blanco.s rojo.i rojo.h rojo.g azul.A rojo.V rojo.r blanco.V verde.V azul.I azul.i blanco.I verde.I blanco.A blanco.i verde.i verde.h blanco.g azul.V blanco.h rojo.s azul.h azul.g rojo.A verde.g verde.A verde.R azul.R verde.s verde.r azul.r azul.s _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ rojo.I blanco.r rojo.g rojo.i blanco.s rojo.r rojo.R rojo.h azul.I blanco.R verde.I rojo.V azul.i blanco.I verde.i azul.A verde.V blanco.i blanco.g verde.g azul.g blanco.V verde.h blanco.A blanco.h rojo.s azul.V azul.h rojo.A verde.A verde.r azul.r verde.R azul.R verde.s azul.s 0.6 0.4 0.2 0.0 Posicionamiento relativo 0.8 1.0 0.0 0.2 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.6 _ _ _ _ _ _ _ 0.4 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ _ _ __ _ _ __ _ _ _ __ ___ __ _ _ __ _ _ _ _ __ _ _ _ _ _ _ _ 0.2 _ _ _ _ _ _ _ _ _ _ _ _ 0.0 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Posicionamiento relativo _ _ _ _ _ _ _ _ _ _ _ _ SG: SRFE Posicionamiento relativo 0.6 _ _ __ _ _ __ _ _ _ _ _ _ _ _ 0.4 Posicionamiento relativo 0.8 1.0 SG: RFE Figura 33: SG: distribución de posiciones que toma cada variable en el ranking realizado por cada uno de los métodos comparados. 71 URO El último dataset corresponde a determinaciones del urobilinógeno de la orina en tiras reactivas. Hay 465 muestras de 36 variables y seis clases. Como siempre en estos datos, las altas correlaciones entre variables se pueden ver en el heatmap de la Figura 34. Los resultados de este experimento muestran a SRFE como el único método capaz de generar un buen modelo a partir de los datos (Figura 35). Con una cantidad óptima de cuatro variables obtiene un error promedio del 10 %, mientras que los demás métodos necesitan de al menos quince variables para acercarse a ese valor. En cuestión de estabilidad, nuevamente es SRFE el método con mayor estabilidad en la selección. RFE y MRMR comienzan a confundir variables en el cuarto y tercer puesto, respectivamente (Figura 36). Tras el análisis de correlación, se observa la independencia de las variables elegidas por SRFE, mientras que el resto de los métodos elige todas variables del mismo cluster de tipo “verde”. 72 URO rojo.A rojo.s verde.R verde.s verde.r azul.R azul.s azul.r rojo.R blanco.R azul.A blanco.g rojo.i rojo.I rojo.h rojo.g rojo.r rojo.V blanco.V blanco.i blanco.I blanco.A blanco.s blanco.h blanco.r azul.i azul.I azul.h azul.g azul.V verde.g verde.h verde.A verde.V verde.i verde.I rojo.A rojo.s verde.R verde.s verde.r azul.R azul.s azul.r rojo.R blanco.R azul.A blanco.g rojo.i rojo.I rojo.h rojo.g rojo.r rojo.V blanco.V blanco.i blanco.I blanco.A blanco.s blanco.h blanco.r azul.i azul.I azul.h azul.g azul.V verde.g verde.h verde.A verde.V verde.i verde.I Figura 34: URO: mapa de calor que muestra la correlación entre las variables del dataset. Se pueden distinguir varios grupos de distinto tamaño con una alta correlación interna. 73 URO - Selección 0.18 SRFE Error 0.17 RFE 0.16 MRMR 0.15 FCBF 0.14 0.13 0.12 0.11 0.10 0.09 3 6 9 12 15 18 21 24 27 30 33 36 Número de variables URO - Selección 0.18 0.17 0.16 Error 0.15 0.14 0.13 0.12 0.11 0.10 0.09 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Número de variables Figura 35: URO: nivel de error en función del número de variables seleccionadas. El panel superior muestra la figura completa mientras que el inferior muestra en detalle el comienzo de la figura. 74 Figura 36: URO: estabilidad de las soluciones. Para cada método se muestra la probabilidad de cada de variable de estar seleccionada entre las primeras cuatro. 75 Probabilidad de estar entre las mejores cuatro variables Probabilidad de estar entre las mejores cuatro variables h I i h bl Variable e. rd ve .g co an bl .R co an e. rd ve i .g ul az bl .g co an .r jo ro URO - Estabilidad MRMR e. rd ve bl .R co an bl .V co an bl bl .V co an .A co an bl .A co an .R jo ro 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 Variable 0.0 e. rd ve e. rd ve 0.1 I g e. rd ve e. rd ve 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 g V e. rd ve v . de er URO - Estabilidad RFE 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 Probabilidad de estar entre las mejores cuatro variables Probabilidad de estar entre las mejores cuatro variables R V o. nc e. rd ve a bl V .s ul az e. rd ve i g o. nc e. rd ve a bl Variable .r jo ro .i jo ro e. rd ve .r jo ro V e. rd ve Variable e. rd ve A s .h jo ro URO - Estabilidad FCBF .V jo ro URO - Estabilidad SRFE A o. nc .r ul az a bl r .R ul az e. rd ve R o. nc .V jo ro a bl 1.0 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.2 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ _ _ _ __ _ _ __ __ _ _ _ _ _ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ URO: SVM−RFE c/MRMR URO: FCBF _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ _ _ _ __ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ ___ _ _ __ _ __ __ _ __ _ _ _ _ _ __ __ _ __ _ __ __ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ _ _ _ __ _ _ _ _ _ __ __ _ ___ _ _ _ _ __ _ _ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ _ _ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ _ __ _ _ _ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ __ _ __ _ _ _ _ _ _ _ _ _ _ verde.i verde.R azul.s azul.R rojo.r rojo.I rojo.i rojo.h rojo.g rojo.V rojo.A rojo.R rojo.s blanco.R azul.r azul.A blanco.g verde.r verde.s blanco.s blanco.I blanco.i blanco.A blanco.r azul.h blanco.V azul.g azul.I azul.V azul.i verde.g blanco.h verde.h verde.V verde.A verde.I _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.8 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.6 __ _ __ _ __ _ _ __ _ _ __ _ _ _ _ __ __ _ _ __ _ _ _ __ __ _ _ _ _ _ _ _ __ _ __ _ __ _ _ 0.4 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.2 _ _ _ _ _ _ _ _ _ _ 0.0 _ _ _ _ _ _ _ _ Posicionamiento relativo _ _ __ _ _ _ __ _ _ _ __ _ _ _ _ _ _ _ _ _ __ 1.0 verde.V blanco.V rojo.V blanco.g blanco.A verde.s azul.s azul.A blanco.R rojo.R rojo.s verde.h verde.A azul.V blanco.r blanco.s rojo.i verde.g blanco.h verde.i blanco.i rojo.r azul.h rojo.h verde.I azul.g azul.i verde.r verde.R rojo.g azul.r rojo.I azul.I azul.R blanco.I rojo.A _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ _ _ _ __ _ _ __ _ _ _ _ _ _ __ _ _ _ _ _ _ _ _ __ _ _ _ _ __ _ _ _ _ __ _ _ _ _ _ _ _ verde.g verde.V verde.I verde.i verde.h blanco.g azul.g verde.A rojo.r blanco.V blanco.r rojo.g azul.V azul.h rojo.h azul.I rojo.V azul.i verde.s rojo.I rojo.i blanco.I verde.r blanco.h blanco.i verde.R azul.r blanco.A blanco.R blanco.s azul.s rojo.R azul.R azul.A rojo.s rojo.A _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ verde.g verde.I verde.i verde.h azul.g blanco.g rojo.r verde.V rojo.g blanco.r verde.A azul.I azul.h rojo.I verde.r azul.i rojo.h azul.V blanco.V blanco.I azul.r rojo.i verde.s rojo.V blanco.h blanco.i azul.s verde.R blanco.s blanco.R blanco.A azul.R rojo.R azul.A rojo.s rojo.A 0.6 0.4 0.2 0.0 Posicionamiento relativo 0.8 1.0 0.0 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.8 _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.6 _ _ _ _ _ _ _ _ _ _ _ _ 0.4 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 0.2 _ _ _ _ _ _ _ _ _ _ _ _ _ _ ___ __ __ _ _ _ _ _ __ _ _ __ __ _ _ __ _ __ __ _ __ _ ___ __ _ ___ __ __ _ _ _ _ __ _ _ 0.0 _ _ _ _ _ _ _ _ _ _ _ URO: SRFE Posicionamiento relativo _ _ _ _ _ _ __ _ _ _ _ _ _ _ __ _ _ _ _ 0.6 _ _ _ _ _ 0.4 Posicionamiento relativo 0.8 1.0 URO: RFE Figura 37: URO: Distribución de posiciones que toma cada variable en el ranking realizado por cada uno de los métodos comparados. 76 5. Conclusiones y trabajos futuros En esta tesina se diseñó, desarrolló e implementó el método de selección de variables SRFE, el cual apunta a producir resultados estables y no redundantes. El método combina el ranking producido por el eficiente algoritmo RFE con una penalización que se apoya en la información mutua entre las variables. El nuevo método tiene en cuenta el problema de la estabilidad de las soluciones ante experimentos repetidos y trata de resolver el problema eligiendo, siempre que es posible, la misma variable entre un grupo de variables correlacionadas. Al incorporar una penalización a las variables correlacionadas se esperaba obtener soluciones con un error global mayor que otros métodos que apuntan directamente a buscar el mı́nimo error de modelado, como RFE. Sin embargo, la hipótesis inicial resultó refutada, ya que en todos los experimentos realizados se destacó SRFE al obtener siempre mejores resultados, tanto a nivel de error como de estabilidad. En primer término, se mostró con un dataset artificial cómo el nuevo método resuelve de forma eficiente y estable un problema con muchas variables correlacionadas y ruidosas, donde la clase depende de múltiples variables. Dicho problema artificial deja en evidencia las limitaciones de los métodos precedentes. En segunda instancia, se analizaron datasets reales de problemas de espectrometrı́a de masa y de colorimetrı́a. Los datasets tenı́an distintas relaciones muestra/variable, pero siempre incorporaban un alto número de variables redundantes. En la gran mayorı́a de los casos, el método SRFE mostró mayor precisión y estabilidad en relación con los métodos comparados. Esto reafirma lo previamente observado en el caso artificial. Se puede concluir que el método SRFE produce una selección de variables 77 independientes y a la vez más eficientes para el modelado, superando en particular la búsqueda exclusiva de la minimización de error del método RFE y a la penalización global que aplica MRMR. Se plantean como trabajos futuros el análisis para la selección del argumento de balance β, ası́ como de los argumentos de corte Tp y Tc que determinan el tamaño de los clusters de correlación. Es necesario también desarrollar una forma efectiva de graficar los grupos de variables que fueron penalizadas por el algoritmo para ayudarnos a entender sus relaciones. 78 Referencias [1] John Robert Anderson, Ryszard Spencer Michalski, Ryszard Stanislaw Michalski, Thomas Michael Mitchell, et al. Machine learning: An artificial intelligence approach, volume 2. Morgan Kaufmann, 1986. [2] Bernhard E Boser, Isabelle M Guyon, and Vladimir N Vapnik. A training algorithm for optimal margin classifiers. In Proceedings of the fifth annual workshop on Computational learning theory, pages 144–152. ACM, 1992. [3] Nello Cristianini and John Shawe-Taylor. An introduction to support vector machines and other kernel-based learning methods. Cambridge university press, 2000. [4] Isabelle Guyon and André Elisseeff. An introduction to variable and feature selection. The Journal of Machine Learning Research, 3:1157– 1182, 2003. [5] Isabelle Guyon, Jason Weston, Stephen Barnhill, and Vladimir Vapnik. Gene selection for cancer classification using support vector machines. Machine learning, 46(1-3):389–422, 2002. [6] Chih-Wei Hsu and Chih-Jen Lin. A comparison of methods for multiclass support vector machines. Neural Networks, IEEE Transactions on, 13(2):415–425, 2002. [7] Ron Kohavi and George H John. Wrappers for feature subset selection. Artificial intelligence, 97(1):273–324, 1997. 79 [8] Piyushkumar A Mundra and Jagath C Rajapakse. Svm-rfe with mrmr filter for gene selection. NanoBioscience, IEEE Transactions on, 9(1):31–37, 2010. [9] Hanchuan Peng, Fuhui Long, and Chris Ding. Feature selection based on mutual information criteria of max-dependency, max-relevance, and min-redundancy. Pattern Analysis and Machine Intelligence, IEEE Transactions on, 27(8):1226–1238, 2005. [10] John Ross Quinlan. C4.5: Programs for Machine Learning. Morgan Kaufmann, 1993. [11] Bernhard Schölkopf and Alexander J Smola. Learning with kernels: support vector machines, regularization, optimization, and beyond (adaptive computation and machine learning). 2001. [12] Lei Yu and Huan Liu. Efficient feature selection via analysis of relevance and redundancy. The Journal of Machine Learning Research, 5:1205– 1224, 2004. 80