1 / 27

Taller de Base de Datos

Taller de Base de Datos. Reglas de Asociación a Múltiples Niveles “Mining Generalized Association Rules”. Srikant, Agrawal VLDV 1995.

Download Presentation

Taller de Base de Datos

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Taller de Base de Datos Reglas de Asociación a Múltiples Niveles “Mining Generalized Association Rules”. Srikant, Agrawal VLDV 1995. En muchas aplicaciones puede ser difícil encontrar asociaciones interesantes entre conjuntos de ítemes ya que pueden aparecer en una pequeña fracción de las transacciones. Por ejemplo: {IBMDesktopComputer,SonyBWPrinter} puede ser poco frecuente pero {Computer,Printer} Puede ser muy frecuente

  2. Taller de Base de Datos Reglas de Asociación a Múltiples Niveles (cont.) A veces es interesante algo más general: {leche} {pan} O algo más detallado: {lecheDescremada} {panIntegral} O reglas a distintas granularidades: Necesitamos modelar ítemes y conceptos relacionas a través de una jerarquía.

  3. Taller de Base de Datos ¿Cómo modelamos una jerarquía de itemes? Una forma muy simple de hacerlo es a través de una taxonomía. Una taxonomía puede verse como un grafo dirigido acíclico donde sus nodos interiores representan conceptos y sus hojas ítemes. Llamamos ítemes (o conceptos) a los nodos de la taxonomía.

  4. Taller de Base de Datos ¿Cómo modelamos una jerarquía de itemes? Un conjunto de taxonomías T se puede modelar como un grafo acíclico dirigido. Un arco de x a y representa x is-a y. Dado un nodo x en la taxonomía, x’ es una ancestro de x.

  5. Taller de Base de Datos Definición del Problema Dado un conjunto de taxonomías T y un conjunto de transacciones, donde cada transacción Tє D contiene nodos de T decimos que: • T soporta a un item x si xєT o x es un ancestro de un item en T. • T soporta un itemeset X si T soporta cada item en X. Una regla de asociación generalizada es una expresión de la forma: X Y Donde y no existe ningún itemen Y que sea ancestro de algún item X.

  6. Soporte y Confianza de Reglas Generalizadas Sop(X Y)= % de transacciones en D que soportan X U Y. Conf(X Y)= % de transacciones que soportan X U Y sobre las transacciones que soportan X.

  7. Búsquedas de reglas de Asociación vs. Búsquedas de Reglas Generalizadas 1.- Usando la definición de regla interesante definida para reglas de asociación de asociación común podemos generar reglas de asociación redundantes. • Si evitamos redundancias, las asociaciones de todas las base de datos se pueden representar con un conjunto pequeño de reglas. 2.- Podemos aprovechar la taxonomía para podar item-set candidatos.

  8. Cuándo una regla generalizada es interesante? Supongamos que usamos la noción de regla interesante que definimos para reglas comunes. Supongamos que tenemos: {Leche} {Cereal} con un 8% de soporte y un 70% de confianza. Si Leche es ancestro de Leche descremada, no es extraño que la regla {LecheDescremada} {Cereal} tenga 2% de soporte y un 70% de confianza

  9. Cuándo una regla generalizada es interesante? Por lo tanto, la regla {LecheDescremada} {Cereal} No aporta nuevo conocimiento si tenemos que {Leche} {Cereal} es interesante. Una definición adecuada del grado de interés de una regla generalizada debería excluir reglas cuyo grado de interés se infiere de otras reglas interesantes.

  10. Jerarquías de Reglas Para definir reglas generalizadas interesantes necesitamos definir una jerarquía de reglas. Un itemset Ž es un ancestro de un itemset Z si: • Si Z y Ž tienen el mismo número de ítemes y: • Ž se obtiene de Z reemplazando algunos ítemes z de Z con ancestros ž. Dada una regla X Y, sus ancestros son reglas de la forma

  11. Ejemplo: Jerarquías de Reglas Si Z es {Chaqueta, zapato} un posible ancestro de Z es Ž ={Ropa, zapato}. El itemset {RopaExterior,camisa} no tiene ancestros, por qué? La definición de ancestros excluye {Ropa}ya que el soporte de este itemset no nos dice nada fundamental sobre el soporte de {RopaExterior,camisa}.

  12. Ejemplo: Jerarquías de Reglas (cont.) Los antecesores de {Chaqueta} {ZapatoComun}son: {RopaExterior} {ZapatoComun} {RopaExterior} {Zapato} {Chaqueta} {Zapato}

  13. Soporte Esperado Recordemos que Sop(X)=Pr(X) Definamos el soporte esperado de un itemset Z dado que sabemos el soporte de un ancestro Ž.

  14. Soporte Esperado (cont.)

  15. Confianza Esperada

  16. Reglas R-Interesantes (Definición) Una regla X Y es R-interesante con respecto a un antecesor si: • el soporte de X Y es R veces el soporte esperado dado el soporte de y: • análogo para la confianza. Ejemplo: si R=1, entonces {LecheDescremada} {Cereal} es R-interesante con respecto a {Leche} {Cereal}

  17. Reglas R-Interesantes (cont.) (Definición). Dado un conjunto de reglas S y un interés mínimo R,X Y es R-interesante si. • X Y no tiene ancestros: o • X Y es R-interesante con respecto a sus ancestros más cercanos entre sus ancestros R-interesantes.

  18. Planteamiento del Problema Dado un conjunto de transacciones D, un interés mínimo R ,minSop y minConf, encontrar todas las reglas R-interesantes. Si R=0, todas las reglas son interesantes

  19. Estrategia Básica 1.- Encontrar todos los itemset frecuentes (soporte mayor que minSof) 2.- Generar reglas interesantes a partir de itemes frecuentes encontrados en 1. 3.- Podar las reglas que no son R-iteresantes de las reglas obtenidas en 2.

  20. Búsqueda de itemset Frecuentes a Múltiples Niveles Algoritmo Básico: • Aumentar cada transacción T Є D con los ítemes tal que x pertenece a T . Sea T’ el conjunto de transacciones aumentados . • Ejecutar cualquier algoritmo para búsqueda de itemset frecuentes en T’. • Para evitar que aumente el costo de lectura de D , podemos aumentar cada transacción

  21. Algoritmo Básico

  22. Algoritmo Cumulate Es esencialmente el algoritmo básico más algunas optimizaciones como: • Optimización 1: Filtro de los ancestros agregados a las transacciones. Una transacción T se aumenta sólo con los ancestros de ítemes en T que aparecen en itemsets candidatos (Ck). • Supongamos que chaqueta es hijo de RopaExterior que a su vez es hijo de Ropa. Además existe un único itemset candidato {Ropa, Zapatos}. • En cada transacción que contenga Chaqueta reemplazamos Chaqueta por Ropa

  23. Algoritmo Cumulate • Para aumentar una transacción T con ancestros tenemos que computar los ancestros de cada ítem. Cómo ? • Optimización 2: Precomputar ancestros • Computar los ancestros de cada ítem (Clausura transitiva T* de la taxonomía T) y almacenarlos en alguna estructura de datos apropiada. • Usar la relación computada anteriormente para aumentar cada transacción.

  24. Algoritmo Cumulate • Optimización 3: Poda de itemset que contienen un ítem en su ancestro. • El soporte de un itemset X que contiene x y es el mismo que el soporte de X- • Si Lk-1 no contiene ningún itemset X con un ítem y su ancestro Ck=AprioGen(Lk-a) (Recordar este procedimiento de A priori) tampoco.

  25. Algoritmo Cumulate

  26. Algoritmo Cumulate

More Related