Preprocesamiento de Datos - lsi.us.es · Preprocesamiento de Datos Importancia de la Preparación...

57
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 Madrid, 6-7 Mayo, 2004

Transcript of Preprocesamiento de Datos - lsi.us.es · Preprocesamiento de Datos Importancia de la Preparación...

Page 1: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 2: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 3: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 4: Preprocesamiento de Datos - lsi.us.es · 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

Preprocesamiento de Datos

Problem Specification

Data Mining

Data Preparation

Data CollectingData cleaningData TransformationData Reduction

Post Data Mining

EvaluationInterpretationExploitation

Resourcing

Introducción

Page 5: Preprocesamiento de Datos - lsi.us.es · 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

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)

Page 6: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 7: Preprocesamiento de Datos - lsi.us.es · 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

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, …

Page 8: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 9: Preprocesamiento de Datos - lsi.us.es · 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

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)

Page 10: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 11: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 12: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 13: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 14: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 15: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 16: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 17: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 18: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 19: Preprocesamiento de Datos - lsi.us.es · 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

Preprocesamiento de Datos

Selección de Instancias

Selección de Instancias

Sampling Boosting Selección de Prototipos ó Aprendizajebasado en Instancias

AprendizajeActivo

Page 20: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 21: Preprocesamiento de Datos - lsi.us.es · 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

Preprocesamiento de Datos

Selección de Instancias

Estrategia de Selección de Prototipos

Page 22: Preprocesamiento de Datos - lsi.us.es · 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

Preprocesamiento de Datos

Selección de Instancias

Estrategia de Selección de Conjuntos de Entrenamiento

Data MiningAlgorithm

Page 23: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 24: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 25: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 26: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 27: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 28: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 29: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 30: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 31: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 32: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 33: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 34: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 35: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 36: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 37: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 38: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 39: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 40: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 41: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 42: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 43: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 44: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 45: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 46: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 47: Preprocesamiento de Datos - lsi.us.es · 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

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).

Page 48: Preprocesamiento de Datos - lsi.us.es · 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

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).

Page 49: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 50: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 51: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 52: Preprocesamiento de Datos - lsi.us.es · 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

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

Page 53: Preprocesamiento de Datos - lsi.us.es · 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

Preprocesamiento de Datos

Selección de Características

Validaciones

Classifier

% Acc.SizeNº Att´s

BDs

SelectorsBDs

Reduced

Classifier

% Acc.SizeNº Att´s

Page 54: Preprocesamiento de Datos - lsi.us.es · 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

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)

Page 55: Preprocesamiento de Datos - lsi.us.es · 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

Preprocesamiento de Datos

Validación algoritmos ranking

Glass2-C4.5

Segment-NB

Sonar-C4.5

Page 56: Preprocesamiento de Datos - lsi.us.es · 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

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.

Page 57: Preprocesamiento de Datos - lsi.us.es · 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

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.