padrões sequenciais

18
06/09/22 06/09/22 Mestrado em Ciência da Mestrado em Ciência da Computação 2008 Computação 2008 1 Padrões Padrões Sequenciais Sequenciais Aula 5 Aula 5 Sandra de Amo Sandra de Amo

Upload: inocencia-quesada

Post on 30-Dec-2015

56 views

Category:

Documents


1 download

DESCRIPTION

Padrões Sequenciais. Aula 5 Sandra de Amo. 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 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Padrões Sequenciais

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

Page 2: Padrões Sequenciais

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.

Page 3: Padrões Sequenciais

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.

Page 4: Padrões Sequenciais

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

Page 5: Padrões Sequenciais

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

Page 6: Padrões Sequenciais

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) =

Page 7: Padrões Sequenciais

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} ,

Page 8: Padrões Sequenciais

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 ..

Page 9: Padrões Sequenciais

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]

Page 10: Padrões Sequenciais

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

Page 11: Padrões Sequenciais

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.

Page 12: Padrões Sequenciais

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

Page 13: Padrões Sequenciais

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} >

Page 14: Padrões Sequenciais

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} >

Page 15: Padrões Sequenciais

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} >

Page 16: Padrões Sequenciais

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

Page 17: Padrões Sequenciais

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

Page 18: Padrões Sequenciais

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//