Preprocesamiento de Datos - lsi.us.es · Preprocesamiento de Datos Importancia de la Preparación...
Transcript of Preprocesamiento de Datos - lsi.us.es · Preprocesamiento de Datos Importancia de la Preparación...
Preprocesamiento de Datos
Francisco HerreraGrupo de Investigación SCI2SDpto. Ciencias de la Computación e I.A.Universidad de Granada
José Riquelme, Roberto RuizGrupo de Investigación MLGDpto. Lenguajes y Sistemas InformáticosUniversidad de Sevilla
Reunión Red Nacional DM & MLMadrid, 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 sothat the information content enfolded in thedata set can be exposed, or made more easilyaccesible.”
Dorian PyleData Preparation for Data MiningMorgan Kaufmann Publishers, 1999
Preprocesamiento de Datos
Problem Specification
Data Mining
Data Preparation
Data CollectingData cleaningData TransformationData Reduction
Post Data Mining
EvaluationInterpretationExploitation
Resourcing
Introducción
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 RuidoDatos 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 outliersResolver 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íaespecífica paracada aplicación.
Ejemplo en el ámbito de la Bioinformática
Bibliografía:V. Detours, J. E. Dumont, H. Bersini and C. Maenhaut. Integrationand 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: TheoreticalExplorations. 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 deCaracterísticas
Selección de Instancias
Apretujamiento de Instancias
Data Squashing
Discretización
Preprocesamiento de Datos
Reducción de Datos
Reducción de Datos
Selección deCaracterísticas
Selección de Instancias
Apretujamiento de Instancias
Data Squashing
Discretización
Bibliografía:H. Liu, H. Motoda. Feature Selection for Knowledge Discoveryand Data Mining. Kluwer Academic, 1998.H. Liu, H. Motoda (Eds.) Feature Extraction, Construction, andSelection: A Data Mining Perspective, Kluwer Ac., 1998.
Preprocesamiento de Datos
Reducción de Datos
Reducción de Datos
Selección deCaracterísticas
Selección de Instancias
Apretujamiento de Instancias
Data Squashing
Discretización
Bibliografía:H. Liu, F. Hussain, C.L. Tan, M. Dash. Discretization: An EnablingTechnique. Data mining and Knowledge Discovery 6, 393-423, 2002.
Preprocesamiento de Datos
Reducción de Datos
Reducción de Datos
Selección deCaracterísticas
Selección de Instancias
Apretujamiento de Instancias
Data Squashing
Discretización
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 deCaracterísticas
Selección de Instancias
Apretujamiento de Instancias
Data Squashing
Discretización
Bibliografía:T. Reinartz. A Unifying View on Instance Selection. Data Mining and Knowledge Discovery 6, 191-210, 2002.
Preprocesamiento de Datos
Selección de Instancias
Selección de Instancias
Sampling Boosting Selección de Prototipos ó Aprendizajebasado en Instancias
AprendizajeActivo
Preprocesamiento de Datos
Selección de Instancias
Selección de Prototipos
Selección Basada en Reglas NN
Selección Basada en Eliminación Ordenada
Algoritmos Evolutivos
Sampling
Muestreo Aleatorio
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 MiningAlgorithm
Preprocesamiento de Datos
Selección de InstanciasJ.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
.Medium size data sets
Preprocesamiento de Datos
Selección de Instancias
Classification con reduction rate > 70%.
Selección de Prototipos
CHC PBIL CHCIb2 Ib3 EnnsrDrop1 CHC Drop3Cnn Ennrs RmhcDrop3 Cnn Drop2
Rnn Rmhc CnnRmhc Drop2 Drop1Icf Ib2 Ib3Drop2 Drop3 Ib2Ennrs Rnn PBILIb3 Drop1 Icf
%Reducción %Ac. test 1-NN (%Ac. 1-NN+%Rd.)/2
PBIL Icf Rnn
Preprocesamiento de Datos
Selección de Instancias
Classification con reduction rate > 70%.
Selección de Conjuntos de Entrenamiento
CHC PBIL CHCIb2 Rmhc RmhcDrop1 CHC EnnrsCnn Ib3 Drop1Drop3 Ennrs Drop3Rnn Drop2 IcfRmhc Icf CnnIcf Drop1 Ib3Drop2 Drop3 PBILEnnrs Cnn Drop2Ib3 Rnn Rnn
%Reduction %Ac. test C4.5 (%Ac. C4.5+%Rd.)/2
PBIL Ib2 Ib2
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.
Preprocesamiento de Datos
Selección de Instancias
Data Set
T1 T2 T3 Tt
SS1 SS2 SS3 SSt
TR1 TR2 TR3 TRt
TS1 TS2 TS3 TSt
IS IS IS
Estrategia de Estratificación
IS
Preprocesamiento de Datos
Selección de Instancias
Conjuntos de datos:
Name Number ofInstances
Number ofFeatures
Number of Classes
Adult 30132 14 2
Kdd Cup’99 494022 41 23
Preprocesamiento de Datos
Adult. Número de estratos: 10
Selección de Instancias
C4.5ExecutionTime(sec)
Rules Number %Ac. Trn %Ac. Test
C4.5 2 327
21
1
179
75
12
162
138
4
88.72% 85.40%
Cnn Strat 1 97.34% 52.17% 36.45%
Drop1 Strat 44 95.09% 24.92% 26.31%
Drop2 Strat 48 70.33% 85.61% 83.09%
Drop3 Strat 41 95.57% 82.96% 77.29%
Ib2 Strat 1 99.57% 49.42% 36.37%
Ib3 Strat 3 76.69% 85.17% 82.73%
Icf Strat 33 85.62% 79.99% 82.21%
CHC Strat 20172 99.38% 83.78% 82.76%
% Reduction
Preprocesamiento de Datos
Selección de InstanciasKdd Cup’99. Número de estratos: 100
C4.5ExecutionTime(sec)
Rules Number %Ac Trn %Ac Test
C4.5 265 252
83382494874689
99.97% 99.94%Cnn Strat 8 81.61% 98.48% 96.43%Drop1 Strat 111 99.97% 38.63% 34.97%Drop2 Strat 105 76.66% 81.40% 76.58%Drop3 Strat 131 56.74% 77.02% 75.38%Ib2 Strat 7 82.01% 95.81% 95.05%Ib3 Strat 3 78.92% 99.13% 96.77%Icf Strat 242 23.62% 99.98% 99.53%CHC Strat 1960 99.68% 98.97% 97.53%
% Reduction
Preprocesamiento de Datos
ADULT: Algunos datos a destacar: Partición 1Selección de Instancias
No.Instan-cias - N
No.Varia-bles
No. ReglasNo. Variables/
regla
Confidencia de las Reglas
N(Cond,Clas)/N
IS-CHC/C4.5 C4.5 IS-CHC/
C4.5C4.5 IS-CHC/
C4.5
0.003 0.167359 5 14 3
C4.5Adult 30132 14
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 representativepatterns 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 schemeswith 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 Schemeswith Recursion: A Method Applicable for “Larga Data Sets”. IEEETrans. 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 basedlearning for data mining of symbolic data. Applied Intelligence 16 (2002) 223-234.
P.C. Pendaharkar, J.A. Rodger. Technical efficiency-based selection oflearning cases to improve forecasting accuracy of neural networksunder 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. PatternRecognition 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 Discoveryand Data Mining. Kluwer Academic, 1998.
Preprocesamiento de Datos
Selección de Características
Proceso para la SA
La SA se puede considerar como en problema de búsqueda
{}
{1} {2} {3} {4}
{1}{3} {2,3} {1,4} {2,4}{1,2} {3,4}
{1,2,3} {1,2,4} {1,3,4} {2,3,4}
{1,2,3,4}
(GS) Generación
Subconjuntos
(CE) Criterio
Evaluation
SubconjuntoSeleccionado
CriterioParada
no
atributos
si
SubconjuntoDatosoriginales
Preprocesamiento de Datos
Selección de Características
Estudios realizados
P. Langley (1994). Selection of Relevant Features in MachineLearning. 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 Featuresand Examples in Machine Learning. Artificial Intelligence onRelevance, 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 FeatureSelection. 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 SelectionAlgorithms: A Survey and Experimental Evaluation. In Proc. of theInternational 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ísticasMedida de EvaluaciónCaracterización
Divergencia
Precisión
Consistencia
Información
Dependencia
Distancia
Exponencial Secuencial Aleatoria
Completa Heurística No-determinista
Generación de sucesores Organizaciónde la Búsqueda
Esquema de Generación
AdelanteAtrás
Aleatoria
CompuestaPonderada
Preprocesamiento de Datos
Estrategia de BúsquedaCreterio deevaluación Exponencial / Completa Secuencial / Heurística Aleatoria / No
determinista
DistanciaAd: BFFAt: B&B , Bobr88
Ad: SegenP: ReliefF
P: ReliefF
InformaciónAt: MDLM Ad: SFG
At: SBG, DTM, Koller
DependenciaAd: CFS Ad: POE+ACC
P: PRESETC: FCBC
ConsistenciaAd: Focus, SchlimmerAt: MIFES1, ABB
Al: LVF, LVI, QBB*
PrecisiónAl/Ad: BSAt: AMB&B, OBLIVIONAd: Ichi-Skla
Ad: WSFG, Quei-GelsAt: WSBG,SBS-SLASH,RCC: PQSS, BDS, RACE
Al: LVW,GA,SA, RMHC-PF1Al/C: RGSSFSS-EBNA
CualquieraAd: SFGAt: SBG
Inf+PresicAd: BBHFSC: Xing
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 featureselection (PAKDD). Kyoto, Japan. Springer-Verlag.
Elige automáticamente el mejor algoritmo de SA (Basado en consistencia).
Preprocesamiento de Datos
Selección de Características
Comparison table of the discussed method.
Method Generation Evaluation Contin. Discrete Nominal Large Dataset
Multiple Classes
Handle Noise
Optimal Subset
B & B complete distance y y n - y - y++MDLM complete information y y n - y - nFocus complete consistency n y y n y n y
Relief heuristic distance y y y y n y nDTM heuristic information y y y y y - n
POE+ACC heuristic dependency y y y - y - n
LVF random consistency n y y y y y* y**
- method does not discuss about the particular characteristic.y++ if certain assumptions are valid.y* user is required to provide the noise level. y** provided there are enough resources.
*note : "classifier error rate" not included (ie. Depend on specify classifier).
Preprocesamiento de Datos
Selección de CaracterísticasM. Kudo and J. Sklansky (2000). Comparisonof Algorithms that Select Features forPattern Classifiers, Elsevier Science.
Clasifica según objetivo: A, B y C según tamaño BD: small, medium, L,VLSegú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 forFeature 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 forHigh-Dimensional Genomic Microarray Data, ICML, p. 601-608. Morgan Kaufmann Publishers.
Selecciona atts con IG alta y se reducen mediante Markov.
Preprocesamiento de Datos
Selección de Características
Incremento de los datos
H. Liu, H. Lu and L. Yu (2003). Active Sampling: An EffectiveApproach to Feature Selection. SIAM ICDM.
Selecciona las instancias con mayor probabilidad de tener información determinante de la relevancia de los atributos.
L. Yu and H. Liu (2003). Feature Selection for High-Dimensional: A fast Correlation-Based Filter Solution, ICML. Morgan KaufmannPublishers.
Selecciona atts altamente correlados con la clase y después elimina redundantes.
Preprocesamiento de Datos
Selección de Características
Validaciones
Selectors
Classifier
10 fcv
Training File(E 90%)
Test File(10%)
ReducedTrainingFile (E’)
Classifier
% Acc.Size Nº Att´s
% Acc.SizeNº Att´s
Reduce
10 Runs
BDs
Preprocesamiento de Datos
Selección de Características
Validaciones
Classifier
% Acc.SizeNº Att´s
BDs
SelectorsBDs
Reduced
Classifier
% Acc.SizeNº Att´s
Selección de Características
Validación algoritmos ranking
Atributos A1 A2 A3 A4 A5 A6 A7 A8 A9
Ranking A5 A7 A4 A3 A1 A8 A6 A2 A9
80 82 81 83 83 85 84 83 84Mejor
SubconjuntoA5 A7 A4 A3 A1 A8 (6 atributos)
Preprocesamiento de Datos
Validación algoritmos ranking
Glass2-C4.5
Segment-NB
Sonar-C4.5
Preprocesamiento de Datos
Selección de Características
Conclusiones
La selección de atributos puede permitir mejorar la precisión e interpretabilidad de los métodos de aprendizaje automático, además de reducir el tamaño de la BD y el tiempo de los algoritmos de aprendizaje.
Para diferentes aplicaciones puede convenir distintos algoritmos de selección de característica.
Preprocesamiento de Datos
Conclusiones
El preprocesamiento de datos suele ser una necesidad cuando se trabaja con una aplicación real, con datos obtenidos directamente del problema.
Una ventaja: El preprocesamiento de datos permite aplicar los modelos de Aprendizaje/Minería de Datos de forma más rápida y sencilla, obteniendo modelos/patrones de más calidad: precisión e/o interpretabilidad.
Un inconveniente: El preprocesamiento de datos no es un área totalmente estructura con una metodología concreta de actuación para todos los problemas. Cada problema puede requerir una actuación diferente, utilizando diferentes herramientas de preprocesamiento.