Predstavljanje znanja Temeljne cjeline za predstavljanje i obradbu
Predstavljanje znanja Temeljne cjeline za predstavljanje i obradbu znanja mrežnim modelima n n n n Implikacijske mreže (Bayesove, Probabilističke). Definicijske mreže i Ontologije. Mreže izjava i Koncepcijski grafovi. Izvodljive mreže (Petrijeve mreže). Mreže generirane učenjem (Umjetne neuronske mreže). Hibridne mreže (UML). Predstavljanje znanja na webu. 1
Bayesove mreže Sinonimi: Implikacijske mreže (engl. implication networks) Probabilističke mreže (engl. Probabilistic networks) Bayesove mreže (engl. Bayesian networks) Uzročne mreže (engl. Causal networks) Mreže vjerovanja (engl. Belief networks). . . Dio materijala preuzeto sa: Stanford University, CS 228, Knowledge Representation and Reasoning Under Uncertainty. 2
Bayesove mreže KLASIČNI EKSPERTNI SUSTAVI - obilježja n Modeliranje eksperta. n Logika, nekoherentno računanje nesavršenog znanja. n Zamjena eksperta. BAYESOVE MREŽE - obilježja n Modeliranje domene. n Klasična teorija vjerojatnosti, teorija korisnosti (engl. utility) i teorija odlučivanja. n Vjerojatnosti - u što bi agent trebao vjerovati (na temelju dokaza). n Korisnost - što agent dobije (koja je korist) određene akcije n Odlučivanje - što bi agent trebao učiniti (temeljem vjerojatnosti i korisnosti). n Pomoć ekspertu. 3
Bayesove mreže Prikaz domene sadrži: n n n Skup slučajnih varijabli (varijable i pridružene funkcije razdiobe uvjetnih vjerojatnosti). Znanje o ovisnostima/neovisnostima u promatranom skupu varijabli. Grafički prikaz povezanosti varijabli (izravan prikaz ovisnosti ili neovisnosti pojedinih varijabli). Rasuđivanje u Bayesovoj mreži: n n n Pretpostavka je da su poznate početne uvjetne lokalne razdiobe vjerojatnosti svake varijable. Računa se bezuvjetna ili marginalna vjerojatnost svake varijable u povezanom skupu (to nisu početne uvjetne lokalne vjerojatnosti u skupu). Ako neki skup varijabli zauzme poznata i vidljiva stanja (vjerojatnost toga stanja/vrijednosti svake varijable = 1), računaju se promijenjene vjerojatnosti svih ostalih varijabli u skupu. 4
Slučajne varijable i uvjetne vjerojatnosti Vjerojatnost: Vjerojatnost je broj u intervalu [0, 1] koji izražava izglednost nastupanja nekog događaja ("da će se dogoditi"). Frekvencijska interpretacija vjerojatnosti Vjerojatnost je obilježje skupa sličnih događaja. Na temelju ponavljanja eksperimenta predviđamo nastupanje događaja A. P(A) = NA / S NA - skup događaja koji obuhvaćaju događaj A S - skup svih događaja točnije: P(A) = lim (n. A / n), kad n . n. A - broj nastupanja događaja A n - broj izvođenja eksperimenta 5
Slučajne varijable i uvjetne vjerojatnosti Subjektivistička interpretacija vjerojatnosti Vjerojatnost je broj u intervalu [0, 1] koji izražava stupanj vjerovanja u nastupanje događaja A ili istinitost logičkog iskaza (npr. u slučajevima kada se eksperiment ne može ponoviti). Primjer: P(Dinamo će biti prvak Hrvatske) = 0. 75 Vjerojatnost (mjera) ovisi o poznavanju domene, iskustvu i dokazima (evidenciji). Matematička okosnica za računanje s vjerojatnostima je jednaka za obje interpretacije. 6
Slučajne varijable i uvjetne vjerojatnosti Aksiomatska definicija vjerojatnosti A - događaj koji promatramo - skup svih događaja (prostor stanja) P(A) - vjerojatnost pojave događaja A (vjerojatnost da će se A dogoditi). Aksiomi: 1. A : P(A) 0 (nenegativnost) 2. P( ) = 1. (normiranost) 3. Ako su A 1, A 2, . . . , Ak međusobno isključivi događaji (bez zajedničkog presjeka, t. j. ni jedan podskup ne može nastupiti zajedno), vjerojatnost da nastupi barem jedan od njih (može i više) je suma individualnih vjerojatnosti (aditivnost). A : 1 P(A) 0 ako P(A) = 0, A se neće dogoditi ako P(A) = 1, A će se sigurno dogoditi Ako označimo A: svi događaji osim A, slijedi: A A = , t. j. skup svih događaja Prema 3. aksiomu P(A) + P( A) = P( A A) = P( ) = 1, odnosno: P( A) = P(A) - 1 Iz 1. i 2. slijedi: 7
Slučajne varijable i uvjetne vjerojatnosti Slučajne varijable i razdiobe vjerojatnosti Slučajna varijabla je varijabla koja može poprimiti vrijednosti iz skupa isključivih i potpunih vrijednosti (prostora vrijednosti ili stanja, engl. sample space) s određenom vjerojatnošću. Npr. neka X označuje istinitost logičkog iskaza. X može poprimiti vrijednosti istinit ili neistinit {T, F} = X. Skup je isključiv i potpun. Slučajna varijabla je diskretna i binarna. U ovom prikazu razmatrat će se samo diskretne slučajne varijable. Oznake: X - slučajna varijabla x- (mali) vrijednost slučajne varijable X - prostor vrijednosti Pretpostavljamo konačan prostor vrijednosti (diskretan). Konjunkcija slučajnih varijabli (zajednički skup, zajedničko nastupanje) slučajnih varijabli X i Y označimo kao novu varijablu: Z = (X, Y) Prostor vrijednosti nove varijable Z je produkt: Z = X · Y 8
Slučajne varijable i uvjetne vjerojatnosti Npr. neka je: X = Y = {T, F}, pa je Z = {(T, T), (T, F), (F, T), (F, F)} Općenito za skup slučajnih varijabli {X 1, X 2, . . . , Xn}, prostor vrijednosti je n-dimenzionalan: ( X 1 · X 2 ·. . . · Xn ) = ni=1 Xi Razdiobu vjerojatnosti definiramo preko konačnog prostora vrijednosti: x X : 0 P(X=x) 1, x P(X=x) = 1 Npr. za jednu diskretnu binarnu slučajnu varijablu X: X = {T, F}: razdioba vjerojatnosti: P(X=T) = 0. 7 P(X=F) = 0. 3 = 1 (konzistentnost) Za konjunkciju (zajednički skup, zajedničko nastupanje) dviju binarnih varijabli A i B, razdioba vjerojatnosti P(A, B) je dvodimenzinalna: B=T B=F A=T 0. 1 0. 2 A=F 0. 3 0. 4 = 1 (konzistentnost) Za n varijabli potrebno je poznavati 2 n vrijednosti ! 9
Slučajne varijable i uvjetne vjerojatnosti Uvjetna vjerojatnost Def. P(A | B) = vjerojatnost da će se dogoditi A ako se dogodio B. P(A | B) = P(A B) / P(B) ili uobičajeno: P(A | B) = P(A, B) / P(B) gdje je: P(A, B) vjer. istodobnog pojavljivanja A i B A P(B) vjer. pojavljivanja B B P(A | B) = 1 je analogno B A (implikacija) Ako su A i B diskretne binarne slučajne varijable uz A, B = {T, F}, računamo npr. : P(A=T | B=T) = P(A=T B=T) / P(B=T) 10
Slučajne varijable i uvjetne vjerojatnosti Temeljem definicije uvjetne vjerojatnosti izvodi se lančano pravilo : Def. uvjetne vjerojatnosti: P(A | B) = P(A, B) / P(B) Zajednička razdioba je: P(A, B) = P(A | B) P(A, B, C) = P(A | B, C) P(B | C) P(C). . . Indukcijom zaključujemo (uz obrnuti redoslijed): P(X 1, …, Xn ) = = P(Xn | Xn-1 , …, X 1 ) P(Xn-1 | Xn-2 , …, X 1) … P(X 2 | X 1 ) P(X 1 ) = i=n… 1 P(Xi | Xi-1 , Xi-2 , …, X 2 , X 1) Rastavljanjem zajedničke razdiobe na faktore uvjetnih vjerojatnosti smanjuje se dimenzionalnost (N-dim. svodi na N-1). 11
Slučajne varijable i uvjetne vjerojatnosti Marginalne ili rubne razdiobe n n n Neka je poznata zajednička razdioba P(A, B, C) skupa od 3 slučajne varijable. Marginalna ili rubna razdioba je razdioba nekog fiksiranog podskupa vrijednosti tih varijabli, odnosno razdioba toga podskupa bez obzira na vrijednosti u ostatku skupa. Razdiobu (vjerojatnost da će podskup poprimiti te fiksirane vrijednosti) računamo sumiranjem (marginaliziranjem) preko svih ostalih vrijednosti osim fiksiranih u podskupu. Npr_1: Neka je fiksirani podskup A=a, a A , B=b, b B. Marginalna razdioba tog podskupa je (sumacija ili marginaliziranje preko C) : P(A=a, B=b) = c P(A=a, B=b, C=c) Najčešće pišemo: P(A, B) = c P(A=a, B=b, C=c) - vjer. da će A=a i B=b Npr_2: Fiksiramo C=c. U tom slučaju marginalna razdioba je dvostruka sumacija ili marginaliziranje preko ostatka skupa t. j. preko A i B: P(C) = a b P(A=a, B=b, C=c) 12
Slučajne varijable i uvjetne vjerojatnosti Marginalne ili rubne razdiobe Primjer: Neka je dana zajednička razdioba dviju slučajnih diskretnih varijabli P(A, B), gdje svaka varijabla može poprimiti tri vrijednosti (ai odnosno bj ) s definiranim vjerojatnostima (suma svih vjer. = 1): Vjer. da će A=a 1 i B=b 1 AB b 1 b 2 b 3 P(A) a 1 0. 05 0. 06 0. 09 0. 2 a 2 0 0 0. 3 a 3 0 0. 3 0. 2 0. 5 =1 Vjerojatnosti da će A poprimiti vrijednosti ai neovisno o vrijednostima bj. To je bezuvjetna vjerojatnost A. Marginalna razdioba za A iznosi: P(A=a 1) = 0. 05 + 0. 06 + 0. 09 = 0. 2 (sumiramo/marginaliziramo po bj ) P(A=a 2) = 0 + 0. 3 = 0. 3 P(A=a 3) = 0 + 0. 3 + 0. 2 = 0. 5 Analogno možemo računati razdiobu za fiksiranu varijablu B. Te se vrijednosti (novi stupac ili novi redak) bilježe “na marginama” tablice. 13
Slučajne varijable i uvjetne vjerojatnosti Veza između marginalnih razdioba i uvjetnih vjerojatnosti – pravilo zbrajanja Neka je dana zajednička razdioba dviju diskretnih binarnih varijabli: P(A, B). Marginalna razdioba u odnosu na A (vjer. da A=a neovisno o B) iznosi: P(A=a) = b P(A=a, B=b) Kako iz definicije uvjetne vjerojatnosti slijedi: P(A=a, B=b) = P(A=a | B=b) P(B=b) To marginalnu razdiobu možemo računati preko uvjetne vjerojatnosti: P(A=a) = b P(A=a | B=b) P(B=b) To je pravilo zbrajanja (engl. addition rule). 14
Slučajne varijable i uvjetne vjerojatnosti Bayesovo pravilo Iz definicije uvjetne vjerojatnosti slijedi: P(A | B) = P(A, B) / P(B) a također i: P(B | A) = P(A, B) / P(A) Ako izraze izjednačimo po zajedničkom članu P(A, B) slijedi: P(B | A) P(A | B) = ----------P(B) 15
Slučajne varijable i uvjetne vjerojatnosti Sažetak: n n n Vjerojatnost i slučajne varijable. P(A, B) = zajednička razdioba Uvjetna vjerojatnost: P(A | B) = P(A, B) / P(B) slijedi: P(A, B)=P(A | B) P(B) Marginalne (rubne) razdiobe. Uz P(A, B) poznato, računamo razdiobu fiksiranog (odabranog) podskupa varijabli (ovdje A): P(A) = b P(A, B=b), vjer. da A poprimi fiksiranu vrijednost Bayesovo pravilo: P(A | B) = P(B | A) P(A) / P(B) Lančano pravilo: P(X 1, … , Xn) = i P(Xi | Xn-1, …, X 1) Pravilo zbrajanja. Uz P(A, B) poznato, računamo razdiobu fiksiranog (odabranog) podskupa varijabli (ovdje A): P(A) = b P(A, B=b) = b P(A | B=b) P(B=b) 16
Probabilističko rasuđivanje Primjer baze znanja o životinjama (svaki red je apriorno znanje): (P)tica T T F F F (L)etač T T F F T T F (M)lado T F T F T Vjerojatnosti, pi = 1 0 0. 2 3 binarne (T=istina, 0. 04 F=neistina) diskretne 0. 01 slučajne varijable 0. 01 0. 23 F F F 0. 5 Upit: Koja je vjerojatnost da nije ptica ako leti i nije mlado ? P(P=F | L=T, M=F) = P(P=F, L=T, M=F) / P(L=T, M=F) = (uvjetna vjerojatnost) P(P=F, L=T, M=F) 0. 01 1 = -------------------------- = -------P(P=T, L=T, M=F) + P(P=F, L=T, M=F) 0. 2 + 0. 01 21 n n Koristeći izraze za izračunavanje marginalnih razdioba može se izračunati vjerojatnost bilo kojeg upita vezanog za te 3 varijable. Problem: potrebno je poznavati 2 n apriornih vjerojatnosti ! 17
Temelji Bayesovih mreža – znanje o domeni Primjer 1: Dva događaja, diskretne, binarne slučajne varijable. PDF – zajednička razdioba M: Mira predaje AI. S: Dan je sunčan. PDF: za 2 varijable potrebno je 4 vjerojatnosti (ustvari 3 jer =1) Uvodimo znanje o domeni: Događaji M i S su nezavisni !! P(M | S) = P(M) P(S | M) = P(S) P(M, S) = P(M) x P(S) U tom slučaju dovoljne su samo dvije vjerojatnosti !! Npr. : P(M) = 0. 6 P(S) = 0. 3, pazi: 1 Time su određene sve vjerojatnosti iz zajedničke PDF ( = 1): P(M, S) = P(M, S) = P( M, S) = 0. 6 0. 4 x x 0. 3 0. 7 = = 0. 18 0. 42 0. 12 0. 28 sada = 1 18
Temelji Bayesovih mreža Primjer 2: Tri događaja, diskretne, binarne slučajne varijable Binarne vrijednosti varijabli: A: Ante kasni na predavanje (kasni ili ne). B: Branko kasni na predavanje (kasni ili ne). K: Promet je koma. (koma ili normalno stanje). Znanje o domeni i intuitivno rasuđivanje: a) Ništa nije poznato o K. Razmišljanje: Ako A kasni, vjerojatno je promet u komi, te će B kasniti. Povećanje izvjesnosti A kreira povećanje izvjesnosti B. A i B su povezani (zavisni su ako ne znam K). b) Tajnica dolazi i kaže: promet nije koma, ide normalno (dakle poznato je stanje prometa K). Ako A kasni to mi ništa ne omogućuje da rasuđujem o B. Ne znam zašto B kasni. A i B nisu povezani (nezavisni su ako znam K). 19
Temelji Bayesovih mreža Primjer 2: Grafički prikazujemo neposredne kauzalne (uzročne) veze: K K djeluje na A i na B. A B U ovom slučaju potrebno je poznavati samo 5 (umjesto (8 – 1) vjerojatnosti): P(K) = 0. 6 P(A | B, K) = P(A | K) = 0. 085 pazi 1, jer P(A | B, K) = P(A | K) = 0. 17 P(A | K) + P( A | K) = 1 P(B | A, K) = P(B | K) = 0. 3 P(B | A, K) = P(B | K) = 0. 6 Ako je K poznato, A i B su uvjetno (uz uvjet K poznato) nezavisni. 1 Temeljem 5 danih vrijednosti, može se izračunato bilo koja vjerojatnost (od 8): Npr. : P(A, B, K) = P(A | B, K) P(B, K) - lančano pravilo = P(A | K) P(B | K) P(K) nezavisnost - iz def. uvjetna vjer. Naravno da svih 8 mogućih vjerojatnost = 1. 20
Temelji Bayesovih mreža Temeljne definicije Bayesovih mreža: Def. 1: definicija Bayesove mreže Bayesova mreža je usmjereni aciklički graf G = (V, E), gdje su: V = čvorovi, slučajne varijable E = lukovi, pokazuju izravnu uzročnu vezu (lokalnu zavisnost varijabli) Ako su u grafu dva čvora Xi, Xk usmjereno povezani: Xi Xk to ima slijedeće značenje: Xi utječe (uzrokuje) Xk (gleda se utjecaj u smjeru strelice). Xk (kao evidencija) dijagnosticira Xi (gleda se utjecaj obrnuto od smjera strelice). 21
Temelji Bayesovih mreža Temeljne definicije Bayesovih mreža: Def. 2: Markovljeva uvjetna nezavisnost Promatramo jedan čvor Xi : Prethodnici Ako je skup roditelja Si poznat (poznate su vrijednosti), tada za Xi : P(Xi | Xi-1 , Xi-2 , …, X 2 , X 1 ) = P(Xi | Si ) t. j. vjer. Xi ne ovisi o ostalim prethodnicima. Vjer. Xi samo lokalna uvjetna vjerojatnost. Sljedbenici Xi-1 Xi Xi-2 Roditelji: Si Zajednička razdioba cijele mreže dana je lančanim pravilom: P(X 1 , . . . , Xn ) = P(Xn | Xn-1 , …, X 1 ) P(Xn-1 | Xn-2 , …, X 1 ) … P(X 2 | X 1 ) P(X 1 ) = i=n. . 1 P(Xi | Xi-1 , Xi-2 , …, X 2 , X 1 ) = i=n. . 1 P(Xi | S(Xi )) Opažamo redukciju kompleksnosti i zajednička razdioba je produkt lokalnih uvjetnih razdioba. 22
Mogući utjecaji varijabli u Bayesovoj mreži Def. 3: Definicije opće nezavisnosti (J. Pearl 1988) Neka je dana mreža sa skupovima čvorova: X, Y, E (poznati). E skup je evidencija, poznato stanje, poznate vrijednosti, fiksirani čvorovi. Def. : X i Y su nezavisni akko ih (poznati) E d-separira, t. j. neusmjereni put je blokiran. U mreži to su slučajevi: Z linearan X Z Y E Z divergira X Z Z konvergira Zu. E Y Ovo je slučaj u ranijem Primjeru 2 Y Z i sljedbenici nisu u E Znanje o jednom uzroku ne govori o drugom. 23
Temelji Bayesovih mreža Nezavisnosti u Bayesovoj mreži Za mrežu na slici: A i B su totalno nezavisni. C je nezavisan od B ako je poznato A. D je nezavisan o C ako je poznato A i B. E je nezavisan od A, B i D za poznati C. "Poznato" = evidencija (za diskretne binarne varijable vjerojatnost 0 ili 1). 24
Temelji Bayesovih mreža Postupak oblikovanja Bayesove mreže 1. Odaberi skup slučajnih varijabli koje opisuju domenu problema. 2. Uredi skup varijabli (povlačenjem lukova) tako da najprije odrediš najranije prethodnike (varijable koje nemaju roditelja), a zatim varijable na koje one izravno utječu (neposredne lokalne uzročne veze). 3. Ponavljaj postupak pod točkom 2 do krajnjih varijabli (djece). 4. Definiraj tablice lokalnih uvjetnih vjerojatnosti svake varijable (vjerojatnosti te varijable uz uvjet da njeni roditelji zauzmu svoje vrijednosti). Pri tome broj roditelja neke varijable određuje dimenzionalnost njene lokalne tablice vjerojatnosti. U slučaju diskretnih binarnih varijabli za m roditelja potrebno je poznavati 2 m vjerojatnosti. 25
Oblikovanje Bayesovih mreža Primjer Bayesove mreže (5 binarnih slučajnih varijabli, vrijednosti [T, F]): Provala i Zemljotres mogu aktivirati Alarm. Aktivacija alarma uzrokuje da Ivan i Miro eventualno zovu vlasnika kuće. Ukupno je potrebno poznavati 10 uvjetnih vjerojatnosti (umjesto 2 5 = 32). P(P=T)= 0. 001 Za varijablu bez roditelja jedna vjerojatnost P(Z=T)= 0. 002 Provala Zemljotres Pazi: Alarm Za varijablu s jednim roditeljem dvije uvjetne vjerojatnosti A T F P(I | A) 0. 9 0. 05 Ivan _zove P Z T T T F F Miro_zove P(A | P, Z) 0. 95 0. 94 0. 29 0. 001 A T F P(M | A) 0. 7 0. 001 Vjer(A=F | P, Z=T) = 0. 05 Alarm ima 2 roditelja pa je potrebno poznavati 22 uvjetnih vjerojatnosti. Za n roditelja potrebno je poznavati 2 n uvj. vjer. 26
Rasuđivanje u Bayesovim mrežama 1. 2. Temeljem tablica lokalnih uvjetnih vjerojatnosti varijabli, mogu se izračunati bezuvjetne (marginalne) razdiobe svih varijabli. Uz poznate vrijednosti skupa evidencijskih varijabli {Ee } (engl. evidence variables). Može se odrediti vjerojatnosti skupa upitnih varijabli {Qq } (engl. query variables). Tipovi upita: 0. Koja je bezuvjetna (marginalna) vjerojatnost da Ivan zove. 1. Dijagnostika (Qq Xi Ee ): “Ako je Ivan zvao, koja je vjerojatnost provale ? ” (što je uzrok) 2. Uzročno rasuđivanje (Ee Xi Qq ): “Ako je provala, koja je vjerojatnost da Ivan zove ? ” (kako uzrok utječe) 3. Međuuzročno rasuđivanje: (Qq Xi Ee ) “Ako alarm i zemljotres, koja je vjerojatnost provale ? ” 4. Miješano rasuđivanje (dijagnostičko i uzročno) (Ee Qq Ee ): “Ako Ivan zove i nema zemljotresa, koja je vjerojatnost alarma ? ” Cilj ispitivanja mreže: n Donošenje odluka. n Određivanje dodatnih evidencijskih varijabli. n Objašnjenje rezultata probabilističkog rasuđivanja. 27
Rasuđivanje u Bayesovim mrežama - primjer Primjer iz domene medicine n n n Liječnik treba odrediti dijagnozu. Opcije su tuberkuloza, rak pluća ili bronhitis. Pacijent je možda pušač i možda je boravio u Aziji. Liječniku na raspolaganju stoje rentgentski pregled i ispitivanje poteškoće u disanju. Slučajne varijable koje opisuju domenu: Tuberkuloza (engl. Tuberculosis) Rak pluća (engl. Lung cancer) Bronhitis (engl. Bronchitis) Pušač (engl. Smoking) Posjet_Aziji (engl. Visit_to_Asia) Rentgen_test (engl. X-Ray) Poteškoće_disanja (engl. Dyspnea) 28
Prvi korak: varijable i njihov utjecaj Visit to Asia Smoking Patient Information Tuberculosis Lung Cancer Bronchitis Medical Difficulties Tuberculosis or Cancer XRay Result Dyspnea Diagnostic Tests • Mreža predstavlja strukturu znanja i modelira odnos između mogućih bolesti, njihovih uzroka, informacija o pacijentu i dijagnostičkih testova. 29
Drugi korak: Tablice lokalnih uvjetnih vjerojatnosti Tuber Lung Can Tub or Can Visit to Asia Present True Present Absent True Absent Present True Absent False Tuberculosis Patient Information Lung Cancer Tuberculosis or Cancer XRay Result Smoking Bronchitis Dyspnea Medical Difficulties Present Absent Tub or Can Bronchitis True Present 0. 90 0. l 0 True Absent 0. 70 0. 30 False Present 0. 80 0. 20 False Absent 0. 10 0. 90 Dyspnea Diagnostic Tests • Znanje o odnosima između varijabli modelira se uzročnim vezama i lokalnim razdiobama uvjetnih vjerojatnosti. 30
Treći korak: Propagacija vjerojatnosti • • Propagacijski algoritam procesira informacije o odnosima varijabli što rezultira u bezuvjetnim ili marginalnim razdiobama vjerojatnosti svakog čvora. Bezuvjetne ili marginalne vjerojatnosti čvora predstavljaju funkciju 31 vjerovanja toga čvora. Dijagnoza nije sa sigurnošću uspostavljena.
Četvrti korak: Unošenje evidencije • • • Kako se unosi evidencija, to se kao posljedica propagacijskog algoritma mijenjaju vjerovanje u relevantno povezane čvorove (zavisne). Razgovor s pacijentom rezultira u promjeni “Visit to Asia” u “Visit”. Ta informacija propagira kroz mrežu i mijenja funkcije vjerovanja nekoliko zavisnih čvorova. Dijagnoza još uvijek nije nedvosmisleno 32 uspostavljena.
Peti korak: Unošenje evidencije • • • Daljnji razgovor s pacijentom rezultira u promjeni čvora “Smoking” u “Smoker”. Ta informacija propagira kroz mrežu i mijenja vjerovanja zavisnih čvorova. Dijagnoza još uvijek nije nedvosmisleno potvrđena. Vjerojatno pacijent 33 nema tuberkulozu ni rak pluća, ali bronhitis je upitan.
Šest korak: Laboratorijski test (evidencija) • • • Nakon razgovora s pacijentom slijede laboratorijski dijagnostički testovi. Liječnik započinje s rentgenskim pregledom. To rezultira u promjeni toga čvora u “Normal”. Informacija propagira kroz mrežu. Informacija o rentgenskom testu propagira unatrag i unaprijed po 34 lukovima mreže. Dilema oko bronhitisa ostaje.
Sedmi korak: Laboratorijski test (evidencija) • • Liječnik je ustanovio da pacijent ima poteškoća s disanjem. To u čvoru “Dyspnea” rezultira s “Present”. Informacija propagira kroz mrežu. Liječnik sada može zaključiti da pacijent nema tuberkulozu (vjer = 0. 998), da nema rak pluća (vjer. = 0. 996) te da ima bronhitis (vjer. = 0. 992). 35
Propagacija u Bayesovim mrežama Primjer: 2 diskretna binarna čvora (A uzrokuje B, B dijagnosticira A) A B Mreža je definirana jednim lukom i uvjetnim vjerojatnostima: P(A=T) = … P(B=T | A=F) = … 1. Računamo bezuvjetne (marginalne) razdiobe vjerojatnosti čvorova. Čvor A: Čvor B: P(A=T) = … (to je bilo odmah zadano) P(B=T) = a P(B=T | A=a) P(A=a) a = {T, F} Računamo marginalnu razdiobu za fiksirani B=T. Sumacija se obavlja po vrijednostima za čvor A. 36
Propagacija u Bayesovim mrežama Primjer: 2 diskretna binarna čvora (A uzrokuje B, B dijagnosticira A) A B 2. Uzročna veza (A šalje poruku prema B, da je A u T) P(A=T) = 1, t. j. ako je poznato (vidljivo, evidentno) stanje A, kako to mijenja naše vjerovanje u B ? Poznato P(A=T) je uzrok koji propagira do B. P(B=T | A=T) = ? , Vrijednost možemo očitati izravno iz zadane tablice. Ta vjerojatnost je različita od ranije izračunate bezuvjetne vjerojatnosti. Saznanjem da je A=T primijenilo se naše vjerovanje u B. 37
Propagacija u Bayesovim mrežama Primjer: 2 diskretna binarna čvora (A uzrokuje B, B dijagnosticira A) A B 3. Dijagnostička veza (B šalje poruku prema A, da je B u T) P(B=T) = 1, t. j. ako je poznato (vidljivo, evidentno) stanje B, kako to mijenja naše vjerovanje u A ? P(A=T | B=T) = ? Bayes: P(A=T | B=T) = P(B=T | A=T) P(A=T) / P(B=T) P(B=T | A=T) i P(A=T) očitamo iz zadanih tablica uvj. vjerojatnosti. Za nazivnik: P(B=T) = a P(B=T, A=a) = a P(B=T | A=a) P(A=a) računamo marginalnu razdiobu pravilom zbrajanja. Saznanje da je B=T mijenja naše ranije bezuvjetno vjerovanje u A. 38
Propagacija u Bayesovim mrežama Primjer: 3 diskretna binarna čvora (T=istinito, F=neistinito) O L C Neka je zadano početnih pet vjerojatnosti: P(O=T) = 0. 4 [P(O=F) = 0. 6] P(L=T | O=T) = 0. 6 [P(L=F | O=T) = 0. 4] P(L=T | O=F) = 0. 1 [P(L=F | O=F) = 0. 9] P(C=T | O=T) = 0. 8 [P(C=F | O=T) = 0. 2] P(C=T | O=F) = 0. 3 [P(C=F | O=F) = 0. 7] Zanima nas vjerojatnost P(C=T | L=T), t. j. kako se promijenilo naše vjerovanje u P(C=T) kada smo opazili L=T (evidencija). Prvo računamo bezuvjetnu (marginalnu) vjerojatnost čvora C, t. j. P(C=T), (sumiramo po svim vrijednostima O=o, ne ovisi o L): P(C=T) = o P(C=T | O=o) P(O=o) = pravilo zbrajanja = P(C=T | O=T) P(O=T) + P(C=T | O=F) P(O=F) = (0. 8 x 0. 4) + (0. 3 x 0. 6) = 0. 5 39
Propagacija u Bayesovim mrežama Primjer: 3 diskretna binarna čvora O L C Neka sad opazimo da je L=T. L šalje dijagnostičku potporu u čvor O. Računamo novu vjerojatnost za čvor O, t. j. P(O | L=T): P(L=T) – marginalna razdioba P(O=T | L=T) = Bayes = P(L=T | O=T) P(O=T) / o P(L=T | O=o) P(O=o) = = (0. 6 x 0. 4) / [(0. 6 x 0. 4) + (0. 1 x 0. 6)] = 0. 24 / 0. 3 = 0. 8 Također: P(O=F | L=T) = 0. 2 40
Propagacija u Bayesovim mrežama Primjer: 3 diskretna binarna čvora O L C Nakon toga, čvor O šalje uzročnu potporu u čvor C. Umjesto ranijih P(O=T) i P(O=F) u bezuvjetnoj (marginalnoj) razdiobi za P(C=T), sada, koristimo: P(O=T | L=T) i P(O=F | L=T). P(C=T | L=T) = o P(C=T | O=o) P(O=o | L=T) = = P(C=T | O=T) P(O=T | L=T) + P(C=T | O=F) P(O=F | L=T) = (0. 8 x 0. 8) + (0. 3 x 0. 2) = 0. 64 + 0. 06 = 0. 7 Zaključak: Nakon evidencije L=T, vjerovanje u C promijenilo se od početnih 0. 5 na 0. 7. 41
Algoritmi rasuđivanja u Bayesovim mrežama Složenost postupaka rasuđivanja (uzročne i dijagnostičke propagacije vjerojatnosti) ovisi o topologiji mreže. n Za topologiju jednostruko povezanih čvorova (polistablo), gdje postoji najviše jedan put između dva čvora (uvijek samo jedan roditelj), moguće je oblikovati točan proračunski algoritam polinomske složenosti. Primjer: n Y 1 P(X | E+, E-1, …, E-k-1, E-k+1, …, En) P(Z | E+) Z Yk X P(E-1, …, E-n | Z) P(E-k | X) Yn 42
Algoritmi rasuđivanja u Bayesovim mrežama n n n U primjeru s prethodne slike pojedinačne propagacije mijenjaju vjerojatnost svakog čvora konzistentno zakonima teorije vjerojatnosti. Svaki čvor vodi zapis o zadnjoj potpori od n djece i jednog roditelja. Ako se nova potpora razlikuje, X čvor računa i šalje novu dijagnostičku potporu jedinom roditelju i novu uzročnu potporu k-tom djetetu. Algoritam za polistablo: Procedura: Propagiraj dijagnostičku potporu od djeteta c prema roditelju p. Ako potpora neizmjenjena ili p korijenski čvor, završeno. inače: upiši novu vrijednost potpore u p, propagiraj dijagnostiku roditelju od p i uzročnu djeci osim c. Procedura: Ppropagiraj uzročnu potporu od roditelj p do djeteta c. Ako uzročna potpora neizmjenjena, ili c terminalski čvor, završeno. inače: upiši novu vrijednost u c, i propagiraj svakom djetetu od c. 43
Algoritmi rasuđivanja u Bayesovim mrežama U općem slučaju topologije Bayesove mreže (višestruko povezani čvorovi), postupak izračunavanja vjerojatnosti pojedinih čvorova je NPtežak problem. Tehnika spojenih stabala (engl. junction trees) - HUGIN n Egzaktna tehnika izračuna vjerojatnosti. n Tehnika se temelji na transformacijama grafa uz očuvanje bitnih obilježja. n Iz mreže se izluči neusmjereni triangulirani graf, te se konstruira novi stablasti graf u kojem su čvorovi klike trianguliranog grafa. Započinjemo s tipičnom mrežom: 44
Algoritmi rasuđivanja u Bayesovim mrežama Tehnika spojenih stabala – nastavak n n Graf "moraliziramo", t. j. spojimo roditelje i odbacimo smjer na lukovima. Zatim trianguliramo moralni graf (dodaju se lukovi tako da svaki ciklus duljine 4 ili više ima najmanje jedan kord - luk koji spaja nesusjedne čvorove). Mor. Kord Mor. 45
Algoritmi rasuđivanja u Bayesovim mrežama Tehnika spojenih stabala – nastavak n Formiramo klike - maksimalne skupove međusobno potpuno povezanih (svaki sa svakim) čvorova. 46
Algoritmi rasuđivanja u Bayesovim mrežama Tehnika spojenih stabala – nastavak n n n Organiziramo sustav kao stablo, ali (za sada) bez smjerova lukova. Svaka klika ima pridružen produkt tablica uvjetnih vjerojatnosti (svijet vjerovanja - engl. belief universe, BU). Za svaki par klika postoje zajednički čvorovi – separatori (d-separiraju graf u dva uvjetno nezavisna dijela). Npr. za klike C 1 i C 4 to je T (čvor Tuberculosis). 47
Algoritmi rasuđivanja u Bayesovim mrežama Tehnika spojenih stabala – nastavak Algoritam propagacije vjerojatnosti (analogno kao u stablima): n n n Klika u kojoj je tražena varijabla, npr. C 2 za P(X-ray), je korijen. Sve klike šalju poruke prema C 2 (unosimo smjer lukova). Ci šalje poruku min do Cn. Klika množi poruku mki za sve k n sa svojom BU i marginalizira varijable osim u separatoru. Poruke putuju u svim smjerovima (analogno kao u stablima). Npr. , poruke od C 1 do C 2: prva poruka: m 1 = v P(v) P(t | V) druga poruka: t P(a |l, t) m 1 (t) slijedeća poruka: . . . marginaliziramo, T – separator ostaje marginaliziramo A, L separator osatje 48
HUGIN 49
Stohastički algoritmi rasuđivanja u Bayesovim mrežama Mreža: A B P(A=t) P(B | A=f) Tražimo bezuvjetnu (marginalnu ) razdiobu P(B=t) = ? Ranije smo računali marg. Razdiobu: P(B=T) = a P(B=T | A=a) P(A=a) Uspostavimo brojilo koje inkrementiramo svaki puta kada “pogodimo” da je B=t. U početku #(B=t) = 0. Također zapisujemo ukupan broj iteracija (“pogađanja”). Neka je taj broj m. Generiramo dva slučajna broja: p, q [0, 1] u svakoj iteraciji. Ako p < P(A=t), dobili smo da je A=t u toj iteraciji (slučajnom “pogađanju”). Ako u istoj iteraciji q < P(B | A=t), slijedi da je B=t, pa inkrementiramo brojilo: #(B=t) = #(B=t) + 1 Ako pak u toj iteraciji p P(A=t), dobili smo da je A=f. Ako u istoj iteraciji dobijemo q < P(B | A=f) slijedi da je B=t, inkrementiramo: #(B=t) = #(B=t) + 1 Ostali slučajevi ne inkrementiraju #(B=t); odbacuju se. Nakon m iteracija: est P(B=t) = #(B=t)/m 50
Stohastički algoritmi rasuđivanja u Bayesovim mrežama Neka je zadana Bayesova mreža kao na slici. Sve slučajne varijable su Booleove s lokalnim uvjetnim vjerojatnostima kao u tablicama. P(S)=0. 3 P(L|M, S)=0. 05 P(L|M, S)=0. 1 P(L| M, S)=0. 2 S M L P(R|M)=0. 3 P(R| M)=0. 6 T • • P(M)=0. 6 R P(T|L)=0. 7 P(T| L)=0. 3 Stanje svake varijable “pogađamo” generiranjem slučajnog broja i usporedbom s njenom zadanom vjerojatnosti. Započinje se od krajnjih roditelja. Dobivena slučajna vrijednost varijable koristi se u daljnjem napredovanju kroz mrežu. Za statistički relevantan zaključak potrebno je mnogo “prolaza” kroz mrežu. 51
Stohastički algoritmi rasuđivanja u Bayesovim mrežama n n n Neka se na početku za varijablu S generira slučajan broj i neka je taj slučajan broj manji od 0. 3. To znači da u tom jednom prolazu kroz mrežu slučajna varijabla S ima vrijednost S=t. Na isti način, neka je novi generirani slučajan broj za varijablu M veći od 0. 6, pa varijabla M tijekom toga prolaza kroz mrežu ima vrijednost M=f. Varijabla L ovisi o S i M. Kako smo ustanovili da je u tom prolazu kroz mrežu S=t, M=f generirani slučajan broj za varijablu L uspoređujemo sa P(L| M, S)=0. 1. Neka je taj slučajan broj veći od 0. 1, pa varijabla L u tom prolazu kroz mrežu ima vrijednost L=f. Varijabla R ovisi samo o varijabli M, koja u ovom prolazu ima vrijednost M=t. Generirani slučajni broj uspoređujemo s P(R| M)=0. 6. Neka je manji od 0. 6, te je u tom prolazu kroz mrežu R=t. Varijabla T ovisi o varijabli L. Ustanovili smo da je u ovom prolazu L=t, pa novo generirani slučajni broj uspoređujemo s P(T| L)=0. 3. Neka je slučajni broj manji od 0. 3, te je vrijednost varijable T u ovom prolazu T=t. Generiranjem slučajnih brojeva i jednim prolazom kroz mrežu dobiven je jedan slučajni uzorak svih pet varijabli: (S=true, M=false, L=false, R=true, T=true) 52
Stohastički algoritmi rasuđivanja u Bayesovim mrežama Potrebno je sakupiti veliki broj N slučajnih uzoraka svih varijabli (tipično N > 1000). Neka nas zanima bilo koja uvjetna vjerojatnost, npr. : P(R | T, S) Po definiciji uvjetne vjerojatnosti: P(R | T, S) = P(R, T, S) / P(T, S) Pretražimo cijeli veliki skup slučajnih uzoraka i označimo: Ns = broj slučajnih uzoraka u kojima je R=t, T=t, S=f. Nc = broj slučajnih uzoraka u kojima je T=t, S=f. N = broj svih sakupljenih slučajnih uzoraka (petorki). Za veliki N vrijedi: Nc/N je dobar estimator za vjerojatnost P(T=t, S=f). Ns/N je dobar estimator za vjerojatnost P(R=t, T=t, S=f). Ns/Nc je dobar estimator za P(R | T, S) = P(R, T, S) / P(T, S). 53
Stohastički algoritmi rasuđivanja u Bayesovim mrežama Problemi stohastičke simulacije Bayesovih mreža: n n n n Za rijetke događaje (mnogo ograničenja na varijable) većina slučajno generiranih uzoraka varijabli se moraju odbaciti (nemaju utjecaja na Ns ili Nc). Potreban je veliki broj slučajno generiranih uzoraka varijabli. Ako su neke varijable evidencijske (zauzele se određeno stanje), svaki slučajni uzorak koji ne pogodi ta stanja varijabli mora se odbaciti (ne utječe na Ns, Nc, niti na N). Potreban je izrazito veliki broj slučajno generiranih uzoraka varijabli. Dovoljan broj slučajno generiranih uzoraka je onaj kada se tražena uvjetna vjerojatnost (npr. P(R | T, S)) s daljnjim skupljanjem uzoraka ne mijenja više od unaprijed zadane dozvoljene pogreške . Poboljšanje algoritma stohastičke simulacije: Težinska izglednost (engl. likelihood weighting) Gibbsovo sampliranje … 54
Uvjetne vjerojatnosti za n roditelja – “noisy or” Ukoliko neka binarna slučajna varijabla ima n roditelja potrebno je odrediti tablicu uvjetnih vjerojatnosti koja ima 2 n vrijednosti. To traži izvrsno poznavanje domene i u općem slučaju je težak problem. Zamislimo mrežu: n Promatramo više uzroka (roditelja) jednoj pojavi (provala i zemljotres uzrokuju aktivaciju alarma). 55
Uvjetne vjerojatnosti za n roditelja – “noisy or” Pretpostavljamo: Samo provala (ne istovremeno i zemljotres) će aktivirati alarm s nekom vjerojatnošću, npr. 0. 9, t. j neće aktivirati alarm s vjerojatnošću 0. 1. n Samo zemljotres (ne istovremeno i provala) će aktivirati alarm s nekom vjerojatnošću, npr. : 0. 6, t. j neće aktivirati alarm s vjerojatnošću 0. 4. n Kad nema ni provale ni zemljotresa alarm se neće aktivirati. n Te su pretpostavke ekvivalentne kao da su u sustav umetnute nove varijable: M = senzor gibanja i J = senzor trešnje, preko koji uzroci (provala, zemljotres) djeluju na alarm. Vjerojatnost alarma samo od provale: P(Alarm=t | Provala=t, Zemljotres=f) = P(M=t | Provala=t) = 0. 9 P(Alarm=f | Provala=t, Zemljotres=f) = P(M=f | Provala=t) = 0. 1 Vjerojatnost alarma samo od zemljotresa: P(Alarm=t | Provala=f, Zemljotres=t)= P(J=t | Zemljotres=t) = 0. 6 P(Alarm=f | Provala=f, Zemljotres=t)= P(J=j | Zemljotres=t) = 0. 4 n 56
Uvjetne vjerojatnosti za n roditelja – “noisy or” n Kolika je vjerojatnost da se alarm neće aktivirati ako nastupi istovremeno provala i zemljotres ? Pretpostavljamo da je neaktivacija ako se pojavi provala nezavisna od neaktivacije ako se pojavi zemljotres: P(Alarm=f | Provala=t, Zemljotres=t) = 0. 1 x 0. 4 = 0. 04 n Kolika je vjerojatnost da se alarm aktivira ako nastupi istovremeno provala i zemljotres: P(Alarm=t | Provala=t, Zemljotres=t) = 1 – 0. 04 = 0. 96 Općenito (uz pretpostavku nezavisnosti neutjecaja): Na čvor X djeluje n uzroka {U 1 , … , Un}. Neka je Pi vjerojatnost aktivacije X od samo jednog Ui (ostali n-i ne): n P(X=t | Ui = t, Uk = f, k i) = Pi P(X=f| Ui = t, Uk = f, k i) = 1 - Pi = Qi je vjerojatnost neaktivaciije od Ui Neka je w broj aktivnih uzroka iz skupa n (onih koji djeluju na X). Vjerojatnost neaktivacije od svih w uzroka (nezavisnost) je: P(X=f | w) = i w Qi Vjerojatnost aktivacije od svih m uzroka: P(X=t | w) = 1 - i w Qi 57
Uvjetne vjerojatnosti za n roditelja – “noisy or” Primjer: P(rehlada), V(iroza), M(alarija) uzrokuju T(emperaturu). Kako T ima 3 roditelja to bi trebalo poznavati 8 vjerojatnosti. Pojednostavljenje uz pretpostavku nezavisnosti neutjecaja: Potrebno je poznavati samo tri vjerojatnosti izravnog utjecaja): P(T | P) = 0. 4 P(T | V) = 0. 8 P(T | M) = 0. 9 Nadalje pretpostavljamo: P(T | P, V, M) = 0 P( T | P, V, M) = 1 1 - 0. 4 = 0. 6 1 - 0. 8 = 0. 2 1 - 0. 9 = 0. 1 = = = P( T | P) P( T | V) P( T | M) t. j. nema "curenja" (engl. leakage) Temeljem navedenog možemo izračunati svaku od 8 uvjetnih vjerojatnosti: Npr. : P(T | P, V, M) = 1 - [ P( T | P) x P( T | V)] = 1 - [0. 6 x 0. 2] = 0. 88 Uočavamo P( T | M) = 1 Npr. : P(T | P, V, M) = 1 - P( T | M) = 1 - 0. 1 = 0. 9 58
- Slides: 58