Reconocimiento de Patrones Práctico 3 Entrega: martes 18 de octubre Árboles de decisión Ejercicio 1 Durante la construcción de un árbol de decisión en un problema de dos clases (w1 y w2), un nodo recibe los siguientes patrones de seis dimensiones binarias: 11 10 10 10 01 11 10 01 w1 010 100 000 110 010 100 010 100 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 1 w2 1110 1010 1101 1000 0100 1010 1100 1010 0 0 0 0 0 0 0 1 1. ¾Qué característica debería usarse para hacer la próxima ramicación considerando impureza basada en entropía? 2. Considere el uso de un test de hipótesis para detener el crecimiento. ¾Cuál es la hipótesis nula en este caso? 3. Calcule χ2 para la decisión de la parte 1. ¾Diere signicativamente de la hipótesis nula para un nivel de conanza de 0.01? ¾Debería detenerse el crecimiento? 4. Repita la parte 3 para un nivel de conanza de 0.05. Ejercicio 2 Considere los siguiente patrones de cuatro características binarias: 1 0 1 0 w1 10 00 01 01 0 0 0 1 1 1 1 0 w2 10 11 11 11 0 1 0 1 Nota: observe que el primer patrón de cada categoría es igual. 1. Construya manualmente un árbol de clasicación binario para este conjunto de datos usando entropía. Entrene de forma de obtener la mínima impureza posible. 2. Para elegir el árbol de la parte anterior, ¾qué información debió introducir? 1 Selección de características Ejercicio 3 En este ejercicio estudiaremos el impacto que tiene el conjunto de características en la clasicación y aplicaremos diferentes técnicas de selección de características provistas por Weka. El conjunto de datos son 2400 electrocardiogramas que se encuentran disponibles en la página del curso y las características son directamente las muestras de la forma de onda. 1. Estime el desempeño del clasicador NaiveBayes y C4.5 (con los parámetros por defecto), usando validación cruzada con 10 particiones (10-fold CV). Usaremos estos dos clasicadores a lo largo de todo el ejercicio. Luego utilice el ltro Resample1 para sortear una muestra con el 10 % de los datos originales y vuelva a hacer las estimaciones de desempeño. Observe que el número de patrones n y la cantidad de características d no cumplen con el criterio de buena práctica n/d > 10. Indique las razones que considera explican los resultados obtenidos2 . 2. Selección individual de características. ) Utilice Análisis de Componentes Principales (PCA) como técnica de selección de características. Varíe el porcentaje de varianza acumulada y registre el número de características que se obtienen. Estime el desempeño de ambos clasicadores luego de aplicar PCA sobre los datos (mediante 10-fold CV). Para ello puede utilizar el clasicador compuesto AttributeSelectedClassifier3 que aplica una técnica de selección de características antes de entrenar el clasicador. Intente mejorar el desempeño original de los clasicadores variando los parámetros de la selección. 4 b ) Aplique el criterio de ganancia de información InfoGainAttributeEval y razón de ganan5 cia de información GainRatioAttributeEval para ordenar las características. Compare el ordenamiento y explique en qué dieren ambos criterios de evaluación. Varíe el la cantidad de características a conservar y estime el desempeño de los clasicadores. c ) ¾Qué desventaja puede tener la selección individual de características ? ¾Cómo se compara PCA con los métodos basados en ganancia de información en este caso? ¾Indique a qué pueden deberse estas diferencias para cada clasicador? d ) Opcional: Explore la herramienta Experimenter de Weka para facilitar las pruebas. Se recomienda consultar el tutorial incluído en la distribución del programa. a 3. Selección de subgrupos de características. ) Considere el criterio de evaluación de subgrupos CfsSubsetEval6 basado en correlación. Explique cuál es la heurística usada para la evaluación. Aplique este criterio junto a la búsqueda BestFirst7 para seleccionar un conjunto reducido de características. ¾Qué ventajas tiene BestFirst sobre la búsqueda secuencial clásica? Estime el desempeño de los clasicadores para este conjunto de características. b ) Realice la selección de características utilizando el enfoque wrapper. Utilice el criterio de evaluación WrapperSubsetEval8 y seleccione un conjunto de características para cada clasicador. Estime el desempeño de cada clasicador con esta técnica de selección. Nota: el tiempo computacional requerido para la selección puede llegar a ser muy alto. ¾Qué ventajas y desventajas tiene este enfoque? a 1 2 weka.filters.supervised.instance.Resample Puede resultar de utilidad consultar la sección 7.1 del libro Data Mining: Practical machine learning tools and techniques, Ian H. Witten and Eibe Frank (2005). 3 weka.classifiers.meta.AttributeSelectedClassifier weka.attributeSelection.InfoGainAttributeEval 5 weka.attributeSelection.GainRatioAttributeEval 6 weka.attributeSelection.CfsSubsetEval 7 weka.attributeSelection.BestFirst 8 weka.attributeSelection.WrapperSubsetEval 4 2 Extracción de características Ejercicio 4 En este ejercicio veremos el efecto que tiene el cambio de base dado por PCA y LDA sobre un conjunto de datos, en el desempeño de un árbol de decisión. 1. Genere datos de entrenamiento y prueba para un problema de dos clases y dos características. Los datos tendrán distribución gaussiana con medias [2 5]' y [3 4]', y matriz de covarianza [1.0 0.8; 0.8 1.0]. Con estos datos entrene un árbol de decisión 9 y calcule su desempeño. Repita lo anterior luego de aplicar PCA a los datos. Compare el desempeño y el tamaño de los árboles obtenidos (se sugiere estimar el desempeño realizando varias ejecuciones para atenuar el efecto dado por el sorteo particular de datos). ¾A qué se deben las diferencias? 2. Genere un conjuntos de datos de entrenamiento y prueba para un problema de dos clases y dos características. Los datos tendrán distribución gaussiana con medias [2 5]' y [6 4]', y matrices de covarianza [1.0 0.8; 0.8 1.0] y [1.0 0.2; 0.2 1.0]. ) Represente grácamente la distribución de datos de entrenamiento original junto a las direcciones principales obtenidas mediante PCA y LDA. b ) Con los datos originales construya un árbol de decisión y estime su desempeño. Repita lo anterior considerando PCA y LDA como mecanismos de extracción de características. Compare el desempeño y el tamaño de los árboles obtenidos. Comente los resultados. a Ejercicio 5 El análisis de componente principales puede usarse para reducir la dimensionalidad del problema construyendo una transformación lineal sólo con los vectores propios que concentran la mayor parte de la varianza de los datos. En este ejercicio se estudia la reducción de dimensionalidad usando PCA y su efecto sobre la regla de clasicación de vecino más cercano. Los datos a utilizar provienen de la base de datos USPS de dígitos escritos a mano y consisten en imágenes de 28 x 28 píxeles en escala de grises (0-255). Se encuentran disponibles en la página del curso. Se pide: 1. Utilice un clasicador por regla de vecino más cercano sobre los datos originales calculando el error de clasicación y el costo computacional. 2. Aplique PCA y repita la parte anterior con los nuevos datos. Graque la varianza acumulada por cada componente en orden decreciente. ¾Logra de esta forma establecer un número óptimo de vectores propios a usar en la reducción de características? Seleccione la cantidad de vectores propios a usar en la transformación en función del desempeño y el costo computacional. Comente las razones que motivaron su decisión. 9 Utilice su implementación preferida explicando brevemente sus características 3