Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Analizaremos
Técnicas de Agrupamiento
Arboles de decisión
Reglas de clasificación
Reglas de asociación
Redes Neuronales
1
Reglas de Asociación
Expresar relaciones entre ítems dentro de un conjunto de
transacciones.
En este contexto, el término transacción hace referencia a
cada grupo de eventos que están asociados de alguna forma.
Los productos que suelen comprarse juntos en un supermercado
Libros que se descargan en forma conjunta.
Las páginas web visitadas por los usuarios.
Permite hacer recomendaciones
2
Transacciones e ítems
A cada elemento que forma parte de una transacción se le conoce
como ítem y a un conjunto de ellos itemset.
Una transacción puede estar formada por uno o varios items, en el
caso de ser varios, cada posible subconjunto de ellos es un
itemset distinto.
Por ejemplo, la transacción T = {A,B,C} está formada por 3 items
(A, B y C) y sus posibles itemsets son: {A,B,C}, {A,B}, {B,C}, {A,C},
{A}, {B} y {C}.
3
Regla de Asociación
Una regla de asociación se define como una implicación del
tipo “si X entonces Y” (X⇒Y), donde X e Y son itemsets o
items individuales.
El lado izquierdo de la regla recibe el nombre de antecedente
y el lado derecho el nombre de consecuente.
Por ejemplo, la regla {A,B} => {C} significa que, cuando
ocurren A y B, también ocurre C.
4
Reglas de Asociación
Definición
Sea I el conjunto de ítems de una base de datos D.
Una Regla de Asociación (RA) es una implicación de la
forma
XY
donde X I, Y I, y X Y = .
5
Análisis de la Canasta de Mercado
Los productos comprados por los clientes de un supermercado se
representan como transacciones Tj={I1, I2, …, Ik}
ID Productos (o ítems)
Juan Papas, Huevos, Jamón
María Pan, Leche, Huevos
Luis Pan, Leche, Papas, Huevos
Ana Pan, Leche
6
Reglas de Asociación. Ejemplo
ID Productos # Regla
Juan Papas, Huevos, 1 Pan Leche
Jamón
2 Leche Pan
María Pan, Leche,
Huevos 3 Papas Huevos
Luis Pan, Leche, 4 Huevos Papas
Papas, Huevos
5 Pan y Huevos Leche
Ana Pan, Leche
6 Leche Huevos y Pan
7 Pan Huevos y Leche
7
Métricas de calidad de una regla
Soporte
Proporción de ejemplos que la regla predice correctamente.
Cobertura
Proporción de ejemplos que verifican el antecedente de la regla.
Confianza
Cociente entre la cantidad de ejemplos que cumplen con la
regla y la cantidad de ejemplos que cumplen con el
antecedente.
8
Soporte
El Soporte de una regla X Y en una base de datos D está
dado por la expresión
X Y
Sop( X Y )
D
o también
Sop( X Y ) P( X and Y )
9
Cobertura
La Cobertura de una regla X Y en una base de datos D
está dado por la expresión
X
Cob( X Y )
D
o también
Cob( X Y ) P( X )
10
Confianza
La Confianza de una regla X Y está dada por la siguiente
expresión
Sop( X Y ) X Y
Conf ( X Y )
Sop( X ) X
o también
Conf ( X Y ) P(Y | X )
11
Ejercicio: Indique el soporte y la confianza de las
siguientes reglas
ID Productos # Regla
Juan Papas, Huevos, 1 Pan Leche
Jamón
2 Leche Pan
María Pan, Leche,
Huevos 3 Papas Huevos
Luis Pan, Leche, 4 Huevos Papas
Papas, Huevos
5 Pan y Huevos Leche
Ana Pan, Leche
6 Leche Huevos y Pan
7 Pan Huevos y Leche
12
Ejercicio: Indique el soporte y la confianza de las
siguientes reglas
ID Productos # Regla
Juan Papas, Huevos, 1 Pan Leche
Jamón
2 Leche Pan
María Pan, Leche,
Huevos Papas = Huevos
3 Soporte 3/4
Luis Pan, Leche,
4 Confianza
Huevos = 3/3 = 1
Papas
Papas, Huevos
5 Pan y Huevos Leche
Ana Pan, Leche
6 Leche Huevos y Pan
7 Pan Huevos y Leche
13
Ejercicio: Indique el soporte y la confianza de las
siguientes reglas
ID Productos # Regla
Juan Papas, Huevos, 1 Pan Leche
Jamón
2 Leche Pan
María Pan, Leche,
Huevos 3 Papas Huevos
Luis Pan, Leche, 4 Huevos Papas
Soporte = 3/4
Papas, Huevos
5 Pan y Huevos=
Confianza 3/3Leche
=1
Ana Pan, Leche
6 Leche Huevos y Pan
7 Pan Huevos y Leche
14
Ejercicio: Indique el soporte y la confianza de las
siguientes reglas
ID Productos # Regla
Juan Papas, Huevos, 1 Pan Leche
Jamón
2 Leche Pan
María Pan, Leche,
Huevos 3 Papas Huevos
Luis Pan, Leche, 4 Huevos Papas
Papas, Huevos
5 Soporte
Pan y Huevos
= Leche
Ana Pan, Leche
Leche Huevos
6 Confianza = y Pan
7 Pan Huevos y Leche
15
Ejercicio: Indique el soporte y la confianza de las
siguientes reglas
ID Productos # Regla
Juan Papas, Huevos, 1 Pan Leche
Jamón
2 Leche Pan
María Pan, Leche,
Huevos 3 Papas Huevos
Luis Pan, Leche, 4 Huevos Papas
Papas, Huevos
5 Pan y Huevos Leche
Ana Pan, Leche
6 Leche Huevos y Pan
Soporte =
Pan Huevos
7 Confianza = y Leche
16
Ejercicio: Indique el soporte y la confianza de las
siguientes reglas
ID Productos # Regla
Juan Papas, Huevos, 1 Pan Leche
Jamón
2 Leche Pan
María Pan, Leche,
Huevos 3 Papas Huevos
Luis Pan, Leche, 4 Huevos Papas
Papas, Huevos
5 Pan y Huevos Leche
Ana Pan, Leche
6 Leche Huevos y Pan
7 Soporte =
Pan Huevos y Leche
Confianza =
17
Ejercicio: Indique el soporte y la confianza de las
siguientes reglas
ID Productos # Regla
Juan Papas, Huevos, 1 Pan Leche
Jamón
2 Leche Pan
María Pan, Leche,
Huevos 3 Papas Huevos
Luis Pan, Leche, 4 Huevos Papas
Papas, Huevos
5 Pan y Huevos Leche
Ana Pan, Leche
6 Leche Huevos y Pan
Soporte = 7 Pan Huevos y Leche
Confianza =
18
Ejercicio: Indique el soporte y la confianza de las
siguientes reglas
ID Productos # Regla
Juan Papas, Huevos, 1 Pan Leche
Jamón
2 Leche Pan
María Pan, Leche,
Huevos 3 Papas Huevos
Luis Pan, Leche, 4 Huevos Papas
Papas, Huevos
5 Pan y Huevos Leche
Ana Pan, Leche
6 Leche Huevos y Pan
Soporte = 7 Pan Huevos y Leche
Confianza =
19
Aprendizaje de Reglas de Asociación
Deben establecerse los requisitos mínimos
Ej: 𝑠𝑜𝑝𝑜𝑟𝑡𝑒 ≥ 2
Aprendizaje
Extracción de los conjuntos de ítems que cumplen con el
soporte requerido.
Generación de las reglas a partir de estos ítems.
20
Algoritmo A priori
Identificar los items que en forma individual cumplen con el
soporte mínimo.
Utilizar estos items para formar conjuntos de dos items que
cumplen con la cobertura mínima.
Utilizar los items anteriores para formar grupos de a tres.
Seguir hasta que no encontrar un grupo mayor que cumpla
con los requisitos.
21
Algoritmo A priori - Importancia de los conjuntos
de items frecuentes
Hallar los itemsets frecuentes: conjuntos de items que tienen mínimo
soporte
Un subconjunto de un itemset frecuente debe ser también un itemset
frecuente
si {AB} es un itemset frecuente, luego {A} y {B} deberian ser itemsets
frecuentes
22
Algoritmo Apriori ( 𝐷: base de datos, 𝑀𝑖𝑛𝑆 : soporte mínimo)
Algoritmo A priori
𝐿1 = { ítems frecuentes }
k=1
mientras (𝐿𝑘 ! = ∅)
𝐶𝑘+1 = conjuntos de ítems candidatos generados a partir de 𝐿𝑘
para cada transacción 𝑡 in la base de datos 𝐷
Incrementar en 1 la cantidad de todos los candidatos en 𝐶𝑘+1 que
estén contenidos en 𝑡
fin para
𝐿𝑘+1 = candidatos de 𝐶𝑘+1 que cumplen con 𝑀𝑖𝑛𝑆
𝑘 =𝑘 +1
fin mientras
retorna 𝑘𝐿 𝑘ڂ
23
Soporte mínimo 20%
Algoritmo A priori (9 * 20 / 100 = 1.8 2 ocurrencias)
Trans. Items 𝐶1 𝐿1 𝐶2 𝐿2
T1 i4,i5 Items # Items Itemset # Itemset
{ i1 } 2 { i1 } { i1, i2 } 0 { i1, i3 }
T2 i1,i3,i4,i5
{ i2 } 3 { i2 } { i1, i3 } 2 { i1, i5 }
T3 i1,i3,i5 { i3 } 7 { i3 } { i1, i4 } 0 { i2, i5 }
T4 i3,i4 { i4 } 5 { i4 } { i1, i5 } 2 { i3, i4 }
T5 i3,i4 { i5 } 7 { i5 } { i2, i3 } 1 { i3, i5 }
{ i2, i4 } 0 { i4, i5 }
T6 i4,i5
{ i2, i5 } 2
T7 i2,i3,i5 𝐶3
{ i3, i4 } 4
T8 i2,i5 { i3, i5 } 4 Items #
{ i4, i5 } 4 { i1, i3, i5 } 2
T9 i3,i4,i5
{ i3, i4, i5 } 2
Retorna: 𝑳𝟏, 𝑳𝟐 y 𝑳𝟑 𝐿3 Items
{ i1, i3, i5 } 24
{ i3, i4, i5 }
Algoritmo A priori (sop.mín.=0.5)
Productos: 1-Papas; 2-Leche; 3-Huevos; 4-Jamón; 5-Pan
Trans. Items
L3
T1 i4,i5
Items
T2 i1,i3,i4,i5 …
{ i1, i3, i5 }
T3 i1,i3,i5 { i3, i4, i5 }
T4 i3,i4
T5 i3,i4
T6 i4,i5
Una vez obtenidos los conjuntos de items frecuentes
T7 i2,i3,i5
se forman las reglas y se analizan:
T8 i2,i5
T9 i3,i4,i5 Por ejemplo
{ i1, i3 } { i5 }
{ i4 } { i3 }
25
Desventajas del algoritmo A priori
Recorre la base de datos varias veces
Este es el proceso más costoso.
26
A priori en Rapid Miner
Operador W-Apriori
27
A priori en Rapid Miner
Proceso
28
A priori en Rapid Miner
29
Mejoras y Extensiones
Para mejorar la búsqueda de los conjuntos de ítems
frecuentes se han propuesto variantes
ECLAT (Equivalence Class Transformation) [Zaki 2000]
FP-Growth [Huan et al.2000]
Usa una estructura tipo árbol (Frequent Pattern Tree)
Técnicas paralelización
Tablas hash
30
ECLAT (Equivalence Class Transformation)
Trans. Items items Transacciones # itemset Transacciones #
{i1} T2,T3 2 {i1,i3} T2,T3 2
T1 i4,i5
{i2} T7,T8 2 {i1,i4} T2 1
T2 i1,i3,i4,i5 {i1,i5} T2,T3 2
{i3} T2,T3,T4,T5,T7,T9 6
T3 i1,i3,i5 {i4} T1,T2,T4,T5,T6,T9 6 {i2,i3} T7 1
T4 i3,i4 {i5} T1,T2,T3,T6,T7,T8,T9 7 {i2,i5} T7,T8 2
{i3,i4} T2,T4,T5,T9 4
T5 i3,i4
{i3,i5} T2,T3,T7,T9 4
T6 i4,i5 {i4,i5} T1,T2,T6,T9 4
T7 i2,i3,i5
T8 i2,i5
items Transacciones #
T9 i3,i4,i5 {i1,i3,i5} T2,T3 2
{i3,i4,i5} T2,T9 2
31
Algoritmo FP-Growth
32
FP-Tree (Frequent Pattern Tree)
Construcción – Paso 1
Ordenar los ítems según su frecuencia. Luego utilizar este
orden para reescribir los ejemplos.
Item #
TID Items 1 2
Juan 134 2 3
María 235
3 3
Luis 1235
4 1
Ana 25
5 3
33
FP-Tree (Frequent Pattern Tree)
Construcción – Paso 1
Ordenar los ítems según su frecuencia. Luego utilizar este
orden para reescribir los ejemplos.
Item #
TID Items 2 3
Juan 134 3 3
María 235
5 3
Luis 1235
1 2
Ana 25
4 1
34
FP-Tree (Frequent Pattern Tree)
Construcción – Paso 1
Ordenar los ítems según su frecuencia. Luego utilizar este
orden para reescribir los ejemplos.
Item #
TID Items 2 3 TID Items
Maria 235 Maria 235
3 3
Juan 134 Juan 31
5 3
Luis 1235 Luis 2351
1 2 Ana 25
Ana 25
4 1
35
FP-Tree (Frequent Pattern Tree)
Construcción – Paso 2 TID
Maria
Items
235
A partir de los ejemplos ordenados se Juan 31
construye el árbol Luis 2351
Ana 25
Raíz
Item inicio
2 2:1
3
5 3:1
1
5:1
36
FP-Tree (Frequent Pattern Tree)
Construcción – Paso 2 TID
Maria
Items
235
A partir de los ejemplos ordenados se Juan 31
construye el árbol Luis 2351
Ana 25
Raíz
Item inicio
2 2:1
3 3:1
5 3:1
1
5:1
1:1
37
FP-Tree (Frequent Pattern Tree)
Construcción – Paso 2 TID
Maria
Items
235
A partir de los ejemplos ordenados se Juan 31
construye el árbol Luis 2351
Ana 25
Raíz
Item inicio
2 2:2
3 3:1
5 3:2
1
5:2
1:1
1:1
38
FP-Tree (Frequent Pattern Tree)
Construcción – Paso 2 TID
Maria
Items
235
A partir de los ejemplos ordenados se Juan 31
construye el árbol Luis 2351
Ana 25
Raíz
Item inicio
2 2:3
3 3:1
5 3:2
5:1
1
5:2
1:1
1:1
39
FP-Tree (Frequent Pattern Tree)
Construcción – Paso 3 TID
Juan
Items
31
Raíz María 235
Item inicio Luis 2351
2:3 Ana 25
2
3 3:1
5 3:2
5:1
1
5:2
1:1
1:1
40
FP-Tree (Frequent Pattern Tree)
Construcción – Paso 3 TID
Juan
Items
31
Raíz María 235
Item inicio Luis 2351
2:3 Ana 25
2
3 3:1
5 3:2
5:1
1
5:2
1:1
1:1
{1,3} frecuencia 2
41
FP-Tree (Frequent Pattern Tree)
Construcción – Paso 3 TID
Juan
Items
31
Raíz María 235
Item inicio Luis 2351
2:3 Ana 25
2
3 3:1
5 3:2
5:1
1
5:2
1:1
1:1
{1,3} frecuencia 2
42
FP-Tree (Frequent Pattern Tree)
Construcción – Paso 3 TID
Juan
Items
31
Raíz María 235
Item inicio Luis 2351
2:3 Ana 25
2
3 3:1
5 3:2
5:1
1
5:2
1:1
1:1
{1,3} frecuencia 2
{2,5} frecuencia 3
43
FP-Tree (Frequent Pattern Tree)
Construcción – Paso 3 TID
Juan
Items
31
Raíz María 235
Item inicio Luis 2351
2:3 Ana 25
2
3 3:1
5 3:2
5:1
1
5:2
1:1
1:1
{ 1, 3} frecuencia 2
{ 2, 5} frecuencia 3
{2,3,5} frecuencia 2 ¿Otros pares con
frecuencia 2? 44
FP-Growth con Rapid Miner (RP)
Abrir con RP el archivo Compras.csv
45
FP-Growth con Rapid Miner (RP)
Abrir con RP el archivo Compras.csv
Excluir el atributo ID 46
FP-Growth con Rapid Miner (RP)
Abrir con RP el archivo Compras.csv
47
FP-Growth con Rapid Miner (RP)
Luego convertir a binominal
Numerical to Binominal
48
FP-Growth con Rapid Miner (RP)
Luego convertir a binominal
49
FP-Growth con Rapid Miner (RP)
Agregar el operador FP-Growth y configurarlo de la siguiente
forma
50
FP-Growth con Rapid Miner (RP)
Agregar el operador FP-Growth
51
FP-Growth con Rapid Miner (RP)
Ejecutar y observar los resultados
52
Reglas de Asociación con RP
Agregar el operador Create Association Rules
53
Reglas de Asociación con RP
Agregar el operador Create Association Rules
54
Reglas de Asociación con RP
Ejecutar y observar las reglas obtenidas
Interés
55
Interés
Dada una regla A B, el interés mide cuantas veces más se
verifican A y B juntos de lo que se esperaría si fueran
independientes.
Sop( A B)
Interes( A B)
Sop( A) * Sop( B)
56
Interés
Sop( A B)
Interes( A B)
Sop( A) * Sop( B)
57
Interés
Mide el grado de dependencia entre atributos
Sop( A B)
Interes( A B)
Sop( A) * Sop( B)
Sin embargo, mide co-ocurrencia pero no la dirección de la
implicación porque es una medida simétrica.
Interes(AB) = Interes(BA)
58
Interés
𝑆𝑜𝑝(𝑃𝑎𝑝𝑎𝑠 → 𝑃𝑎𝑛)
𝐼𝑛𝑡𝑒𝑟𝑒𝑠 𝑃𝑎𝑝𝑎𝑠 → 𝑃𝑎𝑛 =
𝑆𝑜𝑝 𝑃𝑎𝑝𝑎𝑠 ∗ 𝑆𝑜𝑝(𝑃𝑎𝑛)
1/4 4
= = = 0.66
2/4 ∗(3/4 ) 6
59
Interés
60
Ejemplo Golf.csv
Ejecutar y observar
los metadatos 62
Ejemplo Golf.csv
Ejecutar y observar
La transformación realizada por el operador Nominal to Binominal
Las reglas obtenidas y sus métricas.
Los conjuntos de ítems frecuentes
63
Calcular soporte, cobertura, confianza e interés de
Si (Ambiente=nublado) Juega?=si
Nº Ambiente Temperatura Humedad Viento Juega?
1 soleado alta alta no No
2 soleado alta alta si No
3 nublado alta alta no Si
4 lluvioso media alta no Si
5 lluvioso baja normal no Si
6 lluvioso baja normal si No
7 nublado baja normal si Si
8 Soleado media alta no No
9 Soleado baja normal no Si
10 lluvioso media normal no Si
11 Soleado media normal si Si
12 Nublado media alta si Si
13 Nublado alta normal no Si
14 lluvioso media alta si No
64
Calcular soporte, cobertura, confianza e interés de la regla
Si (Ambiente=lluvioso) y (Temp=media) Juega?=si
Nº Ambiente Temperatura Humedad Viento Juega?
1 soleado alta alta no No
2 soleado alta alta si No
3 nublado alta alta no Si
4 lluvioso media alta no Si
5 lluvioso baja normal no Si
6 lluvioso baja normal si No
7 nublado baja normal si Si
8 Soleado media alta no No
9 Soleado baja normal no Si
10 lluvioso media normal no Si
11 Soleado media normal si Si
12 Nublado media alta si Si
13 Nublado alta normal no Si
14 lluvioso media alta si No
65