Está en la página 1de 57

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

9 Introducción
9 Importancia de la Preparación de Datos
9 ¿Qué incluye la Preparación de Datos?
9 Reducción de Datos
9 Selección de Instancias
9 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


Problem
Specification
Evaluation
Interpretation
Exploitation
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 Bibliografía:
cada aplicación. V. Detours, J. E. Dumont, H. Bersini and C. Maenhaut. Integration
and cross-validation of high-throughout gene expression data:
Ejemplo en el ámbito comparing heterogeneous data sets, FEBS Letters 546:1, 2003,
de la Bioinformática 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 Discretización
Características

Selección de Apretujamiento de
Instancias Instancias
Data Squashing
Preprocesamiento de Datos
Reducción de Datos

Reducción
de Datos

Selección de Discretización
Características

Selección de Apretujamiento de
Instancias 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 Discretización
Características

Selección de Apretujamiento de
Instancias 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 Discretización
Características

Selección de Apretujamiento de
Instancias 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 Discretización
Características

Selección de Apretujamiento de
Instancias Instancias
Data Squashing

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 Aprendizaje


Prototipos ó Activo
Aprendizaje
basado en
Instancias
Preprocesamiento de Datos

Selección de Instancias

Selección de Sampling
Prototipos

Selección Selección Basada


Algoritmos Muestreo
Basada en en Eliminación
Evolutivos Aleatorio
Reglas NN Ordenada
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
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

.Medium size data sets


Preprocesamiento de Datos

Selección de Instancias
%Ac. test 1-
%Reducción NN
(%Ac. 1-NN+%Rd.)/2
CHC PBIL CHC
Ib2 Ib3 Ennsr
Drop1 CHC Drop3
Classification con Cnn Ennrs Rmhc
reduction rate > Drop3 Cnn Drop2
70%. Rnn Rmhc Cnn
Rmhc Drop2 Drop1
Selección de
Prototipos Icf Ib2 Ib3
Drop2 Drop3 Ib2
Ennrs Rnn PBIL
Ib3 Drop1 Icf
PBIL Icf Rnn
Preprocesamiento de Datos

Selección de Instancias
%Reduction %Ac. test C4.5 (%Ac. C4.5+%Rd.)/2

CHC PBIL CHC


Ib2 Rmhc Rmhc
Classification Drop1 CHC Ennrs
con reduction Cnn Ib3 Drop1
rate > 70%.
Drop3 Ennrs Drop3
Selección de Rnn Drop2 Icf
Conjuntos de Rmhc Icf Cnn
Entrenamiento Icf Drop1 Ib3
Drop2 Drop3 PBIL
Ennrs Cnn Drop2
Ib3 Rnn Rnn
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

IS IS IS IS

SS1 SS2 SS3 SSt

TR1 TR2 TR3 TRt

TS1 TS2 TS3 TSt

Estrategia de Estratificación
Preprocesamiento de Datos

Selección de Instancias

Conjuntos de datos:

Number of Number of Number of


Name
Instances Features Classes

Adult 30132 14 2
Kdd Cup’99 494022 41 23
Preprocesamiento de Datos

Selección de Instancias
Adult. Número de estratos: 10

C4.5
Execution Rules %
Time(sec) Number Reduction %Ac. Trn %Ac. Test

C4.5 2 327 88.72% 85.40%


Cnn Strat 1 21 97.34% 52.17% 36.45%
Drop1 Strat 44 1 95.09% 24.92% 26.31%
Drop2 Strat 48 179 70.33% 85.61% 83.09%
Drop3 Strat 41 75 95.57% 82.96% 77.29%
Ib2 Strat 1 12 99.57% 49.42% 36.37%
Ib3 Strat 3 162 76.69% 85.17% 82.73%
Icf Strat 33 138 85.62% 79.99% 82.21%
CHC Strat 20172 4 99.38% 83.78% 82.76%
Preprocesamiento de Datos

Selección de Instancias
Kdd Cup’99. Número de estratos: 100

Execution Rules % C4.5


Time(sec) Number Reduction %Ac Trn %Ac Test
C4.5 265 252 99.97% 99.94%
Cnn Strat 8 83 81.61% 98.48% 96.43%
Drop1 Strat 111 3 99.97% 38.63% 34.97%
Drop2 Strat 105 82 76.66% 81.40% 76.58%
Drop3 Strat 131 49 56.74% 77.02% 75.38%
Ib2 Strat 7 48 82.01% 95.81% 95.05%
Ib3 Strat 3 74 78.92% 99.13% 96.77%
Icf Strat 242 68 23.62% 99.98% 99.53%
CHC Strat 1960 9 99.68% 98.97% 97.53%
Preprocesamiento de Datos

Selección de Instancias
ADULT: Algunos datos a destacar: Partición 1
No. No. Confidencia de
No. Variables/
Instan- Varia- No. Reglas las Reglas
regla
cias - N bles N(Cond,Clas)/N
IS-CHC/ IS-CHC/ C4.5 IS-CHC/
C4.5 C4.5
Adult 30132 14 C4.5 C4.5 C4.5
359 5 14 3 0.003 0.167
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:
z 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.
z 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

9 Introducción
9Proceso general para la SA
9Esquemas/Framework
9Catalogación de algoritmos existentes
9Distintas Clasificaciones
9Tendencias
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.
Preprocesamiento de Datos

Selección de Características
Proceso para la SA
La SA se puede considerar como en problema de búsqueda
{}
(GS) Subconjunto (CE)
Datos Generación Criterio
originales {1} {2} {3} {4}
Subconjuntos atributos Evaluation

{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}
no Criterio si Subconjunto
Parada 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ón
Atrás de la Búsqueda
Esquema de Generación
Aleatoria
Compuesta
Ponderada
Preprocesamiento de Datos
Selección de Características
Estrategia de Búsqueda
Creterio de
Exponencial / Completa Secuencial / Heurística Aleatoria / No
evaluación
determinista
Ad: BFF Ad: Segen P: ReliefF
Distancia
At: B&B , Bobr88 P: ReliefF

At: MDLM Ad: SFG


Información
At: SBG, DTM, Koller
Ad: CFS Ad: POE+ACC
Dependencia P: PRESET
C: FCBC
Ad: Focus, Schlimmer Al: LVF, LVI, QBB*
Consistencia
At: MIFES1, ABB
Al/Ad: BS Ad: WSFG, Quei-Gels Al: LVW,GA,SA, RMHC-PF1
Precisión At: AMB&B, OBLIVION At: WSBG,SBS-SLASH,RC Al/C: RGSS
Ad: Ichi-Skla C: PQSS, BDS, RACE FSS-EBNA
Ad: SFG
Cualquiera
At: SBG
Ad: BBHFS
Inf+Presic
C: Xing
Preprocesamiento de Datos
Selección de Características
Distintas Clasificaciones

1. Según la evaluación: 2. Disponibilidad de la clase:

filter Supervisados

wrapper No supervisado

3. Según la búsqueda: 4. Según la salida del algoritmo:

Completa O(2N) Ranking


Heurística O(N2)
Aleatoria ¿? 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

Comparison table of the discussed method.

Large Multiple Handle Optimal


Method Generation Evaluation Contin. Discrete Nominal
Dataset Classes Noise Subset
B&B complete distance y y n - y - y++
MDLM complete information y y n - y - n
Focus complete consistency n y y n y n y

Relief heuristic distance y y y y n y n


DTM 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ísticas
M. Kudo and J. Sklansky (2000). Comparison Clasifica según objetivo: A, B y C
Sistemas de SA of Algorithms that Select Features for
Pattern Classifiers, Elsevier Science.
según tamaño BD: small, medium, L,VL
Según criterio: Monotono, aprox. y no
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.


Preprocesamiento de Datos
Selección de Características
Incremento de los datos

H. Liu, H. Lu and L. Yu (2003). Active Sampling: An Effective


Approach 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 Kaufmann
Publishers.

Selecciona atts altamente correlados con la clase y después elimina redundantes.


Preprocesamiento de Datos
Selección de Características
Validaciones
10 fcv
Test File
(10%)
10 Runs

BDs % Acc.
Training File
(E 90%)
Classifier Size
Nº Att´s

Selectors Reduce

Reduced % Acc.
Training Classifier Size
File (E’) Nº Att´s
Preprocesamiento de Datos
Selección de Características
Validaciones
Selectors
BDs
BDs Reduced

Classifier Classifier

% Acc. % Acc.
Size Size
Nº Att´s Nº 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 84
Mejor
Subconjunto
A5 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.

También podría gustarte