Minería de Datos
2. El Proceso de KDD
José Hernández Orallo
Máster y Cursos de Postgrado del DSIC Universitat Politècnica de València
2
Temario
1. Introducción a la Minería de Datos (DM) 1.1. Motivación
1.2. Problemas tipo y aplicaciones 1.3. Relación de DM con otras disciplinas 2. El proceso de KDD
2.1. Las Fases del KDD
2.2. Tipología de Técnicas de Minería de Datos
2.3. Sistemas Comerciales y Herramientas de Minería de Datos 2.4. Preparación y Visualización de datos
3. Técnicas de Minería de Datos
3.1. El Problema de la Extracción Automática de Conocimiento. 3.2. Evaluación de Hipótesis
3.3. Técnicas no supervisadas y descriptivas. 3.4. Técnicas supervisadas y predictivas. 4. Web Mining
4.1. Los Problemas de la Información No Estructurada.
4.2. Extracción de Conocimiento a partir de Documentos HTML y texto. 4.3. Extracción de Información semi-estructurada (XML).
5. Otros Aspectos
3
Objetivos Tema 2
• Conocer las fases del Descubrimiento de
Conocimiento de Bases de Datos y la importancia
de las mismas en el éxito del proceso (en especial
las de limpieza y selección de datos).
• Conocer el abanico de sistemas comerciales y sus
características comunes
• Reconocer los tipos de visualización más comunes
y su utilidad de cara a la explotación de datos
4 1. Determinar las fuentes de información que pueden ser
útiles y dónde conseguirlas.
2. Diseñar el esquema de un almacén de datos (Data Warehouse) que consiga unificar de manera operativa toda la información recogida.
3. Implantación del almacén de datos que permita la “navegación” y visualización previa de sus datos, para discernir qué aspectos puede interesar que sean estudiados.
4. Selección, limpieza y transformación de los datos que se van a analizar. La selección incluye tanto una criba o fusión horizontal (filas) como vertical (atributos). 5. Seleccionar y aplicar el método de minería de datos
apropiado.
6. Evaluación, interpretación, transformación y representación de los patrones extraídos. 7. Difusión y uso del nuevo conocimiento.
El Proceso del KDD. FASES
Sistema de Información
KDD
Conocimiento Evaluación / Interpretación / Visualización Preparación de los Datos Minería de Datos Patrones5
El Proceso del KDD. FASES
Proceso detallado:
+ + + + -datos iniciales vista minable decisiones almacén de datos patronesÁmbito, objetivos de negocio y de minería de datos
Integración y recopilación
preparación
de datos modelado evaluación despliegue
conocimiento
revisión
6
• Las primeras fases del KDD determinan que las fases
sucesivas sean capaces de extraer conocimiento
válido y útil a partir de la información original.
• Generalmente, la información que se quiere investigar
sobre un cierto dominio de la organización se
encuentra:
en bases de datos y otras fuentes muy diversas,
tanto internas como externas.
muchas de estas fuentes son las que se utilizan para el trabajo transaccional.
Fases del KDD: Recogida de Datos
El análisis posterior será mucho más sencillo si la fuente es unificada, accesible (interna) y
desconectada del trabajo transaccional.
7
El proceso subsiguiente de minería de datos:
• Depende mucho de la fuente:
OLAP u OLTP.
Datawarehouse o copia con el esquema original. ROLAP o MOLAP.
• Depende también del tipo de usuario:
‘picapedreros’ (o ‘granjeros’): se dedican
fundamentalmente a realizar informes periódicos, ver la evolución de determinados parámetros, controlar valores anómalos, etc.
‘exploradores’: encargados de encontrar nuevos patrones significativos utilizando técnicas de minería de datos.
Fases del KDD: Recogida de Datos
8
Recogida de Información Externa:
• Aparte de información interna de la organización, los
almacenes de datos pueden recoger información
externa:
Demografías (censo), páginas amarillas, psicografías (perfiles por zonas), uso de Internet, información de otras organizaciones.
Datos compartidos en una industria o área de negocio, organizaciones y colegios profesionales, catálogos, etc.
Datos resumidos de áreas geográficas, distribución de la competencia, evolución de la economía, información de calendarios y climatológicas, programaciones televisivas-deportivas, catástofres,..
9
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.
resúmenes e histogramas (detección de datos anómalos). selección de datos (muestreo, ya sea verticalmente, eliminando atributos, denominado “selección de características”, u horizontalmente, eliminando tuplas, denominado “muestreo”).
redefinición de atributos (agrupación o separación).
Fases del KDD: Preparación de Datos
10
La selección y la limpieza pueden acompañarse de
“transformación” de atributos (numerización,
discretización, …).
• El resultado es un conjunto de filas y columnas
denominado:
• La vista minable integra datos de diferentes fuentes,
los limpia, selecciona y transforma, y los tipa, con el
fin de prepararlos para la modelización.
Fases del KDD: Preparación de Datos
VISTA MINABLE
11
Patrones a descubrir:
• Una vez recogidos los datos de interés, un explorador puede decidir qué tipo de patrón quiere descubrir.
• El tipo de conocimiento que se desea extraer va a marcar claramente la
técnica
de minería de datos a utilizar. • Según como sea la búsqueda del conocimiento se puededistinguir entre:
• Directed data mining: se sabe claramente lo que se busca, generalmente predecir unos ciertos datos o clases.
• Undirected data mining: no se sabe lo que se busca, se trabaja con los datos (¡hasta que confiesen!).
• En el primer caso, algunos sistemas de minería de datos se
encargan generalmente de elegir el algoritmomás idóneo entre los disponibles para un determinado tipo de patrón a buscar.
Fases del KDD: La Minería de Datos
12
La fase anterior produce una o más hipótesis de
modelos.
• Para seleccionar y validar estos modelos es
necesario el uso de criterios de evaluación de
hipótesis. Por ejemplo:
1ª Fase: Comprobación de la precisión del modelo en un banco de ejemplos independiente del que se ha utilizado para aprender el modelo. Se puede elegir el mejor modelo. 2ª Fase: Se puede realizar una experiencia piloto con ese modelo. Por ejemplo, si el modelo encontrado se quería utilizar para predecir la respuesta de los clientes a un nuevo producto, se puede enviar un mailing a un
subconjunto de clientes y evaluar la fiabilidad del modelo.
Fases del KDD: Evaluación y
13
El despliegue del modelo a veces es trivial pero otras
veces requiere un proceso de implementación o
interpretación:
• El modelo puede requerir implementación (p.ej. tiempo real detección de tarjetas fraudulentas).
• El modelo es descriptivo y requiere interpretación (p.ej. una caracterización de zonas geográficas según la distribución de los productos vendidos).
• El modelo puede tener muchos usuarios y necesita difusión: el modelo puede requerir ser expresado de una manera comprensible para ser distribuido en la
organización (p.ej. las cervezas y los productos congelados se compran frecuentemente en conjunto ⇒
ponerlos en estantes distantes).
Fases del KDD: Interpretación y
Difusión
14
Los procesos derivan en un mantenimiento:
• Actualización: Un modelo válido puede dejar de serlo: cambio de contexto (económicos, competencia, fuentes de datos, etc.).
• Monitorización: Consiste en ir revalidando el modelo con cierta frecuencia sobre nuevos datos, con el objetivo de detectar si el modelo requiere una actualización.
Producen realimentaciones en el proceso KDD.
Fases del KDD:
Actualización y
Monitorización
15
Las técnicas de minería de datos crean modelos que son
predictivos y/o descriptivos.
• Un modelo predictivo responde preguntas sobre datos futuros.
¿Cuáles serán las ventas el año próximo?
¿Es esta transacción fraudulenta?
¿Qué tipo de seguro es más probable que contrate el cliente X?
• Un modelo descriptivo proporciona información sobre las relaciones entre los datos y sus características. Genera información del tipo:
Los clientes que compran pañales suelen comprar cerveza.
El tabaco y el alcohol son los factores más importantes en la enfermedad Y.
Los clientes sin televisión y con bicicleta tienen características muy diferenciadas del resto.
Tipología de Técnicas de Minería de
Datos
16
Ejemplo de Modelo Predictivo:
• Queremos saber si jugar o no jugar esta tarde al tenis. • Hemos recogido datos de experiencias anteriores:
Tipología de Técnicas de Minería de
Datos
Example Sky Temperature Humidity Wind PlayTennis
1 Sunny Hot High Weak No
2 Sunny Hot High Strong No
3 Overcast Hot High Weak Yes
4 Rain Mild High Weak Yes
5 Rain Cool Normal Weak Yes
6 Rain Cool Normal Strong No
7 Overcast Cool Normal Strong Yes
8 Sunny Mild High Weak No
9 Sunny Cool Normal Weak Yes
10 Rain Mild Normal Weak Yes
11 Sunny Mild Normal Strong Yes
12 Overcast Mild High Strong Yes
17
Ejemplo de Modelo Predictivo:
• Pasamos estos ejemplos a un algoritmo de aprendizaje de árboles de decisión, señalando el atributo “PlayTennis” como la clase (output).
• El resultado del algoritmo es el siguiente modelo:
• Ahora podemos utilizar este modelo para predecir si esta tarde jugamos o no al tenis. P.ej., la instancia:
(Outlook = sunny, Temperature = hot, Humidity = high, Wind = strong)
es NO.
Tipología de Técnicas de Minería de
Datos
Outlook? YES Humidity? Sunny Overcast Rain Wind? YES NO YES NOHigh Normal Strong Weak
18
Ejemplo de Modelo Descriptivo:
• Queremos categorizar nuestros empleados. • Tenemos estos datos de los empleados:
Tipología de Técnicas de Minería de
Datos
#Ej Sueldo Casado Coche Hijos Alq/Prop Sindic. Bajas/Año Antigüedad Sexo
1 10000 Sí No 0 Alquiler No 7 15 H 2 20000 No Sí 1 Alquiler Sí 3 3 M 3 15000 Sí Sí 2 Prop Sí 5 10 H 4 30000 Sí Sí 1 Alquiler No 15 7 M 5 10000 Sí Sí 0 Prop Sí 1 6 H 6 40000 No Sí 0 Alquiler Sí 3 16 M 7 25000 No No 0 Alquiler Sí 0 8 H 8 20000 No Sí 0 Prop Sí 2 6 M 9 20000 Sí Sí 3 Prop No 7 5 H 10 30000 Sí Sí 2 Prop No 1 20 H 11 50000 No No 0 Alquiler No 2 12 M 12 8000 Sí Sí 2 Prop No 3 1 H 13 20000 No No 0 Alquiler No 27 5 M 14 10000 No Sí 0 Alquiler Sí 0 7 H 15 8000 No Sí 0 Alquiler No 3 2 H 19
Ejemplo de Modelo Descriptivo:
• Pasamos estos ejemplos a un algoritmo de clustering K-meams. • Se crean tres clusters, con la siguiente descripción:
Tipología de Técnicas de Minería de
Datos
cluster 1: 5 examples Sueldo : 22600 Casado : No -> 0.8 Sí -> 0.2 Coche : No -> 0.8 Sí -> 0.2 Hijos : 0 Alq/Prop : Alquiler -> 1.0 Sindic. : No -> 0.8 Sí -> 0.2 Bajas/Año : 8 Antigüedad : 8 Sexo : H -> 0.6 M -> 0.4 cluster 2: 4 examples Sueldo : 22500 Casado : No -> 1.0 Coche : Sí -> 1.0 Hijos : 0 Alq/Prop : Alquiler -> 0.75 Prop -> 0.25 Sindic. : Sí -> 1.0 Bajas/Año : 2 Antigüedad : 8 Sexo : H -> 0.25 M -> 0.75 cluster 3: 6 examples Sueldo : 18833 Casado : Sí -> 1.0 Coche : Sí -> 1.0 Hijos : 2 Alq/Prop : Alquiler -> 0.17 Prop -> 0.83 Sindic. : No -> 0.67 Sí -> 0.33 Bajas/Año : 5 Antigüedad : 8 Sexo : H -> 0.83 M -> 0.17• GRUPO 1: Sin hijos y de alquiler. Poco sindicados. Muchas bajas.
• GRUPO 2: Sin hijos y con coche. Muy sindicados. Pocas bajas. Normalmente de alquiler y mujeres.
• GRUPO 3: Con hijos, casados y con coche. Propietarios. Poco sindicados. Hombres. 20
Tipos de conocimiento:
• Asociaciones: Una asociación entre dos atributos ocurre
cuando la frecuencia de que se den dos valores determinados de cada uno conjuntamente es relativamente alta.
• Ejemplo, en un supermercado se analiza si los pañales y
los potitos de bebé se compran conjuntamente.
• Dependencias: Una dependencia funcional (aproximada o
absoluta) es un patrón en el que se establece que uno o más atributos determinan el valor de otro. Ojo! Existen muchas dependencias nada interesantes (causalidades inversas).
• Ejemplo: que un paciente haya sido ingresado en
maternidad determina su sexo.
La búsqueda de asociaciones y dependencias se conoce a veces como análisis exploratorio.
Tipología de Técnicas de Minería de
Datos
21
Tipos de conocimiento (cont.):
• Clasificación: Una clasificación se puede ver como el
esclarecimiento de una dependencia, en la que el atributo dependiente puede tomar un valor entre varias clases, ya conocidas.
• Ejemplo: obtener para qué pacientes una operación de
cirugía ocular es satisfactoria según los atributos edad, número de miopías y astigmatismo.
Tipología de Técnicas de Minería de
Datos
22
Tipos de conocimiento (cont.):
• Agrupamiento / Segmentación: El agrupamiento (o clustering)
es la detección de grupos de individuos. Se diferencia de la clasificación en el que no se conocen ni las clases ni su
número (aprendizaje no supervisado), con lo que el objetivo es determinar grupos o racimos (clusters) diferenciados del resto.
• Ejemplo: determinar qué tipos de clientes tengo atendiendo a sus patrones de compra.
Tipología de Técnicas de Minería de
Datos
Tipos de conocimiento (cont.):
• Tendencias/Regresión: El objetivo es predecir los valores de
una variable continua a partir de la evolución sobre una o más variable continua. Una de ellas puede ser el tiempo.
• Ejemplo, se intenta predecir el número de clientes o
pacientes, los ingresos, llamadas, ganancias, costes, etc. a partir de los resultados de semanas, meses o años anteriores.
Tipología de Técnicas de Minería de
Datos
Un tipo de técnica puede servir para
varios tipos de estudios
Un tipo de estudio puede resolverse
con distintos tipos de técnicas
Es necesario conocer qué técnicas son posibles y más adecuadas para cada tipo de estudio
Tipología de Técnicas de Minería de
Datos
25
Correspondencia Tarea / Técnica
9 9 Bayes Classifiers 9 RBF 9 9 K-NN 9 CN2 9 Estudios Factoriales, análisis multivariante 9 A Priori (asociaciones) 9 9* Kmeans 9 Reg. Logística 9
Regresión lineal (local, global), exp.. 9 Kohonen 9 9 (CART) 9 (c4.5) Árboles de Decisión 9* 9 9 Redes Neuronales Otros (factoriales, correl, dispersión) Reglas asociación Clustering (agrup.) Regresión Clasificación DESCRIPTIVO / NO SUPERVISADO PREDICTIVO / SUPERVISADO TÉCNICA 26
Herramientas
Paquetes de Minería de Datos:
Durante los 90, aparecen paquetes de minería de datos desde diferentes ámbitos:
como evolución de paquetes o librerías de aprendizaje automático o reconocimiento de patrones: CART, See5, Neuroshell, Weka, PRW, ..
como solución de los grandes del análisis de datos: SPSS, SAS, …
como complemento de las herramientas de business intelligence y explotación de datos: IBM, Oracle, Microsoft, Teradata, …
Incorporan técnicas de preparación de datos, de modelado, de visualización y de evaluación.
27
Herramientas
Elder Research, www.datamininglab.com 28Tipos de Herramientas:
Según el acoplamiento: Standalone: Los datos se deben exportar/convertir al formato interno del sistema de DM: Angoss Knowledge Seeker, Weka, ….
On-top: pueden funcionar sobre un sistema propietario (SPSS Clementinesobre ODBC, …).
Embedded (funcionan integrados propietarios): Oracle Data Miner, IBM...
Según la extensibilidad y el uso directo en aplicaciones:
Se pueden añadir nuevos algoritmos fácilmente: Kepler, Weka, …
Se puede (con paciencia): Clementine, Oracle…
Complejo o imposible: SAS, …
Según la variedad de técnicas:
Monotécnica: Neuroshell, CART, See5.0, …
Suites: Clementine, Enterprise Miner, Oracle Data Miner…
Herramientas
29
Costes:
Muy variables:
gratuito (p.ej. Weka).
miles de euros (p.ej. SQL Server Data Mining)
decenas de miles euros (p.ej. Clementine, Oracle, …)
a cientos de miles de euros (inc. Hardware, p.ej. Teradata) Herramientas Gratuitas más importantes:
WEKA (http://www.cs.waikato.ac.nz/~ml/weka/) (Libro: Witten & Frank 2004)
Rproject: herramienta gratuita de análisis estadístico (http://www.R-project.org/)
Herramientas
30
EJEMPLO: Clementine (www.spss.com)
Herramienta que incluye:
fuentes de datos (ASCII, XLS, ODBC, …). interfaz visual.
distintas técnicas de minería de datos: redes neuronales, reglas, clustering, ….
evaluación por partición, …
manipulación de datos (combinación y separación). gestión de proyectos (CRISP-DM), exportación de
modelos, …
Incluye herramientas para flujo de proceso: trata en el proceso KDD como un proceso y las fases se pueden repetir, modificar y grabar.
Herramientas
EJEMPLO: Clementine (www.spss.com)
Herramientas
EJEMPLO: SAS ENTERPRISE MINER (EM)
Herramienta completa. Incluye:
interfaz gráfico.
conexión a bases de datos (a través de ODBC y SAS datasets).
evaluación por partición, …
distintas técnicas: árboles de decisión, redes neuronales, regresión y clustering.
conversión de los modelos en código SAS.
Incluye herramientas para flujo de proceso: trata en el proceso KDD como un proceso y las fases se pueden repetir, modificar y grabar.
33
EJEMPLO:
SAS ENTERPRISE MINER (EM) (flujo del proceso KDD)Herramientas
34Angoss Knowledge Seeker:
Herramientas
35
Oracle: Herramientas “Business Intelligence” y
“Data Mining”
Engine (Java DM) desde Oracle 9i Suite (OracleBi Data Miner).
Herramientas
Difundir Analizar Rastrear Actuar Decidir Modelar Definir Hipótesis Fuente: IDC, 2004 Oracle Oracle10g10g (RDBMS con (RDBMS con OLAP y DM) OLAP y DM) Oracle Oracle Reports Reports Services Services OracleBI OracleBI Warehouse Warehouse Builder Builder Oracle Oracle E E--BusinessBusiness Suite Suite OracleOracleDailyDaily
Business Business Intelligence Intelligence Oracle Oracle Balanced Balanced Scorecard Scorecard OracleActivit OracleActivit y yBasedBased Management Management Oracle Oracle Enterprise Enterprise Planning & Planning & Budgeting Budgeting OracleBI OracleBI Discoverer Discoverer OracleBI OracleBI Data
Data MinerMiner
OracleBI OracleBI Spreadsheet Spreadsheet Add Add--inin Non
Non--OracleOracle sources
sources
36
OracleBI Data Miner
37
MS SQL SERVER: Analysis Services
OLAP Services de SQL Server 97 se amplió a partir de SQL Server 2000 con características de DM en el llamado “Analysis Services”. Reforzado en el SQL Server 2005. Lenguaje DMX: 1. Crear el modelo 2. Entrenar el modelo 3. Realizar predicciones
La integración y visualización es a veces mediante “Data Mining Client Ribbon” o Excel.
Herramientas
38
Herramientas
Weka, University of Waikato, NZ. (cs.waikato.ac.nz)
Herramientas
Weka, University of Waikato, NZ. (cs.waikato.ac.nz)
Herramientas
Situación de las herramientas según presencia y rendimiento (según METAGROUP dic. 2004).
41
Los datos a integrar dependen de los objetivos de
minería de datos, que, a su vez, dependen de los
objetivos de negocio.
Ejemplo:
Objetivo de negocio: “Reducir colas”
Objetivo de negocio refinado: “Asignar recursos más ajustados en cajas según la afluencia de clientes”.
Objetivo de minería de datos: “Predecir con antelación la afluencia de clientes de una tienda en cualquier tramo del día”.
Integración de Datos
42
Como resultado de esta fase de definición del
problema o de establecimiento de los objetivos de
minería de datos:
Lista de objetivos de minería de datos y su correspondencia con objetivos de negocio.
Esclarecimiento de qué datos, tanto internos como externos pueden ser necesarios para cada uno de ellos. Priorización de los mismos según la facilidad de llevarlo a
cabo (datos necesarios, recursos, etc.) y el impacto en el objetivo de negocio esperado.
Empezaremos por los primeros de la lista.
Con esta priorización evitamos objetivos que no resuelven ningún problema pertinente u objetivos imposibles.
Integración de Datos
43
Integración de Datos
Una vez definidos y seleccionados los objetivos de
análisis es necesario esclarecer qué datos son
necesarios para poder obtener los modelos
deseados:
Dos aproximaciones:
Recoger exclusivamente los datos necesarios para el objetivo u objetivos de análisis en cuestión.
Crear un repositorio de datos para permitir este y otros análisis ulteriores.
Es necesario RECOPILAR e
INTEGRAR los datos.
44
Integración de Datos
Generalmente, la información que se quiere investigar sobre un cierto dominio de la organización se encuentra:
en bases de datos y otras fuentes muy diversas, tanto internas como externas.
muchas de estas fuentes son las que se utilizan para el trabajo transaccional.
se requiere un histórico suficiente (1, 5 o 10 años dependiendo del ámbito.
el nivel de detalle (granularidad) para la minería de datos ha de ser alto.
45
Integración de Datos
La aproximación mínima si se quiere realizar una minería de datos puntual u ocasional es
Crear un repositorio de datos.
La aproximación adecuada si se quiere realizar minería de datos con continuidad y abierta a nuevos objetivos de análisis es:
Crear un almacén de datos o añadir un “datamart” a un almacén de datos existente.
El análisis posterior será mucho más sencillo si la fuente es unificada, accesible (interna) y desconectada del trabajo transaccional.
46
Integración de Datos
Recogida de Información
Base de Datos Transaccional 1 Fuente de Datos 1 Fuentes Externas Fuentes Internas Fuente de Datos 2 Fuente de Datos 3 HTML Repositorio o Almacén de Datos texto Base de Datos Transaccional 2 Informes textoIntegración de Datos
Recogida de Información Interna
Diferentes formatos:
Bases de datos operacionales… Hojas de cálculo…
Informes internos: estratégicos… Reglas de negocio…
La integración es costosa y difícil hacia un único
formato.
Integración de Datos
Recogida de Información Interna
Información no siempre adecuada:
Datos insuficientes:
Ejemplo: la tarjeta de unos grandes almacenes pide la nacionalidad del cliente, pero no los hábitos alimenticios o el tipo de trabajo (sólo cuenta propia o ajena o parado). Estos factores no podrán entrar en el análisis.
Datos incompletos o de baja calidad:
Ejemplo: el formulario permite dejar algunos campos en blanco. Los datos de la tarjeta no se actualizan si el cliente cambia de domicilio, de trabajo, de pareja, …
49
Integración de Datos
Recogida de Información Externa
Necesidad de fuentes muy diversas:
Demografías (censo), páginas amarillas, usos y hábitos de la población, penetración de teléfono, luz o Internet. Datos compartidos en una industria o área de negocio, organizaciones y colegios profesionales, catálogos, etc. Datos resumidos de áreas geográficas, distribución y precios de la competencia, evolución de la economía... Información de calendarios y climatológicas,
información de tráfico, programaciones televisivas-deportivas, catástofres,..
Bases de datos externas compradas a otras compañías.
50
Integración de Datos
¿Es necesario siempre tener un almacén de datos para hacer minería de datos?
NO
¿Es conveniente tener un almacén de datos para hacer
minería de datos de una manera regular si el volumen de datos es importante?
SÍ
¿Si existe ya un almacén de datos en la organización, puedo usarlo para la minería de datos?
NO SIEMPRE. Depende de si tiene la suficiente
granularidad y las dimensiones necesarias para el análisis.
51
La preparación de datos es una de las fases del
proceso de extracción de conocimiento a partir de
datos (KDD).
Preparación de Datos
Esta fase suele suponer cerca de
la mitad del esfuerzo del proceso
de extracción de conocimiento.
52
Tras la recogida e integración de datos:
El objetivo de la “Preparación de Datos” es obtener la “VISTA MINABLE”, a partir de unos datos que podían ser
inadecuados, faltantes, erróneos, irrelevantes, dispersos, etc. … … … … … … … ... no … 0 no 2.100 24.000 10 105 sí … 0 no 1.900 18.000 15 104 no … 1 sí 1.700 9.000 9 103 sí … 0 sí 3.500 30.000 2 102 no … 2 sí 2.200 60.000 15 101 Devuelve-crédito … Cuentas morosas Casa propia Salario (euros) C-crédito (euros) D-crédito (años) Idc VISTA MINABLE
Preparación de Datos
Vista Minable: conjunto de datos que incluyen
todas las variables de interés para el problema concreto en el formato adecuado.
53
La preparación de datos incluye:
Comprensión de los datos Visualización de los datos Limpieza
Transformación Selección
Preparación de Datos
54
El primer paso consiste en conocer y comprender
los datos: un resumen de características es útil:
Preparación de Datos: Comprensión
Las técnicas de visualización ayudan a comprender
los datos.
Preparación de Datos: Visualización
Examinando dato a dato con TableLens
Las técnicas de visualización ayudan a comprender
los datos.
Preparación de Datos: Visualización
57
Las técnicas de visualización ayudan a comprender
los datos.
Preparación de Datos: Visualización
© Francisco Javier Ferrer Troyano Coordenadas paralelas
58
Las técnicas de visualización ayudan a comprender
los datos.
Preparación de Datos: Visualización
© Francisco Javier Ferrer Troyano Caras de Chernoff
59
Las técnicas de visualización ayudan a comprender
los datos.
Preparación de Datos: Visualización
© Francisco Javier Ferrer Troyano Series temporales
60
Atributos Nominales: Debemos analizar con detalle
cada uno de los atributos:
Podemos
detectar:
Valores redundantes: (Hombre,Varón) Valores despreciables(agrupar valores como
otros)
61
Atributos Numéricos: Debemos analizar con detalle
cada uno de los atributos:
Podemos detectar:
Valores anómalos Distribuciones en los datos
Preparación de Datos: Limpieza
62
Atributos Numéricos: Otra alternativa especialmente
útil para los atributos numéricos son las gráficas de
dispersión.
Preparación de Datos: Limpieza
Atributos Numéricos: Cuando tenemos más de dos
variables el gráfico anterior se puede repetir para
todas las combinaciones posibles.
Preparación de Datos: Limpieza
Acciones ante datos anómalos (outliers) o faltantes:
ignorar.
filtrar (eliminar o sustituir) la columna. filtrar la fila.
reemplazar el valor por un valor de media o predicho. segmentar las filas entre las de datos correctos y el resto y trabajar separadamente.
discretizar los atributos numéricos.
Desistir y modificar la política de calidad de datos para la próxima vez.
65
Transformaciones y Selecciones:
Transformaciones:
Transformaciones globales: p.ej. filas por columnas. Creación o modificación de atributos:
Discretización y Numerización.
Normalización.
Atributos derivados. Reducción de atributos.
Selecciones:
Verticales (sobre las características / atributos):
Selección de características. Horizontales (sobre las instancias):
Muestreo.
Preparación de Datos:
Transf. y Selección
El mismo objetivo: reducción de datos
66
Reducción de datos:
La proporción de dimensiones (variables) respecto a la cantidad de instancias puede marcar la calidad de los modelos.
Una manera de intentar resolver este problema es mediante la reducción de dimensiones, por:
selección de un subconjunto de atributos, o sustitución del conjunto de atributos iniciales por otros diferentes.
Preparación de Datos:
Transf. y Selección
Maldición de la dimensionalidad
67
Intercambio de Dimensiones: (filas por columnas)
EJEMPLO:
Una tabla de cestas de la compra, donde cada atributo indica si el producto se ha comprado o no.
Objetivo: Ver si dos productos se compran conjuntamente (regla de asociación).
Es muy costoso: hay que mirar al menos la raíz cuadrada de todas las relaciones (cestas).
Y puede haber millones en una semana... Sin embargo...
Productos sólo hay unos 8.000.
Preparación de Datos: Transformación
68
Intercambio de Dimensiones: EJEMPLO
Si se intercambian filas por columnas tenemos:
Sólo es necesario combinar dos filas para saber si
hay asociación.
B1 B2 B3 B4 B5 B6 ... Jabón X X Huevos X X Patatas Fritas X X X Champú X X Jabón + Champú X X Huevos + Patatas X X69
En otras ocasiones añadir atributos nuevos puede mejorar el proceso de aprendizaje 0 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 Meses V en tas ( m ill . e u ro s) Datos
Modelo Lineal At. Originales Modelo Lineal At. Cuadráticos
La regresión lineal no se aproxima a la solución
Añadiendo un nuevo atributo z=meses^2 se obtiene un buen modelo
Creación de atributos:
Preparación de Datos: Transformación
70
El conocimiento del dominio es el factor que más determina la creación de buenos atributos derivados
Atributo Derivado Fórmula
Índice de obesidad Altura2/ peso
Hombre familiar Casado, varón e “hijos>0”
Síntomas SARS 3-de-5 (fiebre alta, vómitos, tos, diarrea, dolor de cabeza) Riesgo póliza X-de-N (edad < 25, varón, años de carné < 2, vehículo deportivo)
Beneficios brutos Ingresos - Gastos
Beneficios netos Ingresos – Gastos – Impuestos Desplazamiento Pasajeros * kilómetros Duración media Segundos de llamada / número de llamadas
Densidad Población / Área
Retardo compra Fecha compra – Fecha campaña
Creación de atributos:
Preparación de Datos: Transformación
La discretización, o cuantización (también llamada “binning”) es la conversión de un valor numérico en un valor nominal ordenado.
La discretización se debe realizar cuando: El error en la medida puede ser grande Existen umbrales significativos (p.e. notas)
En ciertas zonas el rango de valores es más importante que en otras (interpretación no lineal)
Aplicar ciertas tareas de MD que sólo soportan atributos nominales (p.e. reglas de asociación)
Discretización:
Preparación de Datos: Transformación
Ejemplo: atributo “tícketssemanales” (numérico, de 1 a 15).
Discretización :
Preparación de Datos: Transformación
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Atributo “tícketssemanalesNOM” (nominal: bajo, medio, alto).
73
La numerización es el proceso inverso a la
discretización
La numerización se debe realizar cuando se
quieren aplicar ciertas técnicas de MD que
sólo soportan atributos numéricos (p.e.
Regresión, métodos basados en distancias)
Numerización:
Preparación de Datos: Transformación
convertir un atributo nominal en numérico.
74
numerización “1 a n”: Si una variable nominal x tiene posibles valores creamos n variables numéricas, con valores 0 o 1 dependiendo de si la variable nominal toma ese valor o no.
EJEMPLO: Convertir el campo “tarjeta” que contiene los
valores: { “VISA”, “4B”, “Amer”, “Maestro” } en cuatro atributos binarios.
numerización “1 a 1”: Se aplica si existe un cierto orden o magnitud en los valores del atributo nominal.
EJEMPLO: si tenemos categorías del estilo {niño, joven,
adulto, anciano} podemos crear un único atributo y numerar los valores de 1 a 4.
Preparación de Datos: Transformación
Numerización:
75
Algunos métodos de aprendizaje funcionan mejor con los atributos numéricos normalizados entre 0 y 1.Tipos de normalización: lineal uniforme: sigmoidal …
Ejemplo: Los tíckets semanales pasan de estar entre 0 y 15 a
estar entre 0 y 1. min max min ' − − = v v
Normalización:
Preparación de Datos: Transformación
76
La técnica más conocida para reducir la dimensionalidad por transformación se denomina “análisis de componentes
principales” (“principal component analysis”), PCA.
PCA transforma los matributos originales en otro conjunto de atributos pdonde p≤m.
Este proceso se puede ver geométricamente como un cambio de ejes en la representación (proyección). Los nuevos atributos se generan de tal manera que son independientes entre sí y, además, los primeros tienen más relevancia (más contenido informacional) que los últimos.
Reducción de atributos por transformación:
77 Muestreo más habitual: Aleatorio Simple: con reemplazamiento, o sin reemplazamiento. Otros: Aleatorio Estratificado. De grupos. Exhaustivo.
Preparación de Datos: Selección
Muestreo:
permite reducir el tamaño de datos de trabajo
78
Muestreo:
¿Con cúantos datos es preferible trabajar?
Depende, en general, del número de atributos y
valores(“grados de libertad” ) y del método de aprendizaje y de su expresividad (por ejemplo una regresión lineal requiere muchos menos ejemplos que una red neuronal). Se utiliza una estrategia incremental, en el que se va haciendo la muestra cada vez más grande (y diferente si es posible) hasta que se vea que los resultados no varían significativamente entre un modelo y otro.