Uma das tarefas descritivas da

Slides:



Advertisements
Apresentações semelhantes
Mineração de Dados Algoritmo APRIORI
Advertisements

Operações envolvendo imagens
Celso C. Ribeiro Caroline T. Rocha
VETORES.
Modelos de Mineração de Dados
Universidade Bandeirante de São Paulo Fundamentos da Álgebra
Universidade Bandeirante de São Paulo Fundamentos da Álgebra
Composta de funções.
Estatística Descritiva Aula 02
1 MD - junho/2008 HAC Regressão Tarefa preditiva em que as classes são contínuas Objetivo: predizer um valor numérico para a saída: Consumo de um carro.
Agrupamento (clustering)
1 MD - junho/2008 Identificação do problema Ao final dessa etapa espera-se ter: Definição da área Definição do problema Definição dos dados.
HAC MD -junho/ Noções de algoritmos e estudo de casos das principais tarefas de Mineração de dados.
Para Casa – Montar o cariograma
AULA PRÁTICA DIRIGIDA Nº 02
Medidas de Posição e Dispersão
A PPLYING D ATA M INING T ECHNIQUES TO S EMI -A UTOMATICALLY D ISCOVER G UIDELINES FOR M ETAMODELS {andreza, franklin, patricia,
Mineração de Padrões Arborescentes
Generalização da Técnica Levelwise para Mineração de Padrões Sandra de Amo.
Correção – Completude – Performance – Escalabilidade
Gerenciamento de Arquivos, Páginas e Registros
Mineração de Dados Temporais Introdução
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
Resolução.
Universidade Federal do Paraná
Relações Adriano Joaquim de O Cruz ©2002 NCE/UFRJ
Árvores.
DIAGRAMA DE ATIVIDADES
DIAGRAMA DE CASOS DE USO PERSPECTIVA CONCEITUAL
Exemplo de Espalhamento Extensível 1. Definição dos dados a processar 2 Escondido pela moldura.
Estatística Básica Utilizando o Excel
Mineração de Dados ou Descoberta de conhecimento em BDs
Artigo: ‘Mining Frequent Patterns without Candidate Generation’
A FAST APRIORI implementation
CLOSET: An Efficiet Algorithm for Mining Frequent Closed Itemsets
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
Mineração de Padrões Sequenciais
Mining Frequent Patterns without Candidate Generation
1 Sabendo-se que os pratos das balanças estão em equilíbrio, você seria capaz de dizer: Quantos quadrados corresponde um círculo ? Dica Mais dicas Elaboração:
Sistema de dois componentes - condensado
Decomposição em fatores primos
Estruturas de Dados II Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
Auditoria de Segurança da Informação
A Lógica das Sentenças Abertas Profa. Ana Florencia Aula 9
II. M o d e l o s d e C o n h e c i m e n t o
Expressão algébrica a partir da representação gráfica da função
Data Mining como ferramenta de Gestão
Inteligência Artificial
Conceitos básicos1, aula 4
1 Descoberta de Conhecimento em Bases de Dados por Algoritmos Genéticos Prof. Marco Aurélio C. Pacheco.
Conversão de um NFA para um DFA com um exemplo
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
Salas de Matemática.
Medidas de posição  Estudando as distribuições de  frequência,  percebe-se que existe uma  posição de  concentração dos valores, que podem estar mais concentrados no início, no meio ou no 
SISTEMAS DIGITAIS ALGEBRA DE BOOLE E SIMPLIFICAÇÃO DE CIRC. LÓGICOS
Revisão do conceito de matrizes
NOÇÕES DE PROBABILIDADE
O nosso dinheiro….
1 2 Observa ilustração. Cria um texto. Observa ilustração.
Probabilidades e Combinatória Distribuição de Probabilidades
SairPróximo Itens de Seleção Probabilidades e Combinatória Cálculo de Probabilidades. Regra de Laplace. ITENS DE SELEÇÃO DOS EXAMES NACIONAIS E TESTES.
CALENDÁRIO SEXY Ele & Ela. CALENDÁRIO SEXY Ele & Ela.
Análise da Arrecadação Setembro de Desempenho da Arrecadação das Receitas Federais Evolução Janeiro a Setembro – 2014/2013 (A preços de setembro/14.
Rio Verde - Goiás - Brasil
NOÇÕES DE PROBABILIDADE
Nome alunos 1 Título UC. Título – slide 2 Conteúdo Conteúdo 2.
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.
Transcrição da apresentação:

Uma das tarefas descritivas da Regras de associação Uma das tarefas descritivas da Mineração de Dados Objetivo: Encontrar tendências que possam ser usadas para entender e explorar padrões de comportamento dos dados.

Tarefas de MD Data Mining Atividade Preditiva Atividade Descritiva Classificação Regressão Regras de Associação Clustering Sumarização

Exemplo: Uma Base de Dados de um supermercado teria como regra o fato de que 80% dos clientes que compram um produto Q, também adquirem, na mesma ocasião o produto W. Em que 80% é o fator de confiabilidade da regra. Problema: Analisar um grande volume de conhecimento extraído no formato de regras.

Conceitos importantes Itemset Conjunto de atributos ou itens ordenados lexicograficamente. Exemplos: {a,b,c} {1,2,3} {André,Marcio,Marcos}

Regra de Associação Definição Seja D uma Base de Dados composta por um conjunto de itens A = {a1,a2,...,am} ordenados lexicograficamente e por um conjunto de transações T={t1,t2,..,tn}, em que, cada transação ti é composta por um conjunto de itens tal que ti está contido em A

Exemplo Conjunto de itens: {produto1, produto2, produto3} Conjunto de transações T (compras de clientes): t1: produto1, produto2 t2: produto1, produto2, produto3 t3: produto2, produto3

Uma Regra de Associação é uma implicação na forma LHS RHS em que LHS e RHS são conjuntos de ítens que estão contidos em A e a intersecção de LHS e RHS é vazia.

Exemplo Itemset: {a b c} Regras: a bc b ac a b a c c ab .....

A regra LHS RHS ocorre no conjunto de transações T com confiança c se c% das transações em T em que ocorre LHS também ocorre RHS. A regra LHS RHS tem suporte s se em s% das transações em D ocorre LHS RHS.

Suporte Indica a freqüência com que um itemset ou com que LHS e RHS ocorrem juntos no conjunto de dados. Exemplos: Itemset: {be} Suporte = 1 Regra: ab -> c = {abc} Suporte = 2 c b a e X3 X2 X1

Itemset freqüente É um itemset com suporte maior ou igual a um suporte mínimo especificado pelo usuário. Exemplo: Suporte Mínimo = 2 {ab} Suporte = 3 {ab} é um itemset freqüente c b a e X3 X2 X1

Confiança Indica a freqüência com que LHS e RHS ocorrem juntos em relação ao número total de registro em que LHS ocorre. Exemplo: ab -> c c b a e X3 X2 X1

Exemplo Suporte Mínimo = 50% (2 transações). Confiança Mínima = 50%. A = {bermuda, calça, camiseta, sandália, tênis} e T = {1, 2, 3, 4}. Suporte Mínimo = 50% (2 transações). Confiança Mínima = 50%. 50% {camiseta, tênis} {camiseta} {calça} 75% {tênis} Suporte Itemsets Freqüentes calça, sandália 4 bermuda, tênis 3 camiseta, tênis 2 calça, camiseta, tênis 1 Itens Comprados Transações

Suporte Mínimo = 50% (2 transações) Exemplo tênis camiseta, em que: Suporte Mínimo = 50% (2 transações) Confiança Mínima = 50% 50% {camiseta, tênis} {camiseta} {calça} 75% {tênis} Suporte Itemsets Freqüentes

Geração de Regras de Associação Esquema básico dos algoritmos: Dado uma Base de Dados D composta por um conjunto de itens A = {a1,a2,...,am} ordenados lexicograficamente e por um conjunto de transações T={t1,t2,..,tn}, em que, cada transação ti é composta por um conjunto de itens tal que ti está contido em A.

Encontrar todos os itemsets que possuem suporte maior que um suporte mínimo especificado pelo usuário (itemsets freqüentes). Utilizar todos os itemsets freqüentes para gerar todas as regras de associação que possuem confiança maior do que a confiança mínima especificada pelo usuário.

Algoritmo Apriori Encontra todos os k-itemsets frequentes contidos em uma base de dados Gera um conjunto de k-itemsets candidatos e então percorre a base de dados para determinar se os mesmos são frequentes, identificando desse modo todos os k-itemsets frequentes

1. L1 := {1-itemsets frequentes}; 2. para (k := 2; Lk-1 ≠ ∅; k ++) faça 3. Ck := apriori-gen (Lk-1); //Gera novos conjuntos candidatos 4. para todo (transações t  T) faça 5. Ct := subset (Ck, t); //Conjuntos candidatos contidos em t 6. para todo candidatos c  Ct faça 7. c.count ++; 8. fim-para 9. fim-para 10. Lk := {c  Ck ∣ c.count ≤ sup-min }; 11. fim-para 12. Resposta := ∪k Lk

Exemplo A = {bermuda, calça, camiseta, sandália, tênis} 1-itemsets: {bermuda}, {calça}, {camiseta}, {sandália}, {tênis} L1 = {{tenis} , {calça}, {camiseta}} (1-itemsets frequentes) C2= {{tenis,bermuda}, {tenis,calça}, {tenis, camiseta}, ....., {calça, bermuda},...} (2-itemsets candidatos) L2= {{tenis, camiseta}} (2-itemsets frequentes)

Algoritmo para gerar regras de associação Gera um conjunto de regras de associação a partir de um conjunto contendo todos k- itemsets frequentes, com k ≥ 2

1. para todo (k-itemset frequente lk, k ≥ 2) faça 2. Call genrules (lk,lk); 3. fim-para // O procedimento genrules gera todas as regras válidas sobre lk 4. procedure genrules (lk : k-itemset frequente, am: m-itemset frequente) 5. gerar subconjuntos não vazios de um itemset frequente com m-1 itens 6. para todo itemset gerado construir regras 7. se confiança da regra gerada ≥ confiança mínima 8. imprimir regra 9. se (m-1>1) Call genrules (lk,am-1); //Gera regras com subconjuntos de am-1 como antecedente 10. fim-se 11. fim-se 12. fim-para

Exemplo Itemset: {camiseta, tenis} genrule gera subconjuntos: subconjunto a1 = {tenis} subconjunto a2 = {camiseta} constrói regras com esses itemsets no lado esquerdo e calcula a confiança: regra gerada pelo subconjunto a1: tenis -> camiseta

regra gerada pelo subconjunto a1: tenis -> camiseta suporte = suporte({tenis, camiseta}) = 50% confiança = suporte({tenis, camiseta}) / suporte({tenis}) = 50/75 = 66,66% regra gerada pelo subconjunto a2: camiseta -> tenis suporte = suporte({camiseta, tenis}) = 50% confiança = suporte({camiseta, tenis}) / suporte({camiseta}) = 50/50 = 100%

Algoritmos Apriori e AprioriTid [Agrawal R. & R. Srikant (1994)]; Opus [Webb G. I. (1995)]; Direct Hasing and Pruning (DHP) [Adamo J.M.(2001)]; Dynamic Set Couting (DIC) [Adamo J.M. (2001)]; Charm [Zaki M. & C. Hsiao (2002)]; FP-growth [J. Han, J. Pei & Y. Yin (1999)]; Closet [Pei J., J. Han & R. Mao (2000)];

Observações... Diferenças entre os algoritmos: forma como os dados são carregados na memória tempo de processamento tipos de atributos (numéricos, categóricos) maneira com que os itemsets são gerados