2/18/2014 Mestrado em Ciência da Computação 2008 1 Padrões Sequenciais Aula 5 Sandra de Amo.
Transcript of 2/18/2014 Mestrado em Ciência da Computação 2008 1 Padrões Sequenciais Aula 5 Sandra de Amo.
04/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008 11
Padrões Sequenciais
Aula 5Sandra de Amo
2204/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Padrões Estruturados: Porque ?
Dados científicos não podem ser vistos como simples itemsets
Dados científicos apresentam estruturas mais complexas Hierarquias Propriedades geométricas
Exemplos Moléculas – Estruturas das proteínas Controle de tráfico, workflow Documentos XML, Logs de navegação na
Web, Redes sociais.
3304/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Padrões Estruturados : Sequências Base de dados = conjunto de sequências
sequência de artigos comprados um cliente durante um periodo de tempo.
sequência de sintomas de um paciente durante um periodo de tempo.
sequência de ações para evacuar uma cidade em caso de radiação atômica.
sequência de páginas web visitadas por um internauta sequência de nucleotídeos (DNA)
Padrão Sequencial Lista de items ou itemsets (artigos, sintomas) que
aparecem em diversas sequências de dados.
4404/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Exemplo
Padrão Sequencial = Conjunto de items + estrutura de ordem total (linear)
1 ,player} ,
2 {Computador}
3 , {player,
4 {player} , {Computador}
5 {Computador} , {Impressora}
{TV}
DVD}
{TV
{DVD}
Padrão Sequencial
< {TV}, {DVD} >
Sequência de itemsets
5504/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Conceitos de Base Padrão Sequencial = < s1,… sn >
si = itemset = {a1,…,ak}
Seja S = < s1,… sm > uma sequência de dados
P = padrão sequencial = < p1,… pn > S contém P se :
S1 , … Si, … Sj, … , Su, … , Sm
p1,…, pl, …, pn
6604/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Suporte de um padrão sequencial D : Base de Dados de Sequências, P = Padrão Sequencial
Nb de sequências S em D tais que S contem P Total de sequências em D
Tamanho de um padrão sequencial = nb de items do padrão
< {a,b}, {c,d}, {a,c} > tem 6 items = 6-padrão
Suporte (P) =
7704/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Exemplo
< {TV} , {DVD} >Suporte(P) = 2/5 = 40%
1 Player} ,,
2 {Computador}
3 , {Player,
4 {Player} , {Computador}
5 {Computador} , {Impressora}
{TV}
DVD}
{TV
{DVD}
Base de Dados D
Padrão P
{Scanner} ,
8804/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Problema: Mineração de Padrões Sequenciais Dados:
1. Uma base de dados de sequências2. Um nível mínimo de suporte , 1
≥ > 0 Encontrar todos os padrões
sequenciais frequentes em D com respeito a .
9904/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Algoritmos de Mineração de Sequências Técnica Apriori – Busca em Largura
Apriori-All [Agrawal - Srikant 1995] GSP [Agrawal – Srikant 1996]
Classes d’Equivalência – Busca em Profundidade SPADE [M. Zaki, 2001]
Sem geração de candidatos PrefixSpan [Han+, 2001]
101004/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Algoritmo GSP
ddccbbaa hhggffee llkkjjiiddccbb hhggffee llkkjjii mmddccbb hhggffee llkkjjii mmaa Frequente
Frequentes
Propriedade Importante: Antimonotonia
111104/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Propriedade da Antimonotonia Se S = <s1, …, sn> é frequente
k = tamanho de S, então :
S’ = S – primeiro item de s1 e
S’’= S – último item de sn
S’ e S’’ são padrões frequentes de tamanho k-1.
121204/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Como combinar dois padrões sequenciais ?
aa ccbb ffeedd iihhgg
ccbb ffeedd iihhgg
ccbb ffeedd iihhgg
jjccbb ffeedd iihhgg
aa
jj
Padrão Resultante
131304/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
GSP – GGSP – Geraçãoeração dos dos candidatoscandidatos
F3
C4
< {1,2}, {3} >
< {1,2}, {4} >
< {1}, {3,4} >
< {1,3}, {5} >
< {2}, {3,4} >
< {2}, {3}, {5} >
< {1,2}, {3,4} >
< {1,2}, {3}, {5} >
141404/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
GSP – Poda
F3
C4
< {1,2}, {3} >
< {1,2}, {4} >
< {1}, {3,4} >
< {1,3}, {5} >
< {2}, {3,4} >
< {2}, {3}, {5} >
< {1,2}, {3,4} >
< {1,2}, {3}, {5} >
< {1,2}, {3,4} >< {1,2}, {3,4} >< {1,2}, {3,4} >< {1,2}, {3,4} >
< {< {11,2}, {,2}, {33}, {}, {55} } >C4 = < {1,2}, {3,4} >
151504/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
GSP – Cálculo do Suporte
Cálculo do SuporteCandidatos
Suporte Mínimo: 50%Base de DadosBase de Dados
1
2
3
4
< {3,1,5,2}, {5}, {3,5,4} >
< {2}, {3,4} >
< {4,5}, {1,3,2}, {3,5,4,7} >
< {3}, {2,5} >
< < {1,2}, {3,4} >< {3,1,5,2}, {5}, {3,5,4} >
< {4,5}, {1,3,2}, {3,5,4,7} >
FF4 4 == < {1,2}, {3,4} >< {1,2}, {3,4} >
161604/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Algoritmo GSP [EDBT 1996]]Entrada :Entrada : BD de sequências, 1 ≥ N ≥ 0Saida :Saida : Todos os padrões frequentes na BD
C1 = Padrões sequenciais de tamanho 1F1 = Padrões sequenciais frequentes de C1
k : = 1 While Fk não vazio
Ck+1 := CombinaCombina(Fk, Fk)Ck+1 := PodaPoda(Ck, Fk)
Fk+1 : = Calcula-suporteCalcula-suporte(BD,Ck+1, N)k : = k+1
171704/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Exemplo completo simples Base de dados suporte = 2/3 <{a,b}, {f}> <{a}, {b}, {c}> <{d}, {a,e}, {b} ,{e,c} >
C1 = <a> <b> <c> <d> <e> <f> F1 = <a>, <b>, <c>C2 = <{a},{a}> <{a,b}> <{a},{b}> {<{b},{a}> <{b},{b}> <{a},{c}> <{c},{a}> <{a,c}> <{b,c}>
<{b},{c}>, <{c},{c}> , <{c},{b}>F2 = <{a},{b}> <{a},{c}> <{b},{c}> C3 = <{a},{b},{c}> F3 = <{a},{b},{c}> C4 = vazio
181804/11/2304/11/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Referências Artigos:
Agrawal, R., Srikant, R. : Mining Sequential Patterns : Generalizations and Performance Improvements. Proc. 5th EDBT, 3-17, 1996.
Agrawal, R., Srikant, R. : Mining Sequential Patterns. Proc. ICDE 1995, pages 1-14.
Implementações: Christian Borgelt's Webpages http://
www.borgelt.net//software.html
Referências PáginaSrikant http://www.rsrikant.com/publications.html#conf Página Agrawal http://rakesh.agrawal-family.com/pubs.html/