Académique Documents
Professionnel Documents
Culture Documents
espacios reservados para la bibliografa. Si usted es autor de los documentos que se tomaron como bibliografa y considera que las referencias a su trabajo no estn adecuadamente descritas, por favor comunquese con el profesor Jonatan Gmez Perdomo a travs del correo electrnico: jgomezpe@unal.edu.co.
CONTENIDO MDULO 3: MINERA DE DATOS Pg. 1. Introduccin a la Minera de Datos 1.1 Proceso de descubrimiento de conocimiento 1.2 Aplicaciones de la minera de datos 1.3 Anlisis exploratorio de datos 1
2 CRISP 2.1 Eleccin de un sistema de Minera de Datos 2.2 Ejemplos de Sistemas de Minera de Datos 2.3 CRISP-DM
42
3 Preparacin de datos 3.1 Introduccin 3.2 Limpieza de Datos 3.3 Integracin de Datos 3.4 Transformacin de Datos 3.5 Reduccin de datos 3.6 Principal Component Analysis PCA
56
4. Reglas de Asociacin 4.1 Introduccin 4.2 Conceptos Bsicos 4.3 El algoritmo A priori 4.4 Generacin de canidatos 4.5 Ejemplo de generacin de candidatos 4.6 Generando Reglas de Asociacin desde conjuntos de tems frecuentes 4.7 Reglas de asociacin Mltiple-Nivel 4.8 Minando Multi-nivel con soporte reducido 4.9 Mtodo FP-GROWTH 4.10 Reglas de asociacin multidimensionales
102
5 Anlisis Supervisado I 5.1 Conceptos bsicos de aprendizaje maquinal 5.2 rboles de decisin y Reglas de Decisin 5.3 Medidas de desempeo
122
6. Anlisis Supervisado II 6.1 Introduccin 6.2 Redes multicapa 6.3 Entrenamiento 6.4 Aplicaciones 6.5 Generalizacin y sobre ajuste
140
6.5.1 Error de entrenamiento y prueba 6.5.2 Complejidad del modelo 6.5.3 Control del sobre-ajuste
7. Anlisis Supervisado III 7.1 Modelos Bayesianos 7.1.1 Principios de probabilidad 7.1.2 Riesgo y costo 7.2 Clasificador Bayesiano 7.3 Naive Bayes 7.4 Clasificacin sensible al costo 7.5 Imbalance de clases
178
198
9. Anlisis No Supervisado: Agrupamiento de Datos (Data Clustering) 9.1 Conceptos bsicos 9.2 Medidas de similaridad 9.3 Agrupamiento particional 9.4 Agrupamiento jerrquico 9.5 Agrupamiento basado en densidad
207
10 Anlisis no supervisado: agrupamiento 10.1 Medidas de desempeo para agrupamiento 10.2 Otros mtodos (en malla, SOM)
260
Agenda
Proceso de descubrimiento de conocimiento Aplicaciones de la minera de datos Anlisis exploratorio de datos
Agenda
Proceso de descubrimiento de conocimiento Aplicaciones de la minera de datos Anlisis exploratorio de datos
KDD
1.
Proceso de KDD
Evaluacin de Patrones
Minera de Datos Seleccionar Datos Relevantes Bodega de Datos Limpieza de Datos Integracin de datos Bases de Datos Seleccin
Preprocesamiento
Limpieza e Integracin
Bodega de Datos
Ruido
edad de 180 aos
Valores Perdidos
No tiene edad
Preprocesamiento
Seleccionar datos relevantes
Reducir dimensiones
Principal Component Analisis Entropa
Reducir valores
Discretizar
Preprocesamiento
Tipos de datos
Numricos Categricos (ordinales, nominales)
Preprocesamiento
Edad Ingresos Estudiante Crdito compra _computador
<=30 <=30 3140 >40 >40 >40 3140 <=30 <=30 >40 <=30 3140 3140 >40
Alto Alto Alto Medio Bajo Bajo Bajo Medio Bajo Medio Medio Medio Alto Medio
no no no no si si si no si si si no si no
Bueno Excelente Bueno Bueno Bueno Excelente Excelente Bueno Bueno Bueno Excelente Excelente Bueno Excelente
no no si si si no si no si si si si si no
Agenda
Proceso de descubrimiento de conocimiento Aplicaciones de la minera de datos Anlisis exploratorio de datos
Descripcin de clases
Sumarizacion/ caracterizacin de la coleccin de datos OLAP (On Line Analitical Process) Tendencias Reportes
Encontrar Asociaciones
Descubrir asociaciones, relaciones / correlaciones entre un conjunto de tems
Id 1 2 3 4 5 {pan, leche} {pan,paales,cerveza,huevos} {leche, paales, cerveza, gaseosa} {pan,leche,paales,cerveza} {pan,leche,paales,gaseosa} tems
Inters en analizar Inter los datos para aprender el comportamiento de las compras de sus clientes
Promociones de mercadeo Manejo de inventario Relacin con el cliente
Encontrar Asociaciones
Asociaciones, relaciones / correlaciones en forma de reglas: XY reglas
(registros en BD que satisfacen X, tambin satisfacen Y)
Transaction ID Items Bought 2000 A,B,C 1000 A,C 4000 A,D 5000 B,E,F
For rule A C: support = support({A C}) = 50% confidence = support({A C})/support({A}) = 66.6%
10
Clasificacin y Prediccin
Clasificacin: Construir un modelo por cada clase de dato etiquetado usado en el entrenamiento del modelo. Basado en sus caractersticas y usado para clasificar futuros datos Prediccin: Predecir valores posibles de datos/atributos basados en similar objetos.
Algoritmos de Clasificacin
NOMBRE Rango
Mike Profesor Asistente Mary Profesor Asistente Bill Profesor Jim Profesor Asociado Dave Profesor Asistente Anne Profesor Asociado
Aos 3 7 2 7 6 3
Ocupado no si si si no no
Clasificador (Modelo)
11
Rango Aos Tom Profesor Asiste 2 Mellisa Profesor Asoci 7 George Profesor 5 Joseph Profesor Asiste 7
Ocupado no no si si
Ocupado?
Edad?
<=30 Estudiante? no no si si
30..40 overcast
si
12
Clase
Clase =1 Clase =2
f11 f01
f10 f00
f 11 +f 00 11 +f 10 +f 01 +f 00
Error
rate =
13
Regresin
Prediccin de una variable real (no categrica )
Variable real -> regresin Variable categrica -> clasificacin
Series de tiempo
Predecir valores futuros de acuerdo al tiempo
14
Agrupacin
Dividir datos sin etiqueta en grupos (clusters) de tal forma que datos que pertenecen al mismo grupo son similares, y datos que pertenecen a diferentes grupos son diferentes
10 9 .7 5 9 .5 9 .2 5 9 8 .7 5 8 .5 8 .2 5 8 7 .7 5 7 .5
Similaridad
Medidas de similaridad/distancia
Dependen de los tipos de datos
Numricos:
Distancia Euclidean
Binarios
Jaccard Cosine
15
Agrupacin - Aplicaciones
Procesamiento de Imgenes (segmentar imgenes a color en regiones) Indexamiento de texto e imgenes WWW
Clasificacin de paginas Web (usados por motores de bsqueda -Google) Agrupar web log para descubrir grupos de patrones de acceso similares (web usage profiles)
Agrupacin - Aplicaciones
Seguridad: Descubriendo patrones de acceso a redes (Deteccin de intrusos)
16
Modelo de Datos Relacional SQL Algoritmos de asociacion de reglas Bodegas de Datos Tcnicas escalables
Medidas de Similaridad Agrupamiento Jerrquico Sistemas IR Consultas Imprecisas Datos Textuales Motores de Bsqueda Web Teorema de Bayes Anlisis de Regresin Algoritmo EM Agrupamiento K-Means Anlisis de Series de Tiempo
17
>40
student?
yes
credit rating?
no
yes
excellent
fair
no
yes
no
yes
w0
x1
w1
f
output y
xn
wn
Input vector x
weight vector w
weighted sum
Activation function
Nave Bayes
Teorema de Bayes P(Y|X) = P(X|Y)P(Y) / P(X)
Supuesto Nave: independencia de atributos P(x1,,xk|Y) = P(x1|Y)P(xk|Y)
18
Redes Bayesianas
D=Healthy E=yes 0.7 0.25
exercise
Hd=yes
diet
Heart disease
Heart burn
Blood pressure
Bp=high HD=yes HD=no 0.85 0.2
Chest pain
0.4
0.1
Redes Neuronales
19
20
Algoritmos genticos
Niches (Optimizacin multimodal)
Algoritmo ECSAGO (no supervisado) para agrupamiento
Agenda
Proceso de descubrimiento de conocimiento Aplicaciones de la minera de datos Anlisis exploratorio de datos
21
22
La mayora de las tcnicas para AED son grficas con pocas tcnicas cuantitativas. Las grficas proveen las facilidades al analista de poder revelar los secretos estructurales de los datos y obtener otros nuevos insospechados dentro del estudio de los datos con la combinacin de las habilidades reconocimiento natural de patrones que todos poseemos.
23
Tcnicas cuantitativas
son un conjunto de procedimientos estadsticos que proveen salidas numricas o tabulares. Ejemplos de tcnicas cuantitativas incluyen:
Pruebas de Hiptesis Anlisis de varianza Puntos estimados e intervalos de confianza Mnima regresin cuadrada
24
25
Qu es un valor tpico? Cul es la incertidumbre para un valor tpico? Cul es la distribucin que mejor se ajusta a un conjunto de nmeros? Qu es un percentil? Tiene el factor algn efecto? Cules son los factores ms importantes? Cul es la mejor funcin para relacionar una variable de respuesta a un conjunto de factores de variables? Cules son los valores ptimos para los factores? Se puede separar la seal del ruido en datos dependientes del tiempo? Podemos extraer alguna estructura desde datos multivariados? En los datos hay datos atpicos?
26
Estadsticas Descriptivas
Son nmeros que resumen las propiedades de los datos Las propiedades resumidas incluyen:
Ubicacin: promedio, mediana, moda Dispersin: desviacin estndar
La mayora de las estadsticas descriptivas pueden ser calculadas en un solo paso a travs de los datos
Frecuencia y moda
La frecuencia de un valor de un atributo es el porcentaje de veces que el valor aparece en un conjunto de datos Por ejemplo, dado un atributo gnero y una poblacin representativa de gente, el gnero femenino aparece alrededor del 50% de las veces. La moda es el valor del atributo ms frecuente Las nociones de frecuencia y la moda son usadas tipicamente con datos categoricos.
27
Percentiles (I)
La nocin de un percentil es ms til para datos continuos Dado un ordinal o un atributo continuo x y un nmero p entre 0 y 100, el p percentil es un valor xp de x tal que el p% de los valores observados de x son menores a xp Para el 50 percentil es el valor de x50% donde el 50% de todos los valores de x son menores a x50%
Percentiles (II)
28
Este es sensitivo a los datos atpicos, as como las dems medidas que son frecuentemente usadas.
29
30
Histogramas
Histograma
Muestra la distribucin usual de valores de una variable simple. Divide los valores en clases y muestra una grfica de una barra del nmero de objetos en cada clase. La altura de cada barra indica el nmero de objetos La forma del histograma depende del nmero de clases
31
Histograma
El histograma puede ser usado para responder las siguientes preguntas: De qu tipo es la distribucin de la poblacin de donde vienen los datos? Dnde estn ubicados los datos? Son los datos simtricos o asimtricos? Hay valores atpicos?
Grfica de Dispersin
Propsito: verifica la relacin entre variables Un grfico de dispersin revela la relacin o asociacin entre dos variables. Como las relaciones se manifiestan por si solas por una estructura no aleatoria en la grfica.
32
Grfica de Dispersin
Relacin lineal entre las variables Y y X Esta grfica de ejemplo revela la relacin lineal entre dos variables indicando que un modelo de regresin lineal puede ser apropiado.
Grfica de Dispersin
Preguntas: Estn las variables X y Y relacionadas? Estn las variables X y Y relacionadas linealmente? Estn las variable X y Y relacionadas de manera no lineal? La variacin de Y cambia dependiendo a X? Hay valores atpicos?
33
34
Grfica de Dispersin
La grfica de dispersin descubre las relaciones en los datos. Relaciones significa que hay algunas asociaciones estructuradas (lineales, cuadrticas, etc.) entre X y Y. Se tiene en cuenta que:
Causalidad implica asociacin Asociacin no implica causalidad.
Grficas de caja
Propsito: Verificar la ubicacin y la variacin de los cambios Las grficas de bloque son una excelente herramienta para trasmitir informacin de la ubicacin y la variacin de los conjuntos de datos, particularmente para detectar e ilustrar la ubicacin y los cambios de variacin entre diferentes grupos de datos.
35
Grficas de caja
Inventadas por J. Tukey Son otra forma de mostrar la distribucin de los datos La siguiente figura muestra la parte bsica de una grfica de caja outlier
10th percentile
10th percentile
Grficas de caja
Las grficas de caja se conforman por:
Eje Vertical: valores del factor Eje Horizontal: El factor de inters
Mas especficamente:
Se calcula la mediana y los quartiles (el menor quartil es el percentil 25 y el quartil superior es el percentil 75) Se grafica un smbolo en la mediana (o una lnea) y se dibuja la grfica de caja entre el menor y mayor quartil; sta caja representa el 50% de los datos. Se dibuja una lnea desde el menor quartil al punto mnimo y otra lnea desde el quartil mayor al mximo punto.
36
Grficas de estrella
Aproximacin similar a las coordenadas paralelas, pero con un eje radial desde un punto central La lnea que conecta los valores de un objeto es un polgono
Chernoff Faces
Esta aproximacin asocia cada atributo con una caracterstica de la cara Los valores de cada atributo determinan la apariencia de las caractersticas faciales. Cada objeto se convierte en una cara separada Depende de la habilidad humana para distinguir las caras
37
Grfica de estrella
Muestra datos multivariados Usa un formato de grficas mltiples con muchas estrellas en cada pgina y cada estrella muestra una observacin La grfica de estrella es usada para examinar los valores relativos para un punto de un dato simple y la ubicacin de puntos similares o distintos.
38
Grfica de estrella
Preguntas La grfica de estrella puede ser usada para responder las siguientes preguntas:
Qu variables son dominantes para la observacin dada? Cules observaciones son ms similares, i.e., hay agrupamiento de observaciones? Hay valores atpicos?
Versicolour
Virginica
39
standard deviation
40
Bibliografa
NIST/SEMATECH e-Handbook of Statistical Methods, http://www.itl.nist.gov/div898/hand book/ Introduction to Data Mining by Tan, Steinbach, Kumar
NOTAS
41
42
Agenda
Eleccin de un sistema de Minera de Datos Ejemplos de Sistemas de Minera de Datos CRISP-DM
Agenda
Eleccin de un sistema de Minera de Datos Ejemplos de Sistemas de Minera de Datos CRISP-DM
43
Para elegir se necesita tener en cuenta mltiples dimensiones Qu tipos de datos se usarn: relacional, transaccional, texto, series de tiempo, espacial? Configuracin del sistema:
Se utilizar en uno o varios sistemas operativos? Proveer interfaces basadas en Web y permitir datos XML como entrada y / o salida? Arquitectura Cliente / Servidor?
44
Herramientas de Visualizacin
Una imagen vale ms que mil palabras Categoras de visualizacin:
Visualizacin de datos Visualizacin de resultados de minera Visualizacin del proceso de minera Minera de datos visual
Agenda
Eleccin de un sistema de Minera de Datos Ejemplos de Sistemas de Minera de Datos CRISP-DM
45
Clementine (SPSS)
46
Agenda
Eleccin de un sistema de Minera de Datos Ejemplos de Sistemas de Minera de Datos CRISP-DM
47
Ayuda a la planeacin y gerencia del proyecto. Factor de Comodidad para nuevos usuarios:
Demuestra la madurez de la minera de datos. Reduce la dependencia en estrellas
El proceso de minera de datos debe ser confiable y repetible por personas con poco conocimiento de minera de datos.
48
CRISP-DM
No - propietario Independiente de la aplicacin o la industria. Neutral con respecto a herramientas Enfocado en problemas de negocios as como en el anlisis tcnico. Plataforma gua Experiencia Base
Plantillas para Anlisis
CRISP-DM: Descripcin
49
CRISP-DM: Fases
1.
2.
Entendimiento de los objetivos y requerimientos del proyecto. Definicin del problema de Minera de Datos Obtencin conjunto inicial de datos. Exploracin del conjunto de datos. Identificar las caractersticas de calidad de los datos Identificar los resultados iniciales obvios. Seleccin de datos Limpieza de datos
3.
4. 5.
Implementacin en herramientas de Minera de Datos Determinar si los resultados coinciden con los objetivos del negocio Identificar las temas de negocio que deberan haberse abordado Instalar los modelos resultantes en la prctica Configuracin para minera de datos de forma repetida continua
6.
Despliegue
Fases y Actividades
Comprensin del Negocio
Comprensin de Datos
Obtener los datos iniciales Reporte de la obtencin de los datos iniciales Describir los Datos Reporte con la descripcin de los datos Explorar de Datos Reporte de la Exploracin de Datos Verificar de la calidad de los Datos Reporte de la calidad de los datos
Preparacin de Datos
Conjunto de Datos Descripcin de los Datos Seleccionar los Datos Justificacin de la inclusin / Exclusin Limpiar Datos Reporte de Limpieza de Datos Construir Datos Atributos Derivados Registros Generados Integrar Datos Datos Combinados Dar formato a los Datos Datos Formateados
Modelamiento
Evaluacin
Despliegue
Determinar los Objetivos del Negocio Antecedentes Objetivos del Negocio Criterio de xito Evaluar la situacin Inventario de requerimientos de Recursos, Hiptesis y Limitaciones Riesgos y Contingencias Terminologa Costos y Beneficios Determinar el objetivo de Minera de Datos Objetivos de Minera de Datos Criterio de xito de Minera de Datos Desarrollar el Plan de Proyecto Plan de proyecto Evaluacin inicial de herramientas y tcnicas
Seleccionar Tcnica de Modelamiento Tcnica de Modelamiento Modelamiento Hiptesis Generar el Diseo de Prueba Diseo de Prueba Construir el Modelo Configuracin de los parmetros del Modelo Descripcin del Modelo Evaluar el Modelo Evaluacin del Modelo Revisin de la configuracin de los parmetros del modelo
Evaluar Resultados Hiptesis de Minera de Datos Resultados w.r.t. Criterio de xito del negocio Modelos aprobados Revisar el Proceso Revisin del Proceso Determinar los siguientes pasos Lista de Posibles Acciones Decisin
Desplegar el Plan Plan de Despliegue Monitorear y Mantener Plan de monitoreo y mantenimiento Desarrollar el reporte final Reporte Final Presentacin Final Revisin del Proyecto Documentacin de las experiencias
50
Fases en el proceso de DM (1 y 2)
Comprensin del negocio:
Enunciar los objetivos del negocio Enunciar los objetivos de Minera de Datos Enunciar el criterio de xito
Comprensin de datos
Explorar los datos y verificar su calidad Encontrar datos atpicos
Seleccin de Datos
Se ignoran los datos de carcter no contributivo? Datos atpicos? Usar ejemplos Herramientas de Visualizacin Transformaciones - crear nuevas variables
51
Tipos de Modelos
Modelos Predictivos para Regresin y Clasificacin
Algoritmos de Regresin (Prediccin de resultados numricos): redes neuronales, Reglas inductivas, CART OLS regression, GLM. Algoritmos de clasificacin (Predicen resultados simblicos): CHAID, C5.0 (discriminant analysis, logistic regression).
52
53
CRISP-DM: Detalles
Disponible en lnea: www.crisp-dm.org
20 pginas del modelo (descripcin) 30 pginas de gua para el usuario (proceso paso a paso) 10 pginas salida (esbozo de un informe sobre un proyecto de minera de datos)
Por qu CRISP-DM?
El proceso de minera de datos debe ser confiable y reproducible por personas con poco conocimiento sobre minera de datos. CRISP-DM provee una plataforma uniforme para:
Directrices Documentacin de experiencias
54
Bibliografa
Clifton, Chris. CS590D: Data Mining http://www.cs.purdue.edu/homes/clifton/cs590d/ The CRISP-DM Model: The New Blueprint for DataMining, Colin Shearer, JOURNAL of Data Warehousing, Volume 5, Number 4, p. 13-22, 2000 P. Chapman et al., CRISP-DM 1.0: Step-by-step data mining guide, SPSS Inc (2000), http://www.crisp-dm.org/CRISPWP-0800.pdf
NOTAS
55
Preparacin de datos
56
Introduccin
Evaluacin de Patrones
Datos Preprocesdados
Fuente de Datos
PROBLEMA DE KDD
Introduccin
D. Pyle, 1999, pp. 90: El propsito fundamental de la preparacin de los datos es la manipulacin y transformacin de los datos sin refinar para que la informacin contenida en el conjunto de datos pueda ser descubierta o estar accesible de forma ms fcil.
57
Introduccin
60 50 Esfuerzo % 40 30 20 10 0 Determinacin de Ojetivos Minera de Datos
Determinacin de Objetivos
Preparacin de Datos
Minera de Datos
Evaluacin de Modelos
Importancia
Datos malos extraccin de patrones/reglas malas (poco tiles).
Datos Incompletos: falta de valores de atributos, Datos con ruido Datos inconsistentes (incluyendo discrepancias)
58
Importancia
Reduccin del tamao del conjunto de datos posible mejora de la eficiencia del proceso de Minera de Datos.
Seleccin de datos relevantes: eliminando registros duplicados, eliminando anomalas, Reduccin de Datos: Seleccin de caractersticas, muestreo o seleccin de instancias, discretizacin.
Importancia
Datos de calidad posible generacin de patrones/reglas de calidad.
Recuperar informacin incompleta. Eliminar outliers Resolver conflictos,
Decisiones de calidad deben ser basadas en datos de calidad. Hecho: La preparacin de datos (limpieza, transformacin, .) puede llevar la mayor parte del tiempo de trabajo (hasta un 90%).
59
que permiten
Mejorar la calidad de un conjunto de datos
Con el objetivo de
Permitir a las tcnicas de minera de datos obtener mayor y mejor informacin (mejor porcentaje de clasificacin, reglas con ms completitud, etc.)
60
Limpieza de Datos
Resuelve redundancias consecuencia de la integracin Chequea y resuelve problemas de ruido, valores perdidos, elimina outliers, Resuelve inconsistencias/conflictos entre datos Bibliografa: W. Kim, B. Choi, E-K. Hong, S-K. Kim. A Taxonomy of Dirty Data. Data Mining and Knowledge Discovery7, 8199, 2003.
61
Ejemplo: el valor del patrn mas cercano de la misma clase. Asignar un valor especial exclusivo.
62
63
Integracin de Datos
Obtiene los datos de diferentes fuentes de informacin Resuelve problemas de representacin y codificacin Integra los datos desde diferentes tablas para crear informacin homognea, ... Bibliografa: E.Schallehn, K. Sattler, G. Saake. Efficient Similarity Based Operations for Data Integration. Data And Knowledge Engineering 48:3, 351-387, 2004.
Integracin de Datos
Diferentes escalas
Pesos vs Dolares
Atributos derivados
Salario Mensual vs Salario Anual
Solucin
Procedimientos semi-automticos ETL Minera
64
Transformacin de Datos
Los datos son transformados o consolidados de forma apropiada para la extraccin de informacin. Diferentes vas:
Sumarizacin de datos Operaciones de agregacin, etc.
Bibliografa: T. Y. Lin. Attribute Transformation for Data Mining I: Theoretical Explorations. International Journal of Intelligent Systems 17, 213222, 2002.
Normalizacin z-score
65
Reduccin de Datos
Agrupamiento Compactacin Discretizacin Seleccin de caractersticas Seleccin de Instancias
66
Reduccin de Datos
Agrupamiento Compactacin Discretizacin Seleccin de caractersticas Seleccin de Instancias
67
Reduccin de Datos
Agrupamiento Compactacin Discretizacin Seleccin de caractersticas Seleccin de Instancias
Bibliografa: H. Liu, F. Hussain, C.L. Tan, M. Dash. Discretization: An Enabling Technique. Data mining and Knowledge Discovery 6, 393-423, 2002. F. Berzal, J.C. Cubero, N. MarinD. Snchez. Buildingmulti-way decision trees with numerical attributes. Information Sciences 165 (2004) 73 90.
68
Edad # de Autos
1 0 0
1 4 0
1 5 1
2 0 0
2 3 1
2 4 0
2 5 1
2 7 0
2 9 2
3 1 1
4 3 3
5 0 2
6 5 4
74
69
Frecuencia
70
Temperatura en C
Valores de Temperatura: 63, 65, 66, 67, 70,70, 71, 71, 72, 72, 73, 73, 74, 75, 76, 76, 82, 82, 83, 84,85, 85
Consideraciones adicionales:
Se deben crear cajas para valores especiales Se deben tener puntos de corte interpretables
71
72
Problema de optimizacin en la seleccin de k bins, dado el numero de bins k: distribuir los valores en los bins para minimizar la distancia promedio entre un valor y la media o mediana del bin.
73
Despus de mover dos elementos del bin2 al bin1, y un elemento del bin3 al bin2:
f ={1, 1, 2, 2, 2 Modas = {2, 5, ER = 4 5, 6, 8} 8, 8, 9}
74
75
76
Reduccin de Datos
Agrupamiento Compactacin Discretizacin Seleccin de caractersticas Seleccin de Instancias
Bibliografa: H. Liu, H. Motoda. Feature Selection for Knowledge Discovery and Data Mining. Kluwer Academic, 1998. H. Liu, H. Motoda (Eds.) Feature Extraction, Construction, and Selection: A Data Mining Perspective, Kluwer Ac., 1998.
77
4,4 100,12 5,4 100,12 6,4 100,12 7,4 100,12 8,4 100,12
{1,2}
{1,3}
{1,2,3}
{2,3}
{1,2,4}
{1,4}
{1,3,4}
{2,4}
{2,3,4}
{3,4}
{1,2,3,4}
78
Vi= Calcular(xi, C)
Insertar xi en la LISTA segn Vi SALIDA: Lista (ordenada por releavancia de atributos)
79
where Dij
n S ij = x ik = x jk / n k =1
F1 R1 R2 R3 R4 R5 A B C B C F2 X Y Y X Z F3 1 2 2 1 3
R1 R1 R2 R3 R4
R2 0/3
R3 0/3 2/3
similaridades
80
E =
N 1
i =1 j =i +1
((S
N
ij
Similaridad entre xi y xj
El algoritmo esta basado en sequential backward ranking La entropa es calculada en cada iteracin para decidir el ranking de las dimensiones. Las dimensiones son gradualmente removidas
81
Algoritmo Comienza con todo el conjunto de datos F EF = entropa de F Por cada dimensin f F,
Remover una dimensin f de F y obtener el subconjunto Ff EFf = entropa de Ff Si (EF - EFf ) es mnima Actualizar el conjunto de datos F = F f f es colocada en la lista rankeada
4.
82
Matriz de transformacin
2 2 2 2
3 1 11 = 1 3 5 3 3 12 3 = = 4 2 1 2 8
Vector transformado en su posicin original de transformacin
Eigenvector
83
es : 32 + 2 2 = 13 longitud 1 es :
3 2 3 3 12 = = 4 2 2 1 2 8
84
2 2 1
1 0 2
1 1 3
0 1 0
3 2 1
85
Restar la media
x = 1.81
y = 1.91
86
Entre los puntos. Los puntos estn relacionados con esta lnea
87
m i R = i =1 n i i =1
88
89
90
Reduccin de Datos
Agrupamiento Compactacin Discretizacin Seleccin de caractersticas Seleccin de Instancias
Bibliografa: T. Reinartz. A Unifying Viewon Instance Selection. Data Mining and Knowledge Discovery 6, 191-210, 2002.
Reduccin de Datos
Seleccin de Instancias La SI pretende elegir los ejemplos que sean relevantes para una aplicacin y lograr el mximo rendimiento. El resultado de la SC sera: Menos datos los algoritmos pueden aprender ms rpidamente Mayor exactitud el clasificador generaliza mejor Resultados ms simples ms fcil de entender SI y Transformacin (compactacin/agrupamiento)
91
Reduccin de Datos
Seleccin de Instancias Diferentes tamaos:
500 Puntos
2000 Puntos
8000 Puntos
Reduccin de Datos
Seleccin de Instancias
Muestreo Seleccin de Prototipos o Aprendizaje basado en Instancias Aprendizaje Activo
92
Reduccin de Datos
Seleccin de Instancias
MUESTREO Sin Reemplazamiento
z n la Co mp e Re
to en i am
DATOS ORIGINALES
Reduccin de Datos
Seleccin de Instancias: Muestreo
DATOS ORIGINALES Reduccin Simple
93
Reduccin de Datos
Seleccin de Instancias Seleccin de Prototipos Se basa en: Eliminacin Ordenada Reglas NN Muestreo Aleatorio Algoritmos Evolutivos
Reduccin de Datos
Seleccin de Instancias
94
Reduccin de Datos
Seleccin de Instancias
Reduccin de Datos
Seleccin de Instancias
95
Reduccin de Datos
Seleccin de Instancias
Reduccin de Datos
Seleccin de Instancias. Seleccin de Prototipos
Para Clasificacin con 1-NN Conjunto de Entrenamiento (TR)
COJUNTO DE DATOS
Clasificador 1 - NN
96
Reduccin de Datos
Seleccin de Instancias. Seleccin de Conjuntos de Entrenamiento.
Para Seleccin de Conjuntos de Entrenamiento Conjunto de Entrenamiento (TR)
Algoritmo de Seleccin de Prototipos
COJUNTO DE DATOS
Modelo Encontrado
Reduccin de Datos
Seleccin de Instancias. Eficiencia El orden de los algoritmos es superior a O(n2) y suele estar en orden O(n3) .Las principales dificultades que deben afrontar los algoritmos de Seleccin de Prototipos son: Eficiencia, recursos, generalizacin, representacin.
Cmo realizar la seleccin de instancias con grandes bases de datos? Combinamos una estrategia de estratificacin con los algoritmos de seleccin de instancias.
97
Reduccin de Datos
Seleccin de Instancias en grandes Bases de Datos a travs de estrategia de Estratificacin. [CANO, 2005]
T1
COJUNTO DE DATOS IS
T2
IS
T3
IS
Tt
IS
TSS1 TR1
TSS2 TR2
TSS3 TR3
TSSt TRt
TS1
TS1
TS1
TS1
Reduccin de Datos
Seleccin de Instancias Conjuntos de datos no balanceados Algunos problemas tienen una presencia de las clases desigual:
Diagnosis mdica: 90% sin-enfermedad, 10% enfermedad e-comercio: 99% no-compra, 1% compra seguridad: >99.99% de conexiones no son ataques La situacin es similar con mltiples clases La mayora de los clasificadores obtienen un 97% de clasificacin correcta, pero no son tiles
Utilizar tcnicas de reduccin de datos para balancear las clases reduciendo las clases mayoritarias. Realizar sobre muestreo para balancear aumentar el tamao de las clases minoritarias. test
98
Bibliografa
Jiawei Han and Micheline Kamber Data Mining: Concepts and Techniques, The Morgan Kaufmann Series in Data Management Systems, Jim Gray, Series Editor Morgan Kaufmann Publishers, August 2000. 550 pages. ISBN 1-55860-489-8
Bibliografa
Data Mining: Practical Machine Learning Tools and Techniques (Second Edition) Ian H. Witten, Eibe Frank Morgan Kaufmann June 2005 525 pages Paper ISBN 0-12-088407-0
99
Bibliografa
Pang-NingTan, Michael Steinbach, and VipinKumar Introduction to Data Mining (First Edition) Addison Wesley, May 2, 2005
Bibliografa
Dorian Pyle Data Preparation for Data Mining Morgan Kaufmann, Mar 15, 1999 MamdouhRefaatData Fayyad and K.B. Irani. Multi-interval discretization of continuous-valued attributes for classification learning. Proc. 13th Int. Joint Conf. AI (IJCAI-93), 1022-1027. Chamberry, France, Aug./ Sep. 1993.
100
Bibliografa
MamdouhRefaat Data Preparation for Data Mining Using SAS Morgan Kaufmann, Sep. 29, 2006
Bibliografa
J.R. Cano, F. Herrera, M. Lozano. Stratification for Scaling Up Evolutionary Prototype Selection. Pattern Recognition Letters 26:7 (2005) 953-963. R. Kerber. ChiMerge: Discretization of numeric attributes. Proc. 10th Nat. Conf. AAAI, 123-128. 1992.
101
203
Reglas de Asociacin
204
102
Introduccin
En base de datos transaccional, cada transaccin puede contener una lista de tems (comprados por un cliente) Encontrar patrones, asociaciones, correlaciones o estructuras casuales entre los conjuntos de tems u objetos en bases de datos transaccionales, relacionales y otros repositorios
Introduccin
Transacciones market basket
Id 1 2 3 4 5 {pan, leche} {pan, paales, cerveza, huevos} {leche, paales, cerveza, gaseosa} {pan, leche, paales, cerveza} {pan, leche, paales, gaseosa} tems
Inters en analizar Inter los datos para aprender el comportamiento de las compras de sus clientes
Promociones de mercadeo Manejo de inventario Relacin con el cliente
103
Introduccin
Metodologa de anlisis de asociaciones: usada para descubrir relaciones interesantes ocultas en largos conjuntos de datos Aplicaciones
Anlisis de las transacciones comerciales Prediccin Personalizacin Etc.
Reglas de asociacin
Encontrar: todas las reglas que correlacionan la presencia de un conjunto de tems con otro conjunto de tems
98% de las personas que compran llantas y accesorios de autos tambin adquieren servicios para autos 60% de usuarios de la Web que visitan la Pagina A y B compran el tem T1
Aplicaciones
Convenios de mantenimiento Recomendaciones en Web (URL1 y URL3 -> URL5)
104
Reglas de asociacin
Las relaciones pueden ser representadas en forma de:
Reglas de asociacin Conjunto de tem frecuentes
Reglas de asociacin
Ejemplos. Regla: Antecedente. Consecuente. [suporte, confidencia] Compra (x, paales) compra (x, cerveza) [0.5%, 60%]
105
soporte, s: probabilidad que una transaccin contiene {X Y Z} confianza, c: probabilidad condicional de que una transaccin que tiene {X Y} tambin contenga Z.
Soporte y Confianza
Soporte: Usado para eliminar reglas no interesantes. Confianza: mide que tan fiable es la inferencia hecha por la regla.
106
Ejemplo
ID Transaccin tems comprados 2000 A,B,C 1000 A,C 4000 A,D 5000 B,E,F
soporte mnimo 50%, confianza mnima 50%, A C (?, ?) C A (?, ?)
Ejemplo
ID Transaccin tems comprados
Para la regla A C:
Para la regla C A
soporte = soporte({C A}) = 50% confianza = soporte({C A})/soporte({C}) = 100%
107
108
Si {AB} es un conjunto de items frecuentes, entonces {A} y {B} deben ser conjuntos de items frecuentes Proceso iterativo para encontrar conjuntos de tems frecuentes con cardinalidad de 1 a k (kitemsets) Los conjuntos de items frecuentes son usados para generar reglas de asociacin
El algoritmo A priori
Generacin de Candidatos:
Paso de unin: Ck es generado uniendo Lk-1 con el mismo Paso de poda: Cualquier conjunto de (k-1) tems que no es Pseudo-cdigo:
frecuente no puede ser usado como un subconjunto de un conjunto frecuente de k-tems Ck: conjuntos de tems candidatos de tamao k Lk :conjuntos de tems frecuentas de tamao k
L1 = {tems frecuentes}; for (k = 1; Lk !=; k++) do begin Ck+1 = candidatos generados de Lk; (ver siguiente ejemplo) for each transaccin t en la base de datos do // requiere hacer scan a la BD !!! incrementar la cuenta de los candidatos en Ck+1 que estn contenidos en t Lk+1 = candidatos en Ck+1 con soporte >= min_soporte end return k Lk;
109
Generacin de candidatos
Suponer los tems en Lk-1 estn ordenados en una lista Paso 1: unin de Lk-1 con el mismo
Insert Into Ck Select p.item1, p.item2, , p.itemk-1, q.itemk-1 From Lk-1 p, Lk-1 q Where p.item1=q.item1, , p.itemk-2=q.itemk-2, p.itemk-1 < q.itemk-1 (conjuntos mas pequeos deben emparejar en todos menos el ltimo tem)
Paso 2: poda
forall itemsets c in Ck do forall (k-1)-subsets s of c do
if (s is not in Lk-1) then delete c from Ck
Poda:
acde es removido por que ade no esta en L3
C4={abcd}
110
C1
L1 itemset sup.
{1} {2} {3} {5} 2 3 3 3
L2 itemset sup
{1 3} {2 3} {2 5} {3 5} 2 2 3 2
C2 itemset sup
{1 {1 {1 {2 {2 {3 2} 3} 5} 3} 5} 5} 1 2 1 2 3 2
C2 itemset {1 2} Scan D
{1 {1 {2 {2 {3 3} 5} 3} 5} 5}
C3 itemset {2 3 5}
Scan D
L3 itemset sup {2 3 5} 2
Para optimizar: Almacenar los conjuntos de tems y sus conteos en tablas Hash
111
112
Nivel 2 min_sup = 3%
Mtodo FP-GROWTH
Longitud 100 nmero de candidatos es al menos:
Complejidad de computacin crece exponencialmente! Mtodo Frequent pattern growth: mejora escalabilidad (grandes conjuntos de datos)
113
FP-GROWTH
1. 2. 3.
Proyeccin de los conjuntos de tems frecuentes Construye una estructura en memoria llamada FP-tree Aplicar algoritmo FP-Growth
Id
tems
Mnimo soporte = 3
Id Soporte
1 2 3 4 5
Scan
f c a b m p
4 4 3 3 3 3
,1
Scan de la primera transaccin Construccin de la primera rama del rbol (solo los tems que estn en la lista de frecuentes) Scan de la segunda transaccin
,1 ,1 ,1 ,1
114
Id
tems
Mnimo soporte = 3
Id Soporte
1 2 3 4 5
Scan
f c a b m p
4 4 3 3 3 3
,1 ,2 ,2 ,1 ,1 ,2 ,1 ,1 ,1 ,1
Scan de la primera transaccin Construccin de la primera rama del rbol (solo los tems que estn en la lista de frecuentes) Scan de la segunda transaccin
Id
tems
Mnimo soporte = 3
Id Soporte
1 2 3 4 5
Scan
f c a b m p
4 4 3 3 3 3
,3 ,2 ,2 ,2 ,1 ,1 ,1 ,1 ,1
Scan de la primera transaccin Construccin de la primera rama del rbol (solo los tems que estn en la lista de frecuentes) Scan de la segunda transaccin Scan de la tercera transaccin
115
rbol final FP
Lista de cabezas (headers)
,4 ,3 ,3 ,2 ,2 ,1 ,1 ,1
,1 ,1 ,1
Algoritmo FP-Growth
Coleccionar las transacciones donde p participa comenzando por el header y siguiendo los nodos enlazados m sin p b sin p ni m .
116
2 caminos
,4 ,3 ,3 ,2 ,2 ,1 ,1 ,1
,1 ,1 ,1
Ejemplos o registros acumulados: { (f,2),(c,2),(a,2),(m,2) } { (f,1), (c,1),(a,1),(b,1),(m,1) } Conjuntos de tems frecuentes son: { (f,3), (c,3), (a,3), (m,3) } { f, c, a, m }
117
Encontrar combinaciones de valores multidimensionales y luego los correspondientes conjuntos de tems frecuentes
Ejemplo
Combinacin de los valores de los atributos Umbral de n (considerados frecuentes) Patrn Multidimensional MD-Patterrn Algoritmo BUC
Id A1 A2 A3 1 2 3 4 a b a c 1 2 2 3 m n m p tems x, y, z z, w x, z, w x, w
118
Ejemplo
Usando umbral de 2 I. 1. Ordenar por atributo A1 2. MD-pattern es a 3. Seleccionar las tuplas con el MD-pattern encontrado 4. Ordenar el subconjunto de tuplas con respecto a la segunda dimensin A2
Id 1 3 2 4
A1 a a b c
A2 1 2 2 3
A3 m m n p
tems x, y, z x, z, w z, w x, w
Ejemplo
5.
6.
Id 1 3
A1 a a
A2 1 2
A3 m m
tems x, y, z x, z, w
(a,*,m)
119
Ejemplo
II. Repetir el proceso del paso I, comenzando por el atributo A2 (A1 no es analizada en esta iteracin) MD-pattern es 2 continuando con A3 del subconnunto, no hay MD-patterns
Id 1 3 2 4 A1 a a b c A2 1 2 2 3 A3 m m n p tems x, y, z x, z, w z, w x, w
(*,2,*)
Ejemplo
III. Repetir el proceso del paso I, comenzando por el atributo A3 (A1 y A2 no son analizados) MD-pattern es m continuando con A3 del subconjunto, no hay MD-patterns
Id 1 3 2 4 A1 a a b c A2 1 2 2 3 A3 m m n p tems x, y, z x, z, w z, w x, w
(*,*,m)
120
Ejemplo
Minar los conjuntos frecuentes por cada MD-pattern Otra forma: Minar primero conjuntos de tems frecuentes y despus encontrar los MD-patterns.
Bibliografa
Jiawei Han and Micheline Kamber. Data Mining: Concepts and Techniques, 2006
121
Anlisis Supervisado I
122
Agenda
Conceptos bsicos de aprendizaje maquinal rboles de decisin y Reglas de Decisin
Medidas de desempeo
Agenda
Conceptos bsicos de aprendizaje b maquinal
Medidas de desempeo
123
Qu es Aprendizaje de Mquina?
Find a bug in a program, and fix it, and the program will work today. Show the program how to find and fix a bug, and the program will work forever.
Oliver G. Selfridge, AIs Greatest Trends and Controversies
Qu es Aprendizaje de Mquina?
Estudio y desarrollo de sistemas que aprenden Sistema que aprende: Sistema capaz de optimizar una funcin de desempeo basado en datos de entrenamiento y/o datos previos Elemento fundamental para el aprendizaje -> generalizacin (extraccin de patrones a partir de datos)
124
125
Tipos de Aprendizaje
Aprendizaje supervisado
Problema fundamental: encontrar una funcin que relacione un conjunto de entradas con un conjunto de salidas Tipos principales de problemas: Clasificacin Regresin
126
127
Agenda
Conceptos bsicos de aprendizaje maquinal
Medidas de desempeo
128
Alternativa: Hay un restaurante alternativo cercano? Bar: Tiene un bar confortable para esperar? Viernes/Sbado: Hoy es Viernes o Sbado? Hambre: Estamos hambrientos? Clientes: nmero de personas en el restaurante (Ninguno, Algunos, Lleno) (Ninguno, algunos, lleno) Precio: Rango de precios ($, $$, $$$) Lloviendo: Est lloviendo afuera? Reservacin: Tuvimos que hacer reservacin? Tipo: clase de restaurante (Francs, Italiano, Thai, Hamburguesas) EsperaEstimada: tiempo estimado de espera (0-10, 1030, 30-60, >60)
129
Esperar? V F V V F F F V F F F V
V V F V V F F F F V F V
F F V F F V V F V V F V
F F F V V F F F V V F V
V V F V F V F V F V F V
Algunos Lleno Algunos Lleno Lleno Algunos Ninguno Lleno Lleno Lleno Ninguno Lleno
F F F F F V V V V F F F
V F F F V V F V F V F F
Francs Thai Hamburguesas Thai Francs Italiano Hamburguesas Thai Hamburguesas Italiano Thai Hamburguesas
0 - 10 30 - 60 0 - 10 10 30 > 60 10 - 30 0 - 10 0 - 10 > 60 10 - 30 0 - 10 30 - 60
rboles de Decisin
Una posible representacin para las hiptesis Por ejemplo, este es el rbol verdadero para decidir si esperar o no:
Clientes? Ninguno
F
Algunos
V
>30 -60
>10-60 Hambre? No
V
>0-10
V
Alternativa? No Si Viernes/Sbado? No
F
Si Alternativa? No
F
Reservacin ? No Si Bar? No
F V
Si
V
Si
V
Si
V
130
Expresividad
Los rboles de Decisin pueden expresar cualquier funcin de los atributos de entrada. Por ejemplo, para funciones Booleanas, una fila de la tabla de verdad camino a la hoja:
A F F V V
B F V F V
AyB F V V F
No
F B
No
Si
B
Si
V
No
F
Si
V
Es trivial, que haya un rbol de decisin consistente para cualquier conjunto de entrenamiento con un camino a la hoja para cada ejemplo (a menos que f sea no-determinstica en x) pero es probable que no generalice para nuevos ejemplos. Es preferible encontrar rboles de decisin ms compactos
131
Condicin de Parada
Condiciones para detener el particionamiento:
Todos los ejemplos para un nodo dado pertenecen a una misma clase. No hay cualidades restantes para mayor particionamiento la mayora de votos es usada para la clasificacin de la hoja.
Escogiendo un Atributo
Idea: un buen atributo separa los ejemplos en subconjuntos que son (idealmente) todos positivos o todos negativos
Clientes?
Tipo?
Ninguno
Algunos
132
Pi corresponde a la probabilidad de cada alternativa La informacin generada por la respuesta a una pregunta corresponde a la diferencia entre el valor de la entropa antes y despus de responder la pregunta
133
Hnueva = 1/6*0 + 2/3*0 +0.5*0.91 = 0.45 Info = Hvieja - Hnueva = 1 0.45 = 0.55
H=0
134
Ganancia de informacin
Si Ei tiene pi positiva y ni ejemplos negativos entonces:
La cantidad de bits que se necesitan para clasificar un nuevo ejemplo es:
H ( pi / ( pi + ni ), ni / ( pi + ni )
p i + ni H ( pi / ( pi + ni ), ni / ( pi + ni ) p+n
Para clientes? Son 0.459 bits, por Tipo sigue siendo 1 bit Elegir el atributo que maximice la ganancia de informacin
Ejemplo
rbol de Decisin aprendido de 12 ejemplos:
Clientes?
Ninguno
F
Algunos
V
Lleno
Hambre?
No
F
Si
Tipo?
Francs
V
Hamburguesas Italiano
F
Viernes/Sbado? No Si
V
Sustancialmente ms simple que un rbol de verdad una hiptesis ms compleja no se justifica por el bajo volumen de datos
135
136
Notas Finales
Hay diferentes tipos de algoritmos para induccin de rboles de clasificacin (ID3, C4.5, C5.0, CART, etc.) Se pueden aplicar en muchos tipos de problemas y en general los resultados son satisfactorios Es un modelo altamente interpretable Tienen problemas cuando hay interacciones complejas entre atributos
Agenda
Conceptos bsicos de aprendizaje maquinal
Medidas de desempeo
137
Evaluacin de Algoritmos
Criterios (dependiendo de la aplicacin):
Error de clasificacin o riesgo Complejidad espacio/temporal del entrenamiento Complejidad espacio/temporal de la aplicacin Interpretabilidad Programacin sencilla
Medidas de Error
Clase Predicha Clase verdadera + True Positive False Negative + False Positive True Negative
%error = #errores/#instancias = (FN+FP)/N sensitividad = #+ encontrados/#+ = TP/(TP+FN) (recall,hit rate) precisin= #+ encontrados/ #total de encontrados = TP/(TP+FP) especificidad = TN/(TN+FP) %falsas alarmas = FP/(FP+TN)
138
Matrices de Confusin
Usadas cuando ms de dos clases estn involucradas
Clase Predicha Virginica Versicolor 0 0 48 2 1 49
Setosa 50 0 0
Bibliografa
Stuart Russell and Peter Norvig Artificial Intelligence: A Modern Approach, Second Edition.
139
Anlisis Supervisado II
140
Agenda
Introduccin. Redes Neuronales Artificiales.
Neurona Artificial. Modelo de McColluch-Pitts. Definicin de RN. Clasificacin.
Agenda
Aprendizaje o Entrenamiento
Definiciones Bsicas Clasificacin de Algoritmos de Aprendizaje
Redes Multicapa
El Perceptrn Back Propagation
141
Agenda
Introduccin. Redes Neuronales Artificiales.
Neurona Artificial. Modelo de McColluch-Pitts. Definicin de RN. Clasificacin.
INTRODUCCIN
Qu son las Redes Neuronales?. Bases Biolgicas. Historia. Caractersticas. Aplicaciones.
142
143
Bases Biolgicas
El Cerebro es un sistema supremamente complejo. El cerebro humano esta compuesto por cerca de 1011 neuronas (100.000 Millones), con un tamao de 5-100 micrmetros. Es el dispositivo de computo ms poderoso que existe. Le ha tomado a la naturaleza 4.000 Millones de aos desarrollarlo.
La Neurona Biolgica
144
La Neurona Biolgica
DENDRITAS: Recogen seales bien procedentes de otras neuronas, bien del mundo externo y las transmiten al cuerpo de la neurona
La Neurona Biolgica
CUERPO: Recibe las seales de todas las dendritas y segn la tipologa de la neurona en si, determina una respuesta global.
145
La Neurona Biolgica
AXON: Transmite la respuesta global generada por el cuerpo de la neurona. La respuesta se transmite a otras neuronas o a algn miembro receptor (msculo, etc...)
La Neurona Biolgica
SINAPSIS: Es el punto de unin entre dos neuronas (dendrita - axn). El impulso transmitido por el axn se transmite as a otras neuronas, determinando el comportamiento general de la red.
146
Historia
1943 Modelo de Neurona de McCulloch y Pitts 1962 Algoritmo de Entrenamiento para Perceptrones, Rosenblatt 1969 Limitaciones del Perceptron, Minski y Papert 1986 Algoritmo BackPropagation Rumelhart, Hinton y Willians
Caractersticas
Qu son capaces de hacer?
Reconocimiento de Patrones Sntesis Funcional: relaciones entre
147
Aplicaciones
Visin por Computador Reconocimiento de la Escritura Reconocimiento y sntesis de la Voz Control de Procesos Diagnostico Mdico Exploracin Petrolera Minera de Datos
148
Agenda
Introduccin. Redes Neuronales Artificiales.
Neurona Artificial. Modelo de McColluch-Pitts. Definicin de RN. Clasificacin.
Neurona Artificial
Definicin: Unidad de procesamiento encargada de simular el comportamiento de una neurona biolgica. Modelo matemtico que trata de emular de manera simplificada el comportamiento de una neurona biolgica
149
Agenda
Introduccin. Redes Neuronales Artificiales.
Neurona Artificial. Modelo de McColluch-Pitts. Definicin de RN. Clasificacin.
MODELO McCULLOCHPITTS
Modelo de neurona binaria - 1943. Cada Neurona:
Calcula la suma ponderada de sus entradas La salida es 1 o 0 dependiendo de si la suma esta por encima o por debajo de un umbral.
ni = f( wij nj (t)- ui )
j
150
MODELO McCULLOCHPITTS
n n 1 2 w i2 w i1
w ij
F i n i
MODELO McCULLOCHPITTS
Funcin de Activacin:
151
MODELO McCULLOCHPITTS
Ejemplo:
0.5 0.2 0.2
0.03 1
0
Otras funciones
Funcin umbral
Funcin sigmoide
Funcin Gausssiana
152
Neuronas
Conexiones
Ejemplo
Red XOR
=0.7 1 0.5 0.5 0.5 1 0.5
=0
=0.3 -1
153
Agenda
Introduccin. Redes Neuronales Artificiales.
Neurona Artificial. Modelo de McColluch-Pitts. Definicin de RN. Clasificacin.
Clasificacin
Segn la topologa:
Redes
feedforward
recurrentes feedback
154
Clasificacin
Red Feedforward
Neuronas de salida
Neuronas ocultas
Neuronas de entrada
Clasificacin
Red Recurrente:
155
Agenda
Aprendizaje o Entrenamiento
Definiciones Bsicas Clasificacin de Algoritmos de Aprendizaje
Redes Multicapa
El Perceptrn Back Propagation
Tipos de Aprendizaje
Supervisado:
Este tipo de algoritmo utiliza un conjunto de ejemplos que la red debe aprender. El entrenamiento se lleva a cabo mediante un proceso iterativo de adaptacin de la red neuronal de manera que sus salidas se acerquen cada vez ms a las salidas deseadas especificadas en los ejemplos.
156
Tipos de Aprendizaje
No supervisado:
En este tipo de algoritmos no se especifican salidas deseadas, el algoritmo trata de encontrar de manera autnoma regularidades en los datos de entrada creando categoras que agrupen a los datos ms similares.
Con refuerzo:
La red aprende a travs de un proceso de ensayo y error que maximiza el ndice de desempeo denominado seal de error.
Clasificacin
Tipo de aprendizaje
S u p e r v is a d o
Regla de aprendizaje
C o r r e c c i n d e e rro r B o ltz m a n n H e b b ia n C o m p e titiv o C o r r e c c i n d e e rro r H e b b ia n C o m p e titiv o C o r r e c c i n d e e rro r y c o m p e titiv o
No s u p e r v is a d o
H b r id o
157
Ley de Hebb
Experimento de Pavlov
Sonido
A B Seal de salivacin
Comida
Ley de Hebb
Idea principal sobre la cual se basa esta ley:
Cuando un axn de la clula A est suficientemente prximo para excitar a una clula B o toma parte en su disparo de forma persistente, tiene lugar algn proceso de crecimiento o algn cambio metablico en una de las clulas, o en las dos, de tal modo que la eficiencia de A, como una de las clulas que desencadena el disparo de B, se ve incrementada.
158
yi+1 = yi+yi
yi= - f /xi
159
mnimo local
mnimo global
160
Rata de Aprendizaje
Determina el tamao del paso que utiliza el algoritmo, para moverse en el espacio de los pesos. Un valor muy pequeo para este parmetro puede provocar una convergencia muy lenta, as como un valor muy alto puede provocar un comportamiento divergente.
Momento
El momento, da al algoritmo una especie de inercia que le permite evadir en ciertos casos los mnimos locales. Con este momento se consigue la convergencia de la red en un nmero menor de iteraciones.
161
Patrones de entrenamiento
Un patrn es una pareja de vectores X y Y de longitud n y m respectivamente:
Agenda
Aprendizaje o Entrenamiento
Definiciones Bsicas Clasificacin de Algoritmos de Aprendizaje
Redes Multicapa
El Perceptrn Back Propagation
162
El Perceptrn
Definicin: Es una red neuronal feedforward que consta de dos capas, una de entrada y una de salida. En sus inicios se consider que poda resolver todo tipo de problemas. Sin embargo no es posible resolver el problema XOR con este modelo.
El Perceptrn
x1 x2 . . xi . . yi y1 y2
163
El Perceptrn
Regla de Aprendizaje 1. Inicializacin de los pesos y del umbral: Inicialmente se asignan valores aleatorios a cada uno de los pesos (wi) de las conexiones y al umbral (-w0=)
El Perceptrn
2. Presentacin de un nuevo par (Entrada, Salida esperada): Presentar un nuevo patrn de entrada Xp=(x1,x2,...,xN) junto con la salida esperada d(t).
164
El Perceptrn
3. Clculo de la salida actual
y(t)=f [wi(t)xi(t)-]
i Siendo f (x) la funcin de transferencia escaln.
El Perceptrn
4. Adaptacin de los pesos :
wi (t + 1) = wi (t ) + wi (t ) 2 xi (t ) y (t ) si y (t ) d (t ) wi (t ) = 0 en otro caso wi (t ) = (1 y (t )d (t ))
165
El Perceptrn
wi(t)=[d(t)-y(t)] xi(t)
(0<=i<=N) donde es la rata de aprendizaje y varia entre 0 y 1. 5. Repertir desde el paso 2.
Inicializar los pesos y umbrales para valores aleatorios pequeos. Presentar un patrn y evaluar la salida de la neurona. Calcular la salida actual.
yi(t)=f (wi(t)xi(t)-)
4.
wij (t+1)=wij(t)+(di(t)-yi(t))xj
donde es la rata de aprendizaje y varia entre 0 y 1.
166
Separabilidad de patrones
Funcin AND linealmente separable Funcin XOR No separable linealmente
01 01 11 11
00
10
00
10
Redes Multicapa
Definicin: Conformadas por una capa de entrada, una o varias ocultas y una de salida, sus conexiones no deben formar ciclos. Feedforward: Conexin completa entre capas sucesivas. Pueden utilizar funciones de activacin tales como la sigmoide y la funcin umbral.
167
Redes Multicapa
Neuronas de salida
Neuronas ocultas
Neuronas de entrada
E = 1 / 2( y -d )
168
Error SE
169
i(t)=f(xi(t))*(di-yi)
j(t)=f (xi(t))*(wiji(t)) i
wji(t+1)= wji(t)+wji(t+1)
donde:
170
wji(t+1) = [jyi(t)+wji(t)]
171
Error de Clasificacin
Error de entrenamiento:
e(modelo, datos) Nmero de ejemplos de entrenamiento clasificados incorrectamente Conocido como error de re-substitucin o error aparente
Error de generalizacin:
e(modelo, datos) Error esperado del modelo en ejemplos no usados en el entrenamiento.
Sobre-ajuste (Overfitting)
Cuando el algoritmo de aprendizaje se ajusta tanto a los datos de entrada que pierde su capacidad de generalizar
172
Sobre-ajuste
Sobre-ajuste: Bajo error de entrenamiento pero error de generalizacin alto. Sub-ajuste (underfitting): Errores de entrenamiento y generalizacin altos
Sub-ajuste Sobre-ajuste Error de Generalizacin
Error de Entrenamiento
Parmetro modelo
Ruido
173
La falta de ejemplos en la parte inferior del diagrama hace difcil que el modelo realice una prediccin acertada en esta regin
174
C? C1 0
Xn
X X1 X2 X3 X4
y ? ? ? ?
Xn
costo(datos|modelo) para codificar los errores de clasificacin. costo(modelo) para codificar el modelo.
175
Mtodos de Estimacin
Holdout
Mantener un porcentaje de instancias (2/3) para entrenamiento y el resto (1/3) para pruebas Se sugiere que el de entrenamiento sea mayor que el de pruebas
Muestreo Aleatorio
Repetir varias veces holdout y calcular estadsticos sobre dicho proceso Se sugiere repetir como mnimo 30 veces
Muestreo Estratificado
sobremuestreo vs submuestreo
Bootstrap
Muestreo con repeticin
En redes neuronales
Nmero neuronas ocultas y/o conexiones Tipo de red neuronal
176
Bibliografa
Neural Networks: A Comprehensive Foundation, Simon Haykin Neural Networks: Algorithms, Applications, and Programming Techniques, James A. Freeman, David M. Skapura
Notas
177
178
Agenda
Repaso de probabilidad Modelos Bayesianos Clasificador Bayesiano Naive Bayes Red de creencias Clasificacin sensible al costo
Agenda
Repaso de probabilidad Modelos Bayesianos Clasificador Bayesiano Naive Bayes Red de creencias Clasificacin sensible al costo
179
Probabilidad
Formalizacin de la nocin intuitiva de la posibilidad de que un evento ocurra # de Veces que sucede E P (E ) = # Posibles Eventos Cul es la probabilidad de obtener el nmero 6 si lanzo un dado? Cul es la probabilidad de obtener 10 o ms si lanzamos dos dados? Variable aleatoria: una variable que puede tomar diferentes valores de acuerdo con una distribucin de probabilidad
Probabilidad Conjunta
Es la probabilidad de que dos eventos sucedan a la vez: P(X=x,Y=y) probabilidad de que X y Y tomen los valores x y y a la vez P(dado_1=4,dado_2=6) = ?
180
Probabilidad Condicional
Probabilidad de que una variable aleatoria pueda tomar un valor particular dado el valor de otra variable aleatoria P(Y=y | X=x) se refiere a la probabilidad que la variable Y puede tomar el valor de y dado que la variable X toma el valor de x
Probabilidad Condicional
Cul es la probabilidad de obtener 10 al lanzar un par de dados si s que uno de los dados cayo en 4? suma = dado_1 + dado_2 P(suma=10 | dado_1=4) = ?
181
Teorema de Bayes
Las probabilidades condicionales de X y Y estn relacionadas: P(X,Y) = P(Y|X) P(X) = P(X|Y) P(Y) Teorema de Bayes P(Y|X) = P(X|Y)P(Y) / P(X) P(X|Y) Ejercicio
2 equipos. Equipo 0 gana el 65% de las veces, equipo 1 gana 35% de las veces. De los juegos ganados por el equipo 0, el 30% son jugados en la cancha del equipo 1. El 75%, de las victorias del equipo 1 son ganados cuando juegan en casa. Si el equipo 1 juega de local, cul equipo es el favorito a ganar?
Agenda
Repaso de probabilidad Modelos Bayesianos Clasificadores Bayesiano Naive Bayes Red de creencias Clasificacin sensible al costo
182
Clasificador Bayesiano
Considere que cada atributo y la etiqueta de clase son variables aleatorias Dado un registro con atributos (A1, A2,,An) El objetivo es predecir la clase C Especficamente, nosotros deseamos encontrar el valor de C que maximice P(C| A1, A2,,An ) Podemos estimar P(C| A1, A2,,An ) directamente a partir de los datos?
Solucin
calcule la probabilidad a posteriori P(C | A1, A2, , An) para todos los valores de C usando el teorema de Bayes: P ( A1 A2 ... An | C ) P (C ) P(C | A1 A2 ... An ) = P ( A1 A2 ... An ) Escoja el valor de C que maximice P(C | A1, A2, , An) Equivalente a escoger el valor de C que maximice P(A1, A2, , An|C) P(C) Cmo se estima P(A1, A2, , An | C )?
183
Agenda
Repaso de probabilidad Modelos Bayesianos Clasificadores Bayesiano Nave Bayes Red de creencias Clasificacin sensible al costo
184
185
P ( Ai | C ij ) =
1 2 ij
( Ai ij ) 2 2 ij 2
P ( Income = 120 | No ) =
= 0 .0072
186
=> Clase = No
187
Agenda
Repaso de probabilidad Modelos Bayesianos Clasificadores Bayesiano Naive Bayes Red de creencias Clasificacin sensible al costo
188
Red de Creencias
Un modelo grfico de relaciones causales:
Representan dependencia condicional entre las variables Variables no explcitamente relacionadas se consideran condicionalmente independientes
X Z
Y P
Enlaces: dependencias X y Y son los padres de Z, y Y es el padre de P No hay dependencia entre Z y P No tiene bucles o ciclos
189
Tabla de probabilidad condicional (TPC) para la variable cncer de pulmn: CP 0.8 0.2 0.5 0.5 0.7 0.3
0.1 0.9
Cncer de pulmn
Efisema
~CP
Rayos X Positivos
Dipnea
P( x1 ,..., xn ) = P( xi | Padres(Yi ))
i =1
Inferencia
Diagnosticar si una persona tiene Cncer de Pulmn:
Sin informacin previa: P(CP) Rayos X Positivos: P(CP|RXP) Rayos X Positivos, Fumador, No Dipnea: P(CP|RXP,F,~D)
En todos los casos se puede calcular usando la probabilidad conjunta total y las leyes de probabilidad
190
Caractersticas
Modelo grafico Construir la red puede ser costoso. Sin embargo, una vez construida la red, adicionar una nueva variable es directo Trabajan bien con datos perdidos (sumando o integrando las probabilidades) El modelo es robusto a overfitting
191
Agenda
Repaso de probabilidad Modelos Bayesianos Clasificadores Bayesiano Naive Bayes Red de creencias Clasificacin sensible al costo
Ejemplo
Comprador / no Comprador Enfermo / no Enfermo Prestar / no Prestar Spam / no Spam
192
Suponer que los Errores Son Igualmente Costosos Pueden Llevar a Malas Decisiones
Examples
Marketing El costo de hacerle una oferta a un no comprador es pequea comparada con no contactar un comprador
Finance
El costo de un mal prestamo es mayor que negarle un prestamo aun buen cliente
Spam
Rechazar correo que no sea Spam es ms costoso que aceptar correo Spam
Matriz de Costos
Actual
0 1 2
10 1 2
15 11 2
193
20 -x
- 20
(0.2)x
x = valor transacin
Fuente: Aprahams
Ci P (C j | A1 ,..., An )
Aprendizaje sensitivo al costo: Escoger accin que minimice el costo esperado
min
Ci
C j Ci
P(C
| A1 ,..., An )Costo(C j , Ci )
Costo(Cj,Ci) = costo de clasificar como Ci cuando realmente es Cj Los dos enfoques son equivalentes cundo los costos son iguales para todos los errores
194
Metacost
Es una algoritmo que permite volver cualquier clasificador sensitivo al costo Se debe especificar una matriz de costos El algoritmo reetiqueta los ejemplos de entrenamiento de manera que el costo esperado se minimice
Ejemplo
Objetivo P(Y=1|X=1) probabilidad condicional de que el equipo 1 gane el siguiente juego estando como local, y comparar con P(Y=0|X=1) Usando Bayes
P(Y=1|X=1) = P(X=1|Y=1) P(Y=1)/ P(X=1) Ley de probabilidad total = P(X=1|Y=1) P(Y=1) / P(X=1,Y=1)+P(X=1,Y=0) = P(X=1|Y=1) P(Y=1) / P(X=1|Y=1)P(Y=1) +P(X=1|Y=0)P(Y=0)
195
Ejemplo
X variable aleatoria que representa el equipo local Y variable aleatoria que representa el ganador Probabilidad que equipo 0 gane: P(Y=0) = 0.65 Probabilidad que equipo 1 gane: P(Y=1) = 0.35 Probabilidad de que si el equipo 1 gana est jugando como local:
P(X=1|Y=1) = 0.75
Probabilidad de que si el equipo 0 gana est jugando como visitante:
P(X=1|Y=0) = 0.3
Bibliografa
B. Zadrozny, J. Langford, and N. Abe. CostSensitive Learning by Cost-Proportionate Example Weighting. In Proceedings of the 2003 IEEE International Conference on Data Mining, 2003. Alpaydin, E. 2004 Introduction to Machine Learning (Adaptive Computation and Machine Learning). The MIT Press. Tan, Steinbach and Kumar, Introduction to Data Mining, Addison Wesly, 2006
196
Bibliografa
Domingos. MetaCost: A General Method for Making Classifiers Cost-Sensitive. In Proceedings of the Fifth International Conference on Knowledge Discovery and Data Mining (KDD-99). 1999. Alan Abrahams, An Introduction to CostSensitive Learning , Lecture Slides,
http://opim.wharton.upenn.edu/~asa28/opi m_410_672_spring05/opim_410_guest_lect ure_dan_fleder_cost_sensitive_learning.ppt
NOTAS
197
198
Agenda
Regresin Series de tiempo
Agenda
Regresin Series de tiempo
199
Regresin
Similar al problema de clasificacin pero el atributo de clase es continua Problema:encontrar una relacin funcional entre una variable dependiente y uno o varias variables independientes Tipos: Regresin lineal Regresin no lineal Otros: regresin logsitica, rboles de decisin
(x
w1 =
i=1
|D |
x )(y i y )
i
(x
i=1
|D |
w0 = y w x 1
x )2
200
Regresin no lineal
Algunos modelos no lineales se pueden modelar con una funcin polinomial Un modelo de regresion polinomial puede transformarse en un modelos de regresin lineal:
y = w0 + w1 x + w2 x2 + w3 x3
Otras funciones, ej. logaritmos, pueden transformarse en modelos lineales Principal problema: se debe conocer/suponer la forma del modelo a priori
201
Regresin no Lineal
Solucin: usar un modelo no paramtrico (o semiparamtrico) Redes neuronales:
Neuronas de entrada: variables independientes Neuronas de salida: variables dependientes
Regresin Logstica
Objetivo: usar regresin para estimar la probabilidad P(Y|X1,...,Xn) = g(w0+w1X1+...+wnXn) g() es una funcin sigmoide, usualmente la funcin logsitica:
g (x ) =
1 1+ e x
202
Agenda
Regresin Series de tiempo
Series de Tiempo
Base de Datos de Series de Tiempo
Consiste en secuencias de valores o eventos que cambian con el tiempo
Los datos son almacenados en intervalos regulares Componentes principales de una serie de tiempo:
Tendencia, ciclo, estacional. irregular
Aplicaciones
Finanzas: inventarios, precio, inflacin
203
Series de Tiempo
Una serie de tiempo puede ser ilustrada como una grfica que describe un punto que se mueve a travs del tiempo.
204
Modelo Autoregresivo
El valor de la serie de tiempo en un momento dado depende de los valores anteriores: Xi = f(Xi-1,...,Xi-k) Muchas veces, f es modelada como una funcin lineal En el caso ms general, f es una funcin no lineal
205
Bibliografa
Data Mining: Concepts and Techniques Jiawei Han and Micheline Kamber Department of Computer Science University of Illinois at Urbana-Champaign
2006
206
207
Agenda
Qu es el anlisis de Cluster? Similitud y Disimilitud
Aplicaciones del Anlisis de Cluster Qu no es Anlisis de Cluster? Similitud /Disimilitud para Atributos Simples Distancia Euclidiana Distancia Minkowski Distancia de Mahalanobis Propiedades de una Distancia Propiedades comunes de una similitud Similitud entre Vectores Binarios Ejemplo: SMC versus Jaccard Similitud por coseno Coeficiente Extendido de Jaccard (Tanimoto) Correlacin Densidad Densidad Euclidiana - Basada en Celdas Densidad Euclidiana Basada en el Centro Tipos de Agrupamientos
Agenda
Tipos de Agrupamientos
Agrupamiento de Particin (Partitional Clustering) Agrupamiento Jerrquico Otras distinciones entre los conjuntos de Clusters Caractersticas importantes de la entradas de datos
Algoritmos de Agrupamiento
K-means y sus variantes Agrupamiento jerrquico Agrupamiento basado en densidad
208
Agenda
Qu es el anlisis de Cluster? Similitud y Disimilitud
Aplicaciones del Anlisis de Cluster Qu no es Anlisis de Cluster? Similitud /Disimilitud para Atributos Simples Distancia Euclidiana Distancia Minkowski Distancia de Mahalanobis Propiedades de una Distancia Propiedades comunes de una similitud Similitud entre Vectores Binarios Ejemplo: SMC versus Jaccard Similitud por coseno Coeficiente Extendido de Jaccard (Tanimoto) Correlacin Densidad Densidad Euclidiana - Basada en Celdas Densidad Euclidiana Basada en el Centro Tipos de Agrupamientos
Qu es el anlisis de Cluster?
Los grupos de objetos encontrados, en un grupo sern similares o relativos sus objetos y diferentes de los objetos de otros grupos.
Las distancias entre los cluster son maximizadas
209
1 2 3 4
Applied-Matl-DOWN,Bay-Network-Down,3-COM-DOWN, Cabletron-Sys-DOWN,CISCO-DOWN,HP-DOWN, DSC-Comm-DOWN,INTEL-DOWN,LSI-Logic-DOWN, Micron-Tech-DOWN,Texas-Inst-Down,Tellabs-Inc-Down, Natl-Semiconduct-DOWN,Oracl-DOWN,SGI-DOWN, Sun-DOWN Apple-Comp-DOWN,Autodesk-DOWN,DEC-DOWN, ADV-Micro-Device-DOWN,Andrew-Corp-DOWN, Computer-Assoc-DOWN,Circuit-City-DOWN, Compaq-DOWN, EMC-Corp-DOWN, Gen-Inst-DOWN, Motorola-DOWN,Microsoft-DOWN,Scientific-Atl-DOWN Fannie-Mae-DOWN,Fed-Home-Loan-DOWN, MBNA-Corp-DOWN,Morgan-Stanley-DOWN Baker-Hughes-UP,Dresser-Inds-UP,Halliburton-HLD-UP, Louisiana-Land-UP,Phillips-Petro-UP,Unocal-UP, Schlumberger-UP
Technology1-DOWN
Technology2-DOWN
Financial-DOWN Oil-UP
Resumen
Reducir el tamao de los grandes conjuntos de datos
Qu no es Anlisis de Cluster?
Clasificacin Supervisada
Tiene etiquetas de informacin de la clase
Segmentacin Simple
Dividir los estudiantes en grupos diferentes de registro alfabticamente por apellido.
Particin Grfico
Existe cierta importancia y sinergia mutua, pero las reas no son idnticas
210
Seis Clusters
Dos Clusters
Cuatro Clusters
Agenda
Qu es el anlisis de Cluster? Similitud y Disimilitud
Aplicaciones del Anlisis de Cluster Qu no es Anlisis de Cluster? Similitud /Disimilitud para Atributos Simples Distancia Euclidiana Distancia Minkowski Distancia de Mahalanobis Propiedades de una Distancia Propiedades comunes de una similitud Similitud entre Vectores Binarios Ejemplo: SMC versus Jaccard Similitud por coseno Coeficiente Extendido de Jaccard (Tanimoto) Correlacin Evaluacin Grfica de la Correlacin Aproximacin General para Combinar Similitudes Uso de Pesos para Combinar Similitudes Densidad Densidad Euclidiana - Basada en Celdas Densidad Euclidiana Basada en el Centro Tipos de Agrupamientos
211
Similitud y Disimilitud
Similitud
Medida numrica de semejanza entre objetos Valor alto para objetos parecidos A menudo definida en el intervalo [0,1]
Disimilitud
Medida numrica de diferencia entre objetos Valor bajo para objetos parecidos Varia entre [0, ) Usualmente es una distancia
Proximidad
Se refiere a similitud o disimilitud
212
Distancia Euclidiana
dist =
( pk
n
k =1
qk )2
Distancia Euclidiana
3 2 1
p2 p1 p3 p4
punto p1 p2 p3 p4
6
x 0 2 3 5
y 2 0 1 1
0 0 1 2 3 4 5
p3 3.162 1.414 0 2
p4 5.099 3.162 2 0
Matriz de Distancias
213
Distancia Minkowski
Generalizacin de la distancia Euclidiana mediante el parmetro r 1
dist = ( | pk qk |r ) r
k =1
r = 1. Distancia Manhattan (taxi, norma L1).
Ejemplo tpico: Distancia de Hamming: Numero de bits diferentes entre dos arreglos de bits
Distancia Minkowski
punto p1 p2 p3 p4 x 0 2 3 5 y 2 0 1 1
L1 p1 p2 p3 p4 L2 p1 p2 p3 p4
L p1 p2 p3 p4
p3 4 2 0 2 p3 3.162 1.414 0 2
p3 3 1 0 2
p4 6 4 2 0 p4 5.099 3.162 2 0
p4 5 3 2 0
Matriz de Distancias
214
Distancia de Mahalanobis
mahalanobi s ( p , q ) = ( p q ) 1 ( p q ) T
es la matriz de covarianzas de los datos de entrada X
j ,k = 1 n ( X ij X j )( X ik X k ) n 1 i =1
Para los puntos rojos, la distancia Euclidiana es 14.7, mientras que la distancia de Mahalanobis es 6.
Distancia de Mahalanobis
Matriz de Covarianza: C B A
215
d(p, q) 0 para todos p y q y d(p, q) = 0 solamente si p = q. (Definida positiva) d(p, q) = d(q, p) para todos p y q. (Simetra) d(p, r) d(p, q) + d(q, r) para todos p, q, y r. (Desigualdad triangular)
216
Correspondencia simple (SMC) y Coeficientes de Jaccard (J) SMC = (M11 + M00) / (M01 + M10 + M11 + M00) J = (M11) / (M01 + M10 + M11)
es 0 y q es 1 es 1 y q es 0 es 0 y q es 0 es 1 y q es 1
217
d1d2=3*1 +2*0 +0*0 + 5*0 + 0*0 + 0*0 + 0*0 + 2*1 + 0*0 + 0*2 = 5 ||d1||=(3*3+2*2+0*0+5*5+0*0+0*0+0*0+2*2+0*0+0*0)0.5 = (42) 0.5 ||d1|| = 6.481 ||d2|| = (1*1+0*0+0*0+0*0+0*0+0*0+0*0+1*1+0*0+2*2) 0.5 = (6) 0.5 ||d2|| = 2.245
218
Correlacin
La correlacin cuantifica la relacin lineal entre objetos Para calcular la correlacin, se estandarizan los objetos, p y q, y luego se efecta el producto punto
Densidad
El agrupamiento basado en densidad, requiere entender el concepto de densidad: Ejemplos:
Densidad Euclidiana:
Densidad Euclidiana = nmero de puntos por unidad de volumen
219
220
Agenda
Tipos de Agrupamientos
Agrupamiento de Particin (Partitional Clustering) Agrupamiento Jerrquico Otras distinciones entre los conjuntos de Clusters Caractersticas importantes de la entradas de datos
Algoritmos de Agrupamiento
K-means y sus variantes Agrupamiento jerrquico Agrupamiento basado en densidad
Tipos de Agrupamientos
Un agrupamiento es un grupo de clusters
Agrupamiento Jerrquico
Es un conjunto de clusters anidados, organizados como un rbol jerrquico
Agrupamiento de Particin
Una divisin de objetos de datos en conjuntos no superpuestos (clusters), donde cada objeto de dato es exactamente un subconjunto.
221
Puntos Originales
Un agrupamiento de particin
p1 p2
Agrupamiento Tradicional Jerrquico
p3 p4
Dendrograma Tradicional
p1 p3 p2 p4
p1 p2
Agrupamiento Jerrquico No - Tradicional
p3 p4
Dendrograma No tradicional
222
En el agrupamiento difuso, un punto pertenece a todo cluster con algn peso entre 0 y 1.
223
Tipos de Clusters
Clusters bien separados Clusters basados en el centro Clusters contiguos Clusters basados en densidad De propiedad o Conceptual Descrito por una Funcin Objetivo
224
Tipos de Clusters:
Clusters contiguos
Un cluster es un conjunto de puntos donde un punto en el cluster est ms prximo a otro punto o puntos en el cluster que a cualquier otro punto que no pertenezca al cluster.
8 clusters contiguos
225
Tipos de Clusters:
Basados en Densidad
Un cluster es una regin densa de puntos, separados por regiones de baja densidad, de otras regiones de alta densidad. Se usan cuando los clusters son irregulares o entrelazados, y cuando se presenta ruido y datos atpicos
Tipos de Clusters:
Clusters Conceptuales
De propiedad compartida o clusters conceptuales
Son clusters que tienen propiedad compartida o representan un concepto particular
.
2 Crculos entrelazados
226
Tipos de Clusters:
De Funcin Objetivo
Clusters Definidos por una Funcin Objetivo
Son clusters que minimizan o maximizan una funcin objetivo Enumeran todas las posibles formas de dividir los puntos dentro de un cluster y evalan la bondad de cada conjunto potencial de clusters usando una funcin objetivo dada (NP Hard)
Poca densidad
Dicta el tipo de similitud Agrega eficiencia
Tipo de atributo
Dicta el tipo de similitud
Tipo de Datos
Dicta el tipo de similitud Otra caracterstica: auto-correlacin
227
Algoritmos de Agrupamiento
K-means y sus variantes Agrupamiento jerrquico Agrupamiento basado en densidad
Agrupamiento K-means
Aproximacin al agrupamiento por particin Cada cluster est asociado con un centroide (punto central) Cada punto es asignado al cluster ms cercano al centroide El nmero de clusters K debe ser especificado El algoritmo bsico es muy simple
1: Seleccionar K puntos como los centroides iniciales 2: Repetir 3: Desde K clusters asignar todos los puntos al centroide ms cercano 4: Recalcular el centroide de cada cluster 5: Hasta El centroide no cambia
228
Puntos Originales
y
1 0.5 0 -2
-1.5
-1
-0.5
0.5
1.5
x
3 2.5 2 1.5
3 2.5 2 1.5
y
1 0.5 0
1 0.5 0 -2
-2
-1.5
-1
-0.5
0.5
1.5
-1.5
-1
-0.5
0.5
1.5
Agrupamiento ptimo
229
Iteration 2 6 Iteration 1 5 4 3
22
1.5 1.5
yy
1
1 0.5 0.5
-2 -2
-1.5 -1.5
-1 -1
-0.5 -0.5
x x
0 0
0.5 0.5
1 1
1.5 1.5
2 2
Iteration 2
3 2.5 2 1.5
Iteration 3
1 0.5 0
1 0.5 0
y
1 0.5 0 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -2
-2
-1.5
-1
-0.5
0.5
1.5
-1.5
-1
-0.5
0.5
1.5
Iteration 4
3 2.5 2 1.5 3 2.5 2 1.5
Iteration 5
3 2.5 2 1.5
Iteration 6
1 0.5 0
1 0.5 0
y
1 0.5 0 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -2
-2
-1.5
-1
-0.5
0.5
1.5
-1.5
-1
-0.5
0.5
1.5
230
SSE
dist
i
i = 1 x C
(m i, x )
x es un punto en el cluster Ci y mi es el punto representativo para el cluster Ci Dados dos clusters, se puede elegir uso con el menor error Una manera fcil de reducir el SSE es incrementar K, el nmero de clusters
Se puede mostrar que mi corresponde al centro (promedio) del cluster
Un buen agrupamiento con K pequeo, puede tener un SSE ms bajo que un agrupamiento con un K grande
y
1 0.5 0 -2
-1.5
-1
-0.5
0.5
1.5
231
Iteration 2
1 0.5 0
y
1 0.5 0 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -2
-1.5
-1
-0.5
0.5
1.5
Iteration 3
3 2.5 2 1.5 3 2.5 2 1.5
Iteration 4
3 2.5 2 1.5
Iteration 5
1 0.5 0
1 0.5 0
y
1 0.5 0 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -2
-2
-1.5
-1
-0.5
0.5
1.5
-1.5
-1
-0.5
0.5
1.5
Por ejemplo, si K = 10, entonces la probabilidad es = 10!/1010 = 0.00036 A veces los centroides iniciales se reajustarn solos en la forma adecuada, y a veces no.
232
Comenzando con dos centroides iniciales en un cluster para cada par de clusters
0 -2 -4 -6 0 5 10 15 20
Iteration 2
0 -2 -4 -6 0 5 10 15 20
0 -2 -4 -6 0 5 10 15 20
Iteration 3
8 6 4 2 8 6 4 2
Iteration 4
0 -2 -4 -6 0 5 10 15 20
0 -2 -4 -6 0 5 10 15 20
233
Iteration 1 4 3 2
8 6 4 2
0 -2 -4 -6 0 5 10 15 20
Iteration 2
8 6
4
2
0 -2
0 -2
-4
-4
-6
-6
0 5 10 15 20
10
15
20
x Iteration 4
8 6 4 2
Iteration 3
8 6 4 2
0 -2
0 -2
-4
-4
-6
-6 0 5 10 15 20
10
15
20
234
Agrupamiento de prueba y agrupamiento jerrquico para determinar los centroides iniciales Seleccionar mas de un K inicial de centroides y luego seleccionar entre estos los centroides iniciales
Seleccionarlos ampliamente separados
235
Pre-procesamiento y Post-procesamiento
Pre-procesamiento
Normaliza los datos Elimina los datos atpicos (outliers)
Post-procesamiento
Elimina los clusters pequeos que pueden representar los datos atpicos Divide los clusters flojos, es decir, los que tienen un SSE relativamente alto Combina los clusters que estn cerrados y que tienen un SSE relativamente bajo Se pueden usar estos paso durante el proceso de agrupamiento
ISODATA
Bisectar K-means
Algoritmo Bisectar K-means
Variacin del K-means que produce un agrupamiento de particin o jerrquico
1: Inicializar la lista de clusters para reducir el cluster que contiene todos los puntos 2: Repetir 3: Seleccionar un cluster de la lista de clusters 4: Para i = 1 hasta nmero_de_iteraciones Hacer 5: Bisectar el cluster seleccionado usando el K-means 6: Fin_para 7: Adicionar los dos clusters de la biseccin con el menor SSE a la lista de clusters 8: Hasta La lista de clusters tiene K clusters
236
237
Puntos Originales
K-means (3 Clusters)
Puntos Originales
K-means (3 Clusters)
238
Puntos Originales
K-means (2 Clusters)
Puntos Originales
K-means Clusters
Una solucin es usar muchos clusters. Encontrar partes de clusters, pero se necesita ponerlas todas
239
Puntos Originales
K-means Clusters
Puntos Originales
K-means Clusters
240
Agrupamiento Jerrquico
Produce un conjunto de clusters anidados organizados como rboles jerrquicos Puede ser visualizado como un dendrograma
Un rbol como un diagrama que recuerda la secuencia de combinacin o divisin
6
0.2
4 3 2 5 2 1 3
1 3 2 5 4 6
0.15
0.1
0.05
241
Agrupamiento Jerrquico
Los dos tipos principales de agrupamiento jerrquico:
Aglomerado:
Comienza con los puntos como clusters individuales En cada paso, se combinan los pares de clusters ms cercanos hasta que solo uno (o k clusters) queda
Divisivo:
Comienza con uno, todos los clusters inclusivos En cada paso, se divide un clusters hasta que cada cluster contiene un punto (o hay k clusters)
Calcula la matriz de proximidad Se deja que cada punto sea un cluster Repetir Combinar los dos clusters ms cercanos Actualizar la matriz de proximidad Hasta solo un cluster simple se obtiene
242
Situacin Inicial
Comienza con los clusters individuales y la matriz de proximidad
p1 p2 p3 p4 p5
...
p1 p2 p3 p4 p5
. . .
Matriz de Proximidad
Situacin Intermedia
Luego de algunos pasos de combinacin, se obtienen algunos clusters
C3 C4 C1 C1 C2 C3 C4 C5 C1 C2 C3 C4 C5
Matriz de Proximidad
C2 C5
243
Situacin Intermedia
Se necesita combinar dos de los clusters ms cercanos (C2 y C5 y actualizar la matriz de proximidad)
C3 C4 C1 C1 C2 C3 C4 C5 C2 C3 C4 C5
Matriz de Proximidad
C1
C2
C5
Despus de Combinar
La pregunta es Cmo se puede actualizar la matriz de proximidad?
C1 C1 C2 U C5 C3 C3 C4 C4 ? C2 U C5 ? ? ? ? ? ? C3 C4
Matriz de Proximidad
C1
C2 U C5
244
...
Similitud?
p1 p2 p3
MIN MAX Promedio del Grupo Distancia entre Centroides Otros mtodos se guan por una funcin objetivo
El mtodo de Ward usa el error cuadrtico
p4 p5
. . .
Matriz de Proximidad
...
MIN MAX Promedio del Grupo Distancia entre Centroides Otros mtodos se guan por una funcin objetivo
El mtodo de Ward usa el error cuadrtico
p5
. . .
Matriz de Proximidad
245
...
MIN MAX Promedio del Grupo Distancia entre Centroides Otros mtodos se guan por una funcin objetivo
El mtodo de Ward usa el error cuadrtico
p4 p5
. . .
Matriz de Proximidad
...
MIN MAX Promedio del Grupo Distancia entre Centroides Otros mtodos se guan por una funcin objetivo
El mtodo de Ward usa el error cuadrtico
p5
. . .
Matriz de Proximidad
246
...
MIN MAX Promedio del Grupo Distancia entre Centroides Otros mtodos se guan por una funcin objetivo
El mtodo de Ward usa el error cuadrtico
p5
. . .
Matriz de Proximidad
I1 I2 I3 I4 I5
247
0.2
2 3
1 6
0.15
0.1
0.05
Clusters Anidados
Dendrogram
Fortaleza de MIN
Puntos Originales
Dos Clusters
248
Limitaciones de MIN
Puntos Originales
Dos Clusters
I2 I3 I4 I5 0.90 0.10 0.65 0.20 1.00 0.70 0.60 0.50 0.70 1.00 0.40 0.30 0.60 0.40 1.00 0.80 0.50 0.30 0.80 1.00
249
Clusters Anidados
Dendrograma
Fortaleza de MAX
Puntos Originales
Dos Clusters
250
Limitaciones de MAX
Puntos Originales Tiende a romper los clusters grandes Predispuesto para clusters globulares
Dos Clusters
|Clusteri ||Clusterj |
Es necesario usar el promedio para la conectividad y escalabilidad debido a que el total favorece es a los grandes clusters. I1 I2 I3 I4 I5 I1 1.00 0.90 0.10 0.65 0.20 I2 0.90 1.00 0.70 0.60 0.50 I3 0.10 0.70 1.00 0.40 0.30 I4 0.65 0.60 0.40 1.00 0.80 1 2 3 4 5 I5 0.20 0.50 0.30 0.80 1.00
251
1
0.25 0.2
3 1 4 3
0.1 0.05 0
Clusters Anidados
Dendrograma
Fortalezas
Menos susceptible al ruido y a los datos atpicos
Limitaciones
Predispuesto para clusters globulares
252
1 2 5 2 3 3
5 2 5 2
3 1 3
253
Agrupamiento Jerrquico:
Problemas y Limitaciones
Una vez que se toma una decisin para combinar dos clusters, no puede ser deshacerse La funcin objetivo no es directamente minimizada Los esquemas diferentes tienen problemas con uno o ms de los siguientes factores:
Sensibilidad al ruido y a los datos atpicos Dificultad para manejar clusters de diferente tamao y formas convexas Rompimiento de clusters grandes
254
255
DBSCAN
DBSCAN es un algoritmo basado en densidad
Densidad = nmero de puntos dentro de un radio especfico(Eps) Un punto es un punto nuclear si este tiene mas de un nmero especfico de puntos (MinPts) dentro del Eps Estos son puntos que estn en el interior del cluster
Un punto frontera tiene menos de MinPts dentro del Eps, pero en su vecindad es un punto nuclear Un punto de ruido es cualquier punto que no es un punto nuclear o un punto frontera
256
Algoritmo DBSCAN
Eliminar los puntos de ruido Hacer agrupamiento en los puntos restantes
Puntos Originales Tipo de puntos: nuclear, borde y ruido Eps = 10, MinPts = 4
257
Clusters
Puntos Originales
(MinPts=4, Eps=9.75).
258
Bibliografa
Data Mining: Cluster Analysis: Basic Concepts and Algorithms Lecture Notes for Chapter 8: Introduction to Data Mining by Tan, Steinbach, Kumar
259
260
Agenda
Validacin de agrupamiento (clustering) Self Organizing Maps (SOM)
Agenda
Validacin de agrupamiento (clustering) Self Organizing Maps (SOM)
261
Validacin de clusters
Diferentes medidas para evaluar modelos supervisados: accuracy, precision, recall Para anlisis de clusters, la pregunta es: Cmo evaluar la bondad de los clusters resultantes? Pero los clusters estn en el ojo del observador! Por qu se quiere evaluarlos?
Para Para Para Para evitar encontrar patrones en el ruido comparar los algoritmos de agrupamiento comparar dos conjuntos de clusters comparar dos clusters
Puntos Aleatorios
y
DBSCAN
0.2
0.4
0.6
0.8
x
1 0.9 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0.2 0.4 0.6 0.8 1 0 0 0.2 0.4
K-means
Enlace Completo
0.6
0.8
262
Para 2, 3 y 4 podemos adems distinguir si se quiere evaluar el agrupamiento completo o solo unos clusters individuales
263
Una fila y una columna para cada dato Una entrada es 1 si el par de datos pertenecen al mismo cluster Una entrada es 0 si el par de datos pertenecen a diferentes clusters.
Una alta correlacin indica que los puntos que pertenecen al mismo cluster son cercanos entre s. No es una medida buena para algunos clusters basados en densidad o en cercana.
y x
0.2
0.4
0.6
0.8
Corr = -0.9235
Corr = -0.5810
264
Points
50 60 70 80 90 100
Points
Points
50 60 70 80 90 100
Points
DBSCAN
265
Points
50 60 70 80 90 100
Points
K-means
Points
50 60 70 80 90 100
Points
Complete Link
266
1000
1500
0.5 0.4
2000
2500
3000
500
1000
1500
2000
2500
3000
DBSCAN
SSE es una bueno para comparar dos agrupamientos o dos grupos (SSE promedio) Puede usarse para estimar el nmero de clusters
10
6 4 2 0 -2 -4 -6 5 10 15
9 8 7 6
SSE
5 4 3 2 1 0 2 5 10 15 20 25 30
267
Entre ms atpico es el resultado del agrupamiento, es ms probable que represente una estructura vlida en los datos Se puede comparar los valores de un ndice que resulte del agrupamiento de datos aleatorios contra los resultados de un agrupamiento dado.
Si el valor del ndice es poco probable, los resultados del cluster son vlidos Estas aproximaciones son ms complicadas y difciles de entender.
Para comparar los resultados de dos agrupamientos diferentes, un marco es menos necesario:
Sin embargo, hay una pregunta de si la diferencia entre dos valores del ndice es significativo.
268
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 0.2 0.4 0.6 0.8 1
50 45 40 35 30
Count
25 20 15 10 5 0 0.016 0. 018 0.02 0.022 0.024 0.026 0.028 0.03 0.032 0.034
SS E
Corr = -0.9235
Corr = -0.5810
269
Separacin del Cluster: Medida de que tan distinto o separado est un cluster de otros clusters
Ejemplo: Error cuadrtico
La cohesin es medida por la suma de los cuadrados dentro del cluster (SSE) 2 i i xCi La separacin es medida por la suma de los cuadrados entre clusters
WSS= (x m )
m1
m2
2
K=1 cluster:
K=2 clusters:
WSS= (11.5)2 +( 2 1.5)2 +( 4 4.5)2 +( 5 4.5)2 =1 BSS= 2 ( 3 1.5)2 + 2 ( 4.5 3 )2 = 9 Total=1+9 =10
270
La separacin del cluster es la suma de los pesos entre los nodos en el cluster y los nodos fuera del cluster
cohesin
separacin
271
s = 1 a/b
si a < b,
(o, s = b/a - 1
a
si, a b,
b
no es el caso usual)
272
Comentario Final
La validacin de estructuras de agrupamiento es la parte de mayor dificultad y frustracin del anlisis de cluster. Sin un esfuerzo fuerte en esta direccin, el anlisis de cluster seguir siendo un arte negro accesible solamente a esos creyentes verdaderos que tengan experiencia y gran coraje Algorithms for Clustering Data, Jain and Dubes
Agenda
Validacin de agrupamiento (clustering) Self Organizing Maps (SOM)
273
Entradas
274
Topologa
Las neuronas de la capa de salida estn conectadas de acuerdo con la topologa que se quiere inducir en el espacio Generalmente se trabaja con topologas en 1-D o 2-D La topologa 1-D ms usual es la lineal, cada neurona tiene 1 o dos vecinas Las topologas 2-D corresponden a retculos que pueden tener vecindades cuadradas o hexagonales
(w[i][ j ] entrada [ j ])
p j
275
Donde
es la rata de aprendizaje y NbdWt(, i) es la funcin de peso de la vecindad
NbdWt ( , i ) =
1 d ( , i ) 1+ s
d ( ,i ) s
2
NbdWt
( , i ) = e
276
277
y g2 ( x) = e
x s 2
dondes2 > s1 > 0. Siendoh( x) = g1 ( x) g2 ( x), una diferencia Gaussiana. Una funcinde sombreromejicanopuedeser dada por : SobreroMej icano(x)= gi ( x) + h( x) donde > 0.
Desarrollar una interpretacin para la codificacin identificando cuales neuronas codifican que patrones
278
Visualizacin
Las rede se Kohonen son muy tiles como herramienta para visualizar datos multidimensionales La capa de salida sirve como una representacin en 1D-2D de los datos de entrada
Bibliografa
Data Mining: Cluster Analysis: Basic Concepts and Algorithms Lecture Notes for Chapter 8: Introduction to Data Mining by Tan, Steinbach, Kumar Gene Tagliarini, Artificial Intelligence Course, Notes in SOM, http://people.uncw.edu/tagliarinig/courses/415/Le ctures/Kohonen%20Selforganizing%20Feature%20Maps.ppt
279
NOTAS
NOTAS
280