Vous êtes sur la page 1sur 51

Aprendizagem Bayesiana

Francisco Carvalho
DI-UFPE
Mtodos Bayesianos

Fornece algoritmos prticos de aprendizagem

Aprendizagem Bayesiana ingenua

Aprendizagem de Redes Bayesianas

Combina conhecimento a priori (probabilidade a priori
ou incondicional) com dados de observao

Requer probabilidades priori
Teorema de Bayes

P(h): probabilidade a priori da hiptese h

P(D): probabilidade a priori dos dados de treinamento D

P(h/D): probabilidade de h dado D

P(D/h): probabilidade de D dado h
) (
) ( ) / (
) / (
D P
h P h D P
D h P =
Escolha de hipteses

Geralmente deseja-se a hiptese mais provvel
observados os dados de treinamento

Hiptese de maior probabilidade a posteriori h
MAP







Hiptese de mxima verossimilhana h
ML

) ( ) / ( max arg
) (
) ( ) / (
max arg
) / ( max arg
h P h D P
D P
h P h D P
D h P h
H h
H h
H h
MAP
e
e
e
=
=
=
) / ( max arg
i
H h
ML
h D P h
i
e
=
Aplicao do Teorema de Bayes:
Diagnstico Mdico
Seja
M=doena
meningite
S= dor de cabea
Um Doutor sabe:
P(S/M)=0.5
P(M)=1/50000
P(S)=1/20
P(M/S)=P(S/M)P(M)
P(S)
=0,5*(1/50000)=0,002
1/20
A probabilidade de uma
pessoa ter meningite dado
que ela est com dor de
cabea 0,02% ou ainda
1 em 5000.
Frmulas Bsicas de Probabilidade

Regra do Produto: Probabilidade de uma conjuno de
dois eventos A e B


Regra da Soma: Probabilidade de uma disjuno de dois
eventos A e B


Teorema da Probabilidade Total: Se os eventos A
1
,.,A
n

so mutuamente exclusivos e formam uma partio do
evento certo

) ( ) / ( ) ( ) / ( ) ( A P A B P B P B A P B A P = = .
) ( ) ( ) ( ) ( B A P B P A P B A P . + = v

=
=
n
1 i
i i
A P A B P B P ) ( ) / ( ) (
Teorema da Probabilidade Total
O
B
1
B
2
B
3 B
6
B
5
B
4
A

=
k
k k
B P B A P A P ) ( ) / ( ) (
Teorema da Multiplicao de Probabilidades
Esse resultado permite calcular a probabilidade de ocorrncia
simultnea de vrios eventos a partir das probabilidades
condicionais.
) ( ) / ( ) (
1 n 1 1 n 1 n n 1
A A P A A A P A A P

=

) ( ) / ( ) / ( ) (
1 1 2 1 n 1 n n 1
A P A A P A A A P A A P

=
Algoritmo de aprendizagem da Probabilidade
Mxima Posteriori - MAP

1. Para cada hiptese h e H, calcule a probabilidade a
posteriori



2. Escolha a hiptese h
MAP
de maior probabilidade
posteriori


) (
) ( ) / (
) / (
D P
h P h D P
D h P =
) / ( max arg D h P h
H h
MAP
e
=
Classificao mais provvel
de uma nova instncia

Dada uma nova instncia x, qual a sua classificao
mais provvel?
h
MAP
(x) no a classificao mais provvel

Considere,

Trs hipteses:
P(h
1
/D) = 0.4, P(h
2
/D) = 0.3 e P(h
3
/D) = 0.3
Dada uma nova instncia x,
Suponha: h
1
(x) = +, h
2
(x) = - e h
3
(x) = -
A classificao mais provvel de x: -
Classificador Bayesiano timo

Um novo exemplo pode ser classificado como v
j
e V, a
probabilidade de que a classificao correta seja v
j





Classificao Bayesiana tima




e
=
H h
i i j j
i
D h P h v P D v P ) / ( ) / ( ) / (

e
e
H h
i i j
V v
i
j
D h P h v P ) / ( ) / ( max arg
Classificador Bayesiano timo

Exemplo.
P(h
1
/D) = 0.4, P(-/h
1
) = 0, P(+/h
1
) = 1
P(h
2
/D) = 0.3, P(-/h
1
) = 1, P(+/h
1
) = 0
P(h
3
/D) = 0.3, P(-/h
3
) = 1, P(+/h
1
) = 0

Portanto



e

4 0 D h P h P
H h
i i
i
. ) / ( ) / ( = +

e
6 0 D h P h P
H h
i i
i
. ) / ( ) / ( =

e
=

e
e
H h
i i j
V v
i
j
D h P h v P ) / ( ) / ( max arg
Classificador Bayesiano Ingnuo

Junto com as rvores de deciso, redes neurais, vizinhos
mtuos, um dos mtodos de aprendizagem mais prticos

Quando usa-lo
Quando disponvel um conjunto de treinamento mdio
ou grande
Os atributos que descrevem as instncias forem
condicionalmente independentes dada uma
classificao

Aplicaes de Sucesso
Diagnstico
Classificao de documentos textuais
Classificador Bayesiano Ingnuo

Suponha uma funo de classificao f: X V, onde
cada instncia x descrita pelos atributos {a
1
, ., a
n
}
O valor mais provvel de f(x)





Suposio Bayesiana Ingnua
Classificador Bayesiano Ingnuo

) ( ) / , , ( max arg
) , , (
) ( ) / , , (
max arg
) , , / ( max arg
j j n 1
V v
n 1
j j n 1
V v
n 1 j
V v
MAP
v P v a a P
a a P
v P v a a P
a a v P v
j
j
j

e
e
e
=
=
=
[
=
i
j i j n 1
v a P v a a P ) / ( ) / , , (
[
e
=
i
j i j
V v
NB
v a P v P v
j
) / ( ) ( max arg
Algoritmo Bayesiano Ingnuo

Aprendizagem_Bayesiana_Ingnua(exemplos)

Para cada v
j
P(v
j
) estimativa de P(v
j
)
Para cada valor a
i
de cada atributo a
P(a
i
/v
j
) estimativa de P(a
i
/v
j
)

Classificador_Novas_Instancias(x)



[
e
e
=
x a
j i j
V v
NB
i
j
v a P v P v ) / ( ' ) ( ' max arg
Dia Tempo Temp. Humid. Vento
Jogar
D1 Sol Quente Alta Fraco No
D2 So Quente Alta Forte No
D3 Coberto Quente Alta Fraco Sim
D4 Chuva Normal Alta Fraco Sim
D5 Chuva Frio Normal Fraco No
D6 Chuva Frio Normal Forte No
D7 Coberto Frio Normal Forte Sim
D8 Sol Normal Alta Fraco No
D9 Sol Frio Normal Fraco Sim
D10 Chuva Normal Normal Fraco Sim

D11 Sol Frio Alta Forte ?
Classificador bayesiano ingnuo: exemplo
P(Sim) = 5/10 = 0.5
P(No) = 5/10 = 0.5
P(Sol/Sim) = 1/5 = 0.2
P(Sol/No) = 3/5 = 0.6
P(Frio/Sim) = 2/5 = 0.4
P(Frio/No) = 2/5 = 0.4
P(Alta/Sim) = 2/5 = 0.4
P(Alta/No) = 3/5 = 0.6
P(Forte/Sim) = 1/5 = 0.2
P(Forte/No) = 2/5 = 0.4
P(Sim)P(Sol/Sim) P(Frio/Sim)
P(Alta/Sim) P(Forte/Sim) = 0.0032
P(No)P(Sol/No)P(Frio/No)
P(Alta/No) P(Forte/No) = 0.0288
Jogar_Tenis(D11) = No
Algoritmo Bayesiano
Ingnuo : Dificuldades
Suposio de independncia condicional quase sempre
violada

Mas funciona surpreendentemente bem


O que acontece se nenhuma das instancias classificadas
como v
j
tiver o valor a
i
?




[
=
i
j i j n 1
v a P v a a P ) / ( ) / , , (
0 ) v / a ( ' P ) v ( ' P 0 ) v / a ( ' P
i
j i j j i
= =
[
Algoritmo Bayesiano
Ingnuo : Dificuldades
Soluo tpica


Nmero de exemplos para os quais v = v
j


N
c
nmero de exemplos para os quais v = v
j
e a = a
i


P a estimativa priori para P(a
i
/v
j
)

M o peso dado priori (nmero de exemplos virtuais)
m n
p m n
) v / a ( ' P
c
j i
+
+

Redes Bayesianas

Interesse
Suposio de independncia condicional muito
restritiva
Mas sem esse tipo de suposio em algum nvel o
problema se torna intratvel

Redes Bayesianas descrevem independncia condicional
entre subconjuntos de variveis
Permite a combinao do conhecimento a priori sobre
a independncia entre variveis com os dados
observados

Independncia Condicional

X condicionalmente independente de Y dado Z se a
distribuio de probabilidade de X independente do
valor de Y dado o valor de Z



Exemplo: Trovo condicionalmente independente de
Chuva, dado Relmpago
P(Trovo/ Chuva, Relmpago) = P(Trovo/ Relmpago)
Regra do Produto:



( ) ) z Z / x X ( P ) z Z , y Y / x X ( P z , y , x
k i k j i i i i
= = = = = =
) Z / X ( P ) Z , Y / X ( P =
) Z / Y ( P ) Z / X ( P
) Z / Y ( P ) Z , Y / X ( P ) Z / Y , X ( P
=
=
Redes Bayesianas

Tempestade
nibus de Turismo
Fogo no
Acampamento
Trovo
Fogo na floresta
Raio
Redes Bayesianas

T,O T,O T, O T, O
FC 0.4 0.1 0.8 0.2
FC 0.6 0.9 0.2 0.8
Fogo no Acampamento
A rede representa um conjunto de asseres de
independncia condicional
Cada n condicionalmente independente dos seus
no descendentes, dados os seus predecessores
imediatos
Grafo acclico direto

Redes Bayesianas

Representa a distribuio de probabilidade conjunta
entre todas as variveis
Exemplo, P(Tempestade, ., Fogo na Floresta)
Em geral



Onde Predecessores(Y
i
) significa predecessores
imediatos de Y
i
no grafo
A distribuio conjunta definida pelo gafo mais os
P(y
i
/ Predecessores(Y
i
))

[
=
=
n
1 i
i i n 1
)) Y ( s edecessore Pr / y ( P ) y , , y ( P
Redes Bayesianas: representao do
conhecimento para raciocnio com incerteza
Representa 3 tipos de conhecimento do domnio:
relaes de independncia entre variveis aleatrias
(graficamente);
probabilidades a priori de algumas variveis;
probabilidades condicionais entre variveis dependentes.
Conhecimento representado:
pode ser aprendido a partir de exemplos
reutilizando parte dos mecanismos de raciocnio
Permite calcular eficientemente:
probabilidades a posteriori de qualquer varivel
aleatria(inferncia);
usando para isso uma definio recursiva do teorema de Bayes.
Estrutura de uma rede bayesiana

Cada varivel aleatria (VA) representada por um n da
rede
Cada n (VA) recebe conexes dos ns que tm influncia
direta (seus pais) sobre ele. (Tarefa fcil para o
especialista)
Cada n possui uma tabela de Probabilidades Condicionais
que quantifica a influncia dos seus pais sobre ele.
(Difcil para o especialista)
O grafo acclico
Construo (manual) de uma rede bayesiana

Escolher variveis relevantes que descrevam o domnio;
Escolher uma ordem para as variveis;
Enquanto tiver variveis sobrando:
pegar uma varivel e adicionar um n na rede para ela;
criar links dos ns anteriormente inseridos que satisfaam a
independncia condicional;
definir a tabela de probabilidade condicional para a varivel.
Exemplo simples de rede bayesiana (cont.)

Roubo Terremoto
Alarme
JohnCalls
MaryCalls
P(T)
0,002
P(R)
0,001
R T P(A)
T T 0,95
T F 0,94
F T 0,29
F F 0,001

A P(J)
T 0,90
F 0,05
A P(M)
T 0,70
F 0,01
Decomposio da Probabilidade Conjunta
( )
1 2 1
, , , |

n n
x x x x P
( ) ( )
1 2 1
, , , x P x x x P
n
= ( )
2 1 3
, | x x x P ( )
1 2
| x x P
X
1

X
2

X
3

X
n

Essa decomposio deixa clara a necessidade de a rede
bayesiana ser um grafo acclico
Tipos de conhecimento

Causal
Refletem a direo conhecida de causalidade no mundo: para
algumas propriedades do mundo percepes so geradas.
ex, P(DorDeDente|Crie), P(MaryCalls|Alarme)
Diagnstico
Infere a presena de propriedades escondidas diretamente da
percepo.
Produzem concluses fracas.
ex, P(Carie|DorDeDente), P(Alarme|MaryCalls)
Ordenar ns de uma rede bayesiana

Algoritmo de construo apresentado especifica a ordem
Razes sempre causais, folhas sem influncia causal sobre
nenhuma outra varivel
Se no perde:
conciso da rede
eficincia computacional (pior caso volta a distribuio de
probabilidade conjunta)
Exemplo de rede bayesiana
no puramente causal
Vamos usar o exemplo do alarme com a seguinte ordem de
insero dos ns:
MaryCalls, JohnCalls, Alarme, Roubo e Terremoto.
Roubo
Terremoto
Alarme
JohnCalls
MaryCalls
Exemplo de rede bayesiana
no puramente causal (cont.)
Problemas:
A figura possui duas conexes a mais;
julgamento no natural e difcil das probabilidades;
Tendo uma rede puramente causal, teramos um nmero
menor de conexes
Podemos piorar ainda mais a nossa configurao da rede,
seguindo a seguinte ordem de criao:
MaryCalls, JohnCalls, Terremoto, Roubo e Alarme.
Exemplo de rede bayesiana
no puramente causal (cont.)
Roubo
Terremoto
Alarme
JohnCalls
MaryCalls
Versatilidade das redes bayesianas

Redes Bayesianas oferecem 4 tipos de inferncia:
Causal (da causa para o efeito)
P(JohnCalls/Roubo) = 0,86
Roubo Alarme JohnCalls
Evidncia Query
Diagnstico (do efeito para a causa)
P(Roubo/JohnCalls) = 0,016
JohnCalls Alarme Roubo
Evidncia Query
Versatilidade das redes bayesianas

Intercausal (entre causas com um efeito comum)
P(Roubo/Alarme) = 0,376
P(Roubo/Alarme .Terremoto) = 0,373
Mista (combinando duas ou mais das de cima)
P(Alarme/JohnCalls .Terremoto) = 0,03
Este um uso simultneo de inferncia causal e diagnstico.
Roubo Alarme Terremoto
Query
Evidncia
JohnCalls
Alarme Terremoto
Evidncia
Evidncia
Query
Inferncia em Redes Bayesianas

Como inferir as probabilidades dos valores de uma ou
mais variveis na rede, partir das probabilidades dos
valores das outras variveis
A rede Bayesiana contm toda a informao
necessria para essa inferncia
Quando se trata de apenas uma varivel, a inferncia
trivial
No caso geral, o problema NP hard
Na prtica, pode-se alcanar-la de vrias formas
Mtodos exatos de inferncia funcionam bem para
algumas estruturas de rede
Mtodos de tipo Monte Carlo simulam a rede
aleatoriamente para obter solues aproximadas
Aprendizado em redes bayesianas

4 problemas de aprendizagem:
Estrutura conhecida, completamente observvel
as tabelas de probabilidade condicionada podem ser estimadas
usando o conjunto de exemplos com classificador ingnuo? de Bayes
Estrutura desconhecida, completamente observvel
o problema construir a topologia da rede. Busca no espao de
estruturas.
Estrutura conhecida, variveis escondidas
caso parecido com aprendizado em redes neurais
Estrutura desconhecida, variveis escondidas
no se conhece algoritmos para este tipo de problema

Exemplo da tarefa de aprendizagem

Roubo Terremoto
Alarme
JohnCalls
MaryCalls
P(T)
0,002
P(R)
0,001
R T P(A)
T T ?
T F ?
F T ?
T T ?
A P(J)
T ?
F ?
A P(M)
T ?
F ?
Aprender probabilidades com estrutura fixa

Humanos acham fcil dizer o que causa o que, mas acham
difcil colocar nmeros nos links.
Tarefa de aprendizagem
Dados:
relaes de independncia entre variveis aleatrias (estrutura)
probabilidades a priori das variveis de entrada
probabilidades a posteriori de variveis de sada
Calcular:
probabilidades condicionais das variveis dependentes
2 algoritmos principais:
gradiente ascendente de P(D|Hi) - muito parecido com
aprendizagem de pesos em redes neurais
algoritmo EM (Estimao Mdia)
ambos iterativos e sujeito a encontrar mnimo local
Aprendizagem de Redes Bayesianas

Variantes da tarefa de aprendizagem
A estrutura da rede pode ser conhecida ou
desconhecida
O conjunto de treinamento pode fornecer valores
para todas as variveis da rede ou para somente
algumas
Se a estrutura conhecida e todas as variveis
observadas
Ento to fcil como treinar um classificador
Bayesiano ingnuo
Aprendizagem de Redes Bayesianas

Suponha a estrutura conhecida e variveis parcialmente
observveis
Exemplo, observa-se fogo na Floresta, Tempestade,
nibus de turismo, mas no Raio, Fogo no
Acampamento
Problema similar o treinamento de uma rede neural
com variveis ocultas
Aprende-se a tabela de probabilidades condicionais
de cada n usando o algoritmo do gradiente
ascendente
O sistema converge para a rede h que maximiza
localmente P(D/h)
Gradiente Ascendente p/ Redes Bayesianas

Seja w
ijk
uma entrada na tabela de probabilidade
condicional para a varivel Y
i
na rede
W
ijk
= P(Y
i
= y
ij
/Predecessores(Y
i
) = lista u
ik
de valores)
Exemplo, se Y
i
= Fogo no Acampamento, ento u
ik
pode
ser {Tempestade = T, nibus de Turismo = F}
Aplicar o gradiente ascendente repetidamente
1. Atualizar todos os w
ijk
usando os dados de
treinamento D


2. Normalizar os w
ijk
para assegurar
e

e
+
D d
ijk
ik ij h
ijk ijk
w
d u y P
w w
) / , (
q
1 w
j
ijk
=

1 w 0
ijk
s s
Aprendizagem em Redes Bayesianas

O algoritmo EM tambm pode ser usado. Repetir:
1. Calcule as probabilidades das variveis no
observadas, supondo h verdadeira
2. Calcule novo w
ijk
que maximize E[ln P(D/h)], onde D
agora inclui tanto as variveis observadas como as
probabilidades calculadas das no observadas
Quando a estrutura desconhecida
Tpico de pesquisa ativo ...


Sumrio de Redes Bayesianas

Combina conhecimento a priori com dados observados
O impacto do conhecimento a priori (quando correto) a
reduo da amostra de dados necessrios
rea de pesquisa ativa
Passar de variveis Booleanas para variveis
numricas
Distribuies em vez de tabelas
Lgica de primeira ordem no lugar de proposicional
Mtodos de inferncia mais efetivos


Expectation Maximization (EM)

Quando usar:
Os dados so observveis apenas parcialmente
Aprendizagem no supervisionada (Clustering, os
grupos so desconhecidos)
Aprendizagem Supervisionada (alguns valores de
algumas variveis no so observados
Alguns usos
Treinamento das redes Bayesianas
Clustering
etc


Gerao de Dados a partir de k Gaussianas

Cada instancia x gerada
1. Escolhendo uma das k Gaussianas com probabilidade
uniforme
Gerando uma instancia aleatoriamente de acordo com
essa Gaussiana


EM para a estimao de k mdias

Dado
Instancias de x geradas pela mistura de k
distribuies Gaussianas
Mdias desconhecidas <
1
, .,
k
> das k Gaussianas
No se sabe que instancia x
i
foi gerada por qual
Gaussiana
Determine
Estimativas de Mxima Verossimilhana de <
1
, .,
k
>
Considere a descrio completa de cada instancia como
y
i
= <x
i
, z
i1
, z
i2
>, onde
z
ij
1 se x
i
for gerado pela j-sima Gaussiana
x
i
observvel
z
ij
no observvel
EM para a estimao de k mdias

EM algoritmo: Selecione aleatoriamente uma hiptese
inicial h = <
1
,
2
>

Passo E: Calcule o valor esperado E[z
ij
] de cada varivel
oculta z
ij
, supondo vlida a hiptese atual h = <
1
,
2
>
| |
( )
( )

= =
(


=
= =
= =
=
n
1 i
2
n i
2
2
j i
2
2
1 n
n i
j i
ij
x
2
1
x
2
1
x x p
x x p
z E

o


exp
exp
) / (
) / (
EM para a estimao de k mdias

Passo M: Calcule a nova hiptese de Mxima
Verossimilhana h = <
1
,
2
>, supondo que o valor
assumido por cada varivel oculta z
ij
o valor esperado
E[z
ij
] j calculado. Troque h = <
1
,
2
> por h = <
1
,
2
>.




Converge para um mximo de verossimilhana h local e
fornece estimativas para as variveis ocultas z
ij

| |
| |

=
=

m
1 i
ij
m
1 i
i ij
j
z E
x z E

Exemplo de aplicao bem sucedida de redes


bayesianas: PathFinder
Sistema especialista p/ diagnstico de doenas ns
linfticos.
PathFinder I - sistema baseado em regras sem incerteza.
PathFinder II
comparando vrios mtodos de representao da incerteza
(teoria de crena de Dempster-Shafer, coeficientes de incerteza,etc)
modelo bayesiano simplificado (todas as doenas assumidas
independentes) melhor de todos (10% de erro)
PathFinder III - modelo bayesiano melhorado com aquisio mais
cuidadosa das probabilidades a priori com especialistas
PathFinder IV - Redes Bayesianas
melhor do que os especialistas cujo conhecimento foi codificado
Bibliografia

Russel, S, & Norvig, P. (1995). Artificial Intelligence: a Modern
Approach (AIMA) Prentice-Hall. Pages 436-458, 588-593
An Introduction to Baysean Networks
Mitchell, T. & (1997): Machine Learning, McGraw-Hill. Cap.6
Fayyad et al. (1996): Advances in knowledge discovery and data
mining, AAAI Press/MIT Press. Cap.11
Pearl, J. (1988) Probabilistic Reasoning in Inteligent Systems

Vous aimerez peut-être aussi