SISTEMAS DE INFORMACIÓN ESTRATÉGICOS
PARTE DM
TEMA II: EL PROCESO DE KDD. TÉCNICAS DE MINERÍA DE DATOS María José Ramírez
[email protected]
Departamento de Sistemas Informáticos y Computación Universitat Politècnica de València
2
Objetivos Tema 2 • Conocer el proceso de integración y preparación de datos y sus técnicas más relevantes. • Conocer las distintas técnicas de aprendizaje automático y estadísticas utilizadas en minería de datos, su potencial, su coste computacional y sus limitaciones de representación y de inteligibilidad. • Conocer los métodos descriptivos y predictivos más importantes. • Utilizar métodos de combinación de técnicas (p.ej. voting) y de reiteración (p.ej. boosting). • Conocer medidas de evaluación de modelos (p.ej. validación cruzada). • Establecer nociones sobre implantación y mantenimiento de modelos.
3
2. El proceso de KDD. Técnicas de Minería de Datos 2.1. Definición del problema 2.2. Integración de datos 2.3. Preparación de Datos 2.4. Modelado 2.5. Evaluación. 2.6. Aplicación de Modelos 2.7. Monitorización y Revisión de Modelos
4
Definición del Problema § El análisis puede ser no dirigido o dirigido. § No Dirigido: “aquí están los datos. Busca patrones”. § Dirigido: “la dirección quiere que se mejore esto y aquello”.
En la inmensa mayoría de los casos se utiliza minería de datos dirigida
Es necesario extraer requisitos de análisis
5
Definición del Problema § ¿Cómo se extraen estos requisitos? § A partir de los objetivos estratégicos de la empresa (objetivos de negocio): § Aumentar las ventas § Fidelizar al cliente § Reducir esperas. § …
Es necesario detallar más para llegar a objetivos de análisis
6
Definición del Problema § Es necesario dedicar un esfuerzo a establecer objetivos de minería de datos a partir 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”.
7
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: Es necesario RECOPILAR e INTEGRAR los datos. § 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.
8
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. § volúmenes de datos muy grandes.
9
Integración de Datos El análisis posterior será mucho más sencillo si la fuente es unificada, accesible (interna) y desconectada del trabajo transaccional. § 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.
10
Integración de Datos § Recogida de Información
Fuente de Datos 1 texto
Fuente de Datos 3 HTML
Base de Datos Transaccional 1 Fuentes Externas
Informes
Fuentes Internas
texto
Base de Datos Transaccional 2
Repositorio o Almacén de Datos
Fuente de Datos 2
11
Integració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.
12
Integración de Datos § Recogida de Información Interna § Información no siempre adecuada: § Datos insuficientes: § Ejemplo: el formulario de alta de un nuevo cliente 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, …
13
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 televisivasdeportivas, catástofres,.. § Bases de datos externas compradas a otras compañías.
14
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.
15
Preparación de Datos § La preparación de datos es una de las fases del proceso de extracción de conocimiento a partir de datos (KDD).
Esta fase suele suponer cerca de la mitad del esfuerzo del proceso de extracción de conocimiento.
16
Preparación de Datos § 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.
VISTA MINABLE Idc
D-crédito (años)
C-crédito (euros)
Salario (euros)
Casa propia
Cuentas morosas
…
Devuelvecrédito
101
15
60.000
2.200
sí
2
…
no
102
2
30.000
3.500
sí
0
…
sí
103
9
9.000
1.700
sí
1
…
no
104
15
18.000
1.900
no
0
…
sí
105
10
24.000
2.100
no
0
…
no
...
…
…
…
…
…
…
…
Vista Minable: conjunto de datos que incluyen todas las variables de interés para el problema concreto en el formato adecuado.
17
Preparación de Datos
§ La preparación de datos incluye: § Comprensión de los datos § Visualización de los datos § Limpieza § Transformación § Selección
18
Preparación de Datos: Comprensión § El primer paso consiste en conocer y comprender los datos: un resumen de características es útil:
19
Preparación de Datos: Visualización § Las técnicas de visualización ayudan a comprender los datos.
Examinando dato a dato con TableLens
© Francisco Javier Ferrer Troyano
20
Preparación de Datos: Visualización § Las técnicas de visualización ayudan a comprender los datos. scatterplot
surveyplot
© Francisco Javier Ferrer Troyano
21
Preparación de Datos: Visualización § Las técnicas de visualización ayudan a comprender los datos. Coordenadas paralelas
© Francisco Javier Ferrer Troyano
22
Preparación de Datos: Visualización § Las técnicas de visualización ayudan a comprender los datos. EARTHQUAKES IN JAPAN SINCE 1900
23
Preparación de Datos: Limpieza § Atributos Nominales: Debemos analizar con detalle cada uno de los atributos: § Podemos detectar: § Valores redundantes: § (Hombre,Varón) § Valores despreciables (agrupar valores como otros)
24
Preparación de Datos: Limpieza § Atributos Numéricos: Debemos analizar con detalle cada uno de los atributos: Podemos detectar: § Valores anómalos § Distribuciones en los datos
25
Preparación de Datos: Limpieza § Atributos Numéricos: Otra alternativa especialmente útil para los atributos numéricos son las gráficas de dispersión.
26
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.
27
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.
28
Preparación de Datos: Transf. y Selección § 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.
El mismo objetivo: reducción de datos
§ Atributos derivados.
§ Reducción de atributos.
§ Selecciones: § Verticales (sobre las características / atributos): § Selección de características.
§ Horizontales (sobre las instancias): § Muestreo.
29
Preparación de Datos: Transf. y Selección Reducción de datos: § La proporción de dimensiones (variables) respecto a la cantidad de instancias puede marcar la calidad de los modelos.
Maldición de la dimensionalidad § 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.
30
Preparación de Datos: Transformación 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.
31
Preparación de Datos: Transformación Intercambio de Dimensiones: EJEMPLO Si se intercambian filas por columnas tenemos: Jabón Huevos Patatas Fritas Champú Jabón + Champú Huevos + Patatas
B1 X
B2
B3 X
X X X
X
X
X X
B4
B5
X
X X
B6
...
X
§ Sólo es necesario combinar dos filas para saber si hay asociación.
32
Preparación de Datos: Transformación Creación de atributos: § En otras ocasiones añadir atributos nuevos puede mejorar el proceso de aprendizaje 8
Datos
Ventas (mill. euros)
7
Modelo Lineal At. Originales
6
Modelo Lineal At. Cuadráticos
§ La regresión lineal no se aproxima a la solución
5 4
§ Añadiendo un nuevo atributo z=meses^2 se obtiene un buen modelo
3 2 1 0 1 2
3
4 5
6 7
8 9 10 11 12 13 14 15 16 17 18 19 20 21 Meses
33
Preparación de Datos: Transformación Creación de atributos: § 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
34
Preparación de Datos: Transformación Discretizació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)
35
Preparación de Datos: Transformación Discretización : Ejemplo: atributo “tícketssemanales” (numérico, de 1 a 15).
0 1
2
bajo
3
4
5
6
7
medio
8
9 10 11 12 13 14 15
alto
Atributo “tícketssemanalesNOM” (nominal: bajo, medio, alto).
36
Preparación de Datos: Transformación Numerización: § La numerización es el proceso inverso a la discretización convertir un atributo nominal en numérico. § 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)
37
Preparación de Datos: Transformación Numerización: § 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.
38
Preparación de Datos: Transformación Normalización: § Algunos métodos de aprendizaje funcionan mejor con los atributos numéricos normalizados entre 0 y 1. § Tipos de normalización: § lineal uniforme: v' = v − min § sigmoidal
max − min
§ … § Ejemplo: Los tíckets semanales pasan de estar entre 0 y 15 a estar entre 0 y 1.
39
Preparación de Datos: Transformación Reducción de atributos por transformación: § 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 m atributos originales en otro conjunto de atributos p donde 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.
40
Preparación de Datos: Selección Selección de características: Existen dos tipos generales de métodos para seleccionar características: • Métodos de filtro o métodos previos: se filtran los atributos irrelevantes antes de cualquier proceso de minería de datos y, en cierto modo, independiente de él. • Métodos basados en modelo o métodos de envolvente (wrapper): la bondad de la selección de atributos se evalúa respecto a la calidad de un modelo de extraído a partir de los datos (utilizando, lógicamente, algún buen método de validación).
41
Preparación de Datos: Selección Muestreo: La manera más directa de reducir el tamaño de una población o conjuntos de individuos es realizar una selección o muestreo. Nos podemos plantear dos situaciones, dependiendo de la disponibilidad de la población: • Se dispone de la población: en este caso se ha de determinar qué cantidad de datos son necesarios y cómo hacer la muestra • Los datos son ya una muestra de realidad y sólo representan una parte de esta realidad
42
Preparación de Datos: Selección Tipos de muestreo:
Muestreo aleatorio simple
Muestreo aleatorio estratificado
Muestreo por grupos (todos menos
)
Muestreo exhaustivo
43
Preparación de Datos: Selección Muestreo: • ¿Cúantos datos son necesarios mantener? Depende, en general, del número de “grados de libertad” (número de atributos y valores) 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 puede utilizar 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.
44
Modelado § Dada la vista minable, pasamos a la fase central del proceso. § Reconocida la tarea, hemos de decidir el algoritmo o técnica a utilizar entre las que disponga la herramienta. § Recordemos:
Un tipo de técnica puede servir para varios tipos de estudios Un tipo de estudio puede resolverse con distintos tipos de técnicas
45
Modelado § El orden que seguiremos será el siguiente: § Técnicas Descriptivas: § correlaciones y estudios factoriales (análisis de relaciones entre atributos numéricos). § asociaciones y dependencias (análisis de relaciones entre atributos categóricos). § agrupamiento y sumarización. § otros. § Técnicas Predictivas: § regresión (salida numérica). § clasificación y categorización (salida categórica). § otros.
46
Modelado: Métodos Descriptivos Correlaciones y Estudios Factoriales: § Permiten establecer relevancia/irrelevancia de factores y si aquélla es positiva o negativa respecto a otro factor o variable a estudiar. § Ejemplo (Kiel 2000): Estudio de visitas: 11 pacientes, 7 factores: § § § § § § § §
Health: salud del paciente (referida a la capacidad de ir a la consulta). (1-10) Need: convicción del paciente que la visita es importante. (1-10) Transportation: disponibilidad de transporte del paciente al centro. (1-10) Child Care: disponibilidad de dejar los niños a cuidado. (1-10) Sick Time: si el paciente está trabajando, puede darse de baja. (1-10) Satisfaction: satisfacción del cliente con su médico. (1-10) Ease: facilidad del centro para concertar cita y eficiencia de la misma. (1-10) No-Show: indica si el paciente no se ha pasado por el médico durante el último año (0-se ha pasado, 1 no se ha pasado)
47
Modelado: Métodos Descriptivos Correlaciones y Estudios Factoriales. Ejemplo (cont.): § Matriz de correlaciones: Health Need Transportation Child Care Sick Time Satisfaction Ease No-Show
Health 1 -0.7378 0.3116 0.3116 0.2771 0.22008 0.3887 0.3955
Need
Transp’tion
Child Care
Sick Time
Satisfaction
Ease
No-Show
1 -01041 -01041 0.0602 -0.1337 -0.0334 -0.5416
1 1 0.6228 0.6538 0.6504 -0.5031
1 0.6228 0.6538 0.6504 -0.5031
1 0.6257 0.6588 -0.7249
1 0.8964 -0.3988
1 -0.3278
1
§ Coeficientes de Regresión: Independent Variable Health Need Transportation Child Care Sick Time Satisfaction Ease
Coefficient .6434 .0445 -.2391 -.0599 -.7584 .3537 -.0786
Indica que un incremento de 1 en el factor Health aumenta la probabilidad de que no aparezca el paciente en un 64.34%
48
Modelado: Métodos Descriptivos Reglas de Asociación : § Se buscan dependencias de la siguiente forma (if Ante then Cons): P.ej.
if (X1= a, X3=c, X5=d) then (X4=b, X2=a)
§ Evaluación: • Dos parámetros Tc (confianza) y Ts (soporte): Tc= certeza de la regla =rc/ra, fuerza o confianza P(Cons|Ante) Ts = mínimo nº de casos o porcentaje en los que se aplica satisfactoriamente (rc o rc /n respectivamente). Llamado también prevalencia: P(Cons ∧ Ante)
49
Modelado: Métodos Descriptivos Reglas de Asociación. Ejemplo: VINO “EL CABEZÓN”
GASEOSA “CHISPA”
VINO “TÍO PACO”
HORCHATA “XUFER”
BIZCOCHOS “GOLOSO”
GALLETAS “TRIGO”
CHOCOLATE “LA VACA”
T1
1
1
0
0
0
1
0
T2
0
1
1
0
0
0
0
T3
0
0
0
1
1
1
0
T4
1
1
0
1
1
1
1
T5
0
0
0
0
0
1
0
T6
1
0
0
0
0
1
1
T7
0
1
1
1
1
0
0
T8
0
0
0
1
1
1
1
T9
1
1
0
0
1
0
1
T10
0
1
0
0
1
0
0
50
Modelado: Métodos Descriptivos Reglas de Asociación. Ejemplo: § Si definimos un soporte mínimo igual a dos: § PRIMERA FASE: conjuntos de ítems frecuentes: § Siete conjuntos de sólo un ítem (siete atributos) § De los 7!/(2!5!)=21 posibles casos de conjuntos formados por dos ítems, tenemos 15 conjuntos que superan el soporte mínimo. § 11 conjuntos de tres ítems. § 2 conjuntos de cuatro ítems.
§ SEGUNDA FASE: creación de reglas a partir de los conjuntos de ítems frecuentes: SI bizcochos “Goloso” Y horchata “Xufer” ENTONCES galletas “Trigo” SI bizcochos “Goloso” Y galletas “Trigo” ENTONCES horchata “Xufer” SI galletas “Trigo” Y horchata “Xufer” ENTONCES bizcochos “Goloso”
Sop=3, Conf=3/4 Sop=3, Conf=3/3 Sop=3, Conf=3/3
51
Modelado: Métodos Descriptivos Reglas de Asociación. § El algoritmo más habitual es el “A PRIORI” y derivados. § Existen numerosas variantes de las reglas de asociación: § Asociaciones entre jerarquías (p.ej. familias y categorías de productos). § Asociaciones negativas: “80% de los clientes que compran pizzas congeladas no compran lentejas”. § Asociaciones sobre atributos no binarios.
52
Modelado: Métodos Descriptivos Reglas de Asociación Secuenciales: § Se trata de establecer asociaciones del estilo: “si compra X en T comprará Y en T+P” Ejemplo:
53
Modelado: Métodos Descriptivos Reglas de Asociación Secuenciales: Ejemplo (cont.):
54
Modelado: Métodos Descriptivos Reglas de Asociación Secuenciales: Ejemplo (cont.):
Mary
55
Modelado: Métodos Descriptivos Agrupamiento / segmentación / sumarización Se trata de buscar agrupamientos naturales en un conjunto de datos tal que tengan semejanzas. § Métodos de Agrupamiento: § Jerárquicos. § No jerárquicos: generar particiones a un nivel. § Paramétricos. § No paramétricos.
56
Modelado: Métodos Descriptivos Agrupamiento: Métodos jerárquicos:
Se denomina Dendograma o Hierarchical Tree Plot:
57
Modelado: Métodos Descriptivos Agrupamiento: Métodos paramétricos: P.ej. el algoritmo EM (Expectation Maximization, Maximum Likelihood Estimate)
Gráficas: Enrique Vidal
58
Modelado: Métodos Descriptivos Agrupamiento: Métodos No Paramétricos Métodos: § k-NN. § K-medias. § basados en centroides. § SOM (Self-Organizing Maps) o Redes Kohonen. § El algoritmo Cobweb. § El algoritmo AUTOCLASS.
59
Modelado: Métodos Descriptivos Agrupamiento: Métodos No Paramétricos 1-NN (Nearest Neighbour): Dado una serie de ejemplos en un espacio, se conecta cada punto con su punto más cercano: G1 G4 G2 G3
La conectividad entre puntos genera los grupos. A veces hace grupos pequeños. Existen variantes: k-NN, para de agrupar cuando llega a un número de grupos.
60
Modelado: Métodos Descriptivos Agrupamiento. Métodos No Paramétricos k-medias: § Se utiliza para encontrar los k puntos más densos en un conjunto arbitrario de puntos. § Método (algoritmo): 1. Dividir aleatoriamente los ejemplos en k conjuntos y calcular la media (el punto medio) de cada conjunto. 2. Reasignar cada ejemplo al conjunto con el punto medio más cercano. 3. Calcular los puntos medios de los k conjuntos. 4. Repetir los pasos 2 y 3 hasta que los conjuntos no varíen.
61
Modelado: Métodos Descriptivos Agrupamiento. Métodos No Paramétricos k-medias: 2
2
1 1
3
3 2
2
2
2 2
x2 x1 3 2 3 x
1
1
2
1
x 2
1 1
3
3
3 3
1 2
2
2
x3
1
2
2 2 2 2
2
x
3
x
1 1
1
1
1
3 3
x
1 1
1
x 2
1 1 3 3 3 x 3 3
x
1
1
1
3
1
x
1 3
3 3
3
2
1
1 2
1 1
1
1
2 2
2
1
3
2
3
x3
2 22 3
x2 x1 3 2 3 x
3
2 2
3
2
2
1
2
3
3
2
1
1
1
2
3
1
3
2
1
1 2
2
1
2
x
1 1
1
x3
2 2 2
x 2
1
1
1 1 1 3 3
3 3 3 3
x
x11 1
1
62
Modelado: Métodos Descriptivos Agrupamiento. Métodos No Paramétricos Versión incremental. El valor de k se suele determinar heurísticamente.
§ Problemas: § Si k se elige muy pequeño, hay grupos que se quedan sin centro. § Si k se elige muy grande, hay centros que se quedan huérfanos.
§ Aunque esto es preferible a... § Incluso con k exacto, puede haber algún centro que quede huérfano.
63
Modelado: Otros Métodos Descriptivos
Estadísticos: § § § §
Estudio de la distribución de los datos. Estimación de Densidad Detección datos anómalos. Análisis de dispersión (p.ej. las funciones de separabilidad pueden considerarse como técnicas muy simples no supervisadas).
64
Modelado: Métodos Predictivos Métodos predictivos: regresión y clasificación. La mayoría de técnicas permiten resolver ambos problemas
Regresión/Estimación Clasificación
n
n
§ §
Regresión lineal Regresión no lineal y adaptativa.
§
Regresión logística
§
kNN (Vecinos más próximos)
§
Discriminante lineal
§
Redes neuronales
§
Árboles de decisión
§
Máquinas de vectores soporte
§
Métodos bayesianos
§
…
65
Modelado: Métodos Predictivos Regresión: Regresión Lineal Global. Se buscan los coeficientes de una función lineal
Estimación
fˆ ( x) = w0 + w1 x1+... + wn xn
§ Para dos y tres variables existe solución algebraica. § Para más variables, es necesario utilizar algoritmos iterativos (investigación operativa, descenso del gradiente).
66
Modelado: Métodos Predictivos Regresión: Regresión no lineal por cambios de variable. § Estimación Logarítmica:
§ Se sustituye la función a obtener por y=ln(f):
y = ln(f)
§ Se hace regresión lineal para calcular los coeficientes y a la hora de predecir se calcula la f = ey.
f’ = ey No confundir con la “Regresión Logística”. (variación que se usa para clasificación entre 0 y 1 usando la f= ln(p/(1-p)))
67
Modelado: Métodos Predictivos Regresión: Regresión no lineal por cambios de variable. § Otros cambios: § Se introducen nuevas variables cuadráticas, cúbicas o adhoc para el problema en cuestión: 8
Datos
Ventas (mill. euros)
7
Modelo Lineal At. Originales
6
Modelo Lineal At. Cuadráticos
5
§ Nuevo atributo: meses2
4 3 2 1 0 1 2
3
4 5
6 7
8 9 10 11 12 13 14 15 16 17 18 19 20 21 Meses
68
Modelado: Métodos Predictivos Regresión: Regresión No Lineal. § Lineal ponderada localmente:
?
?
?
§ No genera un modelo, sino uno diferente para cada punto.
69
Modelado: Métodos Predictivos Regresión: Regresión No Lineal. § Adaptativa y series temporales (se asume un orden temporal para una de las variables):
§ Cadenas de Markov § Vector Quantization § Algoritmo MARS (Multiple Adaptive Regression Splines). § …
70
Modelado: Métodos Predictivos Métodos predictivos: regresión y clasificación. La mayoría de técnicas permiten resolver ambos problemas
Regresión/Estimación Clasificación
n
n
§ §
Regresión lineal Regresión no lineal y adaptativa.
§
Regresión logística
§
kNN (Vecinos más próximos)
§
Discriminante lineal
§
Redes neuronales
§
Árboles de decisión
§
Máquinas de vectores soporte
§
Métodos bayesianos
§
…
71
Modelado: Métodos Predictivos Clasificación: regresión logística: § La regresión logística es una modificación de la regresión lineal que sirve para clasificación (sólo para dos clases). § Da un valor entre 0 y 1 (0 representa una clase y 1 representa la otra clase), mediante la transformación: f= ln(p/(1-p)))
72
Modelado: Métodos Predictivos Clasificación: k-NN (Nearest Neighbour, vecinos más próximos): Se basa en la noción de similitud: § Un individuo será de la misma clase que individuos similares. § Ejemplo: ¿Comprará el cliente X el producto Y? § Se buscan clientes similares y se mira qué hicieron. § Las técnicas se basan en el concepto de “distancia”, contrapartida matemática al concepto de similitud.
73
Modelado: Métodos Predictivos Clasificación: k-NN: 1. Se miran los k casos más cercanos. 2. Si todos son de la misma clase, el nuevo caso se clasifica en esa clase. 3. Si no, se calcula la distancia media por clase o se asigna a la clase con más elementos. ?
1-nearest neighbor
Clasifica círculo
?
7-nearest neighbor
Clasifica cuadrado
Partición poliédrica inducida
§ El valor de k se suele determinar heurísticamente. § Existen variantes ponderadas por la distancia.
74
Modelado: Métodos Predictivos Clasificación: Discriminante lineal (Fisher, Perceptron). Salidas W1,1
Entradas
x1
y1
W2,1 x2
W3,1
W4,1
x3
x4
W5,1
x5
§ Computan una función lineal: Se añade un threshold escalón: n
y ' j = ∑ wi , j ·xi i =1
output j = sgn( y ' j ) ⎧1 si y > 0⎫ sgn( y ) = ⎨ ⎬ − 1 si no ⎩ ⎭
75
Modelado: Métodos Predictivos Clasificación: Discriminante lineal. § En algunos problemas sencillos, esta partición es posible: PARTICIÓN LINEAL POSIBLE
§ En muchos otros, no:
PARTICIÓN LINEAL IMPOSIBLE
76
Modelado: Métodos Predictivos Clasificación: Redes neuronales artificiales multicapa (Multi-layer ANN). § Se añaden capas internas, varias salidas, se introducen diferentes funciones de activación e incluso se introducen bucles y retardos. Salidas Capa oculta
h1,1
Entradas
y1
h1,3
h1,2
x1
y3
y2
x2
h1,5
h1,4
x3
x4
77
Modelado: Métodos Predictivos Clasificación: Redes neuronales artificiales multicapa. § Permite particiones no lineales: PARTICIÓN NO LINEAL MÚLTIPLE POSIBLE CON 4 UNIDADES INTERNAS
§ Entrenamiento de la red: § Distintos algoritmos: propagación hacia atrás, … § Se necesitan muchos ejemplos: al menos 10 ejemplos por cada peso y salida a aprender. § P.ej, una red con 50 entradas y 10 nodos internos (con una salida tenemos 500 + 10, necesita 5.100 ejemplos...)
78
Modelado: Métodos Predictivos Clasificación: Máquinas de vectores soporte (SVM, métodos basados en núcleo).
§ Se basan en un clasificador lineal muy sencillo. § El clasificador lineal que se usa simplemente saca la línea (en más dimensiones, el hiperplano) que divida limpiamente las dos clases y además que los tres ejemplos más próximos a la frontera estén lo más distantes posibles. Separa perfectamente, pero los tres ejemplos más cercanos (vectores soporte) están muy cerca de la frontera.
Separa perfectamente, pero además los ejemplos más cercanos (vectores soporte) están lo más lejos posible de la frontera.
79
Modelado: Métodos Predictivos Clasificación: Máquinas de vectores soporte § Son eficientes (incluso para cientos de dimensiones), pues el separador lineal sólo mira unos pocos puntos (vectores soporte) y descarta muchos que estarán lejos de la frontera. ¿Pero qué ocurre si los datos no son separables linealmente?
§ Se aplica una función núcleo (“kernel”) que suele aumentar el número de dimensiones de tal manera que los datos sean separables.
80
Modelado: Métodos Predictivos Clasificación: Árboles de Decisión (ID3 (Quinlan), C4.5 (Quinlan), CART). § Algoritmo Divide y Vencerás:
0
1. Se crea un nodo raíz con S:= todos los ejemplos. 2. Si todos los elementos de S son de la misma clase, el subárbol se cierra. Solución encontrada. 3. Se elige una condición de partición siguiendo un criterio de partición (split criterion). 4. El problema (y S) queda subdivido en dos subárboles (los que cumplen la condición y los que no) y se vuelve a 2 para cada uno de los dos subárboles. X>0.25 1
0
No X>0.25
X>0.66 X>0.75 1
Y>0.25
PARTICIÓN CUADRICULAR.
Sí Sí
No
X>0.66
X>0.75 No
Sí
No
Sí Y>0.6
Y>0.25
Y>0.6
No
Sí
81
Modelado: Métodos Predictivos Clasificación: Árboles de Decisión. § Ejemplo C4.5 con datos discretos: Ejemplo 1 2 3 4 5 6 7 8 9 10 11 12 13 14
Sky Sunny Sunny Overcast Rain Rain Rain Overcast Sunny Sunny Rain Sunny Overcast Overcast Rain
Temperature Hot Hot Hot Mild Cool Cool Cool Mild Cool Mild Mild Mild Hot Mild
Humidity High High High High Normal Normal Normal High Normal Normal Normal High Normal High
Wind Weak Strong Weak Weak Weak Strong Strong Weak Weak Weak Strong Strong Weak Strong
PlayTennis No No Yes Yes Yes No Yes No Yes Yes Yes Yes Yes No
82
Modelado: Métodos Predictivos Clasificación: Árboles de Decisión. § Ejemplo C4.5 con datos discretos: Outlook? Sunny Humidity? High NO
Rain
Overcast
Wind?
YES Normal YES
Strong NO
Weak YES
§ Representación Lógica: (Outlook=Sunny AND Humidity=Normal) OR (Outlook=Overcast) OR (Outlook=Rain AND Wind=Weak) P.ej., la instancia: (Outlook = sunny, Temperature = cool, Humidity = high, Wind = strong)
es NO.
83
Modelado ¿Qué método es mejor? § Comparación de acierto (k-NN, C4.5 y CS) (de Thornton 2000): Problema C4.5 BC (Breast Cancer) 72.0 CH (chess endgames) 99.2 GL (glass) 63.2 G2 (GL con clases 1 y 3 combinadas, y 4 a 7 borradas) 74.3 HD (heart disease) 73.6 HE (hepatitis) 81.2 Todas las técnicas son competitivas. HO (horse colic) 83.6 HY (hypothyroid) 99.1 Las diferencias pueden llegar a ser muy IR (iris) 93.8 grandes para un problema en particular. LA (labor negotiations) 77.2 LY (lymphography) 77.5 MU (agaricus-lepiota) 100.0 SE (sick-euthyroid) 97.7 SO (soybean-small) 97.5 VO (house votes, 1984) 95.6 V1 (VO con “physician fee freeze” borrado) 89.4 Media: 85.9
1-NN 67.31 82.82 73.6 81.6 76.24 61.94 76.9 97.76 94.0 94.74 77.03 100.0 93.19 100.0 92.87 87.47 84.8
CS 70.6 89.9 67.19 78.87 78.77 62.62 77.73 96.1 95.76 90.7 79.4 100.0 91.3 99.38 92.59 89.46 85
84
Modelado ¿Qué método es mejor? § Comparación de potencia de representación:
Discriminante lineal, SVM (sin kernel)
Redes Neuronales Multicapa
Árboles de decisión
k-NN
85
Modelado ¿Qué método es mejor? § Comparación según otros factores: § k-NN:
§ Muy fácil de usar § Lento si el nº de ejemplos es excesivamente grande. § Gran expresividad de la partición. § No hay modelo. Inteligible sólo visualmente. § Robusto al ruido pero no a atributos no significativos (las distancias aumentan)
§ Discriminante lineal:
§ Redes neuronales (multicapa):
§ Muy rápido. § Poco expresivo § Inteligible.
§ El número de capas y elementos por capa difíciles de ajustar. § Gran potencia expresiva § Poca inteligibilidad. § Muy sensibles a outliers (datos anómalos). § Se necesitan muchos ejemplos (sqrt(n)).
86
Modelado ¿Qué método es mejor? § Comparación según otros factores: § Árboles de decisión: (C4.5, CART):
§ SVM:
§ Muy fácil de usar. § Rápido § Es tolerante al ruido, a atributos no significativos y a missing attribute values. § Alta inteligibilidad.
§ Muy eficientes cuando hay muchos atributos. § Muy precisos. § Hay que saber elegir el kernel adecuadamente § No inteligible.
87
Evaluación § ¿Cómo se validan/descartan los modelos? § ¿Cómo se elige entre varios modelos? § ¿Cuánto afecta el número de ejemplos? § ¿Cómo afecta la presencia de ruido? § ¿Cómo se comportará mi modelo en el futuro?
88
Evaluación § La evaluación de modelos depende del tipo de tarea: § Predictivas: evaluación más sencilla y general § Descriptivas: evaluación más dependiente de la técnica utilizada.
89
Evaluación § Evaluación de modelos predictivos: ¿Qué medida usamos para comparar el valor correcto “f” del valor estimado “h” ?
§ Clasificación: § %Acierto o, inversamente, %Error § Alcance y precisión (recall & precision). § Área bajo la curva ROC. § …
§ Regresión: § Error cuadrático medio. § Error absoluto medio. § …
90
Evaluación § Evaluación de modelos predictivos: § Dado un conjunto S de n datos, el error se define: § Clasificación: Error
1 errorS (h) = ∑ ∂( f ( x), h( x)) n x∈S
donde δ(a,b)=0 si a=b y 1 en caso contrario.
Clase predicha (h(x))
Clase real (f(x))
Error
Compra
Compra1
No
No Compra
Compra
Sí
Compra
No Compra
Sí
Compra
Compra
No
No Compra
No Compra
No
No Compra
Compra
Sí
No Compra
No Compra
No
Compra
Compra
No
Compra
Compra
No
No Compra
No Compra
No
Fallos / Total
Error = 3/10 = 0.3
91
Evaluación § Evaluación de modelos predictivos: § Dado un conjunto S de n datos, el error se define: § Regresión: Error Cuadrático Medio
errorS (h) = Valor predicho (h(x))
1 ( f ( x) − h( x))2 ∑ n x∈S
Valor real (f(x))
Error
Error2
100 mill. €
102 mill. €
2
4
102 mill. €
110 mill. €
8
64
105 mill. €
95 mill. €
10
100
95 mill. €
75 mill. €
20
400
101 mill. €
103 mill. €
2
4
105 mill. €
110 mill. €
5
25
105 mill. €
98 mill. €
7
49
40 mill. €
32 mill. €
8
64
220 mill. €
215 mill. €
5
25
100 mill. €
103 mill. €
3
9
Error = 744/10 = 74,4
92
Evaluación § Evaluación de modelos predictivos. § ¿Qué muestra S usamos para evaluar las medidas anteriores? § Si usamos todos los datos para entrenar los modelos y esos mismos datos para evaluar, tendremos: § sobreajuste (over-fitting).
§ Si intentamos evitar el sobreajuste generalizando los modelos sin una referencia externa, podemos tener. § subajuste (under-fitting)
93
Evaluación § Evaluación de modelos predictivos. § PARTICIÓN DE LOS DATOS: § Separación de los datos en: § Conjunto de entrenamiento (train). § Los modelos se entrenan con estos datos 1 § Conjunto de prueba error (h) = ∑ ( f (test). ( x) − h( x)) n § Los modelos se evalúan con estos datos. 2
S
x∈S
Vista minable
Partición aleatoria
Modelado Modelos
entrenamiento
prueba
Evaluación
Mejor modelo
94
Evaluación § Evaluación de modelos predictivos. § Particiones más elaboradas: § Validación cruzada: Se parten los datos aleatoriamente en n pliegues de igual tamaño. § Bootstrap: se realizan n muestras con repetición de los datos iniciales.
< Especialmente útiles si hay pocos datos. D Proceso mucho más lento
95
Evaluación § Evaluación de modelos predictivos. § Validación cruzada (detalle): Aprendizaje
h1
§
Entrenamiento
Evaluación
Datos Test
§ Aprendizaje Entrenamiento
Evaluación Test
hn
§
Se realizan n particiones, incluyendo n-1 pliegues para entrenamiento y 1 para evaluación. El error medio se calcula promediando las 10 veces. Se reentrena un último modelo con todos los datos.
96
Evaluación § Evaluación de Modelos Descriptivos: § Reglas de asociación: § Evaluación sencilla: § soporte § confianza § Se ordenan usando funciones que combinan ambos indicadores. § No se suele utilizar conjunto de prueba. § Las medidas se estiman sobre el conjunto total.
97
Evaluación § Evaluación de Modelos Descriptivos: § Agrupamiento: mucho más compleja Concepto de error más difícil de definir § En los métodos basados en distancia se puede mirar: § GRUPOS: § distancia entre bordes de los clusters § distancia entre centros (de haberlos) § radio y densidad (desv. típica de la dist.) de los clusters.
§ Para cada ejemplo a agrupar se comprueba su distancia con el centro o con el borde de cada cluster. § Se pueden hacer diferentes agrupamientos con distintas técnicas y comparar los grupos formados (matriz de confusión)
98
Evaluación § Evaluación con sesgos o desequilibrios. § Desequilibrios: § En clasificación puede haber muchos ejemplos de una clase y muy pocos del resto. § Problema: la clase escasa se puede tomar como ruido y ser ignorada por la teoría. § Ejemplo: si un problema binario (sí / no) sólo hay un 1% de ejemplos de la clase no, el modelo “todo es de la clase sí” tendría un 99% de acierto. Este modelo es inútil
§ Soluciones: § Utilizar sobremuestro... § Macromedia, § Análisis ROC
99
Evaluación § Evaluación con sesgos o desequilibrios. § Desequilibrios: Solución → SOBREMUESTREO: § Intenta equilibrar el porcentaje de clases. § Ejemplo: en el caso anterior “repite” los ejemplos de la clase no 99 veces. Ahora, la proporción pasa a ser del 50% para cada clase.
§ ¿Cuándo se debe usar sobremuestreo? § Cuando una clase es muy extraña: p.ej. predecir fallos de máquinas, anomalías, excepciones, etc. § Cuando todas las clases (especialmente las escasas) deben ser validadas. P.ej. si la clase escasa es la de los clientes que compran el producto. § Inconvenientes: cuidado a la hora de interpretar y evaluar los modelos (la proporción original ha sido modificada).
100
Evaluación § Evaluación con sesgos o desequilibrios. § Desequilibrios: Solución → MACROMEDIA: § Otra solución es evaluar usando la macromedia, en vez del porcentaje de aciertos. aciertosclase 1 aciertosclase 2 aciertosclase m + + ... + totalclase 1 totalclase 2 totalclase m macromedia(h) = m
§ Ejemplo anterior: § Acierto global: 99% § Macromedia: Acierto para la clase sí: 100% Acierto para la clase no: 0% MACROMEDIA: 50%
Se ve claramente que el modelo es inútil
101
Evaluación § Evaluación con sesgos o desequilibrios. § Sesgos: § No todos los errores tienen las mismas consecuencias. § Ejemplo: clasificar una partida de yogures en perfectas condiciones como defectuoso o viceversa. § Coste del un tipo de error mucho mayor que el coste del otro tipo de error.
102
Evaluación § Evaluación con sesgos o desequilibrios. § Sesgos: Solución → Clasificación: Matrices de coste COST
predicted
low medium high
low 0€ 200€ 10€
actual medium 5€ -2000€ 1€
high 2€ 10€ -15€
low 20 5 4
actual medium 0 15 7
high 13 4 60
ERROR
predicted
low medium high
Coste total: -29787€ Se elegirá el modelo de menor coste, no el de menor error
103
Evaluación § Evaluación con sesgos o desequilibrios. § Sesgos: Solución → Regresión: Función de coste § Ejemplo: rotura de stock. Un modelo que esté “centrado” no será un buen modelo. § Función de coste:
§ Con un α = 0,01: § Si el error es -200 el Coste= 0,86 § Si el error es +200 el Coste= 6,3
§ De modo similar, se elige el modelo que minimice la función de coste.
104
Evaluación § Otros criterios de evaluación. § Comprensibilidad. § Sencillez. § Interés. § Aplicabilidad. § …
105
Aplicación de Modelos
§ Para aplicar un modelo validado debemos: § Interpretarlo y comprenderlo. § Contrastarlo con el conocimiento de la organización. § Intercambiarlo y difundirlo. § Integrarlo, si procede, con las aplicaciones software, las aplicaciones DSS y diagramas de la organización. § Adaptarlo a nuevos contextos de aplicación. § Combinarlo con otros modelos del mismo problema o combinarlos globalmente (simulación).
106
Aplicación de Modelos
§ Interpretación gráfica
Árbol de decisión
107
Aplicación de Modelos
§ Interpretación gráfica
Comparación de clústers creados con K-Medias
108
Aplicación de Modelos
§ Interpretación gráfica
Representación de clústers en 3D.
© Francisco Javier Ferrer Troyano
109
Aplicación de Modelos § Interpretación gráfica
Reglas de asociación
© Francisco Javier Ferrer Troyano
110
Aplicación de Modelos § Mailings: § Existen técnicas específicas para evaluar la conveniencia de campañas de ‘mailings’ (propaganda por correo selectiva): § EJEMPLO: Supongamos que una empresa de venta de productos por catálogo posee una base de datos de clientes. Esta empresa desea promocionar la venta de un nuevo producto de otra división del grupo.
§ Podríamos enviar propaganda a todos sus clientes: § Solución poco rentable
§ Podemos utilizar minería de datos para poder predecir la respuesta de un determinado cliente al envío de la propaganda y utilizar esta información para optimizar el diseño de la campaña.
111
Aplicación de Modelos § Mailings: 1. Selección de una muestra aleatoria y suficientemente numerosa de clientes 2. Se realiza el envío de la propaganda a los clientes seleccionados 3. Una vez pasado un tiempo prudencial etiquetamos a los clientes de la muestra: 1 ha comprado el producto, 0 no ha comprado el producto 4. Con la muestra etiquetada aprendemos un clasificador probabilístico §
Asigna a cada ejemplo (cliente) no la clase predicha, sino una estimación de la probabilidad de respuesta de ese cliente
112
Aplicación de Modelos § Mailings: §
Con el clasificador probabilístico podemos ordenar a los clientes según su interés y dibujar un gráfico de respuesta acumulada 100% 90% 80% 70% 60% 50% 40%
Sin modelo Modelo
30% 20% 10%
0% 10 % 20 % 30 % 40 % 50 % 60 % 70 % 80 % 90 % 10 0%
0%
§
Nos indican qué porcentaje de las posibles respuestas vamos a obtener dependiendo del porcentaje de envíos que realicemos sobre la población total
113
Aplicación de Modelos Además si estimamos la matriz de coste, podemos conocer la configuración optima mediante los gráficos de beneficio §
Configuración 1: Coste inicial de la campaña 10.000€, coste de envío de cada folleto 1,5€. Por cada producto vendido ganamos 3€
§
Configuración 2: Coste inicial de la campaña 20.000€, coste de envío de cada folleto 0,8€. Por cada producto vendido ganamos 2,5€ 30.000 € 20.000 € 10.000 € 0€ -10.000 €
Configuración 1
-20.000 €
Configuración 2
-30.000 € -40.000 € -50.000 €
0%
%
10
90
%
% 80
70
%
%
% 60
50
40
%
% 30
20
10
%
-60.000 €
0%
§
114
Aplicación de Modelos Combinación de Hipótesis: La opinión de 10 expertos es mejor que la opinión de 1 experto. Es preferible usar la opinión de todos que elegir el “mejor” experto
§ Combinación: § Se utiliza DISTINTOS algoritmos para aprender distintas hipótesis sobre todo el conjunto de los datos. § Luego se combinan las distintas hipótesis.
§ Maneras de COMBINAR hipótesis: § (WEIGHTED) MAJORITY: el valor se obtiene haciendo la media (caso continuo) o la mediana (caso discreto). Weighted: pesos. § STACKING/CASCADE: se utiliza cada hipótesis como una variable y se utiliza otro algoritmo (p.ej. una red neuronal como modelo que combina las diferentes hipótesis).
115
Aplicación de Modelos Potenciación mediante Combinación de Hipótesis: § BOOSTING:
§ Se utiliza el MISMO algoritmo para aprender distintas hipótesis sobre los mismos datos, aumentando el peso de aquellos ejemplos que han sido clasificados incorrectamente. Luego se combinan las distintas hipótesis.
§ BAGGING: § Se utiliza el MISMO algoritmo para aprender distintas hipótesis sobre n muestras de m de los m datos con reemplazamiento (bootstrap). Luego se combinan las distintas hipótesis.
116
Monitorización y Revisión de Modelos § Un modelo no puede funcionar bien indefinidamente: § la realidad y el contexto de aplicación cambian.
§ Monitorización: § Detecta si es necesaria la revisión. § Evaluación periódica del modelo con datos frescos. § Receptividad ante los comentarios de los usuarios. § Evalúa cambios de contexto.
§ Revisión: § Parcial: parte del modelo se cambia (p.ej. las reglas obsoletas) y parte del modelo se preserva. § Total: el nuevo modelo se cambia drásticamente o se reentrena completamente.