1 / 29

Mineração de Dados Temporais Introdução

Mineração de Dados Temporais Introdução. Data Mining Sandra de Amo. Mineração de Dados Temporais. Fator tempo é importante ! {Leite, Manteiga} só é frequente nas compras feitas entre 7:00 e 9:00 .

astrid
Download Presentation

Mineração de Dados Temporais Introdução

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Mineração de Dados TemporaisIntrodução Data Mining Sandra de Amo Pós-graduação em Ciência da Computação - 2012

  2. Mineração de Dados Temporais Fator tempo é importante ! • {Leite, Manteiga} só é frequente nas compras feitas entre 7:00 e 9:00. • A confiança da regra {Queijo  Vinho} é alta nos finais de semana (comportamento cíclico). • A confiança da regra de associação Escolaridade = Superior  Partido = PT vem decaindo nos últimos 10 anos. • Clientes que compramipodfrequentemente compram base para ipoddepois de um mesda compra do ipod. Escola de Verão - USP - São Carlos 2010

  3. Panorama Geral : Dados Simbólicos versus Séries Temporais Dados simbólicos: elementos que evoluem no tempo são representados por símbolos. • Artigos comprados por um cliente ao longo do tempo: ipod, rádio, computador, base de ipod,... • Sintomas apresentados por um paciente ao longo do tratamento: febre, náusea, tontura,... • Eventos de uma linha de montagem: troca de turnos de funcionário, falha na execução da tarefa, congestionamento da linha,... Escola de Verão - USP - São Carlos 2010

  4. Panorama Geral : Dados Simbólicos versus Séries Temporais Dados numéricos (séries temporais): • Cotações de uma determinada ação ao longo do ano de 2009. • Temperaturas registradas numa determinada região no século XX. • Indice pluviométrico de uma determinada região do planeta na década de 90. • Colheita obtida (em toneladas) de um determinado cereal, numa determinada região, na década de 2000 a 2009. Escola de Verão - USP - São Carlos 2010

  5. Dados numéricos x Dados simbólicos S = (1, 4.5, 6, 2, 2.4, 7.1, 4, 2.4, 1, 4.8, 5.8, 1.8, 2.5, 7.2, 2, 2.4) Domínio dos valores dos dados é estruturado: totalmente ordenado dado 14 15 16 13 10 11 9 12 6 7 8 5 1 2 3 4 tempo Escola de Verão - USP - São Carlos 2010

  6. Série temporal: representação gráfica Permite utilizar técnicas de análise matemática e estatistica para detecção de formatos (shapes) especificos que se repetem com frequência ao longo do gráfico Escola de Verão - USP - São Carlos 2010

  7. Problemas tratados neste curso : Mineração de Padrões Temporais • Mineração de Regras de AssociaçãoTemporais 2. Mineração de Dados Sequenciais (simbólicos) 3. Mineração de SériesTemporais Pós-graduação em Ciência da Computação - 2012

  8. Um outro problema de Mineração Temporal = Classificação Temporal Dado: um conjunto de sequências (amostras de treinamento) [ (a1,...,an), classe 1] [ (b1,...,bn), classe 2] .... [ (z1,...,zn), classe 1] Objetivo: produzir um modelo de classificação sequência não classificada sequência classificada

  9. Aplicações As principais aplicações: dados são sequências numéricas ou sequências de vetores numéricos. • gestos • sequência de imagens = sequência de vetores numéricos • Objetivo: classificar um gesto em uma determinada classe: gesto de adeus, gesto de acolhida (“hello !”), gesto de dúvida, etc. • fala • sequência de fonemas (sinais sonoros) • Objetivo: transcrever sequências de sinais sonoros em sua representação escrita. • assinatura manual • sequência de coordenadas de pontos (x,y) no plano desenhadas por usuários num dispositivo (tábua) digital. • Objetivo: associar a uma dada assinatura manual um nome de usuário.

  10. Problema de Mineração de Regras Temporais Cíclicas [Özdenetal 1998] • Base de dados = uma única sequência longa de itemsets D1, D2, …, Dn,… Di = conjunto das compras realizadas por clientes no instante i (unidade de tempo = hora, dia, semana, mes, …) • Clientes não são identificados Pós-graduação em Ciência da Computação - 2012

  11. Problema de Mineração de Regras Temporais Cíclicas • Padrão Temporal : Regra de Associação Cíclica • Regra X  Y, onde X e Y são itemsets • XY tem bom suporte e boa confiança em certos instantes i que ocorrem periodicamente. • Exemplo: café pão-com-manteiga • tem boa confiança entre 7 e 9 da manhã. • Padrão se repete a cada 24 horas. Pós-graduação em Ciência da Computação - 2012

  12. Exemplo Suporte mínimo = 40% Confiança minima = 50 % 1 2 4 3 {a,b} {a,c,b} {c,b,a,d} {c,a} {b,d} {a,c,b} {d,c} {b,c,d} {c,b} {d,e} {a,b} {a,c} {c,b,d} {d,b} {a,d,b} {a,c,e} {a,c} {a,e,c,d} {a,f,b} {b,d} Suporte = 2/5 Confiança = 2/3 Suporte = 1/5 Confiança = 100% Suporte = 1/5 Confiança = 1/4 Suporte = 3/5 Confiança = 3/4 X X Regra : a  b Pós-graduação em Ciência da Computação - 2012

  13. Conceitos de Base • Ciclo = (p,m) • p = período • m = offset = instante a partir do qual o padrão começa a se repetir periodicamente, 0 ≤ m < p • Regra de Associação Cíclica • (X Y, ciclo) • Medidas de Interesse : Suporte , Confiança (3,1) (3,2) (3,0) 3 5 6 7 8 1 0 2 4 Como são os instantes i que fazem parte de um ciclo (p,m) ? i = m + kp, k = 0,1,… isto é : m = i mod p Pós-graduação em Ciência da Computação - 2012

  14. Formulação do ProblemaMineração de Regras de Associação Cíclicas • Entrada • Uma sequência D0, ..., Dn-1 onde Di = conjunto de itemsets • Lmin > 0 , Lmax > 0 • α = nível mínimo de suporte • β = nível mínimo de confiança • Saída:Todas as regras de associação cíclicas (r,(p,m)) tais que : • Lmin ≤ p ≤ Lmax • Para todo i = j.p, e m ≤ i ≤ n-1, tem-se que • suporte(r) ≥ A e confiança(r) ≥ B em Di Pós-graduação em Ciência da Computação - 2012

  15. Algoritmo Sequencial • Fase 1: Encontra as regras Para cada instante i, aplica algoritmo Apriori (ou outro mais eficiente) e encontra todas as regras de associação X  Y com suporte e confiança acima dos limites mínimos, com relação ao banco de transações Di Apriori é aplicado m vezes, onde m = comprimento da sequência D Pós-graduação em Ciência da Computação - 2012

  16. Algoritmo Sequencial • Armazenamento das regras em formato sequencial Para cada regra de associação r é associada uma sequência de bits de tamanho n (0 0 1 0 1 0 1 0 0 0 1 1 ... 1) 0 na posição i = a regra r não é boa em Di 1 na posição i = a regra r é boa em Di Pós-graduação em Ciência da Computação - 2012

  17. Algoritmo Sequencial • Fase 2: Detecta os ciclos Para cada sequência de bits S = (s1,s2, ... , sn) • C := conjunto de todos os ciclos, ciclo = (p,m), Lmin ≤ p ≤ Lmax, 0 ≤ m < p • Etapa 2.1 Para cada i = 0,...,n Se si = 0 : elimina de C todos os ciclos (p,m) Lmin ≤ p ≤ Lmax e m = i mod p • Etapa 2.2 Se C é não vazio: elimina ciclos inúteis - - Para Lmin ≤ p ≤ Lmax - Para k = 0, ..., p-1 Se (p,k) ∈ C : elimina de C todos os ciclos (p.j, m) tais que k = m mod p Pós-graduação em Ciência da Computação - 2012

  18. Exemplo Seja S = (1 1 0 1 1 1 0 1 1 0) Lmin = 1 , Lmax = 3 C = { (1,0), (2,0), (2,1), (3,0), (3,1), (3,2) } 9 3 5 6 7 8 1 0 2 4 Etapa 2.1 : Ciclos eliminados i = 2 : (1,0), (2,0),(3,2) i = 6 : (1,0), (2,0),(3,0) i = 9 : (1,0), (2,1), (3,0) No final da Etapa 2.1: C = {(3,1)} Pós-graduação em Ciência da Computação - 2012

  19. Exemplo Sejam Lmin = 1, Lmax = 5 • Final da Etapa 2.1 C = {(2,0), (2,1), (3,2), (4,3) } • Etapa 2.2: Ciclo (2,0) : ciclos eliminados (2n,i) tal que n > 0 i ≡ 0 mod 2 Nada é eliminado Ciclo (2,1) : ciclos eliminados (2n,i) tal que n > 0, i ≡ 1 mod 2 É eliminado o ciclo (4,3) Ciclo supérfluo 9 3 5 6 7 1 0 2 4 8 Pós-graduação em Ciência da Computação - 2012

  20. Considerações de Performance • Algoritmo Sequencial é factível quando o conjunto das sequências representando as regras cabem na memória principal. • Um outro algoritmo mais eficiente: Algoritmo Interleaved Redução do tempo da fase do cálculo do suporte dos itemset Fase 1: Itemsets frequentes cíclicos são encontrados Fase 2: Regras de Associação cíclicas são encontradas Pós-graduação em Ciência da Computação - 2012

  21. Propriedade Importante – FASE 2 Um ciclodaregra X  Y é um múltiplo de um ciclo do itemset X U Y Permiteexecutar a geração das regrascíclicas a partirdadetecção dos itemsetscíclicos Pós-graduação em Ciência da Computação - 2012

  22. Exemplo Suporte mínimo = 40% Confiança minima = 50 % 1 2 4 3 {a,b} {a,c,b} {c,b,a,d} {c,a} {b,d} {a,c,b} {d,c} {b,c,d} {c,b} {d,e} {a,b} {a,c} {c,b,d} {d,b} {a,d,b} {a,c,e} {a,c} {a,e,c,d} {a,f,b} {b,d} Suporte = 2/5 Suporte = 1/5 Suporte = 1/5 Suporte = 3/5 X X Regra : a  b Pós-graduação em Ciência da Computação - 2012

  23. Propriedades Importantes – FASE 1 • “Pulo” de ciclos : • Reduz o número de itemsets candidatos no cálculo do suporte em certos instantes. • “Poda” de ciclos: • Reduz o escopo dos ciclos candidatos para um determinado itemset baseado nos ciclos de seus subitemsets • Eliminação de ciclos: • Reduz o escopo dos ciclos candidatos para um determinado itemset baseado no fato de X não ser frequente em algum instante t Pós-graduação em Ciência da Computação - 2012

  24. Propriedades Importantes – Fase 1 • “Pulo” de ciclos: técnicaqueevita o cálculo do suporte de um itemsetcandidato X nosinstantesquenãosão parte do ciclo do itemset X Se o instante tnão é parte de um ciclo do itemset X então X pode ser podado do conjunto de candidatosdurante a fasedapoda de Aprioriexecutadono instante t. • Poda de ciclos: Se um itemset X tem um ciclo (p,m) entãotodososseussubitemsets tem o ciclo (p,m). Os ciclos de um itemset X sãomúltiplos de ciclos de seussubitemsets Pós-graduação em Ciência da Computação - 2012

  25. Exemplo 1. Se (2,1) é o único ciclo de {A} Se (2,1) é o único ciclo de {B} Então os ciclos de {A,B} são (2,1) e seus múltiplos 2. Se (2,1) é o único ciclo de {A} e (2,0) é o único ciclo de {B} então {A,B} não tem ciclo nenhum (propriedade da poda de ciclos) Logo, não há necessidade de calcular o suporte de {A,B} em nenhum instante. (propriedade do pulo de ciclos) Pós-graduação em Ciência da Computação - 2012

  26. Propriedades Importantes – Fase 1 3. Eliminação de Ciclos: Se num instante i , sup(X) < minsup então X não pode ter nenhum ciclo (p,m), onde m = i mod p , Lmin ≤ p ≤ Lmax, 0 ≤ m < p Exemplo: Suponha que Lmax = 3 e suponha que o itemset X não é frequente nos instances 0, 1, 2 e 3. Então X não tem nenhum ciclo. Assim, não há necessidade de calcular o suporte de X para t > 3. Pós-graduação em Ciência da Computação - 2012

  27. Algoritmo Interleaved (Fase 1) K = 1 : todosositemsets de tamanho 1 sãogerados e seusciclosdetectados. K > 1 : 1. Gera candidatos (Apriori) juntamente com a lista de seuspossíveiscicloscandidatos .(“podaciclos”) Ck = { (X,Ciclos(X)) | X k-itemset , Ciclos(X) = cicloscandidatos de X 2. Para cadainstante t = 0, …, n-1 2.1Podacandidatos : se o instante t nãofaz parte de Ciclo(X) entãocandidato X é podado.(“pula ciclos”) 2.2 Podacandidatos (Apriori) 2.3 Cálculo do Suporte (Apriori) 2.4Eliminaciclos: se sup(X) < minsup, eliminaciclos de Ciclos(X) Pós-graduação em Ciência da Computação - 2012

  28. Resultados Experimentais Pós-graduação em Ciência da Computação - 2012

  29. Referência Banu Ozden Sridhar Ramaswamy Avi Silberschatz Cyclic Association Rules. Proceeding ICDE '98 Proceedings of the Fourteenth International Conference on Data Engineering http://www.cse.ust.hk/~leichen/courses/comp630p/collection/reference-2-10.pdf

More Related