You are on page 1of 37

Bayesove mree

Marin Prcela

Zagreb, 19. prosinca 2008.

Literatura
U prezentaciji koriteni primjeri iz:
Stuart Russel, Peter Norvig: Artificial Intelligence - a modern appoach (knjiga) Eugen Charniak: Bayesian Networks without tears, AI magazine (dostupan sa http://www.zemris.fer.hr/predmeti/krep/Charni91.pdf) Scott Davies, Andrew Moore: Bayesian Networks and Inference (slajdovi s predavanja, http://www.cs.cmu.edu/~awm/tutorials) Richard E. Neapolitan: Learning Bayesian Networks (knjiga)

Nepouzdano znanje
inteligentni agenti redovito nemaju potpunu sliku o svijetu potreba za koritenjem vjerojatnosti racionalne odluke:
temeljene na relativnoj vanosti ciljeva i vjerojatnosti po kojima ti ciljevi mogu biti ostvareni

primjer:
veza izmeu zubobolje i karijesa - logika ili vjerojatnosna?

A priori vjerojatnost
vjerojatnost dogaaja u sluaju nedostatka bilo koje druge informacije
P(Cavity=true) = 0.1 ili P(cavity) = 0.1

gdje je cavity boolean varijabla za diskretne varijable moemo pisati:


P(Weather=sunny) = 0.7 P(Weather=rain) = 0.2 P(Weather=cloudy) = 0.08 P(Weather=snow) = 0.02

ili vektor:
P(Weather) = <0.7, 0.2, 0.08, 0.02>

ovo nazivamo distribucija vjerojatnosti

Uvjetna vjerojatnost
vjerojatnost da je neto istina uz poznate dodatne informacije o svijetu npr. siguran sam da me boli zub - koja je vjerojatnost karijesa
A P(B|A) = P(AB) / P(A)

>>
P(A) = 0.1 P(B) = 0.4 P(AB) = 0.05 B P(A|B) = P(AB) / P(B)

Zdruena vjerojatnost
kombinacija dva ili vie dogaaja za prikaz svih moguih ishoda koristimo zdruenu distribuciju vjerojatnosti primjeri
P(Weather, Cavity) - tablica 4x2 P(Toothache, Cavity, Catch) - tablica 2x2x2
toothache catch cavity cavity 0.108 0.016 catch 0.012 0.064 toothache catch 0.072 0.144 catch 0.008 0.576

Zdruena vjerojatnost
iz tablice zdruene distribucije vjerojatnosti moemo jednostavno izraunati
vjerojatnost za bilo koju kombinaciju dogaa uvjetne vjerojatnosti za bilo koju kombinaciju dogaaja
P(cavity) = 0.108 + 0.012 + 0.072 + 0.008 = 0.2 P(cavity toothache) = 0.108 + 0.012 + 0.072 + 0.008 + 0.016 + 0.064 = 0.28 P(cavity|toothache) = P(cavity toothache) / P(toothache) = (0.108 + 0.012) / (0.108 + 0.012 + 0.016 + 0.064) = 0.6

Zdruena vjerojatnost
u tablici zdruene distribucije vjerojatnosti nije jasno prikazano to je uzrok a to posljedica veze meu varijablama problem je veliina tablice: za iole vei problem preteko je definirati toliki broj zdruenih vjerojatnosti mogue je vrijednosti automatski "nauiti" iz skupa podataka, ali
spremite nepotrebno preveliko a postoji i bolji nain...

Bayesov teorem
P(B|A) = P(AB) / P(A) P(A|B) = P(AB) / P(B) slijedi...

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

primjer
doktor zna da meningitis prouzrokuje ukoen vrat u 50% sluajeva. takoer, doktor zna i neke a priori vjerojatnosti: pojavljivanje meningitisa a priori je jedan sluaj u 50,000, a ukoenog vrata jedan sluaj u 20 ljudi. kada se pojavi pacijent sa ukoenim vratom vjerojatnost meningitisa u tog pacijenta jest... P(vrat|meningitis) = 0.5 P(meningitis) = 1/50000 P(vrat) = 1/20

P(meningitis|vrat) = 0.0002

... iako meningitis izaziva ukoen vrat u velikom broju sluajeva, ukoen vrat ne znai meningitis!

Bayesova mrea
Bayesova mrea je
usmjereni acikliki graf (DAG) vorovi su varijable u problemu
diskretne varijable

usjmereni bridovi pokazuju povezanost varijabli


jedan brid pokazuje relaciju otac->dijete koje vjerojatnosti su vane za raunanje neke druge

svaki vor ima zdruenu distribuciju vjerojatnosti


P(xi|roditelji(xi)) prikazuje utjecaj roditelja na dijete

dvije kljune komponente znanja:


struktura (graf) vrijednosti (brojke u tablicama u vorovima)

Primjer
dolazim kui i elim znati ima li koga doma prije nego primim bravu svjetlo na trijemu
ena ga esto upali kad ode negdje ena ga esto upali kada oekuje goste

imamo psa
kad nema nikog doma vodimo ga iza kue vodimo ga iza kue i kad ima problema sa probavom ako je iza kue mogao bih ga uti kako laje, ali to se lako zamijeni sa laveom drugih pasa

kako modelirati zavisnost ovih varijabli, kako napraviti apstrakciju problema?

Struktura
struktura mree pokazuje veze meu varijablama

Zakljuivanje iz strukture
to mogu zakljuiti
predvidjeti to e se dogotiti (ako moji odu od kue) pogoditi razloge promatranih dogaaja (ako je svjetlo upaljeno a pas je puten tada su moji vjerojatno vani)

zakljuci nisu apsolutni


moji mogu otii i bez da upale svjetlo vjerojatnosti!

to ako razlozi upuuju na razliite zakljuke


ujem psa a svjetlo je ugaeno treba vidjeti koji razlozi imaju veu teinu

sve kombinacije vjerojatnosti nisu uvijek dostupne

Bayesova mrea
P(fo) = 0.15 P(bp) = 0.01

P(lo|fo) = 0.6 P(lo|fo) = 0.05 P(do|fo bp) = 0.99 P(do|fo bp) = 0.90 P(do|fo bp) = 0.97 P(do|fo bp) = 0.3

P(hb|do) = 0.7 P(hb|do) = 0.01

Bayesova mrea
za upotpunjenje Bayesove mree strukturi je potrebno dodati:
a priori vjerojatnosti za vorove bez roditelja (roots) uvjetne vjerojatnosti za sve vorove s roditeljima za sve mogue kombinacije ishoda njihovih roditelja

to smo ispunili definiravi ukupno 10 vrijednosti za prikazati isto to pomou zdruene distribucije vjerojatnosti (za n varijabli) potrebno bi bilo definirati 2n-1 vrijednosti (=31) za vee mree uteda je drastina
to je posljedica ugraene pretpostavke nezavisnosti kod Bayesove mree

Kljuno
iz postavljenih vjerojatnosti mogu se izraunati a priori vjerojatnosti za sve varijable
npr. a priori vjerojatnost da je pas puten

postavljanjem dokaza na mreu mogu zakljuiti kako to utjee na oekivanja ostalih varijabli
npr. kada vidim da je upaljeno svjetlo koja je vjerojatnost da je obitelj vani kada ujem da pas laje koja je vjerojatnost da je obitelj vani kada vidim svjetlo i ujem psa koja je vjerojatnost da je pas vani kada vidim upaljeno svjetlo koja je vjerojatnost da e pas zalajati (ima li ovo smisla u realnom svijetu)

Zakljuivanje
problemi zakljuivanja:
odreivanje meuzavisnosti vorova raunanje a priori vjerojatnosti propagacija dokaza unaprijed kroz mreu (u smjeru strelica) propagacija dokaza unazad kroz mreu (obrnuto od smjera strelica) "skretanje" - kombinirano propagacija sa viestrukim putevima kroz mreu (sloeno)

viestruki putevi
mogue je da pas laje ovisno o upaljenom svjetlu (direktna veza izmeu ova dva vora)

Raunanje a priori vjerojatnosti


ZADANO X
P(x1) = .4

SLIJEDI
P(x1) = .4 P(x2) = .6 sve kombinacije roditelja P(y1) = P(y1|x1)P(x1) + P(y1|x2)P(x2) = 0.9*0.4 + 0.8*0.6 = 0.84 P(z1) = P(z1|y1)P(y1) + P(z1|y2)P(y2) = 0.7*0.84 + 0.4*0.16 = 0.652 P(w1) = P(w1|z1)P(z1) + P(w1|z2)P(z2) = 0.5*0.652 + 0.6*0.348 = 0.5348

P(y1|x1) = .9 P(y1|x2) = .8

P(y1) = .84 P(y2) = .16

P(z1|y1) = .7 P(z1|y2) = .4

P(z1) = .652 P(z2) = .348

P(w1|z1) = .5 P(w1|z2) = .6

P(w1) = .5348 P(w2) = .4652

Propagacija unaprijed
poznato je (postoje dokazi) da je X = x1 oekivanja svih ostalih varijabli se mijenjaju
a priori vjerojatnoti se vie ne oekuju jer postoje dokazi! koja su nova oekivanja? X
evidence of x1

P(y1|x1) = 0.9 P(z1|x1) = P(z1|y1)P(y1|x1) + P(z1|y2)P(y2|x1) = 0.7*0.9 + 0.4*0.1 = 0.67 P(w1|x1) = P(w1|z1)P(z1|x1) + P(w1|z2)P(z2|x1) = 0.5*0.67 + 0.6*0.33 = 0.533

P(y1|x1) = .9 P(y2|x1) = .1

P(z1|x1) = .67 P(z2|x1) = .33

P(w1|x1) = .533 P(w2|x1) = .467

Propagacija unatrag
poznato je da je W = w1 prvo raunamo oekivanja za vor Z
P( z1 | w1) = P( w1 | z1) P( z1) 0.5 * 0.652 = = 0.6096 P( w1) 0.5348

zatim za vor Y
P ( y1 | w1) = P( w1 | y1) P( y1) P ( w1)

meutim, nedostaje nam i vrijednost P(w1|y1), ali je moemo izraunati


P( w1 | y1) = P( w1 | z1) P( z1 | y1) + P( w1 | z 2) P( z 2 | y1) = 0.5 * 0.7 + 0.6 * 0.3 = 0.53

pa slijedi da je

P( y1 | w1) =

0.53 * 0.84 = 0.832 0.5348

Propagacija unatrag
za vjebu: izraunati P(x1|w1)
hint: da se ovo izrauna potrebno je prethodno izraunati vrijednosti za P(w1|y2), P(w1|x1) X
P(x1|w1) = .399 P(x2|w1) = .601

P(y1|w1) = .832 P(y2|w1) = .168

P(z1|w1) = .6096 P(z2|w1) = .3904

evidence of w1

Skretanje
kako se dokaz o upaljenom svjetlu reflektira na oekivanje pseeg lavea?
propagacijom unatrag se rauna oekivanje da je obitelj vani propagacijom unaprijed oekivanje da je pas vani propagacijom unaprijed oekivanje lavea

...a to je sa viestrukim dokazima?

Viestruki putevi

postoje dva puta koja vode od light-on do hear-bark smjer strelica je nevaan
problem nastaje im graf nije stablo

algorimi za izraun kad su prisutni viestruki putevi


sloeni za nae potrebe e.g. pearl's message passing algorithm, clustering, relevance based, etc. mogue izraunati uzorkovanjem

Zavisnosti meu vorovima


ako je zadana Bayesova mrea, kako odrediti koji su vorovi meusobno zavisni
tj. iako se dokazima promjeni vjerojatnost na nekim vorovima, postoje vorovi u mrei na koje to nee uope utjecati

Primjer
- X i Z su meusobno zavisni - meutim: ako je poznat Y, tada su X i Z nezavisni

Y Piemo: I<X,Y,Z> - svi roditelji od Z su poznati a X mu nije meu sljedbenicima! Zavisnost meu vorovima ovisi o poznatim dokazima u mrei!!! Z

Jo o zavisnostima
I<X,Y,Z> ? DA! Svi roditelji od Z su poznati a X mu nije meu sljedbenicima. Y X Z

Z U X V

I<X,U,Z> ? NE! X je meu sljedbenicima od Z I<X,{U,V},Z> ? DA! Svi roditelji od X su poznati a Z mu nije meu sljedbenicima.

Intuicija: Kada su svi putevi izmeu vorova "presjeeni" oni su nezavisni.

Zavisnost: sloeni sluaj


Uivam na godinjem odmoru. Provalnik i potres mogu uzrokovati paljenje alarma. Alarm e probuditi nekoga od susjeda koji e me zbog toga nazvati. Zemlju nije briga da li je provalnik u mom stanu. Vrijedi: I<Provalnik, {}, Potres>

Provalnik

Potres

Alarm

Telefon

Dok sam na godinjem susjed me nazove i veli da mi doma zvoni alarm. -> rastu vjerojatnosti i za provalnika i za potres! Neto kasnije na vijestima ujem da je izbio manji potres. -> znai, moda ipak nije bio provalnik! Ne vrijedi: I<Provalnik, {Telefon}, Potres>

d-separacija
relativno jednostavan nain otkrivanja blokiranja puta izmeu dva vora put je blokiran kada: I) Na putu postoji vor V - za kojeg postoje dokazi - iji su lukovi okrenuti jedan drugom "repovima"
V

II) Na putu postoji vor V - za kojeg postoje dokazi - iji su lukovi okrenuti "glava" prema "repu"
V

d-separation
III) Na putu postoji vor V - za kojeg NE postoje dokazi - niti za bilo kojeg njegovog sljedbenika - a iji su lukovi okrenuti jedan drugome "glavama"
V

d-separation je izraunljiv u linearnom vremenu pomou algoritma slinog pretraivanju u dubinu prije raunanja vjerojatnosti u vorovima pokree se algoritam koji e rei ima li kakvih izmjena u svakom pojedinom voru

Jo par opaski...
problem:
za opis mree jo uvijek je potrebno definirati relativno velik broj vrijednosti kada vorovi imaju po vie roditelja pogotovo

primjer:
kod dijagnostikih problema u medicini vrlo se esto dogaa da razne bolesti uzrokuju iste simptome, npr. poviene temperatura, kaalj

rjeenje:
uvoenje novog oblika definicije zavisnosti noisy-OR noisy-AND smanjuje se broj traenih vrijednosti

postoje algoritmi za
uenje strukture mree iz skupa podataka uenje vrijednosti uvjetnih vjerojatnosti iz skupa podataka

Uzorkovanje
Na temelju zadane Bayesove mree mogue je generirati umjetan skup podataka:
Koji e slijediti zavisnosti zadane u mrei Proizvoljne veliine Koji zatim moe posluiti za raunanje oekivanja u mrei

Primjer rezultata uzorkovanja Provalnik


ne ne da

Potres
ne da ne

Alarm
ne da da

Telefon
da da ne

...

Uzorkovanje unaprijed
Forward sampling (Henrion 1988) Poslagati vorove u niz kako se pojavljuju u mrei
Niti jedno dijete ne smije se pojaviti prije svog roditelja

Postupak kada nema postavljenih dokaza


Ulaz: Bayesova mrea sa N vorova X = {X1, X2, , XN} Jedan uzorak se generira tako da se svaki element Xi generira na temelju ve generiranih vrijednost njegovih roditelja u mrei
Xi = uzorkovano na temelju p(Xi|roditelji(Xi))

Primjer uzorkovanja unaprijed


Kako generirati jedan uzorak na temelju mree (slide 14)? Poslagati vorove po topologiji:
X = {fo, bp, lo, do, hb}

Tim redosljedom stvarati uzorak:


P(fo) = 0.15 -> sluajnim odabirom dobije se da P(bp) = 0,01 -> sluajno odabran ne P(lo|fo) = 0.6 -> sluajno odabran da P(do|fo,bp) = 0.9 -> sluajno odabran da P(hb|do) = 0.7 -> sluajno odabran ne

Dobiveni uzorak
X = {da, ne, da, da, ne}

Ponavljanjem ove procedure generira se skup uzoraka!

Uzorkovanje uz prisustvo dokaza


Kada je sluajno odabrana vrijendost drugaija od postavljenog dokaza odbaciti uzorak i pokuati ponovno graditi uzorak od poetka! Primjetiti:
Nije dovoljno postaviti u uzorak vrijednost dokaza jer se tada vorovi bez postavljenih dokaza ne generiraju u ovisnosti o dokazima

Problem: na ovaj nain se eliminira velik broj uzoraka pa je algoritam spor

Maximum likelihood sampling


U vorovima koji imaju dokaz se umjesto sluajnog odabira direktno postavi vrijednost dokaza
ali se dobiveni uzorak uzima s odreenom teinom teina ovisi o vjerojatnosti odabira vrijendosti koja je identina postavljenom dokazu teine se mnoe kada je dokaza vie Pri koritenju uzoraka teine se moraju uzeti u obzir

Ostale metode:
Gibbs sampling Importance sampling Sequential Monte Carlo ...

Utility
... To judge what one must do to obtain a good or avoid an evil, it is necessary to consider not only the good and the evil in itself, but also the probability that it happens or does not happen; and to view geometrically the proportion that all these things have together. Arnauld, 1662

donoenje racionalnih odluka zasnovanih na poznatim vjerojatnostima novac - mjera s kojom se moe kvantitativno ocijeniti vrijednost mnogih stvari
jenostavan za usporedbu pri donoenju odluka moemo pretpostaviti da agent preferira da ima vie novca
to je realna pretpostavka

takoer, pretpostavimo da linearno s koliinom novca raste koliina zadovoljstva


to i nije uvijek realna pretpostavka Grayson, 1960: vrijednost novca raste logaritamski!

Utility
ponaanje ljudi (psihologija)
risk-averse - idu na sigurno risk-seeking - kad su ve u dugovima riskiraju bez veih potekoa osiguravateljske kue - radije plaam malo osiguranje nego da riskiram puni iznos u sluaju poara u kui

nekonsistentnost sa utility funkcijom


koja je bolja oklada? A: 80% anse za dobitak $4000 B: 100% anse za dobitak $3000 koja je bolja oklada? A: 20% anse za dobitak $4000 B: 25% anse za dobitak $3000 Ljudi obino biraju B

Ljudi obino biraju A

Zakljuak
Bayesova mrea je dobra jer...
Je odlina za modeliranje vjerojatnosti Primjenjiva u stvarnim aplikacijama Postoje gotove implementacije

Potekoe su...
I dalje je potrebno definirati veliku koliinu brojki
to predstavlja velik problem ekspertima

Ako se ui iz podataka model nije toliko pouzdan

Na auditornim vjebama
Zadaci Alat za Bayesove mree: Genie + Smile

You might also like