Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouBruno Mateos Alterado mais de 10 anos atrás
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?
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.