Вы находитесь на странице: 1из 50

Selección, Limpieza y Transformación de

DATOS

Preparación de Datos
Preparación de Datos
Selección, Limpieza y Transformación de DATOS Preparación de Datos
Agenda • Preprocesado de datos • Data cleaning • Transformación de datos – Normalización •

Agenda

Preprocesado de datos

Data cleaning

Transformación de datos

Normalización

Reducción de datos

Referencias

Preparación de Datos

Motivación Preparación de Datos Vamos a intentar responder a la pregunta: Preprocesado de datos ¿Cómo

Motivación

Preparación de Datos

Vamos a intentar responder a la pregunta:

Preprocesado de datos ¿Cómo puedo preparar los datos para que el proceso de minería de datos (exploratorio o no) sea más fácil y efectivo?

Motivación Preparación de Datos La preparación de datos consume una parte muy importante del tiempo

Motivación

Preparación de Datos

Motivación Preparación de Datos La preparación de datos consume una parte muy importante del tiempo total

La preparación de datos consume una parte muy importante del tiempo total de un proceso de minería de datos.

Importancia de la Preparación de los Datos Preparación de Datos 1. Los datos reales pueden

Importancia de la Preparación de los Datos

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)

Importancia de la Preparación de los Datos Preparación de Datos 2. La preparación de datos

Importancia de la Preparación de los Datos

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,

Reduccionde Datos: Selección de características, muestreo o selección de instancias, discretización.

Importancia de la Preparación de los Datos Preparación de Datos 3. La preparación de datos

Importancia de la Preparación de los Datos

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,

Importancia de la Preparación de los Datos Preparación de Datos • Datos de baja calidad

Importancia de la Preparación de los Datos

Preparación de Datos

Datos de baja calidad puede llevara modelos de minería de datos de baja calidad.

Decisiones de calidad deben ser basadas en datos de calidad.

La preparación de datos (limpieza, transformación, ….) puede llevar la mayor parte del tiempo de trabajo en una aplicación de minería de datos(90%).

¿Qué incluye la Preparación de Datos? Preparación de Datos “El Preprocesamiento de Datos” / “La

¿Qué incluye la Preparación de Datos?

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

¿Qué incluye la Preparación de Datos? Preparación de Datos Limpieza de Datos Integración de Datos

¿Qué incluye la Preparación de Datos?

Preparación de Datos

Limpieza de Datos Integración de Datos Transformación de Datos Reducción de Datos
Limpieza de
Datos
Integración
de Datos
Transformación
de Datos
Reducción
de Datos
Tareas en el Preproceso de Datos Preparación de Datos Nos vamos a encontrar varios tareas

Tareas en el Preproceso de Datos

Preparación de Datos

Nos vamos a encontrar varios tareas propias de preprocesado de datos:

Data cleaning o limpieza de datos, es el proceso orientado a eliminar datos con ruido o incorrectos,

Data integration, trata de integrar diferentes fuentes de datos en un almacén coherente y homogéneo como un data warehouse o un data cube.

Data transformation, o transformación de los datos como, por ejemplo, una normalización.

Data reduction, o reducción de los datos, orientado a reducir el tamaño de los datos mediante la agregación y/o eliminación de características redundantes, o clustering.

Limpieza de Datos Preparación de Datos Los datos del mundo real suelen presentarse en una

Limpieza de Datos

Preparación de Datos

Los datos del mundo real suelen presentarse en una forma incompleta, inconsistente y ruidosa, limpiaremos los datos mediante

eliminando datos que faltan,

suavizando el efecto del ruido,

eliminando datos fuera de rango y

corrigiendo inconsistencias.

Limpieza de Datos Preparación de Datos Limpieza (data cleansing) y criba (selección) de datos: Se

Limpieza de Datos

Preparación de Datos

Limpieza (data cleansing) y criba (selección) de datos:

Se deben eliminar el mayor número posible de datos erróneos o inconsistentes (limpieza) e irrelevantes (criba).

Métodos estadísticos casi exclusivamente.

• histogramas (detección de datos anómalos).

• selección de datos (muestreo, ya sea verticalmente,

eliminando atributos, u horizontalmente, eliminando tuplas).

• redefinición de atributos (agrupación o separación).

Limpieza de Datos - Faltantes Preparación de Datos Qué hacer ante los datos nulos Antes

Limpieza de Datos - Faltantes

Preparación de Datos

Qué hacer ante los datos nulos

Antes de trabajar con los datos nulos Hay que analizar la razón de su existencia!! ¿Es significativo el hecho de que aparezcan nulos en los datos?

Limpieza de Datos - Faltantes Diferentes tratamientos de valores faltantes Preparación de Datos • ignorar

Limpieza de Datos - Faltantes

Diferentes tratamientos de valores faltantes

Preparación de Datos

ignorar: algunos algoritmos son robustos a datos faltantes (p.ej. árboles).

filtrar (eliminar o reemplazar) la columna: solución extrema, pero a veces existe otra columna dependiente con datos de mayor calidad. Preferible a eliminar la columna es reemplazarla por una columna booleana diciendo si el valor existía o no.

filtrar la fila : claramente sesga los datos, porque muchas veces las causas de un dato faltante están relacionadas con casos o tipos especiales.

reemplazar el valor: por medias. A veces se puede predecir a partir de otros datos, utilizando cualquier técnica de ML.

segmentar : se segmentan las tuplas por los valores que tienen disponibles. Se obtienen modelos diferentes para cada segmento y luego se combinan.

Se utiliza el valor más probable, se realiza una estimación/imputación del valor (existe múltiples métodos en esta línea. Ejemplo: el valor del patrón mas cercano de la misma clase).

Limpieza de Datos - Outliers Son objetos/datos con características que son considerablemente diferentes de la

Limpieza de Datos - Outliers

Son objetos/datos con características que son considerablemente diferentes de la mayoría de los otros datos/objetos del conjunto.

Preparación de Datos

son considerablemente diferentes de la mayoría de los otros datos/objetos del conjunto. Preparación de Datos
Limpieza de Datos - Outliers Preparación de Datos Acciones ante datos anómalos (outliers): • ignora

Limpieza de Datos - Outliers

Preparación de Datos

Acciones ante datos anómalos (outliers):

ignorar: algunos algoritmos son robustos a datos anómalos (p.ej. árboles)

filtrar (eliminar o reemplazar) la columna: solución extrema, pero a veces existe otra columna dependiente con datos de mayor calidad. Preferible a eliminar la columna es reemplazarla por una columna discreta diciendo si el valor era normal u outlier (por encima o por debajo).

filtrar la fila: puede sesgar los datos, porque muchas veces las causas de un dato erróneo están relacionadas con casos o tipos especiales.

reemplazar el valor: por el valor ‘nulo’ si el algoritmo lo trata bien o por máximos o mínimos, dependiendo por donde es el outlier, o por medias. A veces se puede predecir a partir de otros datos, utilizando cualquier técnica de ML.

discretizar: transformar un valor continuo en uno discreto (p.ej. muy alto, alto, medio, bajo, muy bajo) hace que los outliers caigan en ‘muy alto’ o ‘muy bajo’ sin mayores problemas.

Limpieza de Datos. Datos con Ruido Suavizamiento Preparación de Datos

Limpieza de Datos. Datos con Ruido Suavizamiento

Preparación de Datos

Limpieza de Datos. Datos con Ruido Suavizamiento Preparación de Datos
Transformación de Datos Preparación de Datos Los datos son transformados o consolidados de forma apropiada

Transformación de Datos

Preparación de Datos

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.

Reducción de Datos Preparación de Datos Selecciona/extrae datos relevantes para la tarea de la minería
Reducción de Datos
Preparación de Datos
Selecciona/extrae datos relevantes para la
tarea de la minería de datos/extracción de
información
Dicretización
Selección de
Características
Reducción de
Datos
Selección de
Instancias
Agrupamiento /
Compactación
Reducción de Datos - Compactación Preparación de Datos Compactación vía análisis de Clusters

Reducción de Datos - Compactación

Preparación de Datos

Compactación vía análisis de Clusters

Reducción de Datos - Compactación Preparación de Datos Compactación vía análisis de Clusters
Reducción de Datos - Discretización Preparación de Datos • Divide el rango de atributos continuos(numéricos)

Reducción de Datos - Discretización

Preparación de Datos

Divide el rango de atributos continuos(numéricos) en intervalos

Almacena solo las etiquetas de los intervalos

Importante para reglas de asociación y clasificación, algunos algoritmos solo aceptan datos discretos.

EDAD 5 6 6 9 … 15 16 16 17 20 … 24 25 41
EDAD
5
6
6 9
… 15
16 16
17 20
24 25
41 50
65 67
PROPIEDAD
0
000…
0
1 0
1 …0
1
1
1 1
1 1
DE
AUTOMOVIL
EDAD [5,15]
EDAD [16,24]
EDAD [25,67]
Discretización: Igual amplitud Valores de temperatura: 64 65 68 69 70 71 72 72 75
Discretización: Igual amplitud
Valores de temperatura:
64 65 68 69 70 71 72 72 75 75 80 81 83 85
4
2
2
2
2
2
0
65 68 69 70 71 72 72 75 75 80 81 83 85 4 2 2

[64,67) [67,70) [70,73) [73,76) [76,79) [79,82) [82,85)

Reducción de Datos - Discretización

Preparación de Datos

Reducción de Datos - Discretización Discretización: Igual amplitud puede producir desequilibrios Preparación de

Reducción de Datos - Discretización

Discretización:

Igual amplitud puede producir desequilibrios

Preparación de Datos

100 Contador 30 10 0 [0 ‐ 5000) … Salario en una Empresa … [10000‐
100
Contador
30
10
0
[0 ‐ 5000)
Salario en una Empresa
[10000‐ 30000]

¿Qué podemos hacer para conseguir una mejor distribución?

Reducción de Datos - Discretización Preparación de Datos Valores de temperatura: 64 65 68 69

Reducción de Datos - Discretización

Preparación de Datos

Valores de temperatura:

64 65 68 69 70 71 72 72 75 75 80 81 83 85

444

2
2
2
2
2
2
2
2
2
2
2
2
2
2

2

2
2
2

[64

69]

[70

72]

[73

81]

[83

85]

Igual frecuencia (altura) = 4, excepto para la última caja

Reducción de Datos - Discretización Preparación de Datos Discretización: Ventajas de la igualdad en frecuencia

Reducción de Datos - Discretización

Preparación de Datos

Discretización: Ventajas de la igualdad en frecuencia

Generalmente es preferible porque evita desequilibrios en el balance o entre valores

En la práctica permite obtener puntos de corte mas intuitivos.

Consideraciones adicionales:

Se deben crear cajas para valores especiales

Se deben tener puntos de corte interpretables

Reducción de Datos - Discretización Preparación de Datos Formas de discretizar (mas allá de los

Reducción de Datos - Discretización

Preparación de Datos

Formas de discretizar (mas allá de los intervalos de igual amplitud o frecuencias):

Algoritmos no supervisados:

Intervalores de igual amplitud

Intervalos de igual frecuencia

Clustering …

Algoritmos supervisados:

Basados en Entropía [Fayyad & Irani 93 and others]

[Fayyad & Irani93] U.M. Fayyad and K.B. Irani. Multiinterval discretizationof continuous valued attributes for classification learning. Proc. 13th Int. Joint Conf. AI (IJCAI93), 10221027. Chamberry, France, Aug./ Sep. 1993.

Métodos Chi square [Kerber 92]

[Kerber92] R. Kerber. ChiMerge: Discretizationof numeric attributes. Proc. 10thNat. Conf. AAAI, 123 128. 1992.

Reducción de Datos – Selección de Características Preparación de Datos • La SC pretende elegir

Reducción de Datos – Selección de Características

Preparación de Datos

La SC 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 SC sería:

Menos datos. los algoritmos pueden aprender más rápidamente

Mayor exactitud. el clasificador generaliza mejor

Resultados más simples. más fácil de entender

SC y Transformación (extracción y construcción)

Reducción de Datos – Selección de Características Preparación de Datos VAR 1 VAR 5 VAR

Reducción de Datos – Selección de Características

Preparación de Datos

VAR 1 VAR 5 VAR 13 1 2 3 4 5 6 7 8 9
VAR 1
VAR 5
VAR 13
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
A 0
000
0
0001111
1
111
B 0
000
1
1110000
1
111
C 0
011
0
0110011
0
011
D 0
101
0
1010101
0
101
E 0
100
0
1101000
0
010
F 1
110
1
1001010
0
100
Reducción de Datos – Selección de Características Preparación de Datos La SC se puede considerar

Reducción de Datos – Selección de Características

Preparación de Datos

Datos – Selección de Características Preparación de Datos La SC se puede considerar como un problema

La SC se puede considerar como un problema de búsqueda

Reducción de Datos – Selección de Características Proceso Preparación de Datos (GS) Generación de Subconjuntos

Reducción de Datos – Selección de Características

Proceso

Preparación de Datos

(GS) Generación de Subconjuntos Subconjunto (CE) Criterio de Evaluación Atributos NO SI Criterio Subconjunto
(GS)
Generación de
Subconjuntos
Subconjunto
(CE)
Criterio de
Evaluación
Atributos
NO
SI
Criterio
Subconjunto
Parada
Seleccionado

Datos

(CE) Criterio de Evaluación Atributos NO SI Criterio Subconjunto Parada Seleccionado Datos Originales

Originales

Reducción de Datos – Selección de Características Distintas Clasificaciones Preparación de Datos 1. Según la

Reducción de Datos – Selección de Características

Distintas Clasificaciones

Preparación de Datos

1. Según la evaluación: 2. Disponibilidad de la clase: • Filter • Supervisados • Wrapper
1.
Según la evaluación:
2.
Disponibilidad de la clase:
• Filter
• Supervisados
• Wrapper
• No supervisados
3.
Según la búsqueda:
4.
Según la salida del algoritmo:
• Completa O(2N)
• Ranking
• Heurística O(N2)
• Subconjunto de Atributos
• Aleatoria ¿?
Reducción de Datos – Selección de Características Algoritmos de Ranking Devuelven una lista de atributos

Reducción de Datos – Selección de Características

Algoritmos de Ranking Devuelven una lista de atributos ordenados según algún criterio de evaluación.

Preparación de Datos

Entrada: X atributos ‐ U criterio evaluación Lista = {} Para cada Atributo X i
Entrada: X atributos ‐ U criterio evaluación
Lista = {}
Para cada Atributo X i , i ∈{1, ,N}
V i = calcular(X i ,U)
situar X i dentro de Lista conforme V i
Salida: Lista, atts más relevantes al principio

Validación algoritmos ranking

Atributos

A1 A2 A3 A4 A5 A6 A7 A8 A9

Ranking

A5 A7 A4 A3 A1 A8 A6 A2 A9

 

A5 A7 A4 A3 A1 A8 (6 atributos)

Reducción de Datos – Selección de Características Preparación de Datos Algoritmos Subconjunto de Atributos

Reducción de Datos – Selección de Características

Preparación de Datos

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 S k= generarSubconjunto(X) si
Entrada: X atributos ‐ U criterio evaluación
Subconjunto = {}
Repetir
S k= generarSubconjunto(X)
si existeMejora(S, S k, U)
Subconjunto = S k
Hasta CriterioParada()
Salida: Lista, atts más relevantes al principio
Reducción de Datos – Selección de Características Validaciones Preparación de Datos BDs

Reducción de Datos – Selección de Características

Validaciones

Preparación de Datos

BDs
BDs
Reducción de Datos – Selección de Características Validaciones Preparación de Datos BDs
Reducción de Datos – Selección de Instancias Preparación de Datos • La SI pretende elegir

Reducción de Datos – Selección de Instancias

Preparación de Datos

La SI pretende elegir los ejemplos que sean relevantes para una aplicación y lograr el máximo rendimiento. El resultado de la SC sería:

Menos datos . los algoritmos pueden aprender más rápidamente

Mayor exactitud. el clasificador generaliza mejor

Resultados más simples. más fácil de entender

SI y Transformación (compactación/agrupamiento)

Reducción de Datos – Selección de Instancias Preparación de Datos Muestreo aleatorio simple con remplazo
Reducción de Datos – Selección de
Instancias
Preparación de Datos
Muestreo aleatorio
simple con remplazo
(SRSWR)
Muestreo
Selección basada en
Reglas NN
Muestreo aleatorio
simple sin remplazo
(SRSWOR)
Selección Basada en
Eliminación Ordenada
Selección de
Instancias
Selección de prototipos o aprendizaje basado en
instancias
Algoritmos Evolutivos
Aprendizaje Activo
Muestreo Aleatorio
Reducción de Datos – Selección de Instancias Análisis de Mecanismo de Selección de Prototipos Preparación

Reducción de Datos – Selección de Instancias

Análisis de Mecanismo de Selección de Prototipos

Preparación de Datos

de Selección de Prototipos Preparación de Datos J.R. Cano, F. Herrera, M. Lozano.Using Evolutionary

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 (2003) 561575.

Conjuntos de Datos Desbalanceados Preparación de Datos Conjuntos de datos no balanceados • Algunos problemas

Conjuntos de Datos Desbalanceados

Preparación de Datos

Conjuntos de datos no balanceados

Algunos problemas tienen una presencia de las clases desigual

Diagnosis médica: 90% sin enfermedad, 10% enfermedad

e comercio: 99% no compra, 1% compra

seguridad: >99.99% de conexiones no son ataques

La situación es similar con múltiples clases

La mayoría de los clasificadores obtienen un 97% de clasificación correcta, pero no son útiles ¿Cómo se procesan las clases no balanceadas?

Utilizar técnicas de reducción de datos para balancear las clases reduciendo las clases mayoritarias.

Realizar sobremuestreo para balancear aumentar el tamaño de las clases minoritarias. test

Exploración y Selección 1. Exploración y Selección Preparación de Datos Análisis Exploratorio de Datos .

Exploración y Selección

1. Exploración y Selección

Preparación de Datos

Análisis Exploratorio de Datos . Investigar datos para ver tendencias, patrones, errores y características 2. Exploración mediante visualización

Visualización previa (Minería de Datos Visual. Tendencias y Resúmenes)

Visualización Posterior. Validar

Visualización Multidimensional

Exploración y Selección Preparación de Datos 3. Sumarización, descripción, generalización y pivotamiento 4.

Exploración y Selección

Preparación de Datos

3. Sumarización, descripción, generalización y pivotamiento

descripción, generalización y pivotamiento 4. Selección de Datos • Técnicas de Muestreo –

4. Selección de Datos

Técnicas de Muestreo

Muestreo Aleatorio Simple

Muestreo Aleatorio Estratificado

Muestreo de Grupos

Muestreo Exhaustivo

Exploración y Selección Preparación de Datos 5. Selección de Datos • Selección de Características

Exploración y Selección

Preparación de Datos

5. Selección de Datos

Selección de Características Relevantes. Reducción de Dimensionalidad

Eliminar:

Atributos constantes

Campos de identificación

Atributos redundantes dependientes

Exploración y Selección Preparación de Datos • Métodos de Filtro: Filtran atributos antes de aplicar

Exploración y Selección

Preparación de Datos

Métodos de Filtro: Filtran atributos antes de aplicar las técnica de minería de datos. Son independientes a la técnica. Estadísticos

Métodos de envolvente (wrapper): Basados en el modelo.

La bondad va de acuerdo con la calidad del modelo de minería de datos o estadístico.

Debe entrenarse el modelo para evaluarlo

Exploración y Selección Preparación de Datos Obtener un subconjunto de atributos, representativo que contenga

Exploración y Selección

Preparación de Datos

Obtener un subconjunto de atributos, representativo que contenga la mayor parte de la información que existía en el conjunto inicial y que no exista la menor correlación entre los atributos seleccionados

Iterativos (obtener la combinación que maximice la calidad)

Estrategias:

Forward (comenzar con uno e ir agregando)

Backward (Comenzar con todos e ir eliminando)

Exploración y Selección • Análisis Correlacional Preparación de Datos

Exploración y Selección

Análisis Correlacional

Preparación de Datos

Exploración y Selección • Análisis Correlacional Preparación de Datos
Ejemplo Selección de Atributos Preparación de Datos • Análisis de Correspondencias (Frecuencias)

Ejemplo Selección de Atributos

Preparación de Datos

Análisis de Correspondencias (Frecuencias)

Ejemplo Selección de Atributos Preparación de Datos • Análisis de Correspondencias (Frecuencias)
Ejemplo Selección de Atributos Preparación de Datos • Análisis de Correspondencias (Frecuencias)
Ejemplo Selección de Atributos Preparación de Datos

Ejemplo Selección de Atributos

Preparación de Datos

Ejemplo Selección de Atributos Preparación de Datos
Preparación de Datos

Preparación de Datos

Preparación de Datos
Limpieza de Datos Transformación de los Campos: • Numerización / Etiquetado Preparación de Datos •

Limpieza de Datos

Transformación de los Campos:

• Numerización / Etiquetado

Preparación de Datos

• Ventajas: Se reduce espacio. Ej: apellido entero. Se pueden utilizar técnicas más simples.

• Desventajas: Se necesita meta-información para distinguir los datos inicialmente no numéricos (la cantidad no es relevante) de los inicialmente numéricos (la cantidad es relevante: precios, unidades, etc.) A veces se puede “sesgar” el modelo (biasing ).

• Discretización:

• Ventajas: Se reduce espacio. Ej. 0

10

(pequeño, mediano,

grande). Se pueden utilizar árboles de decisión y construir reglas discretas.

• Desventajas: Una mala discretización puede invalidar los resultados.

Referencias Preparación de Datos • Jiawei Han and Micheline Kamber. Data Mining. Concepts and Techniques.

Referencias

Preparación de Datos

Jiawei Han and Micheline Kamber. Data Mining. Concepts and Techniques. Morgan Kauffman Publisher, 2001. Dorian Pyle.

Data Preparation for Data Mining. Morgan Kauffman Publisher, 1999.