Data Mining

Post on 23-Jan-2016

26 views 0 download

description

Data Mining. Hugo M. Castro. Data Mining. Es un proceso automático que permite extraer esquemas interesantes, no triviales y previamente desconocidos, de los datos y descubrir relaciones entre variables. Data Mining. Trabajo conjunto Negocios Especialista Problema puntual - PowerPoint PPT Presentation

Transcript of Data Mining

Data Mining

Hugo M. Castro

Data Mining

Es un proceso automático que permite extraer esquemas interesantes, no triviales y previamente desconocidos, de los datos y descubrir relaciones entre variables

Data Mining Trabajo conjunto

Negocios Especialista

Problema puntual Datos al nivel más detallado No un solo enfoque No una sola solución

Data Mining

Dos tipos de modelos Predictivos

Clasificación Regresión

Descriptivos Asociación Segmentación

Data Mining

Modelos Predictivos Clasificación

Predice un valor discreto Sí / No Alto / Mediano / Bajo

Regresión Predice un valor continuo

Importes Cantidades

Data Mining

Modelos Descriptivos Asociación

Análisis de Canasta Soporte Confianza

Segmentación

Modelos de Data Mining Entrenamiento

Supervisado No supervisado

Prueba Evaluación

Modelos de Data MiningPRUEBADe los casos históricos disponibles se

destina una cierta cantidad para entrenar el modelo y se reserva una porción de ellos para probar el modelo

Se presentan los casos como si fueran nuevos y se coteja la respuesta del modelo con los valores reales

Modelos de Data MiningMatriz de confusión

Sí No

SíNo

Predicción

Real

455 29

32 384

Cantidad de casos

Matriz de confusión

Sobre un total de 900 casos el modelo predijo

455 como sí y en realidad era sí384 como no y en realidad era no839 predicciones correctas (93,2%)El resto (6,8%) los predijo en forma

incorrectaPRECISION

Modelos predictivos Los atributos (variables) son columnas de

la tabla Variables de entrada (atributos

descriptivos) Variable objetivo (atributo objetivo) El entrenamiento tiene por objeto

descubrir las relaciones entre las variables de entrada y la variable objetivo

En producción usa ese conocimiento para predecir el valor de la variable objetivo

Modelos predictivosPautas para la evaluación Precisión

No hay un algoritmo que sea siempre más preciso que otro u otros

Interpretabilidad Facilidad para interpretar los resultados

Velocidad Entrenamiento Producción

Modelos de clasificación Predicen el valor de un atributo

con una cantidad finita de valores posibles

Bayes Redes Neuronales K-vecinos (CBR) Árboles de decisión

BayesConstrucción y entrenamiento De los 10 casos hay 6 con calificación B

y 4 con calificación M. Sin saber nada más, la probabilidad a

priori de que la calificación sea B es 0,6 y de que sea M es 0,4

La información sobre Nivel de Ingresos, Nivel de Deudas y si es casado o no apunta a calcular la probabilidad a posteriori de que sea calificado B o M.

Bayes Nivel de Ingresos De los que tienen Nivel de Ingresos

A hay 3 B y 0 M. De los que tienen Nivel de Ingresos

M hay 2 B y 1 M. De los que tienen Nivel de Ingresos

B hay 1 B y 3 M. 

Bayes De los 6 B hay 3 que tienen Nivel del

Ingresos A. Luego P(B/Ingresos A) = 3/6 = 0.5

De los 6 B hay 2 que tienen Nivel del Ingresos M. Luego P(B/Ingresos M) = 2/6 = 0.33

De los 6 B hay 1 que tiene Nivel del Ingresos B. Luego P(B/Ingresos B) = 1/6 = 0.17

Bayes

De la misma manera P(M/Ingresos A) = 0 P(M/Ingresos M) = 0.25 P(M/Ingresos B) = 0.75

Bayes

Nivel de Deudas De los que tienen Nivel de Deudas

A hay 1 B y 3 M. De los que tienen Nivel de Deudas

M hay 3 B y 0 M. De los que tienen Nivel de Deudas

B hay 2 B y 1 M.

Bayes

Calculamos las probabilidades de la misma forma que en el caso anterior

P(B/Deudas A) = 0.17 P(B/Deudas M) = 0.50 P(B/Deudas B) = 0.33 P(M/Deudas A) = 0.75 P(M/Deudas M) = 0 P(M/Deudas B) = 0.25

BayesCasado De los que tienen Casado sí hay 4 B y 1 M De los que tienen Casado no hay 2 B y 3 M Con lo que  P(B/Casado sí) = 0.67 P(B/Casado no) = 0.33 P(M(Casado sí) = 0.25 P(M/Casado no) = 0.75

Bayes

Frecuencias

Probabilidades

condicionales

Bueno Malo Bueno Malo

6 4 0,60 0,40Nivel de ingresos

Alto 3 0 0,50 0

Mediano 2 1 0,33 0,25Bajo 1 3 0,17 0,75

Bayes

Frecuencias

Probabilidades

condicionales

Bueno Malo Bueno Malo

6 4 0,60 0,40Nivel de Deudas

Alto 1 3 0,17 0,75

Mediano 3 0 0,50 0Bajo 2 1 0,33 0,25

Casado Sí 4 1 0,67 0,25No 2 3 0,33 0,75

Bayes

PRODUCCION

Tomás tiene Nivel de Ingresos A Nivel de Deudas B Casado no

BayesLa probabilidad a posteriori de que Tomás

tenga una calificación B sale del producto de

P(B) = 0.6 P(B/Ingresos A) = 0.5 P(B/Deudas B) = 0.33 P(B/Casado no) = 0.33 Esta probabilidad resulta 0.6 x 0.5 x 0.33

x 0.33 = 0.03267

Bayes La probabilidad a posteriori de que

Tomás tenga una calificación M sale del producto de

P(M) = 0.4 P(M/Ingresos A) = 0 P(M/Deudas B) = 0.25 P(M/Casado no) = 0.75 Esta probabilidad resulta 0.4 x 0 x 0.25 x

0.75 = 0

Bayes

Como la probabilidad de tener calificación B es mayor que la de tener M, resulta que

El modelo predice queTomás va a tener calificación B

Bayes

Por su parte Lucía tiene Nivel de Ingresos M Nivel de Deudas B Casado sí

Bayes

En base a estos datos, Lucía tiene

probabilidad de calificación B igual a 0,6 x 0,33 x 0,33 x 0,67 = 0,04378

probabilidad de calificación M igual a 0,4 x 0,25 x 0,25 x 0,25 = 0,00625

Bayes

Como la probabilidad de tener calificación B es mayor que la de tener M, resulta que

El modelo predice queLucía va a tener calificación B

Bayes

A su vez Horacio tiene Nivel de Ingresos B Nivel de Deudas A Casado sí

Bayes

En base a estos datos, Horacio tiene

probabilidad de calificación B igual a 0,6 x 0,17 x 0,17 x 0,67 = 0,0116

probabilidad de calificación M igual a 0,4 x 0,75 x 0,75 x 0,25 = 0,0562

Bayes

Como la probabilidad de tener calificación M es mayor que la de tener B, resulta que

El modelo predice que Horacio va a tener calificación M

Redes Neuronales

NODO

NODO

W

FACTOR DE PONDERACION

CONEXION

COMPONENTES

Redes Neuronales

w1

w2

w3

EN

TR

AD

AS

v

SALIDA

NODO

Puede ser más de una, pero todas tienen el mismo valor

X1

x2

x3

Redes neuronales Estructura Nodos Conexiones Factores de ponderación

Perceptrón de tres capas Aprendizaje supervisado Se presentan los casos de

entrenamiento con sus respuestas Errores Cambios en los factores de

ponderación Prueba

Perceptrón de tres capas

EntradaIntermedia Salid

a

wkj

wji

Datos de entrada

Respuesta

Respuesta deseada

Corrección de factores de ponderación

K-vecinos También llamada CBR

Razonamiento basado en casos Resuelve un problema tomando en

cuenta casos parecidos Función de vecindad o de distancia Función de combinación

K-vecinos El modelo de los K-vecinos no tiene

fase de entrenamiento Entra directamente en la fase de

producción K indica la cantidad de casos

parecidos (vecinos) que se van a considerar

En este caso vamos a tomar K = 3

K-vecinosFunción de vecindad para nivel de ingresos y nivel de deudas

0 si son iguales 1 si uno tiene A y el otro M 1 si uno tiene M y el otro B 2 si uno tiene A y el otro B

para casado 0 si son iguales 1 si son distintos

K-vecinos

Función de vecindad Para cada caso a resolver se confronta

con todos los casos testigo Se suman los 3 valores Se eligen los 3 (K) casos testigo que

tienen el menor valor de esta función

Tomás Lucía Horaci

o

Jorge 0 2 1 = 3 1 2 0 = 3 2 0 0 = 2

Carlos 1 2 0 = 3 0 2 1 = 3 1 0 1 = 2

Andrea 0 1 0 = 1 1 1 1 = 3 2 1 1 = 4

Débora 1 0 0 = 1 0 0 1 = 1 1 2 1 = 4

Sergio 2 2 0 = 4 1 2 1 = 4 0 0 1 = 1

Vanesa 2 1 1 = 4 1 1 0 = 2 0 1 0 = 1

Mario 2 2 1 = 5 1 2 0 = 3 0 0 0 = 0

Gala 2 0 0 = 2 1 0 1 = 2 0 2 1 = 3

Paola 0 0 1 = 1 1 0 0 = 1 2 2 0 = 4

Román 1 1 1 = 3 0 1 0 = 1 1 1 0 = 2

K-Vecinos Tomás tiene como vecinos a Andrea (1), Débora (1), Paola (1) Lucía tiene a Débora (1), Paola (1), Román (1) Y Horacio a Sergio (1), Vanesa (1), Mario (0)

K-VecinosFunción de combinación Vamos a tomar como valor de la

predicción sobre la calificación aquella que corresponda a la mayoría de los vecinos.

Ejemplos Vecinos: B B M - Predicción: B Vecinos: M B M - Predicción: M

K-Vecinos

PREDICCIONES Andrea B, Débora B, Paola B Predicción para Tomás: B Débora B, Paola B, Román B Predicción para Lucía: B Sergio M, Vanesa B, Mario M Predicción para Horacio: M

Árboles de decisión ID3 Elección de los mejores

separadores Entropía

Mide la incertidumbre sobre un suceso

Entropía (S) = Σi –pi log2 pi

Arbol de decisión

Niv. ingresos

Niv. deuda Casado

Niv. deuda

A

M

B

A M B

SíNo

A M B

B

M M B

M B B

M

Arbol de decisión

Niv. ingresos

Niv. deuda Casado

Niv. deuda

A

M

B

A M B

SíNo

A M B

B

M M B

M B B

MTomás B

Lucía B

Horacio M

Modelos de regresión El más difundido es una versión

del modelo de los k-vecinos Función de vecindad Equilibrio Función de combinación Mayor peso de los más cercanos

Los compradoresFunción de vecindad Debe ser un coeficiente que sea

mayor cuando el caso es más cercano

Deben influir en él en forma pareja los valores de las variables de entrada (sexo y edad)

Tomamos como vecinos a los cinco casos

Los compradores

Función de vecindad Para la edad

abs (edad del caso – edad testigo) / rango máximo de edades

Ejemplo: para Natalia |45 – 33| / 25 = 0,48

Para el sexo: 0 si son iguales 1 si son distintos

Los compradores

FUNCIÓN DE COMBINACIÓN El valor que vamos a adjudicar a la

predicción del monto de la compra de María es la suma de los montos de compra de los casos testigo ponderada por el coeficiente obtenido

Los compradores

Edad Sexo Total 2 - Total

Norm. Compra

Aporte

Carla 0,72 0 0,72 1,28 0,24 190 45,6

Fernando

0,24 1 1,24 0,76 0,14 640 89,6

Alberto 0,28 1 1,28 0,72 0,14 750 105,0

Natalia 0,48 0 0,48 1,52 0,29 500 145,0

Oscar 0 1 1 1 0,19 400 76,0

TOTALES

5,28 1,00 461,2

Los compradores La predicción de la compra de

María es 461,2

En números redondos 460

Pautas de evaluación Precisión

Proporción de aciertos en la matriz de confusión

No hay un algoritmo que siempre sea más preciso que otros

Interpretabilidad Velocidad

Entrenamiento producción

Modelos descriptivos

No realizan predicciones Analizan otros aspectos de los

datos Asociación Segmentación

Modelo de asociación Análisis de canasta ¿La venta de Cordon Bleu incide

sobre la venta de papas fritas? Búsqueda sistemática Umbral de soporte Umbral de confianza

Análisis de Canasta con un Modelo de Asociación

Caso 1: Dos productos Cantidad total de tickets: 500.000 Cantidad de tickets que contienen

cerveza: 30.000 Cantidad de tickets que contienen

pañales: 20.000 Cantidad de tickets que contienen

pañales y cerveza: 10.000

Soporte y confianza Valores clave Soporte (p+c) =10.000/500.000 = 0,02.

Esto significa que el 2% de todos los clientes compra pañales y cerveza

Confianza (pc) = (p+c)/p = 10.000/20.000 = 0,50. O sea que el 50% de los que compran pañales compran cerveza

Confianza (cp) = (p+c)/c = 10.000/30.000 = 0,33. O sea que el 33% de los que compran cerveza compran pañales

Confianza esperada y Empuje (lift) Confianza esperada (c) = 30000/500000

= 0,06 = 6% Empuje (lift) de los pañales sobre la

cerveza E(pc) = confianza (pc) / confianza

esperada ( c ) Vemos que el empuje de los pañales

sobre la cerveza es 50/6 = 8,33 Esto significa que los clientes que

compran pañales compran 8.33 más cerveza que el común de los clientes.

El soporte depende sólo de los

productos que se combinan. La confianza y la confianza esperada dependen del sentido de la influencia.

Reglas de asociación : pañales y cerveza

Si compra pañales entonces compracerveza con un soporte del 2%, una confianza esperada del 6% una confianza del 50% y un empuje del 8,33%

Reglas de asociación : cerveza y pañales

Si compra cerveza entonces comprapañales con un soporte del 2%, una confianza esperada del 4% una confianza del 33% y un empuje del 8,33%

Conclusiones El soporte y el empuje en ambas reglas

es el mismo La confianza y la confianza esperada

son diferentes. Si se fija el umbral de confianza en el

50% no aparece la segunda regla. DEPENDE de cuál es el antecedente y

cuál el consecuente en la regla (sentido de la influencia)

Modelos de segmentación Mapas auto-organizados de

Kohonen Entrenamiento no supervisado Dos capas

Entrada Salida

Centroides (RBF) Mecanismo de entrenamiento

Mapas de Kohonen El propósito de los Mapas de

Kohonen es separar los registros de datos de entrada en una cierta cantidad de categorías

Los registros de cada categoría tienen características similares y distintas de los de las otras categorías

Segmentación

Mapas de Kohonen

Salida

Entrada

Mapas de Kohonen Dos capas de nodos Entrada: un nodo por cada dato Salida: un nodo por cada categoría Los nodos de la capa de salida

están conectados entre sí La suma de los w que llegan a

cada nodo de salida es constante

Mapas de Kohonen

El entrenamiento es no supervisado Se presenta un registro a la capa de

entrada Cada uno se los nodos de la capa

de salida recibe impulsos de los de los de la capa de entrada

Cada nodo de salida produce una salida

Mapas de Kohonen

Salida

Entrada

El nodo 3 es el que produce la salida mayor

Mapas de Kohonen Por haber sido el ganador, el nodo

3 adquiere el derecho a aprender Para ello va a aumentar los w que

corresponden a entradas no nulas Como la suma de los w que llegan

al nodo 3 es constante debe disminuir los w que corresponden a los ceros

Mapas de Kohonen Si se presenta un registro de

entrada parecido al anterior, es muy posible que el ganador sea el mismo nodo 3.

Por eso los registros semejantes van a parar a la misma categoría

Una vez entrenado, el mapa de Kohonen se puede usar para categorizar nuevos registros

Redes de Función de Base Radial Sirven para segmentación de

grandes cantidades de registros Se basan en la definición de

centroides Centros de gravedad en espacios

de muchas dimensiones Cada centroide agrupa casos

similares

Centroides Se definen tantos centroides como

categorías En el caso del banco se definen 3

centroides Arbitrariamente se toman los tres

primeros casos como centroides

C

an

tid

ad

de

serv

icio

s

Antigüedad

Centroides Calculamos la distancia de cada

caso a cada uno de los centroides La distancia se calcula como D = x2 + y2

Adjudicamos cada caso al centroide más próximo

Atención al caso 12

CentroidesCaso Antig

.Serv. A

(3,3)B

(4,5)C

(5,2)Grup

o

1 3 3 0 5 5 A

2 4 5 5 0 10 B

3 5 2 5 10 0 C

4 1 5 8 9 25 A

5 1 2 5 18 16 A

6 2 1 5 20 10 A

7 2 4 2 5 13 A

8 3 6 9 2 20 B

Centroides

Caso Antig.

Serv. A (3,3)

B (4,5)

C (5,2)

Grupo

9 4 1 5 16 2 C

10 5 4 5 2 4 B

11 5 6 13 5 16 B

12 6 4 10 5 5 C

13 7 2 17 18 4 C

14 8 5 29 16 18 B

15 7 6 25 20 20 B

Centroides Al grupo A pertenecen los casos

1 (3;3) 4 (1;5) 5 (1;2) 6 (2;1) 7 (2;4)

Su centro de gravedad (promedio de coordenadas) es

A ( 1,8 ; 3)

Centroides De la misma manera, el centro de

gravedad del grupo B esB (5,3 ; 5,3)

Y el centro de gravedad del grupo C es

C (5,5 ; 2,2)

Centroides Ahora volvemos a efectuar los cálculos de

distancias con los nuevos centroides A, B y C.

Como antes, se asigna cada caso al grupo cuyo centroide está más próximo

Para el caso 12 las distancias con B: 2,18 C: 3,49

Con lo que el caso 12 pasa al grupo B El proceso termina cuando de un paso a otro

ya no hay cambios

C

an

tid

ad

de

serv

icio

s

Antigüedad

A

B

C

CentroidesHemos separado los clientes en tres

grupos: A: Clientes nuevos con un buen potencial

de aceptación de productos B: Clientes antiguos buenos

compradores de servicios C: Clientes antiguos que no se

engancharon con el banco Campañas de marketing

diferenciadas

El proceso de Data Mining Se define el problema

Hay que entender el negocio Hay que entender los datos

Se construye la base de datos para Data Mining Recolección Selección Depuración Carga Actualización

El proceso de Data Mining Se exploran los datos

Distribución Relación Influencia

Se preparan los datos Se eligen variables Se eligen las filas Se crean nuevas variables Se transforman las variables

El proceso de Data Mining Se construye el modelo Se entrena y ejecuta el modelo

Datos para entrenamiento Datos para prueba

Se prueba el modelo Se evalúan los resultados Se rehacen corridas si es necesario Se guardan los resultados

El análisis de riesgos 600.000 préstamos 50.000 con problemas ¿Cuáles? Calificación del préstamo

Sin problemas Sub stándard Perdido No clasificado Nodisponible

El análisis de riesgos Muestra: 12.000 casos

Entrenamiento: 8.000 Prueba: 4.000

Valor de la cuota U$s 0 – u$s 60.000

Categorización 5 franjas de u$s 12.000

Datos relevantes El préstamo

Tipo de préstamo Monto Cuota Plazo

El propósito Tipo de propiedad Destino

Datos relevantes El tomador

Edad Estado civil Nivel de ingresos

La región Estado Zona Minorías

Primer modelo Categorización errónea Montos pequeños tienden a tener

más problemas 80% de las cuotas no llegan a u$s

400 99% de los préstamos cae en la

primera franja

Nueva categorización Cinco categorías con 1/5 de los

casos en cada una Precisión

Acierto en el 67% de los casos Acierto en el 76 % de los casos sin

problemas y perdidos Es demasiado bueno (!)

¿Por qué? Un atributo descriptivo que están

usando es el monto de la deuda Esto permite predecir bisn casos

sub standard o perdidos Pero en realidad ese monto es alto

porque ya tiene problemas Se elimina

Cambios Se elimina el monto de la deuda

como atributo descriptivo

La precisión se reduce a 46% en general 37% de los casos perdidos

Nuevo modelo Se eliminan las categorías

No clasificado No disponible

Menos del 1% del total Se unifican

Sub standard Perdidos

Casos con problemas

Nuevo modelo Quedan dos categorías OK (sin problemas) No OK (con problemas) La precisión en la predicción es

82% en general 20% de casos con problemas

Arboles de decisión Usando un modelo de árboles de

decisión se llega a una precisión

85% en general 23% en préstamos con problemas

¿Hay algo más para hacer?

Hagamos cuentas Hay alrededor de 50.000 préstamos

con problemas por año No detectarlo a tiempo cuesta a

USDA u$s 5.000 cada uno Intervenir en un caso cuesta u$s

500 Se supone que interviniendo a

tiempo se evitan problemas en el 30% de los casos

Hagamos cuentas Aún con un porcentaje bajo de

identificación de casos con problemas USDA ahorra por año u$s 11,9 millones

Dado que el 29% de las predicciones No OK eran realmente OK (con lo que se interviene inútilmente)

El ahorro es de u$s 9,1 millones

Conclusiones No solamente cuenta la precisión No hay que guiarse solamente por

la matriz de confusión No necesariamente un nivel bajo de

aciertos en la predicción invalida el uso del modelo

Hay que tener en cuenta otros factores

Data MiningDónde se puede utilizar Marketing: Segmentación, campañas, rentabilidad,

lealtad,... Ventas: Esquemas de comportamiento, hábitos de

compra Finanzas: Inversiones, administración de cartera Bancos y Seguros: Aprobación de créditos y pólizas Seguridad: Detección de fraudes Medicina: Análisis de tratamientos Fabricación: control de calidad, adjudicación de

recursos Internet: Análisis de clicks (Web mining)

Data Mining Trabajo conjunto Problema puntual Modelos predictivos Modelos descriptivos Algoritmos El proceso de Data Mining Áreas de aplicación