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

Slides:



Advertisements
Apresentações semelhantes
SISTEMAS DISTRIBUÍDOS BASEADOS EM COORDENAÇÃO
Advertisements

Mineração de Dados Algoritmo APRIORI
Python: Recursão Claudio Esperança.
Checkpoint SGBD com alta demanda de transações Checkpoint
Inteligência Artificial
CONTROLE DE CONCORRÊNCIA
Resposta do Exercício sobre Árvores de Decisão
Celso C. Ribeiro Caroline T. Rocha
Modelos de Mineração de Dados
Uma das tarefas descritivas da
Método de Clusterização baseado em Densidade Algoritmo DBSCAN
Aprendem a partir de seus vizinhos AULA 9 DATA MINING Sandra de Amo
Correção – Completude – Performance – Escalabilidade
Mineração dePreferências Contextuais A. Soulet et al AULA 19 Data Mining Profa. Sandra de Amo.
Mestrado em Ciência da Computação 2008
Busca informada (heurística) Parte 2
Árvores.
David Menotti Algoritmos e Estruturas de Dados I DECOM – UFOP
HeapSort Filas de Prioridade – Heap
Medida do Tempo de Execução de um Programa
Medida do Tempo de Execução de um Programa
David Menotti Estruturas de Dados I DECOM – UFOP
Busca Cega (Exaustiva)
Descoberta de Conhecimento:
Artigo: ‘Mining Frequent Patterns without Candidate Generation’
A FAST APRIORI implementation
CLOSET: An Efficiet Algorithm for Mining Frequent Closed Itemsets
LCM: na efficient algorithm for enumerating frequent closed item sets T. Uno, T. Asai, H. Arimura Apresentação: Luiz Henrique Longhi Rossi.
CLOSET: An Efficient Algorithm for Mining Frequent Closed Itemsets
Mineração de Padrões Sequenciais
Mining Frequent Patterns without Candidate Generation
Indexação e Hashing Muitas consultas referenciam apenas uma pequena porção dos registros em uma tabela. Portanto necessitamos ser capaz de localizar estes.
AULA – Linguagem C – Vetores, Ponteiros Estruturas
Métodos de Classificação por Seleção: HeapSort
Missionários e Canibais
A Lógica das Sentenças Abertas Profa. Ana Florencia Aula 9
FORMAS DE REPRESENTAÇÃO QUE SERVEM PARA DESCREVER AS ESTRUTURAS DAS INFORMAÇÕES CONTIDAS EM UM BD. Modelos de Dados.
II. M o d e l o s d e C o n h e c i m e n t o
Marcus Sampaio DSC/UFCG. Marcus Sampaio DSC/UFCG.
Grafos Árvores Geradoras.
Finding and Evaluating Community Structure in Networks
Gráfico de Pareto O termo Gráfico de Pareto ficou conhecido depois que Juran começou a utilizá-lo. O nome se originou no trabalho de Vilfredo Pareto, durante.
Resolução de problemas por meio de busca
6/7/2014 Mestrado em Ciencia da Computacao Otimização da Técnica Apriori Sandra de Amo Data Mining AULA 4.
Sistema Recomendador para Comércio Eletrônico
Algorítmos e estrutura de dados III
Busca com informação e exploração
Introdução e Busca Cega
Introdução aos Agentes Inteligentes Busca Cega (Exaustiva)
Introdução aos Agentes Inteligentes Busca Heurística (Informada)
Data Mining: A arte de minerar conhecimento. Roteiro Visão do Problema –Introdução 1 –Motivação 2 Desafios Tecnologias: –Algoritmos de otimização de mineração.
Tópicos Avançados em Inteligência Artificial
Sistemas Operacionais
Árvore Binária de Busca
SISTEMAS OPERACIONAIS I Gerenciamento de Arquivos
Busca Combinatorial e Métodos de Heurística
Introdução a Banco de Dados Aula 04
1 Efficient Phrase Querying with an Auxiliary Index (SIGIR) 2002 Trabalho realizado por: Trabalho realizado por: João Casteleiro Alves João Casteleiro.
Definição um sistema de BD distribuído consistem em uma rede de várias ocorrências de bases de dados interligadas. característica principal para o usuário,
Marcus Sampaio DSC/UFCG. Marcus Sampaio DSC/UFCG O Problema Dados –Um banco de transações de compra –Cada transação é um conjunto de ítens comprados Encontrar.

Serialização Relaxada em Banco de Dados Múltiplos Andressa Sebben
Transações Banco de Dados II Aline S Costa 1. TRANSAÇÕES Conjunto de operações que formam uma única unidade lógica de trabalho; Conjunto de instruções.
Elaine Teixeira de Oliveira
Algoritmo de Transportes Objecto de Aprendizagem Manuel Pina MarquesDEIG
Marcos Corrêa Neves Gilberto Câmara Renato M. Assunção
Mineração de Dados Felipe Carvalho – UFES 2009/2.
Sistemas Inteligentes Busca Cega (Exaustiva)
Busca Heurística Prof. Valmir Macário Filho. 2 Busca com informação e exploração Capítulo 4 – Russell & Norvig Seção 4.1 Estratégias de Busca Exaustiva.
Associação: algoritmos (parte 2) prof. Luis Otavio Alvares INE/UFSC
Transcrição da apresentação:

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

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

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

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

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

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

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

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

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

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

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

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}

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

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}

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

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

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

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

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}

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}

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

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

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: transações cada uma com 43 itens, longos FIs pumsb: transações cada uma com 74 itens Redução do número de FIs para FCIs no Connect-4

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 CLOSET se mostrou melhor principalmente em bancos densos como o Connect-4 CLOSET usou 1690 seg. para encontrar FCI com sup=50% enquanto que o A-close nem encontrou resultados com sup=80%

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

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