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

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

CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Jian Pei, Jiawei Han e Runying Mao Apresentação preparada por Alexandre Lorenzatti.

Apresentações semelhantes


Apresentação em tema: "CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Jian Pei, Jiawei Han e Runying Mao Apresentação preparada por Alexandre Lorenzatti."— Transcrição da apresentação:

1 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Jian Pei, Jiawei Han e Runying Mao Apresentação preparada por Alexandre Lorenzatti

2 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Closed itemsets Frequent Closed itemsets Artigo Definição do problema Extração dos FCIs Especificação formal Otimizações Escalabilidade Performance Bancos utilizados e a comparação com CHARM e A-close Conclusões

3 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Closed itemsets Um conjunto de itens X={x1, x2, x3, x4} será closed (fechado) se nenhum de seus super-conjuntos tiver o mesmo suporte, ou seja: {a c d : 2}, não é um closed itemset, pois: {a c d f : 2}, que é um super-conjunto, tem suporte igual e é mais interessante de ser analisado. o porquê disso, gerando as regras associativas a -> {c d} com suporte = 2 a -> {c d f} com suporte = 2 mas, e se? 1 | a c d e f 2 | a b e 3 | c e f 4 | a c d f 5 | c e f

4 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Closed itemsets Um conjunto de itens X={x1, x2, x3, x4} será closed (fechado) se nenhum de seus super-conjuntos tiver o mesmo suporte, ou seja: {a c d : 2}, não é um closed itemset, pois: {a c d f : 2}, que é um super-conjunto, tem suporte igual e é mais interessante de ser analisado. o porquê disso, gerando as regras associativas a -> {c d} com suporte = 2 a -> {c d f} com suporte = 2 mas, e se? agora: {a c d : 3}, será um closed itemset {a c d f : 2}, será outro closed itemset 1 | a c d e f 2 | a b e 3 | c e f 4 | a c d f 5 | c e f 6 | a c d

5 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Closed itemsets Um conjunto de itens X={x1, x2, x3, x4} será closed (fechado) se nenhum de seus super-conjuntos tiver o mesmo suporte, ou seja: princípio: todos os sub-conjuntos de um conjunto freqüente são freqüentes. todos os super-conjuntos de um conjunto infreqüente, são infreqüentes. {a c d : 2}, não é um closed itemset, pois: {a c d f : 2}, que é um super-conjunto, tem suporte igual e é mais interessante de ser analisado. o porquê disso, gerando as regras associativas a -> {c d} com suporte = 2 a -> {c d f} com suporte = 2 1 | a c d e f 2 | a b e 3 | c e f 4 | a c d f 5 | c e f

6 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Frequent Closed itemsets (FCI) Um conjunto de itens X={x1, x2, x3, x4} será considerado um frequent closed itemset se ele for fechado e se sup(X) >= min_sup. 1 | a c d e f 2 | a b e 3 | c e f 4 | a c d f 5 | c e f min_sup = 3 {a c d : 3}, será um frequent closed itemset {a c d f : 2}, NÃO será um frequent closed itemset caso min_sup = 2, ambos seriam FCI

7 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Frequent Closed itemsets (FCI) Um conjunto de itens X={x1, x2, x3, x4} será considerado um frequent closed itemset se ele for fechado e se sup(X) >= min_sup. A importância de se encontrar FCIs é a grande redução do número de regras redundantes geradas. 1 | a c d e f 2 | a b e 3 | c e f 4 | a c d f 5 | c e f min_sup = 3 {a c d : 3}, será um frequent closed itemset {a c d f : 2}, NÃO será um frequent closed itemset caso min_sup = 2, ambos seriam FCI

8 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Artigo FCIs, mesmo poder de mineração que os FI. A proposta: extensão do FP-growth redução do espaço de busca com a utilização dos FCIs mecanismo de projeção para a mineração de grandes BDs

9 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Definição do problema Mineração de regras de associação dividida em duas etapas: Encontrar os Frequent Itemsets Para cada FI gerar as as regras de associação

10 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Definição do problema Mineração de regras de associação dividida em duas etapas: Encontrar os Frequent Itemsets Para cada FI gerar as as regras de associação PROBLEMÁTICA: geração de muitas regras, em muitos casos, redundantes

11 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Definição do problema Mineração de regras de associação dividida em duas etapas: Encontrar os Frequent Itemsets Para cada FI gerar as as regras de associação PROBLEMÁTICA: geração de muitas regras, em muitos casos, redundantes Mineração de regras de associação utilizando apenas os FCIs (2 etapas também): 20 FIs porém, somente 6 são FCI: {a c d f}, {c e f}, {a e}, {c f}, {a}, {e} Gerar regras de associação utilizando apenas FCIs: c f -> a d (2, 50%) a -> c d f (2, 67%) e -> a (2, 50%) a -> e (2, 67%) e -> c f (3, 75%) c f -> e (3, 75%) 1 | a c d e f 2 | a b e 3 | c e f 4 | a c d f 5 | c e f

12 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Extração dos FCIs Encontrar a lista de itens freqüentes f_list com min_sup=2: c: 4, e: 4,f: 4,a: 3,d: 2 A base de transações ordenada pelo suporte e que atendem min_sup=2 1 | c e f a d 2 | e a 3 | c e f 4 | c f a d 5 | c e f Dividir o espaço de busca criando os chamados BDs condicionais (TDB|x) todos os FCIs são divididos em 5 sub-conjuntos de acordo com f_list e de acordo com as regras: sub-conj. que contém {d} sub-conj. que contém {a} mas não {d} sub-conj. que contém {f} mas não {a} e {d} sub-conj. que contém {e} mas não {f}, {a} nem {d} sub-conj. que contém apenas {c}

13 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Extração dos FCIs (cont.) Encontrar sub-conjuntos nos FCIs Encontrar FCIs que contenham {d} criando o TDB|d {c e f a}, {c f a} -> FCI = {c f a : 2}, pois sup(d) = 2 assim {c f a} sempre apareceu junto com {d}, então: {c f a d} : 2 é um FCI Encontrar FCIs que contenham {a} mas que não contenham {d}, criando o TDB|a {c e f}, {e}, {c f} mas como sup(a) = 3 somente {a} é um FCI assim entra-se recursivamente para encontrar o restante de FCIs contendo {a} mas não {d} monta-se uma sub-lista de itens freqüentes do TDB|a, que será: f_list_a= c: 2, e: 2, f: 2 1 | c e f a d 2 | e a 3 | c e f 4 | c f a d 5 | c e f

14 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Extração dos FCIs (cont.) Encontrar sub-conjuntos nos FCIs De acordo com f_list_a criam-se 3 sub-conjuntos que contenham {a} mas não {d} {a f}, {a e}, {a c} todos com sup=2 TDB| f a = {a f} tem suporte igual a {a c d f} e é sub-conjunto deste, não é FCI TDB| c a = {a c} tem suporte igual a {a c d f} e é sub-conjunto deste, não é FCI TDB| e a = {c} que não atende o suporte, então {e a : 2} é um FCI Voltando da recursão e continuando os passos em f_list Continua-se fazendo para o TDB|f, TBD|e e TDB|c Ao final, obteve-se os seguintes FCIs: {acdf: 2}, {a: 3}, {ae: 2}, {cf: 4}, {cef: 3}, {e: 4}

15 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Especificação formal Especificação formal mostrando que o processo de mineração dos FCIs é completo e correto Otimizações Otimização 1 : FP-trees Otimização 2: Remover os itens que aparecem em todas transações dos BDs condicionais Otimização 3: extrair FCIs diretamente da FP-tree Otimização 4: poda na busca de FCIs

16 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Otimizações (cont.) Otimização 1: Comprimir as informações do banco transacional e dos bancos condicionais em FP-trees Transações semelhantes terão um caminho semelhante na FP-tree Os TDB|x podem ser derivados a partir de uma FP-tree já que múltiplas transações podem dividir um mesmo caminho da árvore FP-tree criada a partir do banco: root C : 4 E : 3 F : 3 A : 1 D : 1 F : 1 A : 1 D : 1 E : 3 A : 1 1 | c e f a d 2 | e a 3 | c e f 4 | c f a d 5 | c e f

17 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Otimizações (cont.) Otimização 1 (cont.): TDB|d : {cefa}, {cfa} TDB|a: {cef}, {cf}, {e} TDB|f: {ce},{c} TDB|e: {c} TDB|c: {c} root C : 4 E : 3 F : 3 A : 1 D : 1 F : 1 A : 1 D : 1 E : 3 A : 1

18 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Otimizações (cont.) Otimização 2: Remover os itens que aparecem em todas transações dos BDs condicionais Ex: BD condicional de d: {c e f a} {c f a} {c f a} são comuns, assim {c f a d} é um FCI se não for sub- conjunto de um FCI com suporte igual

19 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Otimizações (cont.) Otimização 3: extrair FCIs diretamente da FP-tree criada a partir de um BD condicional e que possua apenas um ramo Ex.: FP-tree gerada a partir do BD condicional de {f}, TDB|f: {ce},{c} root | c: 4 | e: 3 | f: 3 Assim encontramos os FCIs: {c f : 4} {c e f : 3}

20 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Otimizações (cont.) Otimização 4: poda na busca de FCIs Dois conj. freqüentes X e Y. Se Y contiver os elementos de X e Y for um FCI não é necessário procurar FCIs no BD condicional de X Ex.: BD condicional de {c}, pois {c} é um sub-conjunto de {f c} o qual já é um FCI TDB|c = {c}

21 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Escalabilidade Quando um banco de dados é grande fica inviável manter um FP-tree em memória Solução simples, porém bastante custosa, é expandir todos TDB|x de um nó pai Ao invés de copiar um transação para todos TDB|x ela é copiada apenas para o último item de f_list que a contém

22 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Escalabilidade Ex.: {d} é o último de f_list que contém a transação {c e f a d} então ela é copiada para TDB|d. Depois de processado o TDB|d a transação é transferida para o próximo TDB|x, no caso, TDB|a Com essa abordagem o CLOSET consegue trabalhar sem a construção de uma FP-tree nas primeiras iterações, assim, as FP-trees são construídas quando os BDs condicionais cabem em memória

23 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Performance Os bancos de dados T25|20D100K 10K itens: dados esparsos, maioria dos dos FI são FCI Connect-4: 67557 transações cada uma com 43 itens, longos FIs pumsb: 49046 transações cada uma com 74 itens Redução do número de FIs para FCIs no Connect-4

24 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Performance (cont.) Comparação A-close: é baseado no Apriori mas, com algumas melhorias CHARM: explora o formato de dados verticais, buscando FCIs através de intersecções entre os dados das transações Experimentos feitos em um Pentium 233MHz, 128MB RAM, Windows NT, Visual C++ 6.0 CLOSET se mostrou melhor principalmente em bancos densos como o Connect-4 CLOSET usou 1690 seg. para encontrar 130101 FCI com sup=50% enquanto que o A-close nem encontrou resultados com sup=80%

25 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Conclusões CLOSET se mostrou eficiente e escalável na busca por FCIs em grandes BDs Minerar uma grande quantidade de transações gerando os conjuntos freqüentes é bastante custoso e criam-se muitas regras associativas Minerar FCIs tem o mesmo poder de minerar todos os conjuntos freqüentes mas, gerando uma quantidade bem menor de regras associativas

26 CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Jian Pei, Jiawei Han e Runying Mao Apresentação preparada por Alexandre Lorenzatti


Carregar ppt "CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets Jian Pei, Jiawei Han e Runying Mao Apresentação preparada por Alexandre Lorenzatti."

Apresentações semelhantes


Anúncios Google