Mtodos de clasificacin Clasificacin Fernando Berzal Intelligent Databases
Métodos de clasificación Clasificación © Fernando Berzal Intelligent Databases and Information Systems research group Department of Computer Science and Artificial Intelligence E. T. S Ingeniería Informática – Universidad de Granada (Spain)
Analizador Numérico Ejecutamos nc. bat: Pinchamos sobre el botón Inicio y buscamos el fichero de configuración necesario para acceder a nuestros datos (p. ej. Iris. cfg). 1
Analizador Numérico Ahora podemos utilizar distintas técnicas de aprendizaje sobre nuestro conjunto de datos: 2
Analizador Numérico Empezamos viendo algunas características del conjunto de datos (Datos > Estadísticas…): 3
Analizador Numérico También podemos ver gráficamente la distribución de las muestras (Datos > Representación 2 D…): 4
Analizador Numérico Cuando nuestro conjunto de patrones viene dado por un conjunto de imágenes (como es el caso de Galaxy o Igaliko) podemos acceder a la representación visual de cada “dimensión” (Datos > Estadísticas… > Ver imagen): 5
Métodos de clasificación n Objetivo Predecir el valor de un atributo particular (clase). Aprendizaje supervisado Existen clases predefinidas Los resultados obtenidos dependerán de: Ø El método de clasificación seleccionado. Ø El conjunto de datos disponible para entrenar el clasificador (lo bueno que sea como muestra representativa de los datos reales). 6
Métodos de clasificación 7
Algoritmos de clasificación Métodos paramétricos n n Clasificador lineal de Mahalanobis Clasificador cuadrático Método de los paralelepípedos Métodos no paramétricos n n n Vecino más cercano (k-NN) LVQ (Linear Vector Quantization) DSM (Decision Surface Mapping) 8
Métodos paramétricos El aprendizaje supervisado requiere un conjunto de entrenamiento a partir del cual construiremos un modelo de clasificación. Dependiendo de si se supone o no un conocimiento a priori de la estructura estadística de las clases, la forma de construir el clasificador será radicalmente distinta. Aproximación paramétrica Supongamos que podemos modelar las clases de nuestro problema mediante funciones de densidad de probabilidad conocidas… 9
Métodos paramétricos 10
Métodos paramétricos Función de densidad normal 11
Métodos paramétricos Función de densidad normal 12
Métodos paramétricos Función de densidad normal multidimensional i n Vector medio de la clase i Matriz de covarianza 13
Métodos paramétricos Función de densidad normal multidimensional Densidad de probabilidad y diagrama de dispersión 14
Métodos paramétricos Clasificador de mínimo error: Clasificador de Bayes 15
Métodos paramétricos Funciones discriminantes para la función de densidad de probabilidad normal (3 casos) : i = 2 I Clasificador lineal euclídeo i = Clasificador de Mahalanobis i Clasificador cuadrático Variables estadísticamente independientes. Matrices de covarianza iguales para todas las clases. Variables correladas. Matrices de covarianza iguales para todas las clases. Matrices de covarianza arbitrarias (independientes para las distintas clases) 16
Clasificador lineal Característica principal: Las fronteras de decisión se expresan como una función lineal. 17
Clasificador lineal 18
Clasificador lineal Clasificador de mínima distancia euclídea Fronteras de decisión 19
Clasificador lineal Clasificador de mínima distancia euclídea Uso del clasificador 20
Clasificador lineal Clasificador de mínima distancia euclídea i = i I Basta con calcular la distancia euclídea de cada patrón a cada uno de los centros de las J clases y asignarle la etiqueta de la clase más cercana. 21
Clasificador lineal 22
Clasificador lineal DISTANCIA EUCLÍDEA NORMALIZADA: Se elige la clase j que minimiza el valor de la función gj Al normalizar las distancias, se evita que aquellos atributos cuyos rangos sean más amplios influyan más que los demás a la hora de clasificar. 23
Método de los paralelepípedos 24
Método de los paralelepípedos El método de los paralelepípedos elige la clase j que minimiza el valor de la función gj Sólo requiere calcular la media de cada atributo para cada clase y la desviación típica de cada atributo (independientemente de la clase). 25
Clasificador lineal 26
Clasificador lineal Variables correladas 27
Clasificador lineal Clasificador de mínima distancia de Mahalanobis Distancia de Mahalanobis vs. Distancia euclídea 28
Clasificador lineal Clasificador de mínima distancia de Mahalanobis i = Basta con calcular la distancia de Mahalanobis al cuadrado de cada patrón a cada uno de los centros de las J clases y asignarle la etiqueta de la clase más cercana. 29
Clasificador cuadrático 30
Clasificador cuadrático Característica principal: Las fronteras de decisión se expresan como una función cuadrática (círculos, elipses, parábolas, hipérbolas). 31
Clasificador cuadrático 32
Métodos paramétricos ¿Qué clasificador es más conveniente? Desde el punto de vista formal, el clasificador cuadrático ( i arbitrario) es el más general. Sin embargo… Un clasificador cuadrático requiere un número de patrones mucho mayor que un clasificador lineal para estimar adecuadamente las densidades de probabilidad: Los estimadores no son fiables cuando tenemos pocos datos y/o la dimensionalidad de los datos es elevada. 33
Métodos paramétricos Resultados experimentales 34
Métodos paramétricos Diseño de clasificadores paramétricos: Fenómeno de Hughes 35
Métodos paramétricos Diseño de clasificadores paramétricos: Clase de rechazo 36
Métodos paramétricos Diseño de clasificadores paramétricos: Observaciones finales También habría que comprobar que las clases de nuestro problema sigan una distribución normal. Si no es así (p. ej. distribuciones bimodales), habrá que recurrir a otro tipo de técnicas… 37
Métodos no paramétricos El aprendizaje supervisado requiere un conjunto de entrenamiento a partir del cual construiremos un modelo de clasificación. Dependiendo de si se supone o no un conocimiento a priori de la estructura estadística de las clases, la forma de construir el clasificador será radicalmente distinta. Aproximación no paramétrica Supongamos que NO podemos modelar las clases de nuestro problema mediante funciones de densidad de probabilidad conocidas… 38
k-NN 39
k-NN k vecinos más cercanos K demasiado pequeño Sensible a ruido K demasiado grande El vecindario puede incluir puntos de otras clases 40
k-NN 1 -NN Regla de clasificación del vecino más cercano 41
k-NN No tiene sentido probar con valores pares de k porque el error asociado a la regla k-NN es el mismo para 2 N y 2 N-1 42
k-NN Interpretación de los resultados Conforme aumentamos el valor de k, se reduce el error si disponemos de un número suficiente de muestras de entrenamiento (p. ej. Igaliko), siempre que éstas estén correctamente etiquetadas. Por otro lado, cuantas más muestras tengamos, más tiempo se tardará en realizar la clasificación. n n Los métodos de edición aparecen para solucionar el problema de los patrones mal etiquetados, que intentan eliminar. Los métodos de condensado procurar reducir el número de muestras sin afectar a la calidad del clasificador para reducir la complejidad computacional del problema. 43
k-NN Métodos de edición 44
k-NN Métodos de condensado Conjunto de datos original Conjunto condensado Condensado de Hart (sobre un conjunto previamente multieditado) 45
k-NN Métodos de edición y condensado 46
k-NN Métodos de edición y condensado 47
LVQ 49
LVQ Linear Vector Quantization Basado en los mapas autoorganizativos de Kohonen [SOM: Self-Organizing Maps]: Maps n n Número fijo y relativamente bajo de prototipos para aproximar las funciones de densidad de probabilidad de las distintas clases. Dada una secuencia de observaciones vectoriales (patrones), se selecciona un conjunto inicial de vectores de referencia (codebooks o prototipos). Iterativamente, se selecciona una observación X y se actualiza el conjunto de prototipos de forma que case mejor con X. Una vez finalizado el proceso de construcción del conjunto de prototipos (codebooks), las observaciones se clasificarán utilizando la regla 1 -NN (buscando el vecino más cercano en el conjunto de vectores de 50 referencia).
LVQ Linear Vector Quantization LVQ aplicado a dos clases solapadas que siguen una distribución normal: 51
LVQ LVQ-1 En cada paso de aprendizaje, LVQ-1 modifica únicamente el prototipo más cercano al patrón. Si la clase del prototipo coincide con la de la muestra, el prototipo se acerca a la muestra. En el caso contrario, el prototipo se aleja de ésta (por lo cual este algoritmo tiende a reducir la densidad de prototipos alrededor de las fronteras de decisión). La dirección de la corrección coincide con la línea recta que une el patrón y su prototipo más cercano. 52
LVQ Variante OLVQ-1 El método OLVQ-1 es idéntico al LVQ-1 salvo que cada prototipo (codebook) mantiene su razón de aprendizaje propia, que determina la magnitud del desplazamiento del prototipo a lo largo de la línea recta que lo une con el patrón del conjunto de entrenamiento. 53
LVQ Resultados experimentales con LVQ-1 54
DSM 55
DSM Decision Surface Mapping Variante de los métodos de aprendizaje adaptivo que consiste en aproximar directamente las fronteras de decisión (para lo que requiere un conjunto editado de datos). Si una muestra es clasificada correctamente, no se realiza ninguna acción. Cuando se produce un error de clasificación durante la fase de aprendizaje, la corrección se aplica a dos prototipos simultáneamente: n Se castiga al prototipo más cercano (que provoca el error de clasificación). n Se premia al prototipo más cercano de la misma clase que el patrón considerado. 56
DSM Decision Surface Mapping Variante de los métodos de aprendizaje adaptivo que consiste en aproximar directamente las fronteras de decisión (para lo que requiere un conjunto editado de datos). Observaciones Lo más probable es que los errores de clasificación se produzcan cerca de las fronteras de decisión. DSM actúa sobre parejas de prototipos situados a ambos lados de las fronteras de decisión y no permite tratar problemas con solapamiento entre clases. 57
Evaluación Métricas Cómo evaluar la “calidad” de un modelo de clasificación Métodos Cómo estimar, de forma fiable, la calidad de un modelo. Comparación Cómo comparar el rendimiento relativo de dos modelos de clasificación alternativos 59
Evaluación n n n La evaluación de un algoritmo de clasificación se puede realizar atendiendo a distintos aspectos del modelo creado o del proceso utilizado para crearlo: Precisión (porcentaje de casos clasificados correctamente). Eficiencia (tiempo necesario para construir/usar el clasificador). Robustez (frente a ruido y valores nulos) Escalabilidad (utilidad en grandes bases de datos) Interpretabilidad (el clasificador, ¿es sólo una caja negra? ) Complejidad (del modelo de clasificación) Navaja de Occam 60
Evaluación Estimación de la precisión del modelo n n n Antes de construir el modelo de clasificación, se divide el conjunto de datos disponible en un conjunto de entrenamiento (para construir el modelo) y un conjunto de prueba (para evaluar el modelo). Una vez construido el modelo, se usa para clasificar los datos del conjunto de prueba: Comparando los casos etiquetados del conjunto de prueba con el resultado de aplicar el modelo, se obtiene un porcentaje de clasificación. Si la precisión del clasificador es aceptable, podremos utilizar el modelo para clasificar nuevos casos (de los 61 que desconocemos su clase).
Evaluación Estimación de la precisión del modelo n n n Cuanto mayor sea su complejidad, los modelos de clasificación tienden a ajustarse más al conjunto de entrenamiento utilizado en su construcción (sobreaprendizaje). El conjunto de prueba debe ser independiente del conjunto de entrenamiento. El error de clasificación en el conjunto de entrenamiento NO es un buen estimador de la precisión del clasificador. 62
Sobreaprendizaje debido a la complejidad del clasificador 63
Sobreaprendizaje debido a la presencia de ruido en los datos 64
Sobreaprendizaje debido a la escasez de muestras 65
Evaluación: Métricas Matriz de confusión (confusion matrix) Predicción Clase real CP CN CP TP: True positive FN: False negative CN FP: False positive TN: True negative Precisión del clasificador accuracy = (TP+TN)/(TP+TN+FP+FN) 66
Evaluación: Métricas Limitaciones de la precisión (“accuracy”) : Supongamos un problema con 2 clases: n 9990 ejemplos de la clase 1 n 10 ejemplos de la clase 2 Si el modelo de clasificación siempre dice que los ejemplos son de la clase 1, su precisión es 9990/10000 = 99. 9% Totalmente engañosa, ya que nunca detectaremos ningún ejemplo de la clase 2. 67
Evaluación: Métricas Alternativa: Matriz de costes C(i|j) Predicción Clase real CP CN CP C(P|P) C(N|P) CP C(P|N) C(N|N) El coste de clasificación será proporcional a la precisión del clasificador sólo si i, j: i j C(i|j) = C(j|i) C(i|i) = C(j|j) 68
Evaluación: Métricas Medidas “cost-sensitive” Predicción Clase real CP CN CP TP: True positive FN: False negative CN FP: False positive TN: True negative precision = TP/(TP+FP) True positive recognition rate recall = sensitivity = TP/P = TP/(TP+FN) True negative recognition rate specificity = TN/N = TN/(TN+FP) 69
Evaluación: Métricas Medidas “cost-sensitive” Predicción Clase real CP CN CP TP: True positive FN: False negative CN FP: False positive TN: True negative F-measure F = 2*precision*recall / (precision+recall) F= 2 TP / (2 TP+FP+FN) 70
Evaluación: Métricas Predicción CP CN CP TP FN CN FP TN Real Predicción Accuracy Recall Predicción CP CN CP TP FN CN FP TN Precision Real Predicción F-measure 71
Evaluación: Métodos Para evaluar la precisión de un modelo de clasificación nunca debemos utilizar el conjunto de entrenamiento (lo que nos daría el “error de resustitución” del clasificador), sino un conjunto de prueba independiente: Por ejemplo, podríamos reservar 2/3 de los ejemplos disponibles para construir el clasificador y el 1/3 restante lo utilizaríamos de conjunto de prueba para estimar la precisión del clasificador. 72
Evaluación: Métodos Validación cruzada (k-CV: k-fold Cross-Validation) n n n Se divide aleatoriamente el conjunto de datos en k subconjuntos de intersección vacía (más o menos del mismo tamaño). Típicamente, k=10. En la iteración i, se usa el subconjunto i como conjunto de prueba y los k-1 restantes como conjunto de entrenamiento. Como medida de evaluación del método de clasificación se toma la media aritmética de las k iteraciones realizadas. 73
Evaluación: Métodos Validación cruzada Variantes de la validación cruzada n n “Leave one out”: Se realiza una validación cruzada con k particiones del conjunto de datos, donde k coincide con el número de ejemplos disponibles. Validación cruzada estratificada: Las particiones se realizan intentando mantener en todas ellas la mismo proporción de clases que aparece en el conjunto de datos completo. 74
Evaluación: Métodos Bootstrapping Muestreo uniforme con reemplazo de los ejemplos disponibles (esto es, una vez que se escoge un ejemplo, se vuelve a dejar en el conjunto de entrenamiento y puede que se vuelva a escoger). n 0. 632 bootstrap: Dado un conjunto de d datos, se toman d muestras. Los datos que no se escojan formarán parte del conjunto de prueba. En torno al 63. 2% de las muestras estarán en el “bootstrap” (el conjunto de entrenamiento) y el 36. 8% caerá en el conjunto de prueba ya que (1 -1/d)d e-1 =0. 368 Si repetimos el proceso k veces, tendremos: 75
Créditos n Francisco J. Cortijo Bon: Apuntes de Reconocimiento de Formas, Universidad de Granada, 1999 n Jiawei Han: “Data Mining: Concepts and Techniques”, capítulo 7, 2006 n Pang-Ning Tan (Michigan State University), Michael Steinbach & Vipin Kumar (University of Minnesota): “Introduction to Data Mining”, capítulos 8 y 9, 2006 76
- Slides: 75