590 likes | 722 Views
Preprocesamiento de Datos. Francisco Herrera Grupo de Investigación SCI 2 S Dpto. Ciencias de la Computación e I.A. Universidad de Granada. José Riquelme, Roberto Ruiz Grupo de Investigación MLG Dpto. Lenguajes y Sistemas Informáticos Universidad de Sevilla. Reunión Red Nacional DM & ML
E N D
Preprocesamiento de Datos Francisco Herrera Grupo de Investigación SCI2S Dpto. Ciencias de la Computación e I.A. Universidad de Granada José Riquelme, Roberto Ruiz Grupo de Investigación MLG Dpto. Lenguajes y Sistemas Informáticos Universidad de Sevilla Reunión Red Nacional DM & ML Madrid, 6-7 Mayo, 2004
Preprocesamiento de Datos Sumario • Introducción • Importancia de la Preparación de Datos • ¿Qué incluye la Preparación de Datos? • Reducción de Datos • Selección de Instancias • Selección de Características
Preprocesamiento de Datos Introducción D. Pyle, 1999, pp. 90: “The fundamental purpose of data preparation is to manipulate and transforrm raw data so that the information content enfolded in the data set can be exposed, or made more easily accesible.” Dorian Pyle Data Preparation for Data Mining Morgan Kaufmann Publishers, 1999
Preprocesamiento de Datos Introducción Post Data Mining Evaluation Interpretation Exploitation Problem Specification Resourcing Data Mining Data Preparation Data Collecting Data cleaning Data Transformation Data Reduction
Preprocesamiento de Datos Importancia de la Preparación de Datos 1. Los datos reales pueden ser impuros, pueden conducir a la extracción de patrones/reglas poco útiles. Esto se puede deber a: Datos Incompletos: falta de valores de atributos, … Datos con Ruido Datos inconsistentes (incluyendo discrepancias)
Preprocesamiento de Datos Importancia de la Preparación de Datos • 2. La preparación de datos puede generar un conjunto de datos más pequeño que el original, lo cual puede mejorar la eficiencia del proceso de Minería de Datos. • Esta actuación incluye: • Selección relevante de datos: eliminando registros duplicados, eliminando anomalías, … • Reduccion de Datos: Selección de características, muestreo o selección de instancias, discretización.
Preprocesamiento de Datos Importancia de la Preparación de Datos • 3. La preparación de datos genera “datos de calidad”, los cuales pueden conducir a patrones/reglas de calidad. • Por ejemplo, se puede: • Recuperar información incompleta. • Eliminar outliers • Resolver conflictos, …
Preprocesamiento de Datos ¿Qué incluye la Preparación de Datos? “El Preprocesamiento de Datos” / “La Preparación de Datos” engloba a todas aquellas técnicas de análisis de datos que permite mejorar la calidad de un conjunto de datos de modo que las técnicas de extracción de conocimiento/minería de datos puedan obtener mayor y mejor información (mejor porcentaje de clasificación, reglas con más completitud, etc.) Bibliografía: S. Zhang, C. Zhang, Q. Yang. Data preparation for data mining. Applied Artificial Intelligence 17:5-6, 375-381, 2003. Special Issue Data Cleaning and Preprocessing: 13 artículos
Preprocesamiento de Datos ¿Qué incluye la Preparación de Datos? • Es difícil dar una lista exacta de tareas o tópicos. Diferentes autores dan diferentes tareas y clasificaciónes. • Se pueden incluir las siguientes tareas o tópicos: • Data collecting and integration • Data cleaning • Data transformation • Data reduction (Feature Selection, Instance Selection, Discretization)
Preprocesamiento de Datos ¿Qué incluye la Preparación de Datos? • Data collecting and integration • Obtiene los datos de diferentes fuentes de información • Resuelve problemas de representación y codificación • Integra los datos desde diferentes tablas para crear información homogénea, ... Bibliografía específica para cada aplicación. Ejemplo en el ámbito de la Bioinformática Bibliografía: V. Detours, J. E. Dumont, H. Bersini and C. Maenhaut. Integration and cross-validation of high-throughout gene expression data: comparing heterogeneous data sets, FEBS Letters 546:1, 2003, 98-102.
Preprocesamiento de Datos ¿Qué incluye la Preparación de Datos? • Data cleaning • Resuelve conflictos entre datos • Elimina outliers • Chequea y resuelve problemas de ruido, valores perdidos, … Bibliografía: W. Kim, B. Choi, E-K. Hong, S-K. Kim. A Taxonomy of Dirty Data. Data Mining and Knowledge Discovery 7, 81-99, 2003.
Preprocesamiento de Datos ¿Qué incluye la Preparación de Datos? • Data transformation • Los datos son transformados o consolidados de forma apropiada para la extracción de información. • Diferentes vías: • Sumarización de datos • Operaciones de agregación, etc. Bibliografía: T. Y. Lin. Attribute Transformation for Data Mining I: Theoretical Explorations. International Journal of Intelligent Systems 17, 213-222, 2002.
Preprocesamiento de Datos ¿Qué incluye la Preparación de Datos? • Data reduction • Selecciona datos relevantes para la tarea de la minería de datos/extracción de información. • Diferentes vías para la Reducción de Datos: • Selección de Características • Selección de Instancias • Discretización
Preprocesamiento de Datos Reducción de Datos Reducción de Datos Selección de Características Discretización Selección de Instancias Apretujamiento de Instancias Data Squashing
Preprocesamiento de Datos Reducción de Datos Reducción de Datos Selección de Características Discretización Selección de Instancias Apretujamiento de Instancias Data Squashing Bibliografía: H. Liu, H. Motoda. Feature Selection for Knowledge Discovery and Data Mining. Kluwer Academic, 1998. H. Liu, H. Motoda (Eds.) Feature Extraction, Construction, and Selection: A Data Mining Perspective, Kluwer Ac., 1998.
Preprocesamiento de Datos Reducción de Datos Reducción de Datos Selección de Características Discretización Selección de Instancias Apretujamiento de Instancias Data Squashing Bibliografía: H. Liu, F. Hussain, C.L. Tan, M. Dash. Discretization: An Enabling Technique. Data mining and Knowledge Discovery 6, 393-423, 2002.
Preprocesamiento de Datos Reducción de Datos Reducción de Datos Selección de Características Discretización Selección de Instancias Apretujamiento de Instancias Data Squashing Bibliografía: A. Owen, Data Squashing by Empirical Likelihood. Data Mining and Knowledge Discovery 7, 101-113, 2003.
Preprocesamiento de Datos Reducción de Datos Reducción de Datos Selección de Características Discretización Selección de Instancias Apretujamiento de Instancias Data Squashing Bibliografía: T. Reinartz. A Unifying View on Instance Selection. Data Mining and Knowledge Discovery 6, 191-210, 2002.
Selección de Instancias Sampling Boosting Aprendizaje Activo Selección de Prototipos ó Aprendizaje basado en Instancias Preprocesamiento de Datos Selección de Instancias
Selección de Prototipos Sampling Selección Basada en Reglas NN Selección Basada en Eliminación Ordenada Muestreo Aleatorio Algoritmos Evolutivos Preprocesamiento de Datos Selección de Instancias
Estrategia de Selección de Prototipos Preprocesamiento de Datos Selección de Instancias
Estrategia de Selección de Conjuntos de Entrenamiento Data Mining Algorithm Preprocesamiento de Datos Selección de Instancias
.Medium size data sets Preprocesamiento de Datos Selección de Instancias J.R. Cano, F. Herrera, M. Lozano.Using Evolutionary Algorithms as Instance Selection for Data Reduction in KDD: An Experimental Study. IEEE Trans. on Evolutionary Computation 7:6, 561-575, 2003. Algunos Resultados
%Reducción %Ac. test 1-NN (%Ac. 1-NN+%Rd.)/2 CHC PBIL CHC Ib2 Ib3 Ennsr Drop1 CHC Drop3 Cnn Ennrs Rmhc Drop3 Cnn Drop2 Rnn Rmhc Cnn Rmhc Drop2 Drop1 Icf Ib2 Ib3 Drop2 Drop3 Ib2 Ennrs Rnn PBIL Ib3 Drop1 Icf PBIL Icf Rnn Preprocesamiento de Datos Selección de Instancias Classification con reduction rate > 70%. Selección de Prototipos
%Reduction %Ac. test C4.5 (%Ac. C4.5+%Rd.)/2 CHC PBIL CHC Ib2 Rmhc Rmhc Drop1 CHC Ennrs Cnn Ib3 Drop1 Drop3 Ennrs Drop3 Rnn Drop2 Icf Rmhc Icf Cnn Icf Drop1 Ib3 Drop2 Drop3 PBIL Ennrs Cnn Drop2 Ib3 Rnn Rnn PBIL Ib2 Ib2 Preprocesamiento de Datos Selección de Instancias Classification con reduction rate > 70%. Selección de Conjuntos de Entrenamiento
Preprocesamiento de Datos Selección de Instancias El orden de los algoritmos es superior a O(n2) y suele estar en orden O(n3) . ¿Cómo realizar la selección de instancias con grandes bases de datos? Combinamos una estrategia de estratificación con los algoritmos de selección de instancias.
Estrategia de Estratificación Preprocesamiento de Datos Selección de Instancias Data Set T1 T2 T3 Tt IS IS IS IS SS1 SS2 SS3 SSt TR1 TR2 TR3 TRt TS1 TS2 TS3 TSt
Preprocesamiento de Datos Selección de Instancias Conjuntos de datos:
Preprocesamiento de Datos Selección de Instancias Adult. Número de estratos: 10
Preprocesamiento de Datos Selección de Instancias Kdd Cup’99. Número de estratos: 100
Preprocesamiento de Datos Selección de Instancias ADULT:Algunos datos a destacar: Partición 1 La selección de instancias nos permite obtener conjuntos de reglas más interpretables y con aporte de mayor información. • Dos líneas de actuación futura: • Sistema de Clasificación más preciso: Avanzar en la combinación de la estratificación y técnicas evolutivas para mejorar la precisión. • Subgroup Discovery: La obtención de reglas de calidad que aporten información. N. Lavrac, B. Kavsek, P. Flach, L. Todorowski. Subgroup Discovery with CN2-SD. Journal of Machine Learning Research 5 (2004) 153-188.
Preprocesamiento de Datos Selección de Instancias Recientemente se han publicado diferentes aproximaciones al problema de Selección de Instancias. J.C. Riquelme, J.S. Aguilar-Ruiz, M. Toro. Finding representative patterns with ordered projections. Pattern Recogition 36 (2003) 1009-1018. POP: Algoritmo de selección de instancias vía proyección seleccionando regiones para cada clase. Métodos de aprendizaje: k-NN, C4.5.
Preprocesamiento de Datos Selección de Instancias S-W. Kim, B.J. Oommen. Enhancing prototype reduction schemes with LVQ3-type algorithms. Pattern Recognition 36 (2003) 1083-1093. LVQ3: Utilizan LVQ y SVM para la selección de instancias. S-W. Kim, B.J. Oommen. Enhancing Prototype Reduction Schemes with Recursion: A Method Applicable for “Larga Data Sets”. IEEE Trans. on SMC, 2004. Combina un método recursivo para la partición de bases de datos con LVQ y SVM.
Preprocesamiento de Datos Selección de Instancias S. Papadimitriou, S. Mavroudi, L. Vladutu, A.Bezerianos. Generalized radial basis function neural networks trained with instance based learning for data mining of symbolic data. Applied Intelligence 16 (2002) 223-234. P.C. Pendaharkar, J.A. Rodger. Technical efficiency-based selection of learning cases to improve forecasting accuracy of neural networks under monotonicity assumption. Decision Support Systems 36 (2003)117-136. Se utiliza la selección de instancias para el entrenamiento de redes neuronales. K.W. Lau, Q.H. Wu. Online training of support vector classifier. Pattern Recognition 36 (2003) 1913-1920. Se utiliza la selección de instancias para SVM.
Preprocesamiento de Datos Selección de Instancias Conclusiones La selección de instancias puede permitir mejorar la precisión/interpretabilidad de los métodos de aprendizaje automático. Existen evidencias de buen comportamiento combinando selección de instancias y los métodos de aprendizaje. Para cada método de aprendizaje puede ser necesario diseñar un mecanismo de selección de instancias que sea cooperativo con el propio método de aprendizaje.
Preprocesamiento de Datos Selección de Características Sumario • Introducción • Proceso general para la SA • Esquemas/Framework • Catalogación de algoritmos existentes • Distintas Clasificaciones • Tendencias
Preprocesamiento de Datos Selección de Características Introducción • La SA pretende elegir atributos que sean relevantes para una aplicación y lograr el máximo rendimiento con el mínimo esfuerzo. El resultado de la SA sería: • Menos datos los algoritmos pueden aprender más rápidos • Mayor exactitud el clasificador generaliza mejor • Resultados más simples más fácil de entender • Menos atributos evitar obtenerlos posteriormente • SA y Transformación (extracción y construcción) Bibliografía: H. Liu, H. Motoda. Feature Selection for Knowledge Discovery and Data Mining. Kluwer Academic, 1998.
{} {1} {2} {3} {4} {1,2} {1}{3} {2,3} {1,4} {2,4} {3,4} {1,2,3} {1,2,4} {1,3,4} {2,3,4} {1,2,3,4} Preprocesamiento de Datos Selección de Características Proceso para la SA La SA se puede considerar como en problema de búsqueda Subconjunto (GS) Generación Subconjuntos (CE) Criterio Evaluation Datos originales atributos Criterio Parada no si Subconjunto Seleccionado
Preprocesamiento de Datos Selección de Características Estudios realizados P. Langley (1994). Selection of Relevant Features in Machine Learning. Procs. of the AAAI Fall Symposium on Relevance. AAAI Press, New Orleans, LA. Agrupa las funciones de evaluación: Filtro y Envolvente (wrapper). A.L. Blum and P. Langley (1997). Selection of Relevant Features and Examples in Machine Learning. Artificial Intelligence on Relevance, pp. 245-271. Utiliza la dependencia con el proceso de inducción: Filtro, wrapper, Empotrados (embedded) y Ponderados.
Preprocesamiento de Datos Selección de Características Estudios realizados J. Doak (1994). An Evaluation of Search Algorithms for Feature Selection. Informe técnico, Safeguards Systems Group. Los Alamos National Laboratory. Establece tres categorías para las estrategias de búsqueda: exponencial O(2N), secuencial O(N2) y aleatoria O(¿?). Clasifica las medidas de evaluación basándose en la naturaleza de estas: filtro, wrapper y wrapper modificado. M. Dash and H. Liu (1997). Feature Selection for Classification. Intelligent Data Analisys. Establece tres categorías para las estrategias de búsqueda: completa, heurística y aleatoria. Clasifica las medidas de evaluación basándose en la naturaleza de estas: filtro (distancia, información, dependencia y consistencia) y wrapper.
Preprocesamiento de Datos Selección de Características Esquemas L.C. Molina, L. Belanche and A. Nebot (2002). Feature Selection Algorithms: A Survey and Experimental Evaluation. In Proc. of the International Conference on Data Mining (ICDM'02), IEEE C.S. Propone un criterio para evaluar el rendimiento de un algoritmo de SA con respecto a las particularidades de relevancia, irrelevancia, redundancia y tamaño de la muestra. Caracterización de algoritmos de SA. M. Dash and H. Liu (1997). Feature Selection for Classification. Intelligent Data Analisys, 1 (3). H. Liu and L. Yu (2002). Feature Selection for Data Mining. http://www.public.asu.edu/~huanliu/feature_selection.html Clasificación de los algoritmos existentes. Incluye SA no supervisada y propone una plataforma unificada.
Preprocesamiento de Datos Selección de Características Medida de Evaluación Caracterización Divergencia Precisión Consistencia Información Dependencia Distancia Exponencial Secuencial Aleatoria Completa Heurística No-determinista Generación de sucesores Adelante Organizaciónde la Búsqueda Atrás Esquema de Generación Aleatoria Compuesta Ponderada
Preprocesamiento de Datos Selección de Características
Preprocesamiento de Datos Selección de Características Distintas Clasificaciones 1. Según la evaluación: filter wrapper 2. Disponibilidad de la clase: Supervisados No supervisado 3. Según la búsqueda: Completa O(2N) Heurística O(N2) Aleatoria ¿? 4. Según la salida del algoritmo: Ranking Subconjunto de atributos
Preprocesamiento de Datos Selección de Características Algoritmos Ranking Devuelven una lista de atributos ordenados según algún criterio de evaluación. Entrada: x atributos - U criterio evaluación Lista = {} Para cada Atributo xi, i {1,...,N} vi = calcular(xi,U) situar xi dentro de Lista conforme vi Salida: Lista, atts más relevantes al principio
Preprocesamiento de Datos Selección de Características Algoritmos Subconjunto de atributos Devuelven un subconjunto de atributos optimizado según algún criterio de evaluación. Entrada: x atributos - U criterio evaluación Subconjunto = {} Repetir Sk = generarSubconjunto(x) si existeMejora(S, Sk,U) Subconjunto = Sk Hasta CriterioParada() Salida: Lista, atts más relevantes al principio
Preprocesamiento de Datos Selección de Características Sistemas de SA Dash, Liu and Motoda (2000). Consystency based feature selection (PAKDD). Kyoto, Japan. Springer-Verlag. Elige automáticamente el mejor algoritmo de SA (Basado en consistencia).
Preprocesamiento de Datos Selección de Características
Preprocesamiento de Datos Selección de Características M. Kudo and J. Sklansky (2000). Comparison of Algorithms that Select Features for Pattern Classifiers, Elsevier Science. Clasifica según objetivo: A, B y C según tamaño BD: small, medium, L,VL Según criterio: Monotono, aprox. y no Sistemas de SA
Preprocesamiento de Datos Selección de Características Incremento de los datos Algoritmos híbridos: Combinan las ventajas de los algoritmos tipo filtro (rapidez) y wrapper (precisión) S. Das (2001). Filters, Wrappers and a Boosting-Based Hybrid for Feature Selection, ICML, p. 74-81. Morgan Kaufmann Publishers. Utiliza el concepto de Boosting. E.P. Xing, M.I. Jordan and R.M. Karp (2001). Feature Selection for High-Dimensional Genomic Microarray Data, ICML, p. 601-608. Morgan Kaufmann Publishers. Selecciona atts con IG alta y se reducen mediante Markov.