Escolar Documentos
Profissional Documentos
Cultura Documentos
exemplos de aplicaes.
ROBERTO LIGEIRO MARQUES1
INS DUTRA1
Resumo: Redes bayesianas so grafos acclicos dirigidos que representam dependncias entre
variveis em um modelo probabilstico. Esta abordagem representa uma boa estratgia para lidar com
problemas que tratam incertezas, onde concluses no podem ser construdas apenas do conhecimento
prvio a respeito do problema. O presente trabalho aborda algumas questes bsicas a respeito de
modelos probabilsticos, teoria de grafos e sua representao em redes bayesianas.
Palavras Chaves: redes bayesianas, IA, DAG, probabilidade condicional.
1 Introduo
A inteligncia tem sido matria de estudo dos seres humanos por mais de 2000 anos1. O sonho do
desenvolvimento de uma mquina pensante tem sido fonte de pesquisa desde o desenvolvimento
das primeiras mquinas computadas, em meados dos anos 402. A unio destas duas reas de
pesquisa deu origem disciplina chamada, Inteligncia Artificial.
Atualmente, estudos em inteligncia artificial podem ser divididos em duas grandes reas: o
desenvolvimento de sistemas que agem como humanos (robs) e o desenvolvimento de sistemas
que agem racionalmente.
Dentro do contexto dos sistemas que agem racionalmente, duas abordagens principais podem
ser utilizadas: raciocnio lgico e raciocnio probabilstico. O raciocnio lgico pondera sobre o
conhecimento prvio a respeito do problema e, sobre esta base de conhecimento retira suas
concluses. Esta abordagem, apesar de poderosa, pode no ser til em situaes onde no se
conhece previamente todo o escopo do problema, para estes casos, o raciocnio probabilstico
surge como uma boa opo.
Um sistema que possa atuar em situaes de incerteza deve ser capaz de atribuir nveis de
confiabilidade para todas as sentenas em sua base de conhecimento, e ainda, estabelecer
relaes entre as sentenas. Redes bayesianas oferecem uma abordagem para o raciocnio
probabilstico que engloba teoria de grafos, para o estabelecimento das relaes entre sentenas e
ainda, teoria de probabilidades, para a atribuio de nveis de confiabilidade3.
A dcada de 90 marcou o incio da maior parte das pesquisas realizadas a respeito das redes
Bayesianas. Desde esta poca, as redes Bayseanas vem sendo utilizadas para a soluo de vrios
1
Desde 463 BC, iniciando com os filsofos gregos Plato, Aristteles e Scrates.
O primeiro trabalho de IA reconhecido foi: McCulloch e Pitts,1943.
3
Uma alternativa a esta abordagem seria o uso de nveis de verdade de uma sentena (em contrapartida a nveis
de confiabilidade) - lgica fuzzy.
2
tipos de problemas em diversas reas, como por exemplo: diagnstico mdico (Heckerman 1990,
Franklin 1989), aprendizado de mapas (Dean 1990), interpretao de linguagem (Goldman 1989),
viso (Levitt, 1989).
O restante deste trabalho est organizado da seguinte forma: a prxima sesso apresenta
algumas questes a respeito de probabilidades, a sesso 3 introduz algumas questes a respeito
das redes Bayesinas, suas caractersticas e mtodos para construo de redes. A sesso 4
demonstra um algoritmo para realizao de inferncias em redes Bayesinas, em seguida, as
sesses 5 e 6 apresentam, respectivamente, alguns exemplos de aplicaes e a concluso do
trabalho.
2 Raciocinando sob incertezas
A principal vantagem de raciocnio probabilstico sobre raciocnio lgico fato de que agentes
podem tomar decises racionais mesmo quando no existe informao suficiente para se provar
que uma ao funcionar[1].
Alguns fatores podem condicionar a falta de informao em uma base de conhecimento, os
principais so:
Lidar com falta de informao significa lidar com incertezas. Nestes ambientes necessrio
utilizar conectivos que manipulem nveis de certeza e no apenas valores booleanos, verdadeiro
(1) e falso (0). Assim, seria possvel, por exemplo, tratar uma expresso do tipo: Eu tenho
probabilidade 0.8 fazer um bom trabalho de IA ou A probabilidade de um trabalho de IA ser
bom 0.5 ou A probabilidade de um bom trabalho de IA tirar A 0.9. Com isto, uma possvel
questo seria: Quais so as minhas chances tirar A?. Para responder a questo necessrio se
estabelecer uma regra que combine as trs probabilidades. Em outras palavras, necessrio uma
funo que retorne um valor dadas as probabilidades, 0.8, 0.5 e 0.9. Comparativamente
poderamos dizer que lgica probabilstica estende lgica proposicional, no sentido que,
probabilidade 1 representa verdadeiro e probabilidade 0 representa falso.
Para caracterizao de situaes de incerteza podemos utilizar grafos representando relaes
causais entre eventos. Como exemplo, considere o seguinte domnio:
Pela manha meu carro no ir funcionar. Eu posso ouvir a ignio, mas nada acontece.
Podem existir vrias razes para o problema. O rdio funciona, ento a bateria est boa. A
causa mais provvel que a gasolina tenha sido roubada durante a noite ou que a mangueira
esteja entupida. Tambm pode ser que seja o carburador sujo, um vazamento na ignio ou algo
mais srio. Para descobrir primeiro eu verifico o medidor de gasolina. Ele indica tanque,
ento eu decido limpar a mangueira da gasolina.
A problema anterior pode ser representado, de forma simplificada, pelos seguintes eventos:
{sim,no} Gasolina?, {sim,no} Mangueira limpa?, {cheio, , vazio} Medidor, {sim,no}
Funcionado. Em outras palavras, os eventos so agrupados em variveis que podem assumir
alguns estados. Ns sabemos que o estado Gasolina? e o estado Mangueira entupida? possuem
impacto direto no estado Funcionando, assim como Gasolina? tem impacto em Medidor. Estas
informaes podem ser representadas como apresenta a figura1. Na figura tambm esto
representadas as direes do impacto da varivel. Neste caso, a maior certeza em uma causa,
movida na direo positiva.
Gasolina?
+
Medidor
Mangueira limpa?
+
+
Funcionando?
Figura1. Rede de causalidade.
2.1
Clculo de probabilidades
Probabilidade condicional:
Conjuno de Probabilidades
Seja X uma varivel aleatria com n estados, x1, ..., xn, e P(X) a distribuio de probabilidades
para estes estados,
P(X) = (a1, ..., an);
P(X=ai).
ai 0;
Se a varivel Y possui os estados b1,...bm, ento P(X|Y) representa uma tabela n x m contendo
os valores P(ai|bi). Por exemplo:
b1
0.4
0.6
a1
a2
b2
0.3
0.7
b3
0.6
0.4
Tabela1. P(X|Y)
a1
a2
b2
0.12
0.28
b3
0.12
0.08
Tabela2. P(X,Y)
B1
B2
B3
a1
0.4
0.3
0.3
a2
0.4
0.47
0.13
Tabela3. P(Y|X)
Terremoto
Alarme
JooLig
MariaLig
Figura2. Rede Bayesiana domnio1.
Repare que a rede no possui ns indicando que Maria est ouvindo msica, ou que o
telefone est tocando e atrapalhando o entendimento de Joo. Estes fatos esto implcitos,
associados incerteza relacionada pelos arcos Alarme JooLig e MariaLig, pois, poderia ser
muito dispendioso (ou at mesmo impossvel) se obter tais probabilidades, ou ainda, tais
informaes poderiam no ser relevantes. Assim, as probabilidades devem resumir as condies
6
em que o alarme pode falhar (falta de bateria, campainha estragada, etc) e ainda, as condies em
que Joo e Maria podem falhar (no estava presente, no ouviu o alarme, estava de mau-humor,
etc). Desta forma, o sistema pode lidar com uma vasta gama de possibilidades, ao menos de
forma aproximada.
Uma vez definida a topologia, necessrio se definir a tabela de probabilidades condicionais
(CPT) para cada n. Cada linha na tabela contm a probabilidade condicional para cada caso
condicional dos ns pais. Um caso condicional uma possvel combinao dos valores para os
ns pais. Por exemplo, para a varivel aleatria Alarme temos:
Ladro
Terremoto
Verdadeiro
Verdadeiro
Falso
Falso
Verdadeiro
Falso
Verdadeiro
Falso
P(Alarme|Ladro,Terremoto)
Verdadeiro
Falso
0.95
0.050
0.95
0.050
0.29
0.71
0.001
0.999
Tabela4. CPT Alarme.
L P(L)
V .001
Ladro
Alarme
J P(J)
V .90
F .05
JooLig
T P(T)
V .002
Terremoto
M P(M)
V .70
F .01
L
V
V
F
F
T
V
F
V
F
P(A)
.95
.95
.29
.001
MariaLig
3.1
Todas as entradas da tabela de conjuno de probabilidades podem ser calculadas a partir das
informaes disponveis em uma rede Bayesiana. Uma tabela de conjuno de probabilidades
representa a descrio completa de um domnio. Cada entrada da tabela de conjuno de
probabilidades pode ser calculada a partir da conjuno das variveis atribudas aos devidos
valores, P(X1=x1 ... Xn = xn), ou P(x1, ..., xn). O valor de uma entrada ento dado por:
P(x1, ..., xn) = P(xi|Pais(Xi)) para 0 i n (3.1)
Assim, cada entrada da tabela representada pelo produto dos elementos apropriados das
tabelas de probabilidades condicionais (CPT). As CPTs constituem ento uma representao
distribuda da tabela de conjuno de probabilidades do problema.
Como exemplo, considere que se deseja calcular a probabilidade do alarme ter tocado, mas,
nem um ladro nem um terremoto aconteceram, e ambos, Joo em Maria ligaram, ou
P(JMALT).
P(JMALT) = P(J|A)P( M|A)P(A|LT)P(L ) P(T )
= 0.9 x 0.7 x 0.001 x 0.999 x 0.998 = 0.00062
3.2
A construo de uma rede Bayesiana exige que certos cuidados sejam tomados de forma a
permitir que a tabela conjuno de probabilidades resultante seja uma boa representao do
problema. Para sua construo utilizaremos como base a equao (3.1).
P(x1, ..., xn) = P(xi|Pais(Xi)) para 0 i n, ser reescrita para:
P(x1, ..., xn) = P(xn| xn-1, ... x1 ) P(xn-1, ... x1)
Este processo ser repetido, reduzindo cada conjuno de probabilidades em uma
probabilidade condicional e uma conjuno menor.
P(x1, ..., xn) = P(xn| xn-1, ... x1 ) P(xn-1| xn-2, ... x1 )... P(x2| x1) P(x1) = P(xi|xi-1, ... x1) para 0 i n
Comparando esta equao com (3.1), observamos que a especificao de uma tabela de
conjuno de probabilidades equivalente com a declarao geral:
P(Xi|Xi -1, ..., X1) = P(Xi|Pais(Xi)) para Pais(Xi) { xi-1, ... x1} (3.2)
Esta equao expressa que, uma rede Bayesiana a representao correta de um domnio se
e somente se, cada n condicionalmente independente de seus predecessores, dado seu pai.
Portanto, para se construir uma rede cuja estrutura represente devidamente o domnio do
problema, necessrio que para todo n da rede esta propriedade seja atendida. Intuitivamente,
os pais de um n Xi devem conter todos os ns X1, ..., Xi-1 que influenciem diretamente Xi. Assim,
possvel, por exemplo, determinar que a seguinte igualdade verdadeira:
P(MariaLig|JoaoLig,Alarme,Terremoto,Ladro) = P(MariaLig|Alarme)
Ento, um procedimento geral para construo de redes Bayesianas seria:
1. Escolha um conjunto de variveis Xi que descrevam o domnio.
2. Escolha uma ordem para as variveis.
3. Enquanto existir variveis:
a. Escolha uma varivel Xi e adicione um n na rede.
b. Determine os ns Pais(Xi) dentre os ns que j estejam na rede e que
satisfaam a equao (3.2).
c. Defina a tabela de probabilidades condicionais para Xi.
O fato de que cada n conectado aos ns mais antigos na rede garante que o grafo ser
sempre acclico.
3.3
Compactao e ordenao de ns
10
JooLig
Alarme
Ladro
Terremoto
Figura4. Rede Bayesiana domnio1.
3.4
Tabelas de probabilidades condicionais tendem a ter um grande nmero de entradas, mesmo para
ns com um nmero pequeno de pais. Preencher estes valores pode ser algo que requeira muita
experincia, caso a relao entre ns pais e ns filhos seja completamente arbitrria. Entretanto,
na maioria dos casos, esta relao pode ser bem adaptada a algum padro, o que pode facilitar o
trabalho. Estes casos so chamados distribuies cannicas.
O caso mais simples o representado por ns determinsticos. Um n determinstico tem o
seu valor explicitamente determinado a partir dos pais, sem incerteza. Por exemplo, relao entre
ns pais Brasileiro, Peruano e Boliviano, e o n filho SulAmericano determinado
especificamente pela disjuno dos pais.
11
Relaes com incerteza podem geralmente ser caracterizados como relaes com rudos
(noisy logical relatioships). A relao com rudo padro chamada rudo-OU (noisy-OR), uma
generalizao da relao lgica OU. Em lgica proposicional pode-se dizer que o estado Febre
verdadeiro se e somente se Gripe, Resfriado ou Malaria verdadeiro. A relao rudo-OU
adiciona um nvel de incerteza relao OU, considerando trs suposies: (a) Cada causa possui
uma chance independente de causar o efeito, (b) todas as possibilidades esto listadas, (c) a
inibio de uma causa independente da inibio das demais. Considere o exemplo,
P(Febre|Gripe) = 0,4, P(Febre|Resfriado) = 0.8 e P(Febre|Malaria) = 0.9, para estes valores os
parmetros de rudo sero respectivamente 0.6, 0.2, 0.1. Se nenhum n pai verdadeiro, ento o
n filho falso com 100% de chance. Se apenas um (1) pai verdadeiro, ento a probabilidade
do n filho ser falso igual ao rudo do n pai verdadeiro (ou o produto do rudo dos pais, caso
exista mais de um verdadeiro). A tabela abaixo apresenta o resultado para o exemplo.
Gripe
Resfriado
Malria
P(Febre)
P(Febre)
F
F
F
F
V
V
V
V
F
F
V
V
F
F
V
V
F
V
F
V
F
V
F
V
0.0
0.9
0.8
0.98
0.4
0.94
0.88
0.988
1.0
0.1
0.2
0.02 = 0.2 x 0.1
0.6
0.06 = 0.6 x 0.1
0.12 = 0.6 x 0.2
0.012 = 0.6 x 0.2 x 0.1
Tabela5. rudo-OU.
3.5
Evidncia em uma varivel uma declarao de uma certeza de seus estados. Se uma varivel instanciada, ela
chamada hard evident.
12
10
13
P(C=F) P(C=T)
0.5
0.5
Cloudy
Sprinkler
C
F
T
Rain
P (S=F) P(S=T)
0.5
0.5
0.9
0.1
SR
FF
TF
FT
TT
(W=F) P(W=T)
1.0
0.0
0.1
0.9
0.1
0.9
0.01 0.99
C
F
T
P(R=F) P(R=T)
0.8
0.2
0.2
0.8
WetGrass
14
Diagnstico
Causa
Intercausal
Figura7. Tipos de Inferncias
E, alm de consultas a partir de evidncias, redes Bayesianas podem ser utilizadas para:
Tomar decises baseadas em probabilidades.
Decidir quais evidncias adicionais devem ser observadas a fim de se obter informaes
teis do sistema.
Analisar o sistema a fim de buscar os aspectos do modelo que possuem maior impacto sob
as variveis de consulta.
Explicar os resultados de uma inferncia probabilstica ao usurio.
4.1
15
simplesmente conexa aquela onde, para qualquer dois ns i,j da rede existe apenas um caminho
no dirigido entre i e j. A figura abaixo apresenta uma representao genrica de rede
simplesmente conexa. Um n X possui um conjunto U de pais, U = U1, ... Um, e filhos Y = Y1, ...
Yn. Cada filho e cada pai est representado dentro de uma caixa contendo todos os seus ns
descendentes e ancestrais, exceto em relao a X, ou seja, todas as caixas so disjuntas e no
possuem nenhum arco ligando-as.
E+x
Um
U1
E-x
Z1j
Znj
Y1
Yn
16
Vale lembrar que o algoritmo apenas funciona devido caracterstica da rvore de ser
simplesmente conexa, caso contrrio, ou uma mesma evidncia seria contada mais de uma vez,
ou o algoritmo poderia no terminar.
11
17
Extrado de [1].
18
Com esta equao obtemos o resultado desejado, o primeiro termo possui apenas variveis
que esto acima de e e o segundo, apenas variveis que esto abaixo. O ltimo termo envolve
ambas as variveis, mas, na realidade no precisa ser calculado. Basta, resolver esta equao para
todos os valores de e, o ltimo termo permanece inalterado, e pode ser marginalizado13.
4.2
Um grafo multiconectado aquele para o qual dois ns so ligados por mais de um caminho no
dirigido, ou, um n possui duas ou mais causas, e estas causas compartilham um ancestral
comum (figura6). Conforme j mencionado, o clculo de inferncias sob redes multiconectadas
um problema NP-hard, entretanto, algumas abordagens so propostas de forma se possibilitar
estes clculos em tempo polinomial.
Existem trs classes de algoritmos para inferncia em redes multiconectadas, cada um com
uma rea de aplicao definida:
Clustering Este mtodo transforma probabilisticamente (no topologicamente) a rede
em uma rede simplesmente conexa.
Conditioning Este mtodo faz uma transformao na rede instanciando variveis em
valores definidos, e ento, e ento produz uma rede simplesmente conexa para cada
varivel instanciada.
Stochastic simulation Este mtodo usa a rede para gerar um grande nmero de modelos
concretos de um domnio. A partir destes modelos o algoritmo calcula uma aproximao
de uma inferncia.
Mtodos de Clustering
Considere o exemplo da figura6. Uma forma de obter desta rede em uma rede simplesmente
conexa seria a combinao das variveis Sprinkler e Rain, em um mega n chamado
Sprinkler+Rain, conforme mostra a figura10. Repare que duas variveis booleanas so
substitudas por um n que possui as quatro probabilidades, TT, TF, FT e FF (a probabilidade dos
demais ns da rede permanecem inalteradas). O mega n obtido possui apenas um pai, a varivel
booleana Cloudy. Uma vez que a rede foi convertida para uma rede simplesmente conexa, o
algoritmo apresentado anteriormente pode ser aplicado.
Apesar da tcnica permitir a aplicao de um algoritmo de inferncia de tempo linear, a
caracterstica NP-hard no deixa de existir. No pior caso, o tamanho da rede pode crescer
exponencialmente, tendo em vista que o mtodo envolve o produto de tabelas de probabilidade
incondicional. O problema passa ento a depender da escolha de um bom mtodo para juno de
ns.
13
19
P(C=F) P(C=T)
0.5
0.5
Cloudy
Spr+Rain
SR
FF
TF
FT
TT
(W=F) P(W=T)
1.0
0.0
0.1
0.9
0.1
0.9
0.01 0.99
C
F
T
TT TF FT FF
.08 .02 .72 .18
.40 .10 .40 .10
WetGrass
+Cloud
Spr
Rain
WetGrass
-Cloudy
-Cloudy
Spr
Rain
WetGrass
Figura1. Cut set conditioning.
20
Map Learning, Ken Basye 1990. Brown University Este projeto combina problemas de
diagnostico e teoria de deciso. Um rob deve percorrer um labirinto, procurando
aprender os caminhos percorridos e, ao mesmo tempo, explorar caminhos desconhecidos.
O rob deve ponderar entre seguir um caminho conhecido at seu objetivo e a tentativa de
se descobrir um novo caminho.
Lumiere, Microsoft Research, 1998 O projeto pretende criar um sistema que possa
automaticamente e inteligentemente interagir com outros sistemas, antecipando os
objetivos e necessidades dos usurios.
21
6 Concluses
Redes bayesianas constituem uma forma natural para representao de informaes
condicionalmente independentes. E ainda, possibilitam a representao compacta de uma tabela
de conjuno de probabilidades. Em outras palavras, redes bayesinas, oferecem uma boa soluo
a problemas onde concluses no podem ser obtidas apenas do domnio do problema, onde, o uso
de probabilidades exigido.
Inferncias sobre redes bayesinas podem ser executadas em tempo linear, porm, para a
maioria das topologias de rede, inferncias possuem complexidade NP-hard. Algumas tcnicas
podem ser aplicadas para se obter tempo linear, mesmo em topologias que impossibilitariam este
fato, entretanto, este ainda um dos grandes desafios ao se desenvolver uma rede.
7 Referncias Bibliogrficas
[1]
[2]
[3]
[4]
[5]
[6]
22