5 2 2 ProcesodeCienciadeDatos
5 2 2 ProcesodeCienciadeDatos
PROCESO DE CIENCIA
DE DATOS
Recopiló: Dra. María del Pilar Angeles
Libro: Data Science Concepts and Techniques, Jiawei Han, Micheline
Kamber, Jian Pei
AGENDA
1
18/04/2022
AGENDA
Proceso Ciencia de Datos (CRISP-DM)
○ 1. Conceptos básicos
○ 2. Conocimiento previo- Exploración de datos
■ Tipos de atributos
■ Descripción por estadística
● Tendencia
● Dispersión
● Graficas
● Visualización
● Varianza
● Similitud
● Proximidad
● distancia
AGENDA
3. Preparación de datos
■ Calidad de datos
■ Limpieza
■ Integración
■ Reducción
■ Transformación
■ Correlación
■ discretización
2
18/04/2022
AGENDA
4. Modelado
Patrones
Clasificación
Arboles de decisión
Métodos bayesianos
Reglas
Predicción numérica
AGENDA
5. Evaluación de modelado
Matriz de confusión
Accuracy
Sensitivity
Specificity
Recall
Validación cruzada
Métodos de ensambñe
Análisis de cluster
3
18/04/2022
10
4
18/04/2022
11
12
5
18/04/2022
APRENDIZAJE AUTOMÁTICO
13
APRENDIZAJE AUTOMÁTICO
14
6
18/04/2022
CIENCIA DE DATOS
16
CARACTERÍSTICAS DE UN BUEN
PATRÓN
• Fácilmente entendible por humanos
• Potencialmente útil
• Novedoso
• Representa CONOCIMIENTO
17
7
18/04/2022
● Modelo:
○ Estadística: representación de una relación entre variables en un conjunto
de datos. Un modelo puede describir cómo se relacionan dichas
variables.
○ Una vez que se crea el modelo representativo, se puede utilizar para
predecir el valor de la salida con base en las variables de
entrada(descriptivo) o para comprender la relación entre variable de
salida y todas las variables de entrada (descriptivo).
18
27
8
18/04/2022
29
KDD
Knowledge data
discovery/Knowl
edge discovery
in databases
Proceso no trivial
de identificación
de patrones
válidos,
novedosos,
potencialmente
útiles y en última
instancia
comprensibles
que permite
detectar
relaciones
dentro de los
datos para
tomar decisiones
importantes
5. Escoger tarea de minería de datos
(Fayyad,
6. Escoger técnica de minería de datos Piatetsky-shapiro
7. Aplicar algoritmo y Smyth, 1996).
43
9
18/04/2022
44
○ Terminología utilizada
○ Conocimiento previo del negocio y de los datos exploración de datos
○ Preparación o preprocesamiento de datos limpieza, transformación, etc.
○ Modelado
○ Aplicación del modelo
○ Conocimiento posterior
45
10
18/04/2022
CONCEPTOS BÁSICOS
● Terminología relevante:
46
CONCEPTOS BÁSICOS
Terminología relevante:
47
11
18/04/2022
CONOCIMIENTO PREVIO
48
CONOCIMIENTO PREVIO
● Objetivo
El proceso empieza por la necesidad de:
Análisis
Una pregunta
Un objetivo de negocio
49
12
18/04/2022
CONOCIMIENTO PREVIO
● Area de conocimiento/aplicación
Dado que la ciencia de datos puede descubrir muchos patrones
y relaciones entre los atributos, el científico debe examinar los
patrones expuestos y aceptar los que sean válidos y relevantes
para la respuesta del objetivo.
50
CONOCIMIENTO PREVIO
● Datos
También se requiere conocimiento sobre los datos.
Entender como son colectados, almacenados, transformados,
reportados y utilizados.
Factores que se deben considerar:
Calidad de los datos
Cantidad de los datos
Disponibilidad de los datos
Datos que no se tienen
Si no hay datos, el científico tendría que cambiar la
pregunta/objetivo.
Al final de este paso es tener los datos que ayudarán a responder la
respuesta o a lograr el objetivo.
Entender que un modelo es tan bueno como los datos que se usaron
para crearlo.
51
13
18/04/2022
CONOCIMIENTO PREVIO
Considere la pregunta:
Si la tasa de interés de prestatarios anteriores con una gama de
puntajes de crédito es conocida, ¿se puede predecir la tasa de
interés para un nuevo prestatario?
52
CONOCIMIENTO PREVIO
53
14
18/04/2022
DATA EXPLORACIÓN
Pasos principales:
54
○ Estadística descriptiva:
■ Tendencia central (media, mediana, moda, rango medio)
■ Dispersión (cuantiles, rango intercuartil (IQR),
varianza,desviación estándar, det. anómalos, boxplots, five-
number summary (mínimo, q1, mediana,q3, máximo)
55
15
18/04/2022
EXPLORACIÓN DE DATOS
Por ejemplo:
Modelos de regresión lineal - atributos de entrada numéricos
Binning - atributos de entrada categóricos
K-nn - atributos de entrada numéricos
56
EXPLORACIÓN DE DATOS
57
16
18/04/2022
TIPOS DE ATRIBUTOS
• Nominales: categorias, estados o “nombres de cosas”
• Color_ojos = {cafes, verdes, azules}
• Estado_civil, ocupación, números identificadores, códigos postales
• Binarios
• Atributo nominal con solo dos estados (0 y1)
• Binarios simétricos: ambas salidas igualmente importantes
• p.e., género
• Binarios asimétricos: salidas con diferente importancia.
• p.e., pruebas de laboratorio (positivo vs. negativo)
• Convención: asignar 1 al mas importante (p.e., VIH positivo)
• Ordinales
• Valores que tienen un orden significativo (ranking) pero las magnitudes entre los
valores sucesivos no se conocen.
• tamaño = {pequeño, mediano, grande}, puntajes, rangos militares
58
ATRIBUTOS NUMÉRICOS
Cantidad (entero o valor real)
• Intervalo
• Medición conforme a una escala de unidades de igual
tamaño
• Valores tienen orden
• p.e., temperatura en C˚, fechas de calendario
• No hay un valor cero verdadero
• Razón
• Tiene un punto de inicio (0) inherente
• Podemos hablar de valores como un orden de magnitud
mayor que la unidad de medida (10 K˚ es el doble de 5 K˚).
• P.e., temperatura in Kelvin, longitud, conteos, cantidades
monetarias
59
17
18/04/2022
60
61
18
18/04/2022
• Mediana:
• Valor que se encuentra a la mitad de la muestra o 𝑛/2 − (∑ 𝑓𝑟𝑒𝑞)𝑙
𝑚𝑒𝑑𝑖𝑎𝑛 = 𝐿 + ( )𝑤𝑖𝑑𝑡ℎ
población, si el tamaño de la muestra es impar, de lo 𝑓𝑟𝑒𝑞
contrario será el promedio de los dos valores centrales
• Estimada por interpolación (para datos agrupados):
62
Sesgo negativo
63
19
18/04/2022
64
65
20
18/04/2022
MEDICIONES DE DISPERSIÓN
Cuartiles, valores atípicos y diagramas de caja
69
70
21
18/04/2022
72
73
22
18/04/2022
74
75
23
18/04/2022
76
CUANTIL
Muestra todos los datos (lo que
permite al usuario evaluar tanto el
comportamiento general como los
sucesos inusuales)
77
24
18/04/2022
CUANTIL-CUANTIL (Q-Q)
Se grafica los cuantiles de una distribución univariada contra los cuantiles
correspondientes de otra.
Observe y responda: ¿Hay un cambio al pasar de una distribución a otra?
El ejemplo muestra el precio unitario de los artículos vendidos en la sucursal 1
versus la sucursal 2 para cada cuantil. Los precios unitarios de los artículos
vendidos en la Sucursal 1 tienden a ser más bajos que los de la Sucursal 2.
78
GRÁFICO DE DISPERSIÓN
• Proporciona un primer vistazo a los datos bivariados para ver
grupos de puntos, valores atípicos, etc.
• Cada par de valores se trata como un par de coordenadas y
se representa como puntos en el plano.
79
25
18/04/2022
80
DATOS NO CORRELACIONADOS
81
26
18/04/2022
VISUALIZACIÓN
¿Por qué la visualización de datos?
• Permite obtener información mapeando datos en gráficas
• Proporciona una visión general cualitativa de grandes conjuntos de datos.
• Busca patrones, tendencias, estructura, irregularidades y relaciones entre datos.
• Ayuda a encontrar regiones interesantes y parámetros adecuados para un análisis cuantitativo
adicional
• Proporciona una prueba visual de las representaciones derivadas por computadora
• Categorización de los métodos de visualización:
• Técnicas de visualización orientadas a píxeles.
• Técnicas de visualización de proyección geométrica.
• Técnicas de visualización basadas en íconos
• Técnicas de visualización jerárquica
• Visualizando datos y relaciones complejas
82
83
27
18/04/2022
84
85
28
18/04/2022
86
MEDICIONES DE SIMILITUD Y NO
SIMILITUD
• Semejanza
• Medida numérica de cuán parecidos son dos objetos de datos
• El valor es mayor cuando los objetos son más parecidos
• A menudo cae en el rango [0,1]
• Disimilitud (por ejemplo, distancia)
• Medida numérica de cuán diferentes son dos objetos de datos
• El valor es pequeño cuando los objetos son más parecidos
• La disimilitud mínima es a menudo 0
• Límite superior varía
• Proximidad se refiere a una similitud o disimilitud.
87
29
18/04/2022
MATRIZ DE DATOS Y
• Matriz de datos MATRIZ DE DISIMILITUD
• n puntos de datos con p 𝑥 ... 𝑥 ... 𝑥
dimensiones ... ... ... ... ...
𝑥 ... 𝑥 ... 𝑥
... ... ... ... ...
𝑥 ... 𝑥 ... 𝑥
• Matriz de disimilitud
• n puntos de datos, pero
0
registra solo la distancia 𝑑(2,1) 0
• Una matriz triangular 𝑑(3,1) 𝑑(3,2) 0
: : :
𝑑(𝑛, 1) 𝑑(𝑛, 2) . . . ... 0
88
89
30
18/04/2022
Conceptos:
En estadística las tablas de contingencia se emplean para
registrar y analizar la asociación entre dos o más variables,
habitualmente de naturaleza cualitativa (nominales u ordinales).
Ejemplo
Suponga que se tienen dos variables, género (Masculino -
Femenino) e individuo (zurdo o diestro).Considere una muestra
aleatoria de 100 individuos. Se puede emplear una tabla de
contingencia para expresar la relación entre estas dos variables,
así se puede resolver cualquier operación de probabilidad o
álgebra :
Object j
Diestro Zurdo TOTAL
Hombre 43 9 52
Object i
Mujer 44 4 48
Total 87 13 100
90
91
31
18/04/2022
92
0+1
𝑑(𝑗𝑎𝑐𝑘, 𝑚𝑎𝑟𝑦) = = 0.33
2+0+1
1+1
𝑑(𝑗𝑎𝑐𝑘, 𝑗𝑖𝑚) = = 0.67
1+1+1
1+2
𝑑(𝑗𝑖𝑚, 𝑚𝑎𝑟𝑦) = = 0.75
1+1+2
93
32
18/04/2022
1
• dónde 𝑠 =
𝑛
(|𝑥 − 𝑚 | + |𝑥 − 𝑚 |+. . . +|𝑥 − 𝑚 |)
1
𝑚 = (𝑥 + 𝑥 +. . . +𝑥 ).
𝑛
𝑥 −𝑚
• medida estandarizada (puntaje z): 𝑧 =
𝑠
• Usar la desviación media absoluta es más robusto que usar la desviación estándar
94
Matriz de datos
point attribute1 attribute2
x2 x4 x1 1 2
x2 3 5
4 x3 2 0
x4 4 5
95
33
18/04/2022
• donde i = (xi1, xi2,…, xip) y j = (xj1, xj2,…, xjp) son dos objetos de
datos p-dimensionales, y h es el orden (la distancia así definida
también se llama norma L-h)
• Propiedades
• d (i, j)> 0 si i ≠ j, y d (i, i) = 0 (definición positiva)
• d (i, j) = d (j, i) (simetría)
• d (i, j) d (i, k) + d (k, j) (Desigualdad triangular)
• Una distancia que satisface estas propiedades es una métrica
96
97
34
18/04/2022
EJEMPLO DE DISTANCIA
MINKOWSKI
point attribute 1 attribute 2 Manhattan (L1)
x1 1 2
L x1 x2 x3 x4
x2 3 5 x1 0 Matrices de
x3 2 0 x2 5 0
x4 4 5 disimilitud
x3 3 6 0
x4 6 1 7 0
Euclidean (L2)
L2 x1 x2 x3 x4
x1 0
x2 3.61 0
x3 2.24 5.1 0
x4 4.24 1 5.39 0
Supremum
L x1 x2 x3 x4
x1 0
x2 3 0
x3 2 5 0
x4 3 1 5 0
98
Dados dos objetos representados por las tuplas (22, 1, 42, 10) y (20, 0, 36, 8):
99
35
18/04/2022
VARIABLES ORDINALES
101
( ) ( )
Σ 𝛿 𝑑
𝑑(𝑖, 𝑗) = ( )
Σ 𝛿
• Si f es binario o nominal:
dij (f) = 0 si xif = xjf, o dij (f) = 1 de lo contrario
102
36
18/04/2022
• Un documento puede estar representado por miles de atributos, cada uno registrando la
frecuencia de una palabra en particular (como palabras clave) o frase en el documento.
103
EJEMPLO DE SIMILITUD
POR COSENO
• cos(d1, d2) = (d1 d2) /||d1|| ||d2|| ,
donde indica el producto punto, ||d|: la longitud del vector d
d1 = (5, 0, 3, 0, 2, 0, 0, 2, 0, 0)
d2 = (3, 0, 2, 0, 1, 1, 0, 1, 0, 1)
d1d2 = 5*3+0*0+3*2+0*0+2*1+0*1+0*1+2*1+0*0+0*1 = 25
cos(d1, d2 ) = 0.94
104
37
18/04/2022
108
38
18/04/2022
PREPARACIÓN DE DATOS
115
PREPARACIÓN DE DATOS
Introducción al pre-procesamiento
Calidad de datos
Principales tareas en el pre-procesamiento
Limpieza de datos
Integración de datos
Reducción de datos
Transformación de datos
Discretización de datos
116
39
18/04/2022
117
Los datos en el mundo real están sucios: existen muchos datos potencialmente
incorrectos, por ejemplo, falla del instrumento, error humano o de la
computadora, error de transmisión
Ruidoso: que contiene ruido, errores o valores atípicos por ejemplo, Salario = "-
10" (un error)
118
40
18/04/2022
119
Limpieza de datos
● Estrategias para valores faltantes:
1. Ignorar la instancia
2. Imputar
i. Llenar el valor manualmente
ii. Uso de constante global para llenar el vacío
iii. Usar una medida de tendencia central para rellenar (media, mediana)
iv. Usar la media o mediana para todas las muestras que pertenezcan a la
misma clase
v. Usar el valor mas probable
120
41
18/04/2022
Limpieza de datos
Ruido: (datos incorrectos derivados de un error aleatorio o varianza en una variable.
• Estrategias para eliminación de ruido
Suavizado
Binning (representar con datos no ruidosos)
media, mediana, extremos,
Regresión (ajustando los datos a una función)
regresión lineal, lineal múltiple,
Clustering Análisis de anómalos por agrupamiento
Inspección combinada de humano y computadora, detección de valores
sospechosos y checarlos manualmente
121
• NOTA:
122
42
18/04/2022
123
• Los datos redundantes ocurren a menudo con la integración de múltiples bases de datos
• Los atributos redundantes pueden ser detectados por análisis de correlación y análisis de
covarianza.
• La integración cuidadosa de los datos de múltiples fuentes puede ayudar a reducir / evitar
redundancias e inconsistencias y mejorar la velocidad y calidad de la minería.
124
43
18/04/2022
ANÁLISIS DE CORRELACIONES
125
126
44
18/04/2022
127
127
PRUEBA Χ2 (CHI-SQUARE)
(𝑂𝑏𝑠𝑒𝑟𝑣𝑒𝑑 − 𝐸𝑥𝑝𝑒𝑐𝑡𝑒𝑑)
𝜒 =
𝐸𝑥𝑝𝑒𝑐𝑡𝑒𝑑
Bondad de ajuste (una variable): cuando desee decidir si una población con distribución desconocida "se ajusta" a
una distribución conocida. Las hipótesis nulas y alternativas son:
H0: La población se ajusta a la distribución dada.
Ha: La población no se ajusta a la distribución dada.
Independencia: cuando desee decidir si dos variables son independientes o dependientes. En este caso habrá dos
preguntas o experimentos de encuestas cualitativas y se construirá una tabla de contingencia. El objetivo es ver si las
dos variables no están relacionadas (independientes) o relacionadas (dependientes). Las hipótesis nulas y alternativas
son:
H0: las dos variables son independientes.
Ha: las dos variables son dependientes.
Homogeneidad: cuando desee decidir si dos poblaciones con distribución desconocida tienen la misma distribución
entre sí. En este caso, se realizará una sola pregunta o experimento de encuesta cualitativa a dos poblaciones
diferentes. Las hipótesis nulas y alternativas son:
H0: Las dos poblaciones siguen la misma distribución.
Ha: Las dos poblaciones tienen distribuciones diferentes.
[Link]
128
45
18/04/2022
129
129
130
46
18/04/2022
Grados de libertad
131
Preparatoria 17 33 20
Universidad 11 18 21
200 48 86 66
133
47
18/04/2022
Preparatoria 17 33 20
Universidad 11 18 21
134
CHI-SQUARE
Calculando los totales y los valores esperados
Los valores en paréntesis son los valores esperados, los restantes son los
observados
135
48
18/04/2022
EJEMPLO DE CHI-SQUARE
(𝑂𝑏𝑠𝑒𝑟𝑣𝑒𝑑 − 𝐸𝑥𝑝𝑒𝑐𝑡𝑒𝑑)
Bajo Medio Alto Total(reg) 𝜒 =
𝐸𝑥𝑝𝑒𝑐𝑡𝑒𝑑
Secundaria 20(19.2) 35(34.4) 25(26.4) 80
136
137
49
18/04/2022
(1) calcule χ2
(2) Investigue y calcule lift
(3) Investigue y calcule all-confidence
(4) según su cálculo, ¿cómo concluye la relación entre comprar CocaCola y
comprar cacahuates?
138
Lift es una variación de ROC que mide el rendimiento de reglas de asociación, para predecir o
clasificar casos.
Se puede calcular como:
Confianza Soporte
P(consecuente) o bien P(antecedente)
Si el valor de lift =1; la ocurrencia del antecedente con el consecuente son independientes
Si lift > 1 la ocurrencia del antecedente con el consecuente es dependiente.
Calculo de P-value:
[Link]
139
50
18/04/2022
● all confidence(CC∪CH)
all conf(CC∪CH) =sup(CC∪CH) /max(sup(CC), sup(CH))= (50/10000) / max((200/10000), (850/10000) = (.005/.085)
0.059 ≪ 0.5
P-value: [Link]
140
● Conclusión:
● Los artículos CocaCola y Cacahuates están fuertemente
correlacionados negativamente en función de todos los
análisis realizados: conf (CC∪CH).
● El indicador lift (CC, CH) no es muy efectivo en este caso ya
que hay una gran cantidad de transacciones nulas.
● De manera similar, el análisis de χ2 no es confiable en esta
situación porque afirma que está correlacionado
positivamente pero en realidad no es así.
141
51
18/04/2022
142
PREPARACIÓN-EXPLORACIÓN DE DATOS-
VISUALMENTE EVALUANDO
LA CORRELACIÓN
143
52
18/04/2022
Coeficiente de correlación:
145
EXPLORACIÓN DE DATOS
EJEMPLO DE COVARIANZA
• Suponga que las dos existencias de productos A y B tienen los siguientes valores
en una semana: (2, 5), (3, 8), (5, 10), (4, 11), (6, 14).
• Pregunta: Si las existencias son afectadas por las tendencias de la industria, sus
precios ¿subirán o bajarán juntos?
146
53
18/04/2022
PREPARACIÓN DE DATOS-
REDUCCIÓN DE DATOS
• Reducción de datos: Obtener una representación reducida del conjunto de datos que
sea mucho mas pequeño en volumen pero que produzca los mismos o casi los mismos
resultados del análisis
• ¿Por qué reducir datos? — Una base de datos/DWH puede almacenar terabytes de
datos. Un análisis complejo de datos podría tardarse mucho tiempo en ejecutarse sobre
sobre la fuente de datos completa.
• Otro ejemplo: En minería de texto, cada palabra es un atributo.
• No todos los atributos tienen la misma relevancia para encontrar el modelo, algunos
atributos pueden tener mal efecto durante el modelado, dado que están altamente
correlacionados entre si, como el salario y los impuestos.
• Muchos atributos incrementan la complejidad del modelo y su rendimiento
computacional.
• La alta dimensionalidad degrada la confiabilidad de los modelos, especialmente para
clasificación y agrupamiento.
147
PREPARACIÓN – REDUCCIÓN
DE LOS DATOS
Herramientas para reducción de datos:
148
54
18/04/2022
PREPARACIÓN: 1. REDUCCIÓN DE
DIMENSIONES
• Maldición de la dimensionalidad
• Cuando la dimensionalidad incrementa, los datos se esparcen
• La densidad y la distancia entre los puntos, que son muy importantes para el
agrupameinto, el análisis de atípicos, se vuelve menos significativo
• Las combinaciones posibles de subespacios crecerán exponencialmente
• Reducción de dimensiones
• Para evitar la maldición de la dimensionalidad
• Ayuda a eliminar características irrelevantes y a reducir ruido
• Reduce el tiempo y el espacio requerido para el minado de datos
• Permite una visualización más fácil
• Técnicas de reducción de dimensiones
• Transformada Wavelet
• Principal Component Analysis
• Técnicas supervisadas y no lineales (p.e., selección de características)
149
150
150
55
18/04/2022
151
151
TRANSFORMACIÓN
WAVELET
Haar2 Daubechie4
• La trasformada wavelet discreta (DWT) para procesamiento lineal de señales, análisis de múltiples
resoluciones
• Aproximación comprimida: almacena solamente una pequeña fracción de los coeficientes más
robustos de la ondeleta
• Es similar a la transformada de Fourier discreta (DFT), pero tiene una mejor compresión con pérdida
(lossy) localizada en el espacio.
• Método:
• La longitud L debe ser una potencia entera de 2 (rellenado con 0s, cuando sea
necesario)
• Cada transformada tiene dos funciones : suavizado y diferencia
• Aplica a pares de datos, resultando en dos conjuntos de datos de longitud L/2
• Aplica las dos funciones recursivamente, hasta que se alcance la longitud deseada
152
56
18/04/2022
153
153
154
57
18/04/2022
155
REDUCCIÓN DE DIMENSIONES
PRINCIPAL COMPONENTS ANALYSIS (PCA)
ANÁLISIS DE COMPONENTES PRINCIPALES
[Link]
156
58
18/04/2022
REDUCCIÓN DE DIMENSIONES
PRINCIPAL COMPONENTS ANALYSIS (PCA)
ANÁLISIS DE COMPONENTES PRINCIPALES
157
REDUCCIÓN DE DIMENSIONES
PRINCIPAL COMPONENTS ANALYSIS (PCA)
ANÁLISIS DE COMPONENTES PRINCIPALES
El procedimiento básico es el siguiente:
1. Los datos de entrada están normalizados
2. PCA calcula k vectores ortonormales que proporcionan la base para los
datos de entrada normalizados. Estos son vectores unitarios que cada
uno apunta en una dirección perpendicular a los demás. Estos vectores
se denominan componentes principales. Los datos de entrada son una
combinación lineal de los componentes principales.
3. Los componentes principales se clasifican en orden decreciente de
"importancia" o fuerza.
4. Se es decir, aquellos con baja varianza (es decir, utilizando los
componentes principales más fuertes, es posible reconstruir una buena
aproximación de los datos originales)
PCA es computacionalmente económico, y puede aplicarse a atributos
ordenados y no ordenados, también puede manejar datos dispersos y
datos sesgados.
158
59
18/04/2022
REDUCCIÓN DE DIMENSIONES
PRINCIPAL COMPONENTS ANALYSIS (PCA)
ANÁLISIS DE COMPONENTES PRINCIPALES
x1
159
EJEMPLO
PRINCIPAL COMPONENTS ANALYSIS (PCA)
160
60
18/04/2022
EJEMPLO PCA
161
163
61
18/04/2022
PREPARACIÓN-REDUCCIÓN DIMENSIONES
POR BÚSQUEDA HEURÍSTICA PARA LA
SELECCIÓN DE ATRIBUTOS
Hay 2D posibles combinaciones de un número D de atributos
164
• Crear nuevos atributos que puedan capturar la información importante en una fuente de
datos de forma mas efectiva que la original
• Tres metodologías generales:
• Extracción de atributos
• Depende del dominio de aplicación
• Mapeo de datos a un nuevo espacio
• Transformadas de Fourier o wavelet
• Construcción de atributos
• Combinación de atributos
• Discretización de datos
165
62
18/04/2022
166
• Regresión lineal
• Datos modelados para ajustarse a una línea recta
• A menudo utiliza el método de mínimos cuadrados para ajustar la
línea.
• Regresión múltiple
• Permite modelar una variable de respuesta Y como una función
lineal del vector de características multidimensionales
• Modelo logarítmico lineal
• Aproximaciones distribuciones de probabilidad multidimensionales
discretas
167
63
18/04/2022
y
• Análisis de regresión: un nombre colectivo para
Y1
técnicas para el modelado y análisis de datos
numéricos que consisten en valores de una variable
Y1’
dependiente (también llamada variable de y=x+1
respuesta o medición) y de una o más variables
independientes (también conocidas como variables X1 x
explicativas o predictores) Se utiliza para la predicción
(incluida la predicción de
• Los parámetros se estiman para dar un "mejor ajuste" datos de series
de los datos. temporales), inferencia,
prueba de hipótesis y
• Más comúnmente, el mejor ajuste se evalúa modelado de relaciones
causales
utilizando el método de mínimos cuadrados, pero
también se han utilizado otros criterios
168
Regresión lineal: Y = w X + b
• Dos coeficientes de regresión, w y b, especifican la línea y deben estimarse utilizando los datos
disponibles.
• Usando el criterio de mínimos cuadrados para los valores conocidos de Y1, Y2,…, X1, X2,….
Regresión múltiple: Y = b0 + b1 X1 + b2 X2
169
64
18/04/2022
Reglas de partición:
Ancho igual
Frecuencia igual
Profundidad igual
170
PREPARACIÓN-REDUCCIÓN DE
NUMEROSIDAD POR MUESTREO
171
65
18/04/2022
PREPARACIÓN-REDUCCIÓN DE
NUMEROSIDAD TIPOS DE MUESTREO
172
PREPARACIÓN-REDUCCIÓN DE
NUMEROSIDAD TIPOS DE MUESTREO
Muestreo con o sin reemplazo
Raw Data
173
173
66
18/04/2022
REDUCCIÓN DE
NUMEROSIDAD TIPOS DE MUESTREO
● Muestreo
El muestreo puede ayudar a identificar los datos anómalos de una
fuente de datos para eliminarlos durante el modelado
La identificación de anómalos por muestreo también puede servir
para predecir transacciones fraudulentas de tarjetas de crédito.
Dado que estos son eventos esporádicos (raros) no se tiene gran
representatividad de estos.
El muestreo estratificado es un proceso donde cada clase se
representa igual, esto permite al modelo enfocarse en las
diferencias entre los patrones de cada clase, lo cual sucede para
el caso de las instancias (registros) anómalos.
174
PREPARACIÓN-REDUCCIÓN DE
NUMEROSIDAD TIPOS DE MUESTREO
● Muestreo estratificado
1. Dividir a todo el universo o población en diferentes estratos o
subgrupos. Generalmente, por individuos que comparten
características similares.
175
67
18/04/2022
PREPARACIÓN-REDUCCIÓN DE
NUMEROSIDAD POR MUESTREO
AGRUPAMIENTO
O ESTRATIFICADO
176
177
68
18/04/2022
PREPARACIÓN DE DATOS 3.
REDUCCIÓN POR COMPRESIÓN DE
Compresión de cadenas DATOS
Existen amplias teorías y algoritmos bien ajustados.
Normalmente sin pérdidas
178
Datos originales
aproximados
179
69
18/04/2022
PREPARACIÓN DE DATOS:
TRANSFORMACIÓN
180
PREPARACIÓN POR
TRANSFORMACIÓN DE DATOS
Función que mapea todo el conjunto de valores de un atributo dado a un nuevo conjunto de valores de reemplazo, cada
valor antiguo se puede identificar con uno de los nuevos valores.
Los datos deben ser transformados para ajustarse a ciertos algoritmos de ciencia de datos como por ejemplo:
Knn requiere dato numérico normalizado. Debido a que calcula las distancias entre éstos. La normalización evita
que un atributo domine los resultados de las distancias
Herramientas para transformación
• Normalización: escalamiento para caer dentro de un rango más pequeño, ayuda a redes neuronales, distancias,
knn, clustering
•normalización min-max
•normalización de puntaje z
•normalización por escala decimal
•Discretización: escalada de jerarquía de conceptos
•Discretización
• Suavizado: para eliminar el ruido de los datos
• Construcción de atributos / características: nuevos atributos construidos a partir de los dados.
• Agregación: resumen, construcción de cubos de datos, sirve para análisis de datos a diferentes niveles de
granularidad (día-mes)
• Generalización para sustituir datos primitivos por conceptos de nivel mas alto (calle-colonia)
•Jerarquización
181
70
18/04/2022
EJERCICIOS TRANSFORMACIÓN
NORMALIZACIÓN
Considere un rango de salarios de $12,000 a $98,000. Normalice los datos a [0.0, 1.0]. Y
mapee el salario 73,000
• Normalización Min-max to [new_minA, new_maxA]
182
183
71
18/04/2022
184
185
72
18/04/2022
PREPARACIÓN DE DATOS:
DISCRETIZACIÓN
186
187
73
18/04/2022
Si el proceso comienza por encontrar primero uno o unos pocos puntos (llamados puntos divididos o
puntos de corte, splits) para dividir todo el rango de atributos, y luego repite esto recursivamente en los
intervalos resultantes, entonces se llama discretización de arriba hacia abajo o división.
Si el proceso comienza considerando todos los valores continuos como posibles puntos de división,
elimina algunos fusionando valores de vecindad para formar intervalos, entonces se llama discretización
de abajo hacia arriba o fusión.
Discretización:
Se pueden usar etiquetas de intervalos para reemplazar los valores
Split (top-down) vs. merge (bottom-up)
Se puede aplicar recursivamente sobre un atributo
.
188
189
74
18/04/2022
190
190
EJEMPLOS DE DISCRETIZACIÓN
POR BINNING
Considere el siguiente rango de precios en dólares: 4, 8, 9, 15, 21, 21, 24, 25, 26, 28, 29, 34. Realice el
particionado por binning,considerando tres contenedores
* Particionado a contenedores de frecuencias equitativas (4 valores cada uno)(equi-depth):
- Bin 1: 4, 8, 9, 15
- Bin 2: 21, 21, 24, 25
- Bin 3: 26, 28, 29, 34
* Particionado a contenedores con la media de cada conjunto que representa (bin means):
- Bin 1: 9, 9, 9, 9
- Bin 2: 23, 23, 23, 23
- Bin 3: 29, 29, 29, 29
* Particionado a contenedores con valores mínimo y máximo del conjunto representado (bin
boundaries):
- Bin 1: 4, 4, 4, 15
- Bin 2: 21, 21, 25, 25
- Bin 3: 26, 26, 26, 34
191
191
75
18/04/2022
192
Dados los siguientes datos (en orden creciente) para el atributo edad: 13,
15, 16, 16, 19, 20,20, 21, 22, 22, 25, 25, 25, 25, 30, 33, 33, 35, 35, 35, 35, 36, 40,
45, 46, 52, 70.
(a) Utilice el método bin para suavizar los datos anteriores, utilizando una
profundidad de bin de 3.
(b) Comente sobre el efecto de esta técnica para los datos dados.
193
76
18/04/2022
Respuesta:
(a) Los siguientes pasos son necesarios para suavizar los datos anteriores
utilizando el suavizado por bin con una profundidad de bin de 3
Paso 1: ordenar los datos. (para el ejemplo, ya que los datos ya están
ordenados).
• Paso 2: Particionar los datos en contenedores de profundidad 3 para
todos.
Bin 1: 13, 15, 16 Bin 2: 16, 19, 20 Bin 3: 20, 21, 22
Bin 4: 22, 25, 25 Bin 5: 25, 25, 30 Bin 6: 33, 33, 35
Bin 7: 35, 35, 35 Bin 8: 36, 40, 45 Bin 9: 46, 52, 70
194
195
77
18/04/2022
196
197
78
18/04/2022
198
199
79
18/04/2022
DISCRETIZACIÓN
JERARQUÍAS DE CONCEPTOS
PARA DATOS NOMINALES
• Especificación explícita de un orden parcial / total de atributos a nivel de
esquema por usuarios o expertos
• Articulo, Departamento, Tienda
• Especificación de una jerarquía para un conjunto de valores por
agrupación explícita de datos
• {Tacuba,Centro}< CDMX <México
• Especificación de solo un conjunto parcial de atributos
• P.e. solo calle <ciudad, no otras
• Generación automática de jerarquías (o niveles de atributos) mediante
el análisis del número de valores distintos
• P.e. para un conjunto de atributos: empleado, supervisor, gerente,
directorDepto, Presidente, DirGral
200
GENERACIÓN DE JERARQUÍAS DE
CONCEPTOS
1. Ordene los atributos en orden ascendente en función del número de
valores distintos de atributos.
2.- Genere la jerarquía de arriba hacia abajo según el orden dado, con el
primer atributo en el nivel superior y el último atributo en el nivel inferior.
201
80
18/04/2022
202
1.- Se ordena ascendentemente 194 país; 365 estado; 3567 ciudad; 674339
calle
203
81
18/04/2022
204
GENERACIÓN DE JERARQUÍAS DE
CONCEPTOS
•Especificación de solo un conjunto parcial de atributos:
•Es posible que el usuario solo tenga una idea vaga sobre lo que debe
incluirse en una jerarquía. En consecuencia, el usuario puede haber incluido
solo un pequeño subconjunto de atributos relevantes.
•Por ejemplo, en lugar de incluir todos los atributos jerárquicamente relevantes
para la ubicación, el usuario puede haber especificado solo la calle y la
ciudad.
205
82
18/04/2022
206
MODELADO
Introducción
Patrones
Clasificación
Predicción numérica
207
83
18/04/2022
208
INTRODUCCIÓN-MODELADO
209
84
18/04/2022
INTRODUCCIÓN-MODELADO
MINERÍA DE DATOS
● Descriptiva
● Predictiva
210
INTRODUCCIÓN-MODELADO
211
85
18/04/2022
INTRODUCCIÓN-MODELADO
● Algoritmos de entrenamiento:
La pregunta u objetivo, así como la disponibilidad de los datos indicará
que tarea de ciencia de datos (asociación, clasificación, regresión,
agrupamiento, etc.) realizar.
212
INTRODUCCIÓN-MODELADO
213
86
18/04/2022
MINERÍA DE DATOS
214
CARACTERIZACIÓN DE DATOS
215
87
18/04/2022
DISCRIMINACIÓN DE DATOS
216
MINADO DE
PATRONES,
ASOCIACIONES
Y
CORRELACIONES
217
88
18/04/2022
PATRONES
218
MODELADO
219
89
18/04/2022
REGLAS DE ASOCIACION
HTTPS://[Link]/WATCH?V=JO339WPVTXO
220
MÉTODO NO SUPERVISADO
DESCRIPTIVO: REGLAS DE ASOCIACIÓN
Reglas de Asociación y Dependencia:
Se utilizan para descubrir hechos que ocurren en común dentro de un
determinado conjunto de datos.
En el sector salud, se emplean para identificar factores de riesgo en la
aparición o complicación de enfermedades. Para su utilización es necesario
disponer de información de cada uno de los sucesos llevados a cabo por un
mismo individuo o cliente en un determinado período temporal
Un típico escenario de aplicación para asociaciones es el análisis de canasta
de compras (market basket analysis). Allí, una regla como “en el 30 por
ciento de todas las compras, la cerveza y cacahuates han sido comprados
juntos” es un ejemplo típico para una asociación.
Las reglas asociación surgen inicialmente para el análisis de la canasta del súper mercado.
221
90
18/04/2022
ANÁLISIS DE ASOCIACIONES
222
EJEMPLO DE REGLAS DE
ASOCIACIÓN
Suponga que se tiene una base de datos de transacciones de una tienda de
abarrotes.
Reglas de Asociación y Dependencia
Los datos se organizan en una sola tabla, las columnas representan los artículos de
venta el supermercado y cada fila representa una canasta del súper. La tabla
contendrá valores binarios;
223
91
18/04/2022
EJEMPLO DE REGLAS DE
ASOCIACIÓN
• Considere una tabla con m artículos y j cestas de compra
224
EJEMPLO DE REGLAS DE
ASOCIACIÓN
• Entonces X es:
225
92
18/04/2022
EJEMPLO DE REGLAS DE
ASOCIACIÓN
Las reglas de asociación son apropiadas si satisfacen el valor del mínimo
soporte (min_sop) y de la mínima confianza (min_conf).
226
EJEMPLO DE REGLAS DE
ASOCIACIÓN
Sea A leche, cuernitos y B=café. Si consideramos la regla (A ⇒ B)
:
(Leche, cuernitos) (café)
Soporte:
La regla se cumple 3 veces.
La regla se cumple en 3 de un total de 7 transacciones.
La regla se cumple en un 43% de las transacciones.
O bien. Si soporte (A ⇒ B) = P(A ∪ B); entonces soporte (A ⇒
B)=3/7
227
93
18/04/2022
EJEMPLO DE REGLAS DE
ASOCIACIÓN
La regla (Leche, cuernitos) -> (café) Suporte 0.43 y una confianza de 0.75
228
231
94
18/04/2022
ALGORITMO A PRIORI
232
ALGORITMO A PRIORI
Para evaluar las reglas se emplean dos medidas:
Soporte(A B) = P(A U B)
Confianza (A B) = P(B | A) = P(AU B)
P (A)
Las reglas que interesan son únicamente aquellas que tienen su valor de soporte muy alto. Es decir, se
desea encontrar pares atributo-valor que cubran una gran cantidad de ejemplos.
El soporte y la confianza son dos criterios de medida que reflejan respectivamente, la utilidad y
certeza de la regla.
Un soporte del 2% indica que este porcentaje de todas las entidades bajo análisis muestran que dos
items son comprados conjuntamente (dicho de otra forma, la regla se cumple).
Una confianza del 60% muestra que este porcentaje de instancias los clientes que compran un
articulo adquieren también el otro.
233
95
18/04/2022
ALGORITMO A PRIORI
Pasos generales:
• Inicialmente, busca en la fuente de datos una vez para obtener
1-itemset frecuente
• Prueba los candidatos con respecto a la fuente de datos
• Termina cuando no se pueda generar un candidato frecuente
234
ALGORITMO A PRIORI
• A cada par atributo-valor se le denomina item
• A cada conjunto de items se les denomina item-sets.
• Se buscan item-sets con un máximo soporte, para lo que se comienza con item-sets con
un único item.
• Se eliminan los item-sets cuyo valor de soporte sea inferior al mínimo establecido, y se
combinan el resto formando item-sets con dos items.
• A su vez se eliminan aquellos nuevos item-sets que no cumplan con el soporte mínimo.
• Al resto se le añadirá un nuevo item, formando item-sets con tres items.
• El proceso continuará hasta que ya no se puedan formar item-sets con un item más.
• Además, para generar los item-sets de un determinado nivel, sólo es necesario emplear
los item-sets del nivel inferior (con n-1 coincidencias, siendo n el número de items del
nivel).
235
96
18/04/2022
PASOS A PRIORI
Una vez se han obtenido todos los item-sets, se generan las reglas.
236
OBTENCIÓN DE REGLAS DE
ASOCIACIÓN A PRIORI
1. Genera todos los items-sets con un elemento. Usa éstos para generar los
de dos elementos y así sucesivamente. Se toman todos los posibles pares
que cumplen con las medidas mínimas del soporte. Esto permite ir
eliminando posibles combinaciones ya que no todas se tienen que
considerar.
237
97
18/04/2022
EJ. A PRIORI
Itemset sup conteoSupmin = 2 ó
Itemset sup
Base de datos TransBD {A} 2 soportemin=50% y
L1 {A} 2
Tid Items C1 {B} 3 confianza=70%
{B} 3
10 A, C, D {C} 3
1er scan {C} 3
20 B, C, E {D} 1
{E} 3
30 A, B, C, E {E} 3
40 B, E
C2 Itemset sup C2 Itemset
{A, B} 1
L2 Itemset sup
{A, C} 2
2do scan {A, B}
{A, C} 2 {A, C}
{A, E} 1
{B, C} 2
{B, C} 2 {A, E}
{B, E} 3
{B, E} 3 {B, C}
{C, E} 2
{C, E} 2 {B, E}
{C, E}
C3 Itemset
3er scan L3 Itemset sup
{B, C, E} {B, C, E} 2
239
240
98
18/04/2022
245
MEJORAS AL ALGORITMO A
PRIORI
• Principales desafíos computacionales
• Múltiples escaneos de la base de datos de transacciones
• Gran cantidad de candidatos
• Carga de trabajo tediosa para el conteo de soporte de los candidatos
252
99
18/04/2022
EJERCICIOS DE ASOCIACIONES
Una base de datos tiene 5 transacciones. Sea min sup = 60% y min conf = 80%.
T100 {M,O,N,K,E,Y}
(a) Encuentre todos los conjuntos de elementos frecuentes utilizando A
T200 {D,O,N,K,E,Y} priori. Recuerde este ejercicio, se retomará y comparará con FP-
T300 {M,A,K,E} Growth
T400 {M,U,C,K,Y}
(b) Enumere todas las reglas de asociación fuertes (con soporte s y
T500 {C,O,O,K,I,E} confianza c) que coincidan con las siguientes meta reglas, donde X es
una variable que representa a los clientes, y articuloi denota variables que
representan elementos (por ejemplo, "A", "B", etc.):
253
ASOCIACIONES: FP-GROWTH
• Problemas con A priori:
• Realiza búsqueda por recorrido a lo ancho (breadth-first)
• Generación de candidatos y prueba
• Por lo general produce un gran número de candidatos
259
100
18/04/2022
ASOCIACIONES: CRECIMIENTO DE
PATRONES FRECUENTES --PATTERN
GROWTH
• Estrategia FPGrowth
• Realiza búsqueda por recorrido a profundidad (Depth-first)
• Evita generación de candidatos explícita
260
PSEUDOCÓDIGO FP-GROWTH
1. Se hace una lista elementos y se calcula su correspondiente conteo de soporte
(numero de veces que se compra el articulo en todas las transacciones). Se
empieza por un elemento, después dos, después tres, sucesivamente.
2. Se eliminan todos los artículos que no cumplen con el conteo mínimo de soporte
3. Se crea una lista con los artículos ordenados descendentemente conforme a su
conteo de soporte
4. Se ordenan los artículos por cada transacción conforme a su conteo de soporte
en la lista L
5. Se crea una tabla con los artículos en el orden del conteo de soporte, esta tabla
apuntará a los nodos del árbol
6. Creación del árbol
261
101
18/04/2022
PSEUDOCÓDIGO FP-GROWTH
6. Creación del árbol:
a. Se crea el nodo raíz (null)
b. Por cada transacción se crea un nodo con el primer elemento y se anota
las veces que ocurre, así sucesivamente, hasta terminar todos los
elementos de cada transacción.
c. Si existe un prefijo común, el conteo de cada nodo se incrementa en uno
(número de veces que esa secuencia se repite). Si no, se comparte el
prefijo, se crea un nodo nuevo y se inicia con valor uno. Se repite paso b y
c para todas las transacciones.
262
PSEUDOCÓDIGO FP-GROWTH
7. Se ordenan en una lista los ítems recorriendo el árbol de las hojas a la raíz para la
primer transacción. Es decir, se empieza por el último articulo
8. Por cada ítem en la lista, se forma la tabla de patrones base, en donde se
agregan las rutas en el árbol(secuencia de ítems) por las que se llega a ese ítem y
se anota el número de veces que esa secuencia aparece hasta terminar con la
lista de ítems(el valor que aparece en el nodo hoja).
9. Se cuentan los ítems frecuentes y comunes de la tabla de patrones base con
respecto a cada articulo de la lista. Es decir, cuantas veces esa secuencia se
repite y se anota en la tabla de patrones condicionales
10. Para encontrar el patrón se obtienen las combinaciones de cada ítem de la tabla
de patrones condicionales y por cada item en la lista se va obteniendo el conteo
de soporte de este articulo.
11. Para generar las reglas de asociación se calcula la confianza mínima
[Link] (6:59-
263
102
18/04/2022
EJERCICIO FP-GROWTH
264
264
265
103
18/04/2022
ITEMSET Patrones
{} ITEMS Patrones base ITEMS
ORDENADO condicionales
f,c,a,m,p {p} {f,c,a,m:2},{c,b:1} {p}
F,c,a,b,m
f:1,2,3,4 f.b {m} {f,c,a:2},{f,c,a,b:1} F,c,a:3 {m}
C,b,p {b} {f,c,a:1},{f:1},{c:1} {b}
F,c,a,m,p
c:1,2,3 c:1 {a} {f.c:3} F,c:3 {a}
{c} F:3 {c}
{f:3} {:1}
a:1,2,3 {f} f:4 {f}
{:4}
b:1 b:1 b:1
Se obtienen las combinaciones de Las reglas de asociación si consideramos
m:1,2 m:1 cada ítem con el conditional fp tree %confianza= 80% quedan:
El patrón queda: F,c,am:3/3
p:1,2 p:1 p <>: 0 F,cam:3/3
m <f,c,a.m>:3; fcam;fcam;fcam.. Fc,am:3/3
b <>:0 Fca:3/3
a <f,c,a>:3; fca;fca; Fca:3/4
c<f,c>:3fc fc:3/4
266
EJERCICIOS DE ASOCIACIONES
Una base de datos tiene 5 transacciones. Sea min sup = 60% y min conf = 80%.
T100 {M,O,N,K,E,Y}
(a) Encuentre todos los conjuntos de elementos frecuentes utilizando FP-
T200 {D,O,N,K,E,Y} growth, respectivamente. Compare la eficiencia de los dos procesos.
T300 {M,A,K,E}
T400 {M,U,C,K,Y}
(b) Enumere todas las reglas de asociación fuertes (con soporte s y
T500 {C,O,O,K,I,E} confianza c) que coincidan con las siguientes meta reglas, donde X es
una variable que representa a los clientes, y articuloi denota variables que
representan elementos (por ejemplo, "A", "B", etc.):
267
104
18/04/2022
270
271
105
18/04/2022
ASOCIACIONES Y CORRELACIONES
272
ASOCIACIONES Y CORRELACIONES
EJEMPLO
Proporcione un breve ejemplo para mostrar que los elementos en una regla de
asociación fuerte pueden estar negativamente correlacionados.
A -A ∑row
B 65 35 100
-B 40 10 50
∑col 105 45 150
Considere la siguiente tabla:
Considere soporte mínimo= 40% y confianza mínima= 60%.
A⇒B es una regla fuerte porque satisface los valores mínimos de soporte con
s= 65/150 = 43.3% y confianza con c= 65/100 = 61.9%.
273
106
18/04/2022
A -A ∑row
B 65(70) 35(30) 100
-B 40(35) 10(15) 50
∑col 105 45 150
274
275
107
18/04/2022
276
CLASIFICACIÓN
• Clasificación: conceptos básicos
277
108
18/04/2022
Clasificación;
Predice etiquetas categóricas (discretas o nominales).
Clasifica datos (construye un modelo) con base en un conjunto de
entrenamiento y los valores (etiquetas de clase) en los atributos de
clasificación y las usa para clasificar nuevos datos.
278
279
109
18/04/2022
PROCESO DE CLASIFICACIÓN
•Construcción del modelo: describir un conjunto de predeterminadas clases
•Cada tupla/muestra se assume que pertenece a una clase predefinida, como lo indica
el atributo de etiqueta de clase
•El conjunto de tuplas usadas para el modelo de construcción es el conjunto
entrenamiento
•El modelo es representado como reglas de clasificación, arboles de decision o formulas
matemáticas
•Uso del modelo: para clasificar objetos futuros o desconocidos
•Estimar accuracy del modelo
•La etiqueta conocida de la muestra de prueba se compara con los resultados de
clasificación del modelo.
•Accuracy es el porcentaje de muestras de prueba que fueron correctamente
clasificados por el modelo
•Test set es independiente de la muestra de entrenamiento (de lo contrario se sobre
ajusta el modelo)
•Isi el accuracy es aceptable, se usa el modelo para clasificar nuevos datos
•Nota: Si el conjunto de prueba se usa para seleccionar modelos, se le llama conjunto de
validación
280
281
110
18/04/2022
Clasificador
Datos Datos
Prueba desconocidos
(Jesus Profesor, 4)
NombreCategoria Años Titular
Tomas Técnico Acad 2 no ¿Titular?
Merlisa Profesor Asoc 7 no
Jorge Profesor 5 si
Jose Técnico Acad 7 si si
282
CLASIFICACIÓN
283
111
18/04/2022
284
CLASIFICACIÓN
En un árbol de decisión:
Nodo denota una prueba sobre el valor de un atributo
Rama representa la salida de la prueba
Hojas representan las clases o distribuciones de clases.
Los árboles de decisión se pueden convertir a reglas de clasificación
fácilmente.
285
112
18/04/2022
EJEMPLO DE CLASIFICACIÓN
286
288
113
18/04/2022
RECORDEMOS CONCEPTO DE
ENTROPÍA
• Entropía (teoría de información Shannon)
• Medición de incertidumbre de una variable
• Calculo: Para una variable aleatoria discreta Y se toman m valores distintos
{Y1,…,Ym}; Sea pi la probabilidad de que una variable i pertenezca a una clase y.
• Interpretación
• Entropía alta incertidumbre alta
• Entropía baja incertidumbre baja
• Entropía condicional
m=2
289
290
114
18/04/2022
Si sólo hay ejemplos de una clase, Ck, entonces etiquetarlo con Ck.
Si no, llamar a ID3 con una tabla formada por los ejemplos de ese nodo,
eliminando la columna del atributo Ai.
291
EJERCICIO ID3
292
115
18/04/2022
293
294
116
18/04/2022
estudiante pi ni E(p i , n i)
no 3 4 1.255
si 6 1 0.2103
295
escala_crediticia pi ni E(p i, n i )
media 6 2 0.811
excelente 3 3 1
296
117
18/04/2022
• Edad
• Estudiante
• Cal_crediticia
297
¿edad?
<=30 overcast
31..40 >40
no si excelente justo
no si si
298
118
18/04/2022
OBTENCIÓN DE REGLAS
Cualquier árbol de decisión se puede convertir en reglas de clasificación,
entendiendo como tal una estructura del tipo Si <Condición> Entonces
<Clase>.
El algoritmo de generación de reglas consiste básicamente en que
por cada rama del árbol de decisión, las preguntas y sus valores
estarán en la parte izquierda de las reglas
la etiqueta del nodo hoja correspondiente en la parte derecha
(clasificación).
Sin embargo, este procedimiento puede generar un sistema de reglas con
mayor complejidad de la necesaria. Se verá una mejora de este a través de
poda con el algoritmo C4.5
299
OBTENCIÓN DE REGLAS
Si edad<=30 y no es estudiante no compra pc
Si edad<30 y es estudiante si compra pc
Si edad es entre 31 y 40 si compra pc
¿edad?
Si edad es mayor de 40 y tiene crédito excelente no compra pc
Si es mayor de 40 y tiene crédito justo si compra pc
<=30 overcast
31..40 >40
no si excelente justo
no si si
300
119
18/04/2022
C4.5
301
ATRIBUTOS Y C4.5
• Atributos de valores continuos: incorporar atributos con valores continuos, al
dividir estos valores en intervalos discretos, de forma que el atributo tendrá
siempre valores comprendidos en uno de estos intervalos.
• Medidas alternativas en la selección de atributos: Al utilizar la ganancia de
información estamos introduciendo involuntariamente un sesgo que
favorece a los atributos con muchos valores distintos. Una medida
alternativa que se ha usado con éxito es la "gain ratio".
302
120
18/04/2022
ATRIBUTOS EN C4.5
• Atributos con valores faltantes: Normalmente se fija la atención en los
demás ejemplos de ese mismo nodo. Así, al ejemplo de valor desconocido
se le da el valor que más aparezca en los demás ejemplos.
303
304
121
18/04/2022
305
ESTIMACIÓN DE LA PROPORCIÓN DE
ERRORES PARA LOS ÁRBOLES DE DECISIÓN
• El algoritmo C4.5 puede analizar los errores predichos en cada uno de los
subárboles y ramas del árbol generado para analizar si es conveniente
simplificarlo.
• Una vez podados, las hojas de los árboles de decisión generados por el C4.5
tendrán dos números asociados: N y E.
• N es la cantidad de casos de entrenamiento cubiertos por la hoja
• E es la cantidad de errores predichos si un conjunto de N nuevos casos fuera
clasificados por el árbol.
306
122
18/04/2022
ESTIMACIÓN DE LA PROPORCIÓN DE
ERRORES PARA LOS ÁRBOLES DE DECISIÓN
– Así una hoja que cubra N casos de entrenamiento con una razón de error
predicha de UCF(E,N) tendría N x UCF(E,N) errores predichos
– El número de errores predichos asociados con un (sub)árbol es la suma de los
errores predichos de sus ramas
307
EJ. C4.5
Panorama Temperatura humedad
Tiene_
restaurante • Sea la base de datos de los atributos que
carro
contribuyen a que las personas acudan o no a
soleado 85 85 no no
comer a un restaurant. Obtener las reglas que
soleado 80 90 si no
reflejen este patrón de comportamiento.
nublado 83 78 no si
lluvioso 70 96 no si
lluvioso 68 80 no si
lluvioso 65 70 si no
nublado 64 65 si si
soleado 72 95 no no
soleado 69 70 no si
lluvioso 75 80 no si
soleado 75 70 si si
nublado 72 90 si si
nublado 81 75 no si
lluvioso 71 80 si no
308
123
18/04/2022
Tiene_
carro
restaurante
EJEMPLO C4.5,
no
si
no
no DATOS CONTINUOS
no si
1.- Entropía de la muestra:
no si
no si Entropia(D) = – p(Si) . log2p(Si) – p(No) . log2p(No) = – (9/14) . log2(9/14) –
si no (5/14) . log2(5/14) = 0.940
si si
no no
2. Calcular el punto de partición y la razón de ganancia por cada atributo:
no si PuntoParticíon(A) = -∑ |Dj|/|D| x log2|Dj|/|D|
no si
si si RazonGanancia(A) = Ganancia (A) / PuntoParticion(A)
si si
no si
si no
Atributo tiene_carro, posibles valores (8no, 6si )
Carro,no E(2,6) = – (2/8) . log2(2/8) – (6/8) . log2(6/8) = 0.811
Carro,si E(3,3)– (3/6) . log2(3/6) – (3/6) . log2(3/6) = 1
Ganancia (tiene_carro) = 0.940 – (8/14).(0.811) – (6/14).(1) = 0.940 – 0.463 – 0.428 = 0.049
PuntoParticion(tiene_carro) = -(8/14).log2(8/14) – (6/14).log2(6/14) = 0.461 + 0.524 = 0.985
RazonGanancia(tiene_carro) = 0.049 / 0.985 = 0.049
309
Panorama restaurante
panorama,soleado E(3,2) = -(3/5).log2(3/5) – (2/5).log2(2/5) = 0.441 + 0.528 = 0.970
lluvioso si basada en un valor umbral. El umbral debe ser un valor que ofrezca la ganancia máxima para 80 Si
ese atributo. Centrémonos en el atributo de humedad. En primer lugar, debemos clasificar los
soleado si valores de humedad de menor a mayor. 80 No
nublado si 85 No
Ahora, necesitamos iterar en todos los valores de humedad y separar el conjunto de datos en
nublado si
dos partes como instancias menores o iguales al valor actual, e instancias mayores que el valor 90 No
lluvioso no actual. Calcularíamos la ganancia o la razón de ganancia para cada paso. En nuestro caso 90 Si
usaremos el valor que maximiza la ganancia para el umbral.
95 No
Humedad<= 65 1si, 0no ; humedad >6 5 5no, 8si 96 si
310
124
18/04/2022
…..
Resumen de resultados para humedad:
311
Temperatura restaurante
312
125
18/04/2022
313
314
126
18/04/2022
CASO 2, GANANCIA
• Si consideramos ganancia para la selección de atributos en este caso,
panorama sería la raíz del árbol.
• Posteriormente, la ganancia se maximiza cuando el umbral es igual a 80 en
el atributo humedad. Esto significa que necesitamos comparar otros
atributos nominales y la comparación de la humedad con 80 para crear
una rama en nuestro árbol.
316
CASO 2, GANANCIA
• Tomando panorama como raíz, se toman sus valores y se calculan las
razones de ganancia para los demás atributos:
• Dividiendo conforme a humedad > 80, y humedad >= 80.
Sorprendentemente, las decisiones no serían válidas si la humedad es mayor
de 80 cuando las perspectivas son soleadas. Del mismo modo, la decisión
sería afirmativa si la humedad es menor o igual a 80 para una perspectiva
soleada.
Temperatur
trx panorama Hum. > 80 Tiene_carro restaurante
a
1 soleado 85 Si No No
2 soleado 80 Si si No
8 soleado 72 Si No No
9 soleado 69 Si No Si
11 soleado 75 si si si
317
127
18/04/2022
7 Nublado 64 No Si si
panorama = nublado, no importa la temperatura, la
humedad o si se tiene carro, la decisión siempre
si
12 Nublado 72 si Si será afirmativa.
si
13 nublado 81 No no
6 Lluvioso 65 No Si No
10 Lluvioso 75 No No si
14 lluvioso 71 No Si No
318
319
128
18/04/2022
320
FALTANTES: CASO B
1.- Entropía del conjunto. Recordemos que, no debemos tener en cuenta los atributos
desconocidos. Entonces, trabajamos sobre un total de 13 casos, de los cuales 3 son
positivos. Tendremos,
2.- Entropía que tendrían los conjuntos resultantes de la división de datos según este
atributo.
4.- Punto de partición, debemos tener en cuenta una categoría extra para el
valor desconocido para el atributo.
321
129
18/04/2022
FALTANTES: CASO B
Calculando ganancias y razones de ganancia para humedad, viento y comparando
Ganancia(humedad)=0.0746702
RazonGanancia(humedad) =0.0746702
Ganancia(viento)=0.00597769
RazónGanancia(viento) =0.0060687
Ganancia(panorama)=0.180
RazonGanancia(panorama)= 0.98
322
FALTANTES: CASO B
• Al dividir los 14 casos para continuar con la construcción del árbol, los
13 casos para los que el valor de panorama es conocido, no
presentan problemas y se reparten según el valor de Panorama.
323
130
18/04/2022
FALTANTES: CASO B
Considerando el atributo panorama = nublado y humedad, la distribución de los datos
sería:
Panorama Humedad Viento Juego Peso Desconocido Alta Normal
tenis No 0 0.3 0
¿ Alta Leve No 4/13
Si 0 2 2
Nublado Alta Leve Si 1 Totales 0 2.3 2
Nublado Normal Fuerte Si 1
Nublado Alta Fuerte Si 1
Nublado Normal Leve Si 1 Con estos datos obtenemos para la Humedad los
siguientes valores:
Ganancia(humedad) =0.068 RazonGanancia(humedad= =0.068
Calculando ganancia y razón de ganancia para viento se tiene:
Ganancia(viento)=0.068 bits RazonGanancia(viento) =0.068 bits
En este caso, vemos que la división del conjunto de datos para panorama nublado
con viento y humedad no ofrece ninguna mejora, por lo tanto, ya no se expande esa
rama, se colapsa el árbol a la hoja Si, que es la que mayor peso tiene.
324
La figura muestra un
esquema de todos los
pasos para la construcción
del árbol de decisión en
este caso.
325
131
18/04/2022
CALCULO DE ERROR
C4.5 puede analizar los errores predichos en cada uno de los subárboles y ramas del árbol
generado para analizar si es conveniente simplificarlo. En nuestro caso, dado que no se
colapsó una rama, se debe calcular el error, consideramos un nivel de confianza de 25%.
Se debe tener en cuenta:
• La cantidad de casos cubiertos por la hoja en el caso de Panorama =nublado y
humedad sería N=1+1+1+1+(4/13); N=4.3
• la cantidad de casos cubiertos incorrectamente, es decir el error asociado a la hoja
derivado del valor desconocido. En el caso de Panorama =nublado y humedad sería
E=0.3.
• El límite superior de la razón de error predicha, UCF(E,N), nivel de confianza obtenido por
estadística, como x2
• Una hoja que cubra N casos de entrenamiento con una razón de error predicha de
UCF(E,N) tendría N x UCF(E,N) errores predichos
• El número de errores predichos asociados con un (sub)árbol es la suma de los errores
predichos de sus ramas
326
132
18/04/2022
CALCULO DE ERROR
Ahora, calculamos el error total predicho de simplificar el árbol por la hoja “Si”:
ErrorPredicho(árbol_simplificado) = 14*Ucf(4,14)=5.76
El error predicho para el árbol simplificado es menor que el error predicho para el
árbol generado.
328
329
133
18/04/2022
332
332
• MDL (Minimal Description Length) principle (p.e. se prefiere la solución mas simple):
• El mejor árbol será aquel que requerirá el mayor número de bits para (1)
codificar el árbol y (2) codificar las excepciones del árbol
333
333
134
18/04/2022
334
}
335
135
18/04/2022
OBTENCIÓN DE REGLAS
Cualquier árbol de decisión se puede convertir en reglas de clasificación,
entendiendo como tal una estructura del tipo Si <Condición> Entonces
<Clase>.
El algoritmo de generación de reglas consiste básicamente en que
por cada rama del árbol de decisión, las preguntas y sus valores
estarán en la parte izquierda de las reglas
la etiqueta del nodo hoja correspondiente en la parte derecha
(clasificación).
Sin embargo, este procedimiento generaría un sistema de reglas con mayor
complejidad de la necesaria. Por ello, el sistema C4.5 [QUIN93] realiza un
podado de las reglas obtenidas. En la siguiente figura se muestra el algoritmo
completo de obtención de reglas.
336
337
136
18/04/2022
338
343
137
18/04/2022
344
EXTRACCIÓN DE REGLAS A
PARTIR DE UN ÁRBOL DE DECISIÓN
¿edad?
Las reglas son mas fáciles de entender que los árboles grandes
<=30 31..40 >40
Una regla es creada por cada ruta a partir de la raiz hacia la
estudiante? Rango_crediticio?
hoja si
138
18/04/2022
TEOREMA DE BAYES
355
APRENDIZAJE SUPERVISADO
PREDICTIVO: CLASIFICACIÓN
PROBABILÍSTICA POR NAIVE BAYES
• Los métodos bayesianos se llaman eager learners, porque cuando se le da
un conjunto de entrenamiento, ellos analizan inmediatamente a los datos y
construyen un modelo.
356
139
18/04/2022
357
358
140
18/04/2022
359
EJERCICIO:
• ¿Cuál es la probabilidad de que una persona que tenga una
mac, dado que esa persona tiene un iPhone?
361
141
18/04/2022
EJERCICIO:
¿Cuál es la probabilidad de que una persona que tenga
una mac, dado que esa persona tiene un iPhone?
P(mac|iPhone)?
P(mac | iPhone) = P(iPhone∩mac)
P(iPhone)
= 0.4/0.5
= 0.8
362
363
142
18/04/2022
Nuestra hipótesis:
El paciente tiene cáncer
Primero debemos obtener las probabilidades correspondientes:
364
CÁLCULO DE PROBABILIDADES
365
143
18/04/2022
Suponga que Bertha fue al doctor, le hicieron una prueba de sangre para saber
si tenía cáncer. Y ésta arrojo un resultado Positivo (POS).
Dado que la prueba es 98% efectiva. Use el Teorema de Bayes para determinar
que tan probable es que Bertha tenga cáncer.
Recuerde que:
P(cancer) = 0.008
P(¬cancer) = 0.992
P(POS|cancer) = 0.98
P(POS|¬cancer) = 0.03
P(NEG|cancer) = 0.02
P(NEG|¬cancer) = 0.97
366
BUSCANDO LA MÁXIMA
PROBABILIDAD A POSTERIORI:
P(cancer) P(POS | cancer) = (.008) .98= .0078
P(POS | ¬ cancer) P(¬ cancer) = .03(.992) = .0298
Si queremos saber la probabilidad exacta, podemos normalizar estos valores haciéndolos que
sumen 1:
P(cáncer | POS) = P(cancer) P(POS | cancer)_______________
P(cancer) P(POS | cancer) + P(¬ cancer) P(POS | ¬ cancer)
P(cancer | POS) = 0.0078__________
0.0078 + 0.0298 ; = 0.21
Bertha tiene un 21% de probabilidad de tener cáncer.
367
144
18/04/2022
EJERCICIO
• Dada la siguiente tabla que representa condiciones para decidir si ir a ver
una película. Determine por Teorema de Bayes, si habrá asistencia a una
película si ésta es de estreno o de cartelera y el clima es frio.
368
369
145
18/04/2022
EJEMPLO
edad ingresoestudiantecal crediticia comp-compu
• P(Ci): P(comp_compu = “si”) = 9/14 = 0.643 <=30 alto no justo no
P(comp_compu = “no”) = 5/14= 0.357 <=30 alto no excelente no
31…40 alto no justo si
• Compute P(X|Ci) para cada clase
>40 medio no justo si
P(edad = “<=30” | comp_compu = “si”) = 2/9 = 0.222 >40 bajo si justo si
P(edad = “<= 30” | comp_compu = “no”) = 3/5 = 0.6 >40 bajo si excelente no
P(ingreso = “medio” |comp_compu = “si”) = 4/9 = 0.444 31…40 bajo si excelente si
P(ingreso = “medio| comp_compu = “no”) = 2/5 = 0.4 <=30 medio no justo no
P(estudiante = “si” | comp_compu= “si) = 6/9 = 0.667 <=30 bajo si justo si
P(estudiante = “si” | comp_compu = “no”) = 1/5 = 0.2 >40 medio si justo si
P(cal_crediticia = “justo” | comp_compu= “si”) = 6/9 = 0.667 <=30 medio si excelente si
P(cal_crediticia= “justo” | comp_compu = “no”) = 2/5 = 0.4 31…40 medio no excelente si
• X = (edad <= 30 , ingreso = medio, estudiante = si, cal_crediticia = justo) 31…40 alto si justo si
>40 medio no excelente no
P(X|Ci) : P(X|comp_compu = “si”) = 0.222 x 0.444 x 0.667 x 0.667 = 0.044
P(X|comp_compu = “no”) = 0.6 x 0.4 x 0.2 x 0.4 = 0.019
P(X|Ci)*P(Ci) : P(X|comp_compu = “yes”) * P(comp_compu = “si”) = 0.044*0.643=0.028
P(X|comp_compu = “no”) * P(comp_compu = “no”) = 0.019*0.357=0.007
Entonces, X pertenece a la clase (“comp_compu= si”)
370
EVITANDO EL PROBLEMA DE LA
PROBABILIDAD CERO
La predicción por Naïve Bayes require que cada probabilidad
condicional sea diferente de cero. De otra forma, la probabilidad
predicha sería cero.
n
P ( X | C i) P ( x k | C i)
k 1
Por ejemplo, suponga una fuente de datos con 1000 tuplas, ingreso=bajo
(0), ingreso= medio (990), ingreso = alto (10)
Se puede usar una corrección de Laplace (o estimador Laplaciano)
Agregando 1 a cada caso
Prob(ingreso = bajo) = 1/1003
Prob(ingreso = medio) = 991/1003
Prob(ingreso = alto) = 11/1003
371
146
18/04/2022
372
373
147
18/04/2022
374
EXTRACCIÓN DE REGLAS A
PARTIR DE UN ÁRBOL DE DECISIÓN
¿edad?
Las reglas son mas fáciles de entender que los árboles grandes
<=30 31..40 >40
Una regla es creada por cada ruta a partir de la raiz hacia la
estudiante? Rango_crediticio?
hoja si
148
18/04/2022
INDUCCIÓN DE REGLAS:
MÉTODO DE COBERTURA SECUENCIAL
• Algoritmo de cobertura (covering) secuencial: Extrae las reglas
directamente de los datos de entrenamiento
• Algoritmos de cobertura secuencial típicos: FOIL, AQ, CN2, RIPPER
• Las reglas se aprenden secuencialmente, para una clase dada Ci
cada regla cubrirá muchas tuplas de Ci pero ninguna o muy
pocas de las tuplas de otras clases
• Pasos:
• Las reglas se aprenden una a un tiempo
• Cada vez que una regla se aprende, las tuplas cubiertas por
esa regla se remueven
• Repetir el proceso sobre las tuplas remanentes
• hasta que la condición de paro se cumpla, por ej. Cuando no
haya mas ejemplos en el conjunto de entrenamiento o cuando
la calidad de la regla regresada sea menor a algún umbral
especificado por el usuario.
376
ALGORITMO DE COBERTURA
while (existan tuplas/ejemplos) SECUENCIAL
genera una regla
borrar las tuplas que satisfagan la regla
Ejemplos
Ejemplos cubiertos por regla
cubiertos por regla R2
Ejemplos
R1 cubiertos por regla
R3
Ejemplos
positivos
377
149
18/04/2022
GENERACIÓN DE
• Para generar una regla LA REGLA
while(true)
encuentra el major predicado p
if foil-gain(p) > threshold then agrega p a la regla actual
else break
A3=1&&A1=2
A3=1&&A1=2
&&A8=5A3=1
Ejemplos Ejemplos
negativos
positivos
378
Favorece las reglas que tienen precision alta y cubren la mayoría de las tuplas positivas
Podado de reglas con base en un conjunto independiente de tuplas de prueba
𝑝𝑜𝑠 − 𝑛𝑒𝑔
𝐹𝑂𝐼𝐿_𝑃𝑟𝑢𝑛𝑒(𝑅) =
𝑝𝑜𝑠 + 𝑛𝑒𝑔
379
150
18/04/2022
TÉCNICAS DE MEJORA DE
RENDIMIENTO DE CLASIFICACIÓN
POR MÉTODOS DE ENSAMBLE
380
MODELO DE EVALUACIÓN Y
SELECCIÓN
• Métricas de evaluación: ¿Cómo medir la precision (accuracy)? ¿Qué otras
métricas se pueden considerar?
• Usar un conjunto de validación de prueba de tuplas etiquetadas de clase en lugar
de un conjunto de entrenamiento cuando se evalúa accuracy
• Métodos para estimar el rendimiento de un clasificador:
• Método de espera, submuestreo aleatorio
• Validación cruzada
• Bootstrap
• Comparando clasificadores:
• Intervalos de confianza
• Análisis de costo-beneficio y curvas ROC
381
381
151
18/04/2022
MÉTRICAS DE EVALUACIÓN DE
CLASIFICADOR: MATRIZ DE CONFUSIÓN
Matrix de confusión:
Clase real\Clase predicha C1 ¬ C1
C1 True Positives (TP) False Negatives (FN)
¬ C1 False Positives (FP) True Negatives (TN)
• Dadas m clases, una entrada, CMi,j en una matriz de confusión indica # de tuplas en una clase i
que fueron etiquetados como clase j
• Puede tener renglones/columnas extra para proporcionar totales
382
METRICAS DE EVALUACIÓN DE
CLASIFICADORES: ACCURACY, ERROR
RATE, SENSITIVITY,SPECIFICITY
A\P C ¬C
Problema de clases no balanceadas:
C TP FN P
Una clase puede ser rara p.e. fraude, or
¬C FP TN N HIV-positivo
P’ N’ Todos Una mayoría significativa de clase
383
152
18/04/2022
384
EJEMPLO
385
153
18/04/2022
387
154
18/04/2022
ESTIMANDO INTERVALOS DE
CONFIANZA:
MODELOS M1 VS. M2
• Suponga que temenos dos clasificadores, M1 and M2, ¿cuál es major?
• Estas tazas de error promedio son solo estimaciones de error sobre la población
verdadera de futuros casos de datos
¿Qué hacer si la diferencia entre las dos tasas de error son solo atribuidos al azar?
• Usar una prueba de significancia estadística
• Obtener los liímites de confianza para las estimaciones de error
388
388
389
389
155
18/04/2022
390
Simétrica
Nivel de significancia p.e., sig
= 0.05 or 5% significa que M1
& M2 son significativamente
diferentes para el 95% de la
población
Limite de confianza, z = sig/2
391
156
18/04/2022
392
392
SELECCIÓN DEL
MODELO: CURVAS
ROC
Curvas ROC (características de
funcionamiento del receptor): se usan para
comparar visualmente modelos de
clasificación.
Originado de la teoría de detección de señal
Muestra la compensación entre la tasa
positiva verdadera y la tasa positiva falsa
El área bajo la curva ROC es una medida de El eje vertical representa la
la precisión del modelo. verdadera tasa positiva
Clasifique las tuplas de prueba en orden Eje horizontal representa la tasa
decreciente: la que es más probable que de falsos positivos
pertenezca a la clase positiva aparece en la La trama también muestra una
parte superior de la lista línea diagonal.
Cuanto más cerca de la línea diagonal (es Un modelo con una precisión
decir, cuanto más cerca esté el área de 0.5), perfecta tendrá un área de 1.0
menos preciso será el modelo
393
157
18/04/2022
394
394
395
158
18/04/2022
MEJORA DE MODELO:
MÉTODOS DE ENSAMBLE
396
BAGGING
•Como analogia se establece un diagnóstico con base la votación mayoritaria de varios
doctores
•Entrenamiento
•Dado un conjunto D de d tuplas, a cada iteración i, un ocnjunto de entrenamiento Di de d
tuplas se muestrea con reemplazo a partir de D (por ejemplo: bootstrap)
•Se aprende un modelo clasificador Mi por cada conjunto de entrenamiento Di
•Clasificación: clasificar una muestra desconocida X
•Cada clasificador Mi regresa su predicción de clase
•El clasificador en el saco (bagged) M* cuenta los votos y asigna la clase con la mayoria de
votos a X
•Predicción: puede ser aplicada a la predicción de valores continuos al tomar el promedio de
cada predicción para una tuple de prueba dada
•Accuracy
•Por lo general significativamente major que un solo clasificador generado a partir de D
•Datos con ruido: mas robusto
•Se ha probado que mejora la precision de la predicción
397
159
18/04/2022
BOOSTING
• Como analogía se consultan varios doctores, con base en una combinación
de diagnósticos ponderados (la ponderación puede asignarse con base en
la precisión de diagnósticos anteriores)
• ¿Cómo trabaja boosting?
• Pesos se asignan a cada tuple de entrenamiento
• Se aprende iterativamente una serie de k clasificadores
• Después de que un clasificador Mi se aprende, los pesos se actualizan
para permitir que los clasificadores subsecuentes, Mi+1, prestar mas
atención a las tuplas de entrenamiento que no fueron bien clasificadas
por Mi
• EL modelo final M* combina los votos de cada clasificador individual,
donde el peso de cada voto para clasificador es una función de su
precisión/accuracy
• Algoritmo Boosting puede ser extendido para una predicción numérica
• Comparando con el método bagging: El Boosting tiende a tener mayor
precisión, pero existe el riesgo de sobreentrenar el modelo a los datos mal
clasificados
398
ADABOOST
•Dado un conjunto D de d tuplas etiquetadas con clase, (X1, y1), …, (Xd, yd)
•Inicialmente, tdos los pesos de las tuplas son el mismo (1/d)
•Generar k clasificadores en K iteraciones. En la iteración i,
•Las tuplas de D se muestrean (con reemplazo) para formar un conjunto de
entrenamiento Di de el mismo tamaño
•La oportunidad de cada tuple de ser seleccionada es con base en su peso
•Usando Di como conjunto de prueba, se deriva un modelo de clasificación Mi a
partir de su tasa de error
•Si la tupla no se clasifica correctamente, su peso se incrementa, de otra forma se
decrementa
•Tasa de Error: err(Xj) es el error de clasificar mal a una tupla Xj. La tasa de erro del
clasificador Mi es la suma de los pesos de las tuplas mal clasificadas:
𝑒𝑟𝑟𝑜𝑟(𝑀 ) = 𝑤 × 𝑒𝑟𝑟(𝐗 𝐣 )
1 − 𝑒𝑟𝑟𝑜𝑟(𝑀 )
•El peso del voto del clasificador Mi’ es log
𝑒𝑟𝑟𝑜𝑟(𝑀 )
399
160
18/04/2022
RANDOM
FOREST
• Random Forest:
• Cada clasificador en el ensamble es un clasificador de arbol de decision y es
generado usando una selección aleatoria de cada nodo para determiner la
división
• Durante la clasificación, cada árbol vota y la clase mayoritaria es la que se
obtiene
• Existen dos métodos para construir el Random Forest:
• Forest-RI (random input selection): Se seleccionan aleatoriamente F atributos en
cada nodo como candidatos para la división del nodo. El algoritmo CART se usa
para crecer los arboles a su tamaño máximo
• Forest-RC (random linear combinations): Crea nuevos atributos o características
a partir de la combinación líneal de los atributos existentes (reduce la
correlación entre los clasificadores individuales)
• La precisión es comparable a la de Adaboost, pero es mas robusto en el caso de
errores y anómalos
• No es sensible al numero de atributos seleccionados para ser considerados en cada
división y es mas rápido que bagging o boosting
400
400
401
161
18/04/2022
• Métodos de particionamiento
• Métodos jerárquicos
404
405
162
18/04/2022
406
407
163
18/04/2022
408
409
164
18/04/2022
AGRUPAMIENTO?
410
MÉTRICAS DE CALIDAD DE
AGRUPAMIENTO
411
165
18/04/2022
•Separación de racimos
•Exclusivo (un cliente pertenece a una sola región)
•no exclusivo (un documento puede pertenecer a más de una clase)
•Medida de similitud
•Basado en la distancia (p. Ej., Euclidiano, red de carreteras, vector)
•conectividad (p. Ej., Densidad o contigüidad)
•Espacio de agrupamiento
•Espacio completo (a menudo cuando es de baja dimensión)
•subespacios (a menudo en agrupación de alta dimensión)
412
REQUERIMIENTOS
Y RETOS
• Escalabilidad
• Agrupando todos los datos en lugar de solo en muestras
• Capacidad para manejar diferentes tipos de atributos.
• Numéricos, binarios, categóricos, ordinales, vinculados y mezcla de estos
• Agrupación basada en restricciones
• El usuario puede dar restricciones
• Usar el conocimiento del dominio para determinar los parámetros de entrada
• Interpretabilidad y usabilidad
• Otros
• Descubrimiento de racimos con forma arbitraria
• Capacidad para manejar datos ruidosos
• Agrupamiento incremental e insensibilidad al orden de entrada
• Alta dimensionalid
413
166
18/04/2022
ENFOQUES PRINCIPALES DE
AGRUPAMIENTO
• Particionamiento:
• Construir varias particiones y luego evaluarlas usando un criterio como mínimos
cuadrados
• k-means, k-medoids, CLARANS
• Jerárquico:
• Descomposición jerárquica de un conjunto de datos usando algún criterio
• Diana, Agnes, BIRCH, CAMELEON
• Con base en densidad:
• Uso de funciones de conectividad y densidad
• DBSACN, OPTICS, DenClue
• Malla(Grid):
• Con base en una estructura de varios niveles de granularidad
• STING, WaveCluster, CLIQUE
414
ENFOQUES PRINCIPALES DE
AGRUPAMIENTO
• Basado en el modelo:
• Se hipotetiza un modelo para cada uno de los grupos e intenta
encontrar el mejor ajuste de ese modelo entre sí
• Métodos típicos: EM, SOM, COBWEB
• Frecuente basado en patrones:
• Basado en el análisis de patrones frecuentes
• p-Cluster
• Guiado por el usuario o basado en restricciones:
• Agrupación al considerar restricciones especificadas por el usuario o
específicas de la aplicación
• DQO (obstáculos), agrupamiento restringido
• Agrupación basada en enlaces:
• Los objetos a menudo están unidos entre sí de varias maneras.
• Se pueden usar enlaces masivos para agrupar objetos: SimRank,
LinkClus
415
167
18/04/2022
MÉTODOS DE PARTICIONAMIENTO
416
ALGORITMOS DE PARTICIONAMIENTO
𝐸=Σ Σ ∈ (𝑝 − 𝑐 )
417
168
18/04/2022
K-MEANS
418
EJEMPLO
K=2
419
169
18/04/2022
p1
K-MEANS
420
VARIACIONES DE K-MEANS
• Cálculos de disimilitud
421
170
Diapositiva 420
p1 pilarang, 29/05/2020
18/04/2022
DESVENTAJAS K-MEANS
• K-medoides: en lugar de tomar el valor medio del objeto en un grupo como punto
de referencia, se pueden usar medoides, que es el objeto más centralmente
ubicado en un grupo
10 10
9 9
8 8
7 7
6 6
5 5
4 4
3 3
2 2
1 1
0 0
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
422
9 9 9
8 8 8
Arbitraria Asigna
7 7 7
6 6 6
5
mente 5 cada 5
4 escoge 4 medoide 4
3
un k 3
remanen 3
2
objeto 2
te al 2
como medoide
1 1 1
0 0 0
0 1 2 3 4 5 6 7 8 9 10
medoide 0 1 2 3 4 5 6 7 8 9 10
mas 0 1 2 3 4 5 6 7 8 9 10
inicial cercano
K=2 Aleatoriamente selecciona un objeto
Costo total = 26 no medoide,Oramdom
10 10
Repite hasta 9
8
Calcula el
9
Oramdom del
cambie
6 6
intercambio
5 5
Si su calidad es 4 4
mejor 3 3
2 2
1 1
0 0
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
423
423
171
18/04/2022
K-MEDOIDE
• PAM funciona eficazmente para conjuntos de datos pequeños, pero no escala bien para
conjuntos de datos grandes (debido a la complejidad computacional)
424
INTRODUCCIÓN A
ALGORITMOS GENÉTICOS
Recopiló: Dra. María del Pilar Angeles.
484
172
18/04/2022
ALGORITMOS GENÉTICOS:
Los principios básicos de los Algoritmos Genéticos fueron establecidos por Holland
(1975). Descritos también en – Goldberg (1989), Davis (1991), Michalewicz (1992), Reeves
(1993)
Son métodos adaptativos que pueden usarse para resolver problemas de búsqueda y
optimización.
Están basados en el proceso genético de los organismos vivos:
Poblaciones evolucionan a lo largo de las generaciones
Conforme a los principios de la selección natural
Supervivencia de los más fuertes Darwin (1859).
Los Algoritmos Genéticos imitan ese proceso para poder generar soluciones a problemas
del mundo real.
485
ALGORITMOS GENÉTICOS
• Los individuos de una población compiten entre sí
• búsqueda de recursos tales como comida, agua y refugio.
• búsqueda de un compañero.
486
173
18/04/2022
ALGORITMOS GENÉTICOS:
• Los descendientes al combinar buenas características de sus ancestros
• Se adaptan mucho mejor que cualquiera de sus ancestros.
487
ALGORITMOS GENÉTICOS:
Los Algoritmos Genéticos usan una analogía directa con el comportamiento natural.
1. Trabajan con una población de individuos, cada uno de los cuales representa una
solución factible a un problema dado.
2. A cada individuo se le asigna un valor ó puntuación, relacionada con la
solución. En la naturaleza esto equivaldría al grado de efectividad de un organismo
para competir por unos determinados recursos. (Cuanto mayor sea la adaptación de
un individuo al problema, mayor será la probabilidad de que el mismo sea
seleccionado para reproducirse).
3. Se cruza su material genético con el de otro individuo seleccionado de igual
forma. Este cruce producirá nuevos individuos – descendientes de los anteriores – los
cuales comparten algunas de las características de sus padres.
488
174
18/04/2022
ALGORITMOS GENÉTICOS:
4. La una nueva población de posibles soluciones reemplaza a la anterior.
5. Se verifica que contenga una mayor proporción de buenas características
en comparación con la población anterior.
6. Se repite el proceso. (A lo largo de las generaciones se propagan las
buenas características a través de la población).
7. Se exploran las áreas más prometedoras del espacio de búsqueda.
489
ALGORITMO GENÉTICO
SIMPLE/CANÓNICO
BEGIN /* Algoritmo Genético Simple */
Generar una población inicial.
Calcular la función de evaluación/adaptación de cada individuo.
WHILE NOT Terminado DO
BEGIN /* Producir nueva generación */
FOR Tamaño población/2 DO
BEGIN /*Ciclo Reproductivo */
(Obtener probabilidad de selección proporcional a la función de evaluación del individuo).
Seleccionar dos individuos de la anterior generación para el cruce
Cruzar con cierta probabilidad los dos individuos obteniendo dos descendientes.
Mutar los dos descendientes con cierta probabilidad.
Calcular la función de evaluación/adaptación de los dos descendientes mutados.
Insertar los dos descendientes mutados en la nueva generación.
END
IF la población ha convergido THEN
Terminado := TRUE
END
END
490
175
18/04/2022
CODIFICACIÓN
• Los individuos (posibles soluciones del problema), pueden representarse
como un conjunto de parámetros (genes)
491
FUNCIÓN DE ADAPTACIÓN
• Fenotipo: conjunto de parámetros representando un cromosoma que
contiene la información requerida para construir un organismo.
• Genotipo: organismo.
• La adaptación al problema de un individuo depende de la
evaluación del genotipo. Esta última puede inferirse a partir del fenotipo,
es decir puede ser calculada a partir del cromosoma, usando la función de
evaluación.
• La función de adaptación asigna un numero real que refleja el nivel de
adaptación al problema del individuo representado por el cromosoma.
492
176
18/04/2022
FASE REPRODUCTIVA
• Se seleccionan los individuos de la población para cruzarse y producir
descendientes, que constituirán, una vez mutados, la siguiente
generación de individuos.
493
FASE REPRODUCTIVA
• Una vez seleccionados dos padres, sus cromosomas se combinan,
utilizando habitualmente los operadores de cruce y mutación. Las
formas básicas de dichos operadores se describen a continuación:
El operador de cruce:
1. Selecciona a dos padres
2. Corta sus conjuntos de cromosomas en una posición escogida al azar.
3. Produce dos subconjuntos iniciales y dos finales.
4. Intercambia los subconjuntos finales, produciéndose dos nuevos
cromosomas completos.
494
177
18/04/2022
FASE REPRODUCTIVA
Ambos descendientes heredan genes de cada uno de los padres. Este
operador se conoce como operador de cruce basado en un punto.
Habitualmente el operador de cruce no se aplica a todos los pares de
individuos que han sido seleccionados para emparejarse, sino que se aplica
de manera aleatoria, normalmente con una probabilidad comprendida entre
0.5 y 1.0. En el caso en que el operador de cruce no se aplique, la
descendencia se obtiene simplemente duplicando los padres.
495
FASE REPRODUCTIVA
496
178
18/04/2022
CONVERGENCIA
497
CONVERGENCIA
498
179
18/04/2022
499
EJEMPLO
500
180
18/04/2022
POBLACIÓN INICIAL EN T0
1. Determinar el tamaño y muestra de la población inicial:
Suponiendo que la codificación de los individuos esté constituido por {0,1} ,
necesitaremos series de longitud 5 para representar los 32 puntos del espacio de
búsqueda.
501
502
181
18/04/2022
503
ITERACIÓN 1…SELECCIÓN
4. Esto significa que los individuos seleccionados para el cruce han sido:
• Individuo 2 junto con el individuo 4
• Individuo 1 junto con el individuo 2.
504
182
18/04/2022
ITERACIÓN 1… SELECCIÓN DE
INDIVIDUOS
• Pareja(2,4):576, 361
Pareja(1,2): 169,576
Tabla de población en el t0
505
ITERACIÓN 1… CRUCE
5. Se escoge un número al azar entre 1 y l (siendo l la longitud de la serie
utilizada para representar el individuo). Es decir, un número entre 1 y 5
• Supongamos, que los puntos de cruce resulten ser 2 y 3.
506
183
18/04/2022
ITERACIÓN 1… MUTACIÓN
6. Mutar con una probabilidad (pm), cercana a cero, cada uno de los bit de las
cuatro series. En este caso suponemos que el único bit mutado corresponde al
primer gen del tercer individuo.
Población en t1 , proveniente de efectuar operador de mutación
507
FUNCIONES DE
EVALUACIÓN/ADAPTACIÓN
DESCENDENCIA
508
184
18/04/2022
GENERACIÓN DE LA POBLACIÓN
INICIAL
• Habitualmente la población inicial se escoge generando series al azar.
510
FUNCIÓN OBJETIVO
• Una buena función objetivo debe reflejar el valor del individuo de una manera
“real”, pero cuando existen gran cantidad de restricciones, buena parte de los
puntos del espacio de búsqueda representan individuos no válidos.
512
185
18/04/2022
FUNCIÓN OBJETIVO
• Penalización de la función objetivo: dividir la función objetivo del individuo por
una cantidad (la penalización) que guarda relación con las restricciones que
dicho individuo viola. Dicha cantidad puede simplemente tener en cuenta el
número de restricciones violadas ó bien el denominado costo esperado de
reconstrucción, es decir el coste asociado a la conversión de dicho individuo en
otro que no viole ninguna restricción.
513
VELOCIDAD DE LA
CONVERGENCIA
514
186
18/04/2022
526
528
187
18/04/2022
EVALUACIÓN DE MODELOS
529
MODELADO - EVALUACIÓN
530
188
18/04/2022
MODELADO - EVALUACIÓN
531
532
189
18/04/2022
MODELADO
Al terminar el modelado dentro del proceso de ciencia de datos
se han realizado los siguientes pasos:
1. Analizado la pregunta de negocios;
2. Se obtuvieron los datos relevantes para responder pregunta;
3. Se seleccionó una técnica de ciencia de datos para responder
la pregunta;
4. Se escogió un algoritmo de ciencia de datos y preparó los
datos para adaptarse al algoritmo;
5. Se dividieron los datos en conjuntos de datos de entrenamiento
y prueba;
6. Se construyó un modelo generalizado a partir del conjunto de
datos de entrenamiento;
7. Se validó el modelo contra el conjunto de datos de prueba.
533
534
190
18/04/2022
CONOCIMIENTO
535
CONOCIMIENTO
536
191
18/04/2022
CONOCIMIENTO
537
192