padrões sequenciais
Post on 30-Dec-2015
56 Views
Preview:
DESCRIPTION
TRANSCRIPT
04/19/2304/19/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008 11
Padrões SequenciaisPadrões Sequenciais
Aula 5Aula 5
Sandra de AmoSandra de Amo
2204/19/2304/19/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Padrões Estruturados: Padrões Estruturados: Porque ?Porque ?
• Dados científicos não podem ser Dados científicos não podem ser vistos como simples vistos como simples itemsetsitemsets
• Dados científicos apresentam Dados científicos apresentam estruturas mais complexas estruturas mais complexas – HierarquiasHierarquias– Propriedades geométricasPropriedades geométricas
• ExemplosExemplos– Moléculas – Estruturas das Moléculas – Estruturas das
proteínas proteínas – Controle de tráfico, workflow Controle de tráfico, workflow – Documentos XML, Logs de Documentos XML, Logs de
navegação na Web, Redes sociais.navegação na Web, Redes sociais.
3304/19/2304/19/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Padrões EstruturadosPadrões Estruturados : : SequênciasSequências• Base de dados = conjunto de Base de dados = conjunto de
sequênciassequências– sequênciasequência de artigos comprados um cliente durante um de artigos comprados um cliente durante um
periodo de tempo. periodo de tempo. – sequênciasequência de sintomas de um paciente durante um de sintomas de um paciente durante um
periodo de tempo.periodo de tempo.– sequênciasequência de ações para evacuar uma cidade em caso de de ações para evacuar uma cidade em caso de
radiação atômica. radiação atômica. – sequênciasequência de páginas web visit de páginas web visitadasadas por um internauta por um internauta– sequênciasequência de nucleotídeos (DNA) de nucleotídeos (DNA)
• Padrão SequencialPadrão Sequencial – Lista Lista de items ou itemsets (artigos, sintomas) de items ou itemsets (artigos, sintomas)
que aparecem em diversas sequências de dados. que aparecem em diversas sequências de dados.
4404/19/2304/19/23
Exemplo Exemplo
Padrão Sequencial = Conjunto de items + estrutura de ordem total (linear)
11 ,player,player}} , ,
22 {{ComputadorComputador}}
33 ,, {{player, player,
44 {{playerplayer}} , , {{ComputadorComputador}}
55 {{ComputadorComputador}} , , {{ImpressoraImpressora}}
{TV}
DVD}
{TV
{DVD}
Padrão Sequencial
< {TV}, {DVD} >
Sequência de itemsets
5504/19/2304/19/23
Conceitos de BaseConceitos de Base
• Padrão SPadrão Seequencial = < squencial = < s11,… s,… snn > >
ssii = itemset = {a = itemset = {a11,…,a,…,akk}}
• Seja S = Seja S = < s< s11,… s,… smm > > uma suma seequência quência de dadosde dados
• P = padrão sP = padrão seequencial = quencial = < p< p11,… p,… pnn > >
• S S contém contém P se : P se :S1 , … Si, … Sj, … , Su, … , Sm
p1,…, pl, …, pn
6604/19/2304/19/23
Suporte de um padrão Suporte de um padrão sequencialsequencial• D : Base de Dados de SD : Base de Dados de Seequências, quências,
• P = Padrão SP = Padrão Seequencialquencial
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/19/2304/19/23
ExemploExemplo
< {TV} , {DVD} >Suporte(P) = 2/5 = 40%
11 PlayerPlayer}} , ,
22 {{ComputadorComputador}}
33 ,, {{Player, Player,
44 {{PlayerPlayer}} , , {{ComputadorComputador}}
55 {{ComputadorComputador}} , , {{ImpressoraImpressora}}
{TV}
DVD}
{TV
{DVD}
Base de Dados D
Padrão P
{Scanner} ,
8804/19/2304/19/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
ProblProbleema: ma: Mineração de Padrões Mineração de Padrões SSeequenciaisquenciais• Dados:Dados:
1.1. Uma base de dados de Uma base de dados de sseequênciasquências
2.2. Um nível mínimo de suporte Um nível mínimo de suporte , , 1 ≥ 1 ≥ > 0 > 0
• Encontrar todos os padrões Encontrar todos os padrões sseequenciais frquenciais freequentes em D quentes em D com respeito acom respeito a ..
9904/19/2304/19/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Algoritmos de Mineração de Algoritmos de Mineração de SSeequênciasquências
• Técnica Apriori – Busca em LarguraTécnica Apriori – Busca em Largura– Apriori-All [Agrawal - Srikant 1995]Apriori-All [Agrawal - Srikant 1995]– GSP GSP [Agrawal – Srikant 1996][Agrawal – Srikant 1996]
• Classes d’Equivalência – Busca em Classes d’Equivalência – Busca em ProfundidadeProfundidade– SPADE [M. Zaki, 2001]SPADE [M. Zaki, 2001]
• Sem geração de candidatos Sem geração de candidatos – PrefixSpan [Han+, 2001]PrefixSpan [Han+, 2001]
101004/19/2304/19/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Algoritmo GSPAlgoritmo GSP
ddccbbaa hhggffee llkkjjiiddccbb hhggffee llkkjjii mmddccbb hhggffee llkkjjii mmaa Frequente
Frequentes
Propriedade Importante: Antimonotonia
111104/19/2304/19/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
PropriProprieedade da dade da AntimonotoniaAntimonotonia
• Se S = <sSe S = <s11, …, s, …, snn> é fr> é freequente quente
k = tamanho de S, então : k = tamanho de S, então :
– S’ = S – primeiro item de sS’ = S – primeiro item de s11 e e
– S’’= S – último item de sS’’= S – último item de snn
S’ e S’’ são padrões frS’ e S’’ são padrões freequentes de tamanho quentes de tamanho k-1.k-1.
121204/19/2304/19/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Como combinar dois Como combinar dois padrões spadrões seequenciaisquenciais ??
aa ccbb ffeedd iihhgg
ccbb ffeedd iihhgg
ccbb ffeedd iihhgg
jjccbb ffeedd iihhgg
aa
jj
Padrão Resultante
131304/19/2304/19/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/19/2304/19/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
GSP – PodaGSP – 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/19/2304/19/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
GSP – Cálculo do SuporteGSP – Cálculo do Suporte
Cálculo do SuporteCandidatos
Suporte Mínimo: 50%Base de DadosBase de Dados
11
22
33
44
< {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/19/2304/19/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
Algoritmo GSP [EDBT Algoritmo GSP [EDBT 1996]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/19/2304/19/23
Exemplo completo simplesExemplo completo simples• Base de dados suporte = 2/3Base de dados suporte = 2/3 <{a,b}, {f}><{a,b}, {f}> <{a}, {b}, {c}><{a}, {b}, {c}> <{d}, {a,e}, {b} ,{e,c} ><{d}, {a,e}, {b} ,{e,c} >
C1 = <a> <b> <c> <d> <e> <f> F1 = <a>, <b>, <c>C1 = <a> <b> <c> <d> <e> <f> F1 = <a>, <b>, <c>C2 = <{a},{a}> <{a,b}> <{a},{b}> {<{b},{a}>C2 = <{a},{a}> <{a,b}> <{a},{b}> {<{b},{a}> <{b},{b}> <{a},{c}> <{c},{a}> <{a,c}> <{b,c}> <{b},{b}> <{a},{c}> <{c},{a}> <{a,c}> <{b,c}>
<{b},{c}>, <{c},{c}> , <{c},{b}><{b},{c}>, <{c},{c}> , <{c},{b}>F2 = <{a},{b}> <{a},{c}> <{b},{c}> F2 = <{a},{b}> <{a},{c}> <{b},{c}> C3 = <{a},{b},{c}> F3 = <{a},{b},{c}> C3 = <{a},{b},{c}> F3 = <{a},{b},{c}> C4 = vazioC4 = vazio
181804/19/2304/19/23Mestrado em Ciência da Computação Mestrado em Ciência da Computação
20082008
ReferênciasReferências• Artigos:Artigos:
Agrawal, R., Srikant, R. : Mining Sequential Patterns : Agrawal, R., Srikant, R. : Mining Sequential Patterns : Generalizations and Performance ImprovementsGeneralizations and Performance Improvements.. Proc. 5th Proc. 5th EDBT, 3-17, 1996. EDBT, 3-17, 1996.
Agrawal, R., Srikant, R. : Mining Sequential Patterns. Proc. Agrawal, R., Srikant, R. : Mining Sequential Patterns. Proc. ICDE ICDE 1995, pages 1-14. 1995, pages 1-14.
• Implementações:Implementações: Christian Borgelt's Webpages Christian Borgelt's Webpages http://http://
www.borgelt.net//software.htmlwww.borgelt.net//software.html
• Referências Referências PáginaSrikantPáginaSrikant http://http://www.rsrikant.com/publications.html#confwww.rsrikant.com/publications.html#conf Página Agrawal Página Agrawal http://rakesh.agrawal-family.com/pubs.htmlhttp://rakesh.agrawal-family.com/pubs.html//
top related