• Nenhum resultado encontrado

Aprendizado Bayesiano

N/A
N/A
Protected

Academic year: 2021

Share "Aprendizado Bayesiano"

Copied!
25
0
0

Texto

(1)

Aprendizado Bayesiano

Marcelo K. Albertini

(2)

Conte´

udo

I Aprendizado Naive Bayes

I Exemplo: classifica¸c˜ao de texto

I Redes Bayesiana

I Algoritmo EM

(3)

Classificador Maximum a Posteriori

Assumir que fun¸c˜ao alvo f : X → C , onde cada instˆancia x ´e descrita por atributos ha1, a2. . . ani

Classe mais prov´avel, ou seja cMAP = f (x ), ´e: cMAP = arg max

cj∈C

P(cj|a1, a2, . . . , an) cMAP = arg max

cj∈C P(a1, a2, . . . , an|cj)P(cj) P(a1, a2, . . . , an) = arg max cj∈C P(a1, a2, . . . , an|cj)P(cj)

(4)

Premissa de Naive Bayes

Premissa simplificadora: atributos s˜ao independentes. P(a1, a2, . . . an|cj) =

Y

i

P(ai|cj) o que resulta no classificadorNaive Bayes

cNB = arg max cj∈C P(cj) Y i P(ai|cj)

(5)

Algoritmo Naive Bayes

NaiveBayes(exemplos) Para cada valor-alvo cj

I P(cˆ j) ← estimativa de P(cj)

I Para cada valor de atributo ai de cada atributo a ˆ

P(ai|cj) ← estimativa de P(ai|cj)

ClassificarNovaInstancia(x) cNB = arg max cj∈C ˆ P(cj) Y ai∈x ˆ P(ai|cj)

(6)

Naive Bayes: exemplo

Considere exemplo JogarT^enis e uma nova instˆancia:

hAparˆencia=Ensolarado, Temp.=frio, Umidade=alta, Vento = fortei Queremos computar cNB = arg max cj∈C P(cj) Y i P(ai|cj)

P(sim)P(ensol.|sim)P(frio|sim)P(alta|sim)P(forte|sim) = 0.005 P(n˜ao)P(ensol.|n˜ao)P(frio|n˜ao)P(alta|n˜ao)P(forte|n˜ao) = 0.021

(7)

Naive Bayes: detalhes

Premissa de independˆencia condicional ´e frequentemente violada P(a1, a2, . . . , an|cj) =

Y

i

P(ai|cj)

por´em funciona bem, mesmo com ˆP(cj|x) incorretas; necessita somente que arg max cj∈C ˆ P(cj) Y i ˆ

P(ai|cj) = arg max cj∈C

ˆ

(8)

Naive Bayes: detalhes

E se nenhuma das instˆancias de treino com valor-alvo ci tem valor de atributo ai? Ent˜ao ˆ P(ai|cj) = 0, e ... ˆ P(cj) Y i ˆ P(ai|cj) = 0

(9)

Solu¸c˜

ao t´ıpica

Usar estimativa m ˆ P(ai|cj) ← nc+ mp n + m onde

I n ´e n´umero de exemplos de treino em que v = cj

I nc ´e n´umero de exemplos em que v = cj e a = ai

I p ´e estimativa a priori para ˆP(ai|cj)

I m ´e peso dado para a priori (n´umero de exemplos “fantasmas”)

I se m = 0, temos formula¸ao original

(10)

Aprendizado de classifica¸c˜

ao de textos

I Aprender quais artigos de jornal s˜ao do interesse de uma pessoa

I Aprender a classificar p´aginas de acordo com t´opicos

Naive bayes ´e um dos algoritmos mais usados.

Quais atributos devemos usar para representar documentos de texto?

(11)

Aprendizado de classifica¸c˜

ao de textos

Conceito-alvo Interessante? : Documento → {+, −}

I Representar cada documento por um vetor de palavras: um atributo por palavra no documento

I Aprendizado: usar exemplos de treino para estimar

I P(+) I P(−) I P(doc|+) I P(doc|−)

(12)

Classificador Naive Bayes em textos

Premissa de independˆencia condicional de Naive Bayes

P(doc|cj) =

tam(doc) Y

i =1

P(ai = wk|cj)

onde P(ai = wk|cj) ´e a probabilidade que a palavra na posi¸c˜ao i ´e wk, assumindo que a classe ´e cj

Premissa adicional

A posi¸c˜ao da palavra n˜ao muda a probabilidade: P(ai = wk|cj) = P(am= wk|cj), ∀i , m

(13)

1 T r e i n o N a i v e B a y e s ( Doc [ ] e x e m p l o s , C l a s s e s C ) {

2 // P : p r o b a b i l i d a d e s de c a d a c l a s s e

3 d o u b l e[ ] P = new d o u b l e[ C . s i z e ( ) ] ;

4 // Pw : p r o b a b i l i d a d e s de c a d a p a l a v r a em c a d a c l a s s e

5 Map<S t r i n g , d o u b l e[ ] > Pw = new HashMap ( ) ; 6 7 S t r i n g v o c a b [ ] = e x e m p l o s . o b t e r P a l a v r a s D i s t i n t a s ( ) ; 8 9 f o r ( C l a s s e c j : C ) { 10 Doc [ ] d o c s c j = e x e m p l o s . c o m C l a s s e ( c j ) 11 P [ c j ] = d o c s c j . s i z e ( ) / e x e m p l o s . s i z e ( ) ; 12 i n t n = d o c s c j . n u m e r o D e P a l a v r a s ( ) ; 13 14 f o r ( S t r i n g a i : v o c a b ) { 15 i n t n c = d o c s c j . n u m e r o O c o r r e n c i a s D e ( a i ) ; 16 Pw . g e t ( a i ) [ c j ] = ( n c + 1 ) / ( n + v o c a b . l e n g t h ) ; 17 } 18 } 19 r e t u r n P , Pw ; 20 }

(14)

1 C l a s s e C l a s s i f i c a r N B ( Doc d , C l a s s e s C , 2 d o u b l e[ ] P , 3 Map<S t r i n g , d o u b l e[ ] > Pw) { 4 5 S t r i n g [ ] p a l a v r a s = d . o b t e r P a l a v r a s ( ) ; 6 C l a s s e c NB = argmax ( C , P , Pw , p a l a v r a s ) ; 7 r e t u r n c NB ; 8 }

Fun¸c˜ao: argmax(C, P, Pw, palavras)

cNB = arg max cj∈C log P(cj) + X ai∈palavras log P(ai|cj)

(15)

Exemplo: 20 newsgroups

Dados 1000 documentos de treino de cada classe (1 lista = 1 classe).

Aprender a classificar novos documentos entre as listas:

I comp.graphics I comp.os.ms-windows.misc I comp.sys.ibm.pc.hardware I alt.atheism I talk.religion.misc I talk.politics.misc I sci.space I sci.crypt I sci.med I rec.autos I misc.forsale

(16)

Redes Bayesianas

Interessante porque:

I Premissa de Naive Bayes de independˆencia condicional ´e muito restritiva

I Redes Bayesiana permite melhorar premissa, mantendo a tratabilidade

I Combina conhecimento pr´evio de (in)dependˆencias entre vari´aveis com dados observados

(17)

Independˆ

encia condicional

Defini¸c˜ao

X ´e condicionalmente independente de Y , considerando Z se

(∀xi, yj, zk)P(X = xi|Y = yj, Z = zk) = P(X = xi|Z = zk)

De maneira mais compacta

(18)

Exemplo

Trov~ao´e condicionalmente independente dechuva, considerando

raio.

P(trov˜ao|chuva, raio) = P(trov˜ao|raio)

Naive Bayes usa independˆencia condicional para justificar sua premissa:

P(X , Y |Z ) = P(X |Y , Z )P(Y |Z ) = P(X |Z )P(Y |Z )

(19)

Rede Bayesiana

Tempestade Turistas Raio Trov˜ao Fogueira Incˆendio A =Tempestade, B =Turistas, C =Fogueira A, B A, ¬B ¬A, B ¬A, ¬B C 0.4 0.1 0.8 0.2 ¬C 0.6 0.9 0.2 0.8

Rede representa um conjunto de afirma¸c˜oes sobre independˆencia condicional.

(20)

Rede Bayesiana

Rede

representa distribui¸c˜ao de probabilidade conjunta sobre todas as vari´aveis

I Exemplo P(tempestade, turistas . . . incˆendio)

I Em geral P(y1, . . . , yn) = n Y i =1 P(yi|Pais(Yi))

onde Pais(Yi) denota predecessores imediatos de Yi no grafo

I Ent˜ao distribui¸c˜ao conjunta ´e completamente definida pelo grafo, mais P(yi|Pais(Yi))

(21)

Inferˆ

encia em Redes Bayesianas

Como inferir as probabilidades de vari´aveis da rede, considerando os valores de outras?

I Rede Bayesiana cont´em toda a informa¸c˜ao necess´aria para a inferˆencia

I No caso geral, problema ´e NP-hard Na pr´atica, pode ser bem sucedido

I M´etodos de inferˆencia exatos funcionam para algumas estruturas simplificadas

I M´etodos de Monte Carlo “simulam” a rede aleatoriamente para calcular solu¸c˜oes aproximadas

(22)

Aprendizado de Redes Bayesianas

Muitas variantes para esta tarefa de aprendizado

I Estrutura da rede pode ser conhecida oun˜ao

I Exemplos de treino podem prover valores para todas as vari´aveis da rede, ouapenas algumas

Estrutura conhecida e sem valores faltando treino similar ao classificador de Naive Bayes.

(23)

Algoritmo EM

EM : Expectativa/Esperan¸ca e Maximiza¸c˜ao

Supor estrutura conhecida, vari´aveis parcialmente observ´aveis. Exemplo

Poss´ıvel saberInc^endio,Tempestade,Turistas,Trov~ao, mas n˜aoRaio,Fogueira...

Inicializar parˆametros ignorando informa¸c˜ao faltante. Repetir at´e convergˆencia:

I Passo E: computar valores esperados de vari´aveis n˜ao observadas assumindo valores de parˆametros atuais

I Passo M: computar novos valores de parˆametros para

(24)

Exemplo EM

A B C Exemplos A B C 0 1 1 1 0 0 1 1 1 1 ? 0 Inicializa¸c˜ao P(B|A) = P(C |B) = P(A) = P(B|¬A) = P(C |¬B) = Passo E

P(? = 1) = P(B|A, ¬C ) = P(A,B,¬C )P(A,¬C ) = . . . = Passo M

P(B|A) = P(C |B) =

P(A) = P(B|¬A) = P(C |¬B) =

Passo E P(? = 1) =

(25)

Estrutura desconhecida

Busca

I Estado inicial: rede vazia ou rede de conhecimento pr´evio

I Operadores: adicionar aresta, remover aresta, inverter aresta

Referências

Documentos relacionados

O livro traz um capítulo para discutir as três raças fundantes do país: “Raças”, nele o autor expressa o que entende ser o papel da relação interracial na

a) Comida, energia elétrica, TV por assinatura e pacotes de telefonia não utilizáveis. b) Supermercado, TV por assinatura, energia elétrica e pacotes de telefonia

A maior suscetibilidade à infecção no sexo feminino além das condições anatômicas é devido a outros fatores cistite, ato sexual, uso de certas geléias

Desta forma, emulsões de petróleo estabilizadas por Triton-X-100 foram produzidas e avaliadas quanto a estabilidade, viscosidade, condutividade e tamanho das gotas com o objetivo

inerente a todos os povos de desfrutar e utilizar plena e livremente suas riquezas e seus recursos naturais. O presente Pacto está aberto à assinatura de todos os Estados membros

Com o ALI, muitas empresas foram atendidas pelo SEBRAE, recebendo consultorias, capacitações, diagnóstico, planos de inovação como um resultado de uma ação prospectiva e ativa

De acordo com os resultados da pesquisa, não há dúvidas que a entrevistada encontra diversas dificuldades e desafios para desenvolver sua prática, mas a maior delas, segundo