Tareas de la minería de datos: clasificación
Transcripción
Tareas de la minería de datos: clasificación
Tareas de la minería de datos: clasificación CI-2352 Intr. a la minería de datos Prof. Braulio José Solano Rojas ECCI, UCR Tareas de la minería de datos: clasificación ● Clasificación (discriminación) ● ● ● Empareja o asocia datos a grupos predefinidos (aprendizaje supervisado). Encuentra modelos (funciones) que describen y distinguen clases o conceptos para futuras predicciones. Probablemente la tarea más familiar y más popular de la minería de datos. 2 de 33 Tareas de la minería de datos: clasificación ● ● Ejemplos de aplicación: Calificación de crédito (credit scoring), reconocimiento de imágenes y patrones, diagnóstico médico, detección de fallos en aplicaciones industriales, clasificar tendencias de mercados financieros, ... Métodos: Análisis discriminante, árboles de decisión, reglas de clasificación, redes neuronales. Tareas de la minería de datos: clasificación ● Ejemplo simple: ● En EE.UU. los maestros clasifican a los estudiantes en A, B, C, D o F según sus notas. Utilizando simplemente límites (60, 70, 80, 90), las siguientes clasificaciones son posibles: 90 <= nota 80 <= nota <= 90 70 <= nota <= 80 60 <= nota < 70 Nota < 60 A B C D F Clasificación contra predicción ● ● En alguna literatura de minería de datos se considera a la clasificación como el emparejamiento contra clases (etiquetas de valores), mientras que la predicción está asociada a valores continuos. Es decir, en el conjunto de entrenamiento la variable objetivo es una variable continua. Finalmente, clasificación y predicción vienen siendo lo mismo, aunque se pueden hacer la diferenciación según el tipo de variable. Clasificación: aprendizaje 6 de 33 Clasificación: pruebas 7 de 33 Preparación de los datos para clasificación y predicción ● Limpieza de los datos ● ● Análisis de relevancia ● ● Tratamiento del ruido y de valores faltantes. Algunos atributos en los datos pueden ser irrelevantes o redundantes. Eliminar dichos atributos mejora la eficiencia y la eficacia. Transformación de datos ● Se pueden hacer generalizaciones de los datos a conceptos de mayor nivel. También se pueden normalizar los datos. 8 de 33 Evaluación de métodos de clasificación ● Precisión en la predicción ● ● Eficiencia ● ● Habilidad para funcionar con ruido y ausencia de ciertos valores. Escalabilidad ● ● Costos computacionales. Robustez ● ● Capacidad de predecir correctamente. Habilidad para trabajar con grandes cantidades de datos. Interpretabilidad ● Entendimiento y comprensión que brinda. 9 de 33 Clasificación: definición formal ● Dada una base de datos D = {t1, t2, …, tn} de tuplas (elementos, registros) y un conjunto de clases C = {C1, …, Cm}, el problema de clasificación trata de definir un mapeo f : D → C donde cada ti se asigna a una clase. Una clase Cj contiene precisamente aquellas tuplas mapeadas a ella; esto es, Cj = { ti | f(ti) = Cj, 1<=i<=n y ti ϵ D }. 10 de 33 Clasificación: algoritmos ● Estadísticos ● ● Distancia ● ● ID3, C4.5, CART, ... Redes neuronales ● ● k vecinos más cercanos, ... Árboles de decisión ● ● Regresión simple, regresión múltiple, bayes, ... Retropropagación, ... Reglas ● Reglas de asociación, ... 11 de 33 Clasificación por inducción de árboles de decisión ● El aprendizaje por árboles de decisión es un método comúnmente utilizado en minería de datos. El objetivo es crear un modelo que prediga el valor de una variable objetivo basándose en varias variables de entrada. Se muestra un ejemplo en las dos filminas siguientes. Cada nodo interior corresponde a a una de las variables de entrada. Hay aristas hacia un hijo para cada uno de los posibles valores de dicha variable de entrada. Cada hoja representa un valor de la variable objetivo dados los valores de las variables entrada representadas por el camino de la raíz a la hoja. 12 de 33 Clasificación por inducción de árboles de decisión edad ingreso estudiante calificación_crédito clase:compra_computador <=30 alto no suficiente no <=30 alto no excelente no 31...40 alto no suficiente sí >40 medio no suficiente sí >40 bajo sí suficiente sí >40 bajo sí excelente no 31...40 bajo sí excelente sí <=30 medio no suficiente no <=30 bajo sí suficiente sí >40 medio sí suficiente sí <=30 medio sí excelente sí 31...40 medio no excelente sí 31...40 alto sí suficiente sí >40 medio no excelente no 13 de 33 Clasificación por inducción de árboles de decisión 14 de 33 Clasificación por inducción de árboles de decisión ● Un árbol puede ser “aprendido” separando el conjunto fuente en subconjuntos basados en una prueba de valor de atributo. Este proceso es repetido en cada subconjunto derivado de una manera recursiva llamada particionamiento recursivo. La recursión termina cuando el subconjunto en un nodo tiene para todos sus miembros el mismo valor de la variable objetivo o cuando separar ya no agrega valor a la predicción. 15 de 33 Clasificación por inducción de árboles de decisión ● Los datos vienen en registros de la forma: (x,Y) = (x1, x2, x3, ..., xk, Y) ● La variable dependiente Y es la variable objetivo que se está tratando de explicar, clasificar o generalizar. El vector x está compuesto de las variables de entrada The vector x is composed of the input variables x1, x2, x3, etc., que son usadas para la tarea de minería. 16 de 33 Clasificación por inducción de árboles de decisión 17 de 33 Clasificación por los k vecinos más cercanos (KNN) ● ● ● Esquema de clasificación común, basado en el uso de medidas de distancia. Es un tipo de “aprendizaje por analogía”. La técnica asume que el conjunto completo de entrenamiento incluye no sólo los datos sino también la clasificación deseada. Los datos de entrenamiento son entonces el modelo. 18 de 33 Clasificación por los k vecinos más cercanos (KNN) ● ● ● Cuando se va a clasificar un nuevo elemento (t) se determina su distancia contra todos los elementos en el conjunto de entrenamiento. Luego sólo se consideran los K elementos más cercanos al nuevo elemento (t). El nuevo elemento (t) es entonces clasificado en la clase mayoritaria de los vecinos cercanos. 19 de 33 Clasificación por los k vecinos más cercanos (KNN) ● De manera más formal: ● ● ● ● El conjunto de entrenamiento es descrito por atributos numéricos n-dimensionales. Cada individuo representa un punto en un espacio n-dimensional. Así, el conjunto de entrenamiento es almacenado en un espacio patrón n-dimensional. Cuando se clasifica un individuo nuevo se busca en el espacio patrón los k individuos más cercanos al nuevo individuo. 20 de 33 Clasificación por los k vecinos más cercanos (KNN) ● La “cercanía” es usualmente definida en términos de la distancia euclidiana, donde la distancia entre dos puntos, X=(x1, x2, …, xn) y Y=(y1, y2, …, yn) es √∑ n d ( X , Y )= i=1 ● ● 2 ( xi− yi ) El nuevo individuo es asignado a la clase más común o mayoritaria entre sus k vecinos más cercanos. Cuando k=1 se asigna la clase del elemento más cercano. 21 de 33 Clasificación por los k vecinos más cercanos (KNN): ejemplo 22 de 33 Clasificación por los k vecinos más cercanos (KNN): algoritmo 23 de 33 Clasificación por los k vecinos más cercanos (KNN) ● ● La técnica KNN es muy sensible a la escogencia de k. Una regla práctica es k menor o igual a la raíz del número de elementos de entrenamiento. Los clasificadores de vecinos más cercanos son aprendizaje basados en instancia o aprendizaje flojo (lazy learning). Tienen mayor eficiencia en el entrenamiento. Sin embargo, los costos computacionales pueden ser caros en la clasificación si los individuos de entrenamiento (el modelo) son muchos. 24 de 33 Regresión lineal simple 25 de 33 Regresión lineal simple 26 de 33 Regresión lineal simple 27 de 33 Regresión lineal simple 28 de 33 Regresión lineal simple 29 de 33 Clasificación bayesiana ingenua ● ● Sea X un conjunto de datos cuya clase es desconocida. Sea H alguna hipótesis tal que el conjunto de datos pertenece a una clase C. Se desea entonces determinar P(H|X), la probabilidad de que la hipótesis H sea válida dados los datos observados en X. P(H|X) es la probabilidad posterior, o la probabilidad a posteriori, de H condicionada en X. 30 de 33 Clasificación bayesiana ingenua ● ● El teorema de Bayes es útil en el hecho de que provee una manera de calcular la probabilidad posterior, P(H|X), de P(H), P(X) y P(X|H). El teorema de Bayes adaptado a la clasificación es: P ( X∣H ) P ( H ) P ( H∣X )= P(X ) 31 de 33 Clasificación bayesiana ingenua: ejemplo edad ingreso estudiante calificación_crédito clase:compra_computador <=30 alto no suficiente no <=30 alto no excelente no 31...40 alto no suficiente sí >40 medio no suficiente sí >40 bajo sí suficiente sí >40 bajo sí excelente no 31...40 bajo sí excelente sí <=30 medio no suficiente no <=30 bajo sí suficiente sí 31...40 medio sí suficiente sí <=30 medio sí excelente sí >40 medio no excelente sí >40 alto sí suficiente sí 31...40 medio no excelente no 32 de 33 ¡Gracias por su atención! ¿Preguntas?