Professional Documents
Culture Documents
Asociaciones
Establecer vnculos entre los registros Asociaciones (productos que se compran juntos) Patrones secuenciales (si se compra algo en una fecha en x meses se adquiere otro producto) Secuencias similares. Detecta fenmenos con comportamientos similares
Algoritmos de Asociacin
Obtener itemsets (conjuntos de valores que se repiten) de un determinado tamao, para combinarlos en reglas.
Algoritmos de Asociacin
Algoritmo
Ventajas:
Apriori y sus variantes son los ms usados dentro de este tipo de anlisis. Eficiencia para grandes volmenes de datos muy elevada. Ciertos SGBD son capaces de ejecutar este algoritmo dentro del ncleo del gestor.
Deficiencias:
Para ciertos datos de entrada, los resultados intermedios consumen gran cantidad de recursos (memoria).
A veces es muy til disponer de generalizaciones o agrupaciones de los productos que se estn considerando Eligiendo de manera inteligente el nivel al que generalizar se pueden mejorar los resultados Para establecer hbitos de los clientes (productos bajos en caloras,...) se pueden insertar productos virtuales y analizar las asociaciones que los contengan.
Generacin de reglas
A veces las combinaciones obtenidas pueden ser de utilidad y se pueden obtener reglas que pueden ser interesantes. Las reglas de asociacin toman la forma:
donde tanto la condicin como el resultado son combinaciones disjuntas de productos Hay que establecer parmetros para medir la bondad de las reglas
Data Mining
Reglas de asociacin Dado un conjunto de registros, encontrar reglas que predicen la ocurrencia de un tem, basndose en las ocurrencias de otros tems en el registro
I1={a
,a2 ,a3 ,...} conjunto de todos los atributos. i=1 1) Se recorre la tabla de entrada y se actualiza el conjunto
1
Li={l1 ,l2 ,l3 ,...} donde cada li es el par formado por un elemento de Ii y por el nmero de veces que dicho elemento ocurre en los datos de entrada.
Algoritmos de Asociacin
2) Se eliminan de Li los elementos cuyo contador no supere el umbral mnimo. 3) Se genera un nuevo conjunto Li+1 como el de grupos de atributos de tamao i+1 a partir de los conjuntos de atributos de Li 4) Si Li no est vaco e i <MAX regresar a 1)
Data Mining
Market-Basket transaction
TID 1 2 3 4 5
Items Bread, Milk Bread, Diaper, Beer, Eggs Milk, Diaper, Beer, Coke Bread, Milk, Diaper, Beer Bread, Milk, Diaper, Coke
Data Mining
Market-Basket analysis
Reglas de asociacin
Importancia Conocer la relacin entre un conjunto de datos, por ejemplo, la temperatura, el clima y la aparicin de una enfermedad Tomar decisiones estratgicas en un negocio; ubicacin de productos en un supermercado
Reglas de asociacin
Estructura de las reglas P1 P2 P3 Pm C1 C2 ... Cn donde cada Pi es el antecedente de la regla y cada Cj es el consecuente
Reglas de asociacin
computer financial_management_software temperature =high humidity = normal age(x,3039) income(x,42K48K) buys(x, high resolution TV)
Reglas de asociacin
Medidas
Personal_computer Printer Laptop_computer Digital_camera Cul de las reglas es ms significativa? Con qu certeza se puede asegurar la regla en un conjunto de datos?
Reglas de asociacin
Medidas
Soporte(AB)= P(AB) Confianza(AB)= P(B|A)
Soporte: es el porcentaje de transacciones que contienen tanto la condicin como el resultado. Esto es, porcentaje de transacciones donde la regla es cierta Confianza: es el porcentaje de transacciones que conteniendo la condicin tambin contienen el resultado. Es decir es la probabilidad de que se encuentre el resultado dada la condicin
17
Reglas de Asociacin
Reglas de Asociacin
Reglas de asociacin
Medidas
Soporte(XY)=P(XY) Confianza(XY)=P(Y|X)
X X X X X X W W
Y Y Y Z Z Z X Y
Reglas de asociacin
Conversin de datos Cada tem se representa por medio de un identificador Tambin se utiliza una tabla de valores booleanos para representar cada transaccin
TID List of Item T100 milk, eggs, bread T200 T300 T400 T500 T600 T700 T800 T900 eggs, beer eggs, coke milk, eggs, beer milk, coke egs, coke milk, coke milk, eggs, coke, bread milk, eggs, coke
TID T100 T200 T300 T400 T500 T600 T700 T800 T900
List of Item I1, I2, I5 I2, I4 I2, I3 I1, I2, I4 I1, I3 I2, I3 I1, I3 I1, I2, I3, I5 I1, I2, I3
Reglas de asociacin
Reglas de asociacin
TID List of Item T100 milk, eggs, bread T200 T300 T400 T500 T600 T700 eggs, beer eggs, coke milk, eggs, beer milk, coke egs, coke milk, eggs, coke
Reglas de asociacin
Reglas de asociacin
Algoritmo Apriori
Calcula itemsets frecuentes usando generacin de candidatos Solo se generan aquellos itemsets candidatos que cumplan la propiedad Entrada: minimum support count + transacciones Salida: itemsets frecuentes del tamao ms grande posible + frecuencia para cada itemset
TID T100 T200 T300 T400 T500 T600 T700 T800 T900
List of Item I1, I2, I5 I2, I4 I2, I3 I1, I2, I4 I1, I3 I2, I3 I1, I3 I1, I2, I3, I5 I1, I2, I3
C1
Sup count
Compare support
C1
Sup count 6 7 6 2 2
Compare support
C1
Sup count 6 7 6 2 2
Compare support
C1
Sup count 6 7 6 2 2
Compare support
L1
Compare support
Sup count 6 7 6 2 2
Generate C2
C2
Itemset
Generate C2
C2
Itemset {I1,I2}
Generate C2
TID T100 T200 T300 T400 T500 T600 T700 T800 T900
List of Item I1, I2, I5 I2, I4 I2, I3 I1, I2, I4 I1, I3 I2, I3 I1, I3 I1, I2, I3, I5 I1, I2, I3
C2
Itemset {I1,I2}
Scan DB for count of each candidate
Sup count 4 4 1 2 4 2 2 0 1 0
Compare support
L2
Compare support
Sup count 4 4 2 4 2 2
Generate C3
C3
Generate C3
TID T100 T200 T300 T400 T500 T600 T700 T800 T900
List of Item I1, I2, I5 I2, I4 I2, I3 I1, I2, I4 I1, I3 I2, I3 I1, I3 I1, I2, I3, I5 I1, I2, I3
Compare support
L3
Compare support
Generate C4
Reglas de asociacin
Algoritmo Apriori
Una vez determinadas las frecuencias para los itemsets frecuentes, establezca la regla sobre el conjunto y calcule el soporte y la confianza
support_count(AB)=# de transacciones que contienen A y B
confidence(AB)=support_count(AB) support_count(A)
Reglas de asociacin
Algoritmo Apriori
Considere el itemset frecuente {I1,I2,I5}, Cules son las reglas que se pueden generar? I1 I2I5 I1 I5I2 I2 I5I1 I1 I2 I5 I2 I1 I5 I5 I1 I2
Sup count 4 4 2 4 2 2
Reglas de asociacin
Algoritmo Apriori
Considere el itemset frecuente {I1,I2,I5}, Cules son las reglas que se pueden generar? I1I2I5, confidence=2/4=50% I1I5I2 I2I5I1 I1I2I5 I2I1I5 I5I1I2
Reglas de asociacin
Algoritmo Apriori
Considere el itemset frecuente {I1,I2,I5}, Cules son las reglas que se pueden generar? I1I2I5, confidence=2/4=50% I1I5I2, confidence=2/2=100% I2I5I1, confidence=2/2=100% I1I2I5, confidence=2/6=33% I2I1I5, confidence=2/7=29% I5I1I2, confidence=2/2=100%
List of Item A, B, C C, D A, C A, B, D B, D B, C, D E, F D, E
Reglas de asociacin
Mtodo FP-Growth
Frequent Parent Growth: Encuentra los itemsets frecuentes sin generar candidatos El resultado debe ser el mismo que con el algoritmo Apriori
Reglas de asociacin
Mtodo FP-Growth
Construccin del rbol FP-Tree Algoritmo FP-Growth
Reglas de asociacin
Construccin del rbol FP-Tree Calcular las frecuencias para los itemsets de tamao 1 Ordenar los items descendentemente, de acuerdo las frecuencias, en una lista llamada L
TID T100 T200 T300 T400 T500 T600 T700 T800 T900
List of Item I1, I2, I5 I2, I4 I2, I3 I1, I2, I4 I1, I3 I2, I3 I1, I3 I1, I2, I3, I5 I1, I2, I3
Item I2 I1 I3 I5 I4
Frequency 7 6 6 2 2
Reglas de asociacin
Construccin del rbol FP-Tree Ordenar los items en cada transaccin en el orden dado por L
TID T100 T200 T300 T400 T500 T600 T700 T800 T900
List of Item I1, I2, I5 I2, I4 I2, I3 I1, I2, I4 I1, I3 I2, I3 I1, I3 I1, I2, I3, I5 I1, I2, I3
TID T100 T200 T300 T400 T500 T600 T700 T800 T900
List of Item I2, I1, I5 I2, I4 I2, I3 I2, I1, I4 I1, I3 I2, I3 I1, I3 I2, I1, I3, I5 I2, I1, I3
Reglas de asociacin
Construccin del rbol FP-Tree Crear el nodo raz del rbol con la etiqueta null o {} Construya el rbol con base en la lista de items ordenados
TID T100 T200 T300 T400 T500 T600 T700 T800 T900
List of Item I1, I2, I5 I2, I4 I2, I3 I1, I2, I4 I1, I3 I2, I3 I1, I3 I1, I2, I3, I5 I1, I2, I3
TID T100 T200 T300 T400 T500 T600 T700 T800 T900
List of Item I2, I1, I5 I2, I4 I2, I3 I2, I1, I4 I1, I3 I2, I3 I1, I3 I2, I1, I3, I5 I2, I1, I3
I3:2
TID T100 T200 T300 T400 T500 T600 T700 T800 T900
List of Item I1, I2, I5 I2, I4 I2, I3 I1, I2, I4 I1, I3 I2, I3 I1, I3 I1, I2, I3, I5 I1, I2, I3
Sup count 4 4 2 4 2 2
Reglas de asociacin
Algoritmo FP-Growth Para cada item se determina su conditional pattern base Se crea un rbol FP con los elementos de cada base que cumplan con el minimum support count
Item I2 I1 I3 I5 I4
Condition Pattern Base I2:4 I2 I1:2, I2:2, I1:2 I2 I1 I3:1, I2 I1:1 I2 I1:1, I2:1
Item I2 I1 I3 I5 I4
null{}
Condition Pattern Base I2:4 I2 I1:2, I2:2, I1:2 I2 I1 I3:1, I2 I1:1 I2 I1:1, I2:1
Como I2:4 pasa el soporte mnimo, se asigna la frecuencia 4 al itemset I2 I1, esto es, I2 I1:4
I2:4
Item I2 I1 I3 I5 I4
null{} I2:4 I1:2 I1:2
Condition Pattern Base I2:4 I2 I1:2, I2:2, I1:2 I2 I1 I3:1, I2.I1:1 I2 I1:1, I2:1
Genera los itemsets: I2 I3: 4 I2 I1 I3:2 I1 I3: 2