A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

CLOSET: An Efficiet Algorithm for Mining Frequent Closed Itemsets

Apresentações semelhantes


Apresentação em tema: "CLOSET: An Efficiet Algorithm for Mining Frequent Closed Itemsets"— Transcrição da apresentação:

1 CLOSET: An Efficiet Algorithm for Mining Frequent Closed Itemsets
Jian Pei, Jiawei Han, and Runying Mao Augusto Klinger

2 Roteiro Introdução Definições CLOSET Performance Conclusão Exemplo
Otimizações Algoritmo Escalabilidade Performance Conclusão

3 Introdução Geralmente, mineração por regras de associação resulta em muitos itemsets e regras. Solução: minerar somente itemsets fechados frequentes (Pasquier et al.) Mesmo poder Menos redundância Mais eficiência

4 Introdução CLOSET Aplicação de um estrutura FP-tree para minerar itemsets fechados frequentes Tecnica de compressão de caminho para identificar itemsets fechados frequentes rapidamente Mecanismo de projeção baseado em partição para escalabilidade

5 Definições Problema Achar todos itemsets frequentes
Para cada itemset, gerar as regras de associação

6 Definições Frequent Closed Itemset (FCI):
Um Itemset X é fechado se não existir um itemset X’ que X’ é superconjunto próprio de X Toda transação que contém X contém X’ X > X’ e sup(X) = sup(X’) Itemset fechado é frequente se o suporte passa o suporte mínimo.

7 Definições Regras de associação em FCI Processo de Mineração é similar
X→Y X e XUY são FCI Não existir Z, tal que X<Z<(XUY) Passar o nível de confiança Processo de Mineração é similar Minerar FCIs com min_sup Gerar regras nos FCIs com min_conf

8 Definições Exemplo Min_sup = 2 Min_conf = 50%
R: FCI: acdf Não FCI: ac, f

9 CLOSET Minera FCIs por um método de divisão e conquista
Explora o conceito de projeção de base de dados Exemplo...

10 CLOSET Encontrar os itens frequentes Dividir o espaço de busca
F_list = [c:4, e:4, f:4, a:3, d:2] Dividir o espaço de busca Baseado na f_list, 5 espaços contendo: d a e não d f e não a nem d e e não d nem a nem f Somente c

11 CLOSET

12 CLOSET Encontrar subconjuntos de FCIs
Construir e minerar conditional databases recursivamente FCIs com d c, f e a aparecem em todas transações e é infrequente cfad: 2 é um FCI

13 CLOSET

14 CLOSET FCIs com a e não d Nenhum item em toda transação
a: 3 é um FCI – mas pode ter mais

15 CLOSET

16 CLOSET para achar os outros: Local f_lista = (c:2, e:2, f:2)
Particionar o espaço de acordo com a f_lista Contendo af mas não d Contendo ae mas não d ou f Contendo ac mas não d, e ou f sup(af) = sup(cfad) = sup(ca) Tabela do ae não tem item frequente, então: ea: 2 é um FCI

17 CLOSET

18 CLOSET FCIs com f e não a nem d c aparece em todas transações
sup(cf) != sup(cfad) cf: 4 é um FCI cef não é subconjunto de ninguém cef: 3 é um FCI

19 CLOSET

20 CLOSET FCIs com e e não d nem a nem f FCIs com somente c
sup(ce) = sup(cef) e: 4 é um FCI FCIs com somente c Como não há FCI contendo c e não f, não há FCI somente com c.

21 CLOSET

22 CLOSET – Otimização 1 FP-tree Árvore de prefixos Compreção
Transações com mesmo prefixo compartilham uma parte do caminho a partir da raíz Conditional databases podem ser derivadas eficientemente A projeção de um caminho é equivalente a multiplas transações

23 CLOSET – Otimização 2 Extrair itens que aparecem em toda transação da conditional database Se Y aparece em toda transação da X-conditional database, XUY é um FCI, caso não seja subconjunto próprio de outro FCI com mesmo suporte. No exemplo, o itemset cfad Excluir item extraído da local f_list e da conditional database

24 CLOSET – Otimização 2 Reduz o tamanho da FP-tree
Pode reduzir o nível de recursão

25 CLOSET – Otimização 3 Extrair FCIs diretamente da FP-tree
Se existir um caminho único, alguns FCIs podem ser extraídos diretamente da condicional database Sendo i um item frequente numa X-cond Só um nodo N contendo i Antecessores de N tem só um filho N tem 0 ou mais filhos Então, a união de X, N e antecessores (menos a raíz) é um FCI (se obedecer as regras!)

26 CLOSET – Otimização 3 Exemplo: FP-tree tem só um caminho (c:4, e:3)
Pode-se enumerar diretamente cf:4 e cef: 3

27 CLOSET – Otimização 4 Podar galhos Se X e Y são itensets frequentes
sup(X) = sup(Y) X < Y Y é FCI Então, não há necessidade de procurar na X-cond! Como no exemplo foi desconsiderada a C-cond por c ser subconjunto de fc

28 CLOSET – Otimização 4

29 CLOSET – Algoritmo

30 CLOSET – Algoritmo

31 CLOSET – Algoritmo Inserir YUX em FCI se Y aparece em todas as transações da DB(e respeita as regras) // Otimização 2 Contruir FP-tree da DB sem os itens já extraídos // Otimização 1 Extraír FCIs se possível // Otimização 3

32 CLOSET – Algoritmo Montar conditional databases para ítens restantes da f_list e computar suas respectivas f_lists. Para cada ítem i restante na f_list, a partir do último, chamar CLOSET(iX, DBi, f_listi, FCI) SE iX não for subconjunto com mesmo suporte de algum FCI já encontrado! // Otimização 4

33 CLOSET – Escalabilidade
Para grandes TDBs, FP-trees não cabem na memória Solução: Contruir primeiro conditional databases sem FP-trees Construir FP-trees baseadas em disco [Mining frequent patterns without candidate generation]

34 CLOSET – Escalabilidade
Um método simples: Expandir todas conditional databases, uma por vez Duplicaria TDB L/2 vezes L é o numero médio de itens frequentes nas transações Construção de muitas conditional databases pode ser uma operação custosa

35 CLOSET – Escalabilidade
Método baseado em partição Pode reduzir drasticamente o espaço Consiste em copiar uma transação somente para a conditional database que contém o ultimo ítem da sua f_list.

36 CLOSET – Escalabilidade
Exemplo: d é o ultimo ítem da f_list de cefad Ao invés de copiar para d- a- f- e- cond Só copia para a d-cond Depois de processar a d-cond, a transação é copiada para a próxima conditional database, e assim por diante.

37 CLOSET – Escalabilidade

38 CLOSET – Escalabilidade
Uma vez terminada a partição, a tabela original pode ser descartada. FP-trees são contruídas somente depois de algumas rodadas (quando as conditional databases couberem na memória)

39 Performance CLOSET x CHARM x A-close Pentium 233 MHz
128 MB Windows NT Visual C++ Testado em 3 conjuntos de dados

40 Performance T25l20D100K (sintética) 100.000 transações
Transações de tamanho 25 Itemsets frequentes de tamanho 20

41 Performance - T25l20D100K

42 Performance Connect-4 (real) transações 43 itens por transação

43 Performance - Connect-4
Numero de itemsets frequentes pode ser reduzido em uma ordem de magnitude numa DB densa, se representados por FCIs

44 Performance - Connect-4

45 Performance Pumsb (real) transações 74 itens por transação

46 Performance - Pumsb

47 Performance - Escalabilidade

48 Conclusão Minerar FCIs é uma alternativa interessante
Menos itemsets Menos regras, e mais interessantes CLOSET é eficiente e escalável

49 FIM Perguntas?


Carregar ppt "CLOSET: An Efficiet Algorithm for Mining Frequent Closed Itemsets"

Apresentações semelhantes


Anúncios Google