190 Nuolen X Y intuitiivinen merkitys on, että X vaikuttaa suoraan Y:hyn Verkon topologia solmut ja nuolet määräävät muuttujien ehdolliset riippumattomuudet Kun topologia on kiinnitetty, pitää vielä määrätä kullekin muuttujalle ehdollinen todennäköisyysjakauma annettuna sen vanhemmat Verkon topologia ja ehdolliset todennäköisyysjakaumat määräävät implisiittisesti täyden yhteisjakauman muuttujille Säätila Reikä Hammassärky Osuma 191 Taloon on asennettu varashälytin, joka on luotettava murtoyritysten tunnistaja, mutta reagoi myös lieviin maanjäristyksiin Naapurit Jussi ja Meeri ovat luvanneet tarkistaa tilanteen hälytyksen kuullessaan Jussi kuulee jokaisen hälytyksen, mutta sen lisäksi joskus erehtyy tarkistamaan tilanteen myös puhelimen soidessa Meeri puolestaan kuuntelee musiikkia lujalla, eikä aina kuule hälytystä Tavoitteenamme on arvioida murron todennäköisyys annettuna tieto siitä kuka on käynyt tai ei ole käynyt tarkistamassa tilannetta
192 P(murto).001 Murto Järistys P(järistys).002 Hälytys P(jussikäy) True.90 False.05 JussiKäy Hälytys Murto Järistys P(hälytys) True True.95 True False.94 False True.29 False False.001 Hälytys P(meerikäy) MeeriKäy True.70 False.01 193 Verkon topologiaan sisältyvät seuraavat ajatukset: Murto ja maanjäristys vaikuttavat suoraan hälyttimen laukeamiseen, Jussin ja Meerin vierailut riippuvat suoraan vain hälyttimestä he eivät huomaa murtoa tai maanjäristystä suoraan tai keskustele keskenään Musiikinkuuntelu ja puhelimen soiminen ovat verkosta luettavissa vain implisiittisesti hälytyksen aiheuttaman tarkistuskäynnin epävarmuutena Todennäköisyydet tiivistävät äärettömän mahdollisten vaikuttajien joukon Esim. hälytin voi jäädä laukeamatta koska ilmankosteus on korkea, on sähkökatko, varapatteri on tyhjentynyt, johdot on katkaistu, kuollut hiiri estää kelloa soimasta, jne.
194 Ehdollisten todennäköisyyksien taulukot luettelevat muuttujan arvojen todennäköisyydet riippuen solmun vanhempien arvoasetuksesta Kunkin rivin todennäköisyyksien on summauduttava arvoon 1 Edellisessä esimerkissä kaikki muuttujat ovat totuusarvoisia, joten riittää todennäköisyyden p tapauksessa, että muuttujan arvo on tosi, koska arvon epätosi tn. on 1-p Yleisesti ottaen, jos solmulla on k vanhempaa, niin erikseen määrättäviä todennäköisyyksiä on 2 k kappaletta Jos solmulla ei ole vanhempia on taulukossa vain yksi rivi 195 Bayes-verkon semantiikka Jokaisen yhteistodennäköisyysjakauman solun arvo voidaan laskea Bayes-verkon sisältämästä informaatiosta Solun arvo on muuttujien tietty arvoasetus P(X 1 = x 1 X n = x n ), jota merkitään P(x 1,, x n ) Solun arvo on P(x 1,, x n ) = i=1,,n P(x i vanhemmat(x i )), missä vanhemmat(x i ) viittaa muuttujien Vanhemmat(X i ) määrättyihin arvoihin P(jussiKäy meerikäy hälytys murto järistys) = P(jussiKäy hälytys) P(meeriKäy hälytys) P(hälytys murto järistys) P( murto) P( järistys) =.90.70.001.999.998 =.00062
196 Yhteisjakauma P(x 1,, x n ) voidaan kirjoittaa tulosäännöllä muotoon P(x n x n-1,, x 1 ) P(x n-1,, x 1 ) Samaa purkamista voidaan toistaa, jolloin lopulta saadaan kaava P(x n x n-1,, x 1 ) P(x n-1 x n-2,, x 1 ) P(x 2 x 1 ) P(x 1 ) = i=1,,n P(x i x i-1,, x 1 ) Tämäketjusääntö (chain rule) pätee mille tahansa satunnaismuuttujien joukolle Jakauma on siis yhtäpitävä väittämän P(X i X i-1,, X 1 ) = P(X i Vanhemmat(X i )) kanssa kunhan Vanhemmat(X i ) { X i-1,, X 1 } 197 Kun solmut indeksoidaan järjestyksessä, joka on konsistentti verkkostruktuurin implisiittisen osittaisjärjestyksen kanssa, niin ehto pätee Solmuilta siis vaaditaan ehdollista riippumattomuutta edeltäjäsolmuista annettuna vanhemmat Solmun vanhemmiksi tulee valita ne solmut, jotka vaikuttavat muuttujan arvoon suoraan Jos esimerkissä ajatellaan Meerin tarkastuskäyntisolmua, niin murto ja järistys vaikuttavat sen arvoon, mutta vain hälytyksen kautta Uskomme mukaan P(MeeriKäy JussiKäy, Hälytys, Järistys, Murto) = P(MeeriKäy Hälytys)
198 Bayes-verkon etu täyteen yhteisjakaumaan verrattuna on kompaktisuus, joka seuraa sen lokaalisuudesta Alikomponentit ovat tekemisissä vain rajoitetun määrän muita komponentteja kanssa riippumatta komponenttien kokonaismäärästä Tästä seuraa kompleksisuuden lineaarinen, ei eksponentiaalinen, kasvu Bayes-verkko sovellukselle, jossa kuhunkin n:stä muuttujasta vaikuttaa suoraan korkeintaan k muuttujaa, vaatii ehdollisten todennäköisyystaulukoiden esittämiseen 2 k lukua Kaikkiaan siis n2 k lukua, kun yhteisjakaumassa on 2 n solua Esim. n = 30 ja k = 5: n2 k = 960 ja 2 n > 10 9 199 Bayes-verkossa voidaan tarkkuutta vaihtaa kompleksisuuteen Heikkoja riippuvuuksia voi kannattaa jättää pois verkosta kompleksisuuden pitämiseksi kurissa, mutta tällöin verkon tarkkuus kärsii Verkkotopologian oikea määrääminen on vaikea ongelma Solmut pitäisi lisätä järjestyksessä: "juuri aiheuttajat", muuttujat, joihin ne vaikuttavat suoraan, jne., kunnes lopulta lehdiksi tulevat muuttujat jotka eivät vaikuta suoraan mihinkään muihin muuttujiin Väärässä järjestyksessä lisätyt solmut tekevät verkosta kompleksisemman ja epäintuitiivisen
200 Ehdollisten jakaumien esittäminen Yleisesti solmun ehdollisten jakaumien taulukko vaatii O(2 k ) luvun määräämistä ja kokemusta ehtojen todennäköisyyksistä Tyypillisemmin lasten ja vanhempien arvojen suhteen määrää helpommin laskettava kanoninen jakauma Yksinkertaisin esimerkki on deterministinen solmu, jonka arvo määräytyy vanhempien arvojen perusteella ilman epävarmuutta Esim. looginen suhteesta voisi olla vaikka solmu Skandinaavi jonka arvo on vanhempien Ruotsi, Norja, Tanska ja Islanti disjunktio 201 Epävarmuutta voidaan esittää myös kohinaisilla loogisilla suhteilla Kohinaisessa disjunktiossa (noisy-or) voidaan lapsen totuus estää riippumattomasti vanhemman arvon ollessa lapsen arvon todeksi tekevä muuttuja P( kuume kylmä, flunssa, malaria) = 0.6 P( kuume kylmä, flunssa, malaria) = 0.2 P( kuume kylmä, flunssa, malaria) = 0.1
202 Kylmä Flunssa Malaria P(kuume) P( kuume) F F F 0.0 1.0 F F T 0.9 0.1 F T F 0.8 0.2 F T T 0.98 0.02 = 0.2 0.1 T F F 0.4 0.6 T F T 0.94 0.06 = 0.6 0.1 T T F 0.88 0.12 = 0.6 0.2 T T T 0.988.012 =.6.2.1 203 Jatkuva-arvoiset muuttujat Näiden käsittely voidaan välttää diskretoinnilla, jossa jatkuva arvoalue jaetaan joihinkin intervalleihin Liian harvasta jaosta seuraa suuri tarkkuuden menetys ja liian tiheästä puolestaan suuri määrä käsiteltäviä arvoja Diskretointi voi kuitenkin olla jopa todistettavasti oikea lähestymistapa Toinen mahdollisuus on arvioida jatkuvaa arvoaluetta jollain standardilla todennäköisyyden tiheysfunktioperheellä, joilla on äärellinen määrä parametreja Esim. Gaussin l. normaalijakauman N(μ, σ 2 )(x) parametrit ovat keskiarvo μ ja varianssi σ 2
204 Hybridiverkossa on sekä diskreettejä että jatkuva-arvoisia muuttujia Tällöin on kyettävä laskemaan jatkuva-arvoisen solmun ehdollinen todennäköisyys ja diskreetin solmun todennäköisyys annettuna jatkuva-arvoiset vanhemmat Esim. hedelmän (jatkuva-arvoinen) Hinta riippuu (jatkuvaarvoisesta) Sadosta ja (binääriarvoisesta) Tuesta Asiakkaan (diskreetti) Ostopäätös puolestaan riippuu yksinomaan hinnasta Hinnan todennäköisyysjakauman P(Hinta Sato, Tuki) määräämiseksi lasketaan erikseen P(Hinta Sato, tuki) ja P(Hinta Sato, tuki) Lisäksi tarkastellaan hinnan h jakauman riippuvuutta muuttujan Sato arvosta s 205 Hinnan jakauman parametrit määritellään siis s:n funktiona Usein käytetty jakauma on lineaarinen Gaussin jakauma, jonka keskiarvo μ riippuu lineaarisesti vanhemman arvosta ja jolla on kiinnitetty hajonta σ P(h s, tuki) = N(a t s+ b t, σ t2 )(h) = 1/(σ t (2π)) exp(-½(h - (a t s+b t ))/σ t ) 2 ) P(h s, tuki) = N(a f s+ b f, σ f2 )(h) Näin muodostuvat yksikyttyräiset jakaumat yhdistämällä saadaan lopulta kaksikyttyräinen jakauma P(h s) Lineaarista normaalijakaumaa noudattavan Bayes-verkon yhteisjakauma "käyttäytyy hyvin"
206 Diskreetti Ostopäätös riippuu tuotteen hinnasta Hinnan ollessa korkea ei ostoja tehdä ja hinnan ollessa matala asiakas ostaa hedelmän Hinnan ollessa näiden väliltä asiakkaan ostopäätös muuttuu pehmeästi/sileästi Ehdollinen todennäköisyys on siis pehmeä kynnysarvo Yksi mahdollisuus on käyttää ns. probit-jakaumaa, standardin normaalijakauman integraalia Φ(x) = -,,x N(0, 1)(x) dx 207 Tällöin ostopäätöksen ehdollinen todennäköisyys voisi olisi P(ostaa hinta = h) = Φ((-h+ μ) / σ) Esim. neuraaliverkoissa paljon käytetty pehmeän kynnyksen määrittelytapa on ns. logit-jakauma, joka käyttää sigmoidifunktiota P(ostaa h) = 1/(1 + exp(-2(-h+ μ)/σ)) Logit-jakaumalla on pidemmät hännät kuin probit-jakaumalla Probit on käytännössä tarkempi kuin logit, joka taas puolestaan on helpompi käsitellä matemaattisesti ja siksi yleinen
208 Tarkka päättely Bayes-verkoissa Tavoitteemme on selvittää kyselymuuttujan X posteriorijakauma kun havaintomuuttujien E = E 1,, E m havaitut arvot ovat e ja piilomuuttujat ovat Y = Y 1,, Y l Täydestä yhteisjakaumasta voimme vastata kyselyyn P(X e) laskemalla α P(X, e) = α y P(X, e, y) Bayes-verkko on yhteisjakauman täysi esitys, erityisesti tekijät P(X, e, y) voidaan ilmaista verkon ehdollisten todennäköisyyksien tulona Täten verkon perusteella voidaan vastata annettuun kyselyyn 209 KyselynP(Murto jussikäy, meerikäy) arvottaminen Piilomuuttujat ovat Järistys ja Hälytys P(Murto jussikäy, meerikäy) = α j h P(Murto, j, h, jussikäy, meerikäy) Verkon ehdollisten todennäköisyystaulukoiden perusteella tarvittavat arvot voidaan laskea, esim. P(murto jussikäy, meerikäy) = α j h P(murto) P(j) P(h murto, j) P(jussikäy h) P(meerikäy h) Tekijöitä järjestelemällä saadaan tehokkaammin laskettava kaava α P(murto) j P(j) h P(h murto, j) P(jussikäy h) P(meerikäy h)
210 Laskemalla P(murto jussikäy, meerikäy) ja P( murto jussikäy, meerikäy), saadaan aiemmin käyttämillämme arvoilla P(Murto jussikäy, meerikäy) [0.284, 0.716] Bayes-verkon DAGin evaluoiminen vastaa puun syvyyssuuntaista läpikäyntiä, joten sen tilavaativuus on vain lineaarinen muuttujien lukumäärän suhteen Aikavaativuus n:n muuttujan verkolle on aina O(2 n ) Esim. tulo P(jussikäy h) P(meerikäy h) joudutaan laskemaan uudestaan jokaiselle arvolle j Toistuvien alilauseiden uudelleenevaluoinnin välttämisellä voidaan saavuttaa lisää säästöä 211 Lopulta saadaan kyselyn P(Murto jussikäy, meerikäy) vastaus α f M (Murto) f Ĵ,Ĥ,JK,MK (Murto), missä f M (Murto) = P(Murto) Muuttujien summaamisessa pois voidaan tekijät, jotka eivät riipu muuttujan arvosta, siirtää summauksen ulkopuolelle Kyselyn kannalta irrelevantit tekijät voidaan poistaa Kysely P(JussiKäy murto) antaa lauseen, jonka viimeinen tekijä on h mk P(meerikäy = mk Hälytys = h), jonka arvo määritelmän mukaan on 1 Verkon solmut, jotka eivät ole kyselymuuttujan esi-isiä tai havaintomuuttujia ovat kyselyn kannalta irrelevantteja
212 Muuttujien eliminointi Toistuvat alilauseet voidaan evaluoida kerran ja niiden arvo talletetaan käytettäväksi aina tarvittaessa Tarkastellaan muuttujien eliminointi -algoritmia lausekkeen P(Murto jussikäy, meerikäy) evaluoinnissa: α P(Murto) j P(j) h P(h Murto, j) M J H P(jussikäy h) P(meerikäy h) JK MK Edellä on tekijöille otettu lyhennysmerkinnät Tekijä MK, P(meerikäy h), ei vaadi yli muuttujan MeeriKäy summaamista, koska arvo meerikäy on kiinnitetty 213 Talletetaan todennäköisyydet 2-alkioiseen vektoriin f MK (Hälytys) = [P(meerikäy hälytys), P(meerikäy hälytys)] T Tekijälle JK talletetaan samanlainen vektori f JK (Hälytys) P(murto).001 Murto Järistys P(järistys).002 Hälytys Murto Järistys P(hälytys) True True.95 f JK (Hälytys) f MK (Hälytys) True False.94 False True.29 False False.001
214 Tekijä H on P(h Murto, j) ja se vaatii 2 2 2 matriisin f H (Hälytys, Murto, Järistys) Tekijöiden MK, JK ja H tulosta summataan Hälytys pois, jolloin saadaan yli muuttujien Murto ja Järistys arvoalueiden käyvä 2 2 matriisi f Ĥ,JK,MK (Murto, Järistys) = h f H (h, Murto, Järistys) f JK (h) f MK (h) = f H (hälytys, Murto, Järistys) f JK (hälytys) f MK (hälytys) + f H ( hälytys, Murto, Järistys) f JK ( hälytys) f MK ( hälytys) P(murto).001 Murto Järistys P(järistys).002 f Ĥ,JK,MK (Murto, Järistys) 215 Kahden matriisin pisteittäisen tulon laskeminen A B f 1 (A,B) B C f 2 (B,C) T T.3 T T.2 T F.7 T F.8 F T.9 F T.6 F F.1 F F.4 A B C f 3 (A,B,C) T T T.3.2 T T F.3.8 T F T.7.6 T F F.7.4 F T T.9.2 F T F.9.8 F F T.1.6 F F F.1.4
216 Vastaavasti muuttuja Järistys summataan pois tulosta f J (Järistys) f Ĥ,JK,MK (Murto, Järistys), jolloin saadaan matriisi f Ĵ,Ĥ,JK,MK (Murto) = f J (järistys) f Ĥ,JK,MK (Murto, järistys) + f J ( järistys) f Ĥ,JK,MK (Murto, järistys) P(murto).001 Murto f Ĵ,Ĥ,JK,MK (Murto) 217 Bayes-verkko on monipuu (polytree), jos kunkin solmuparin välillä on korkeintaan yksi suuntaamaton polku Tarkan päättelyn aika- ja tilavaativuus monipuussa on verkon koon suhteen lineaarista Päättely Bayes-verkossa sisältää erikoistapauksenaan propositiologiikan päättelyn Näin ollen yleisessä tapauksessa päättely Bayes-verkossa on NP-kovaa Itse asiassa voidaan osoittaa, että päättely on yhtä vaativaa kuin toteuttavien arvoasetusten lukumäärän laskeminen Ongelma on aidosti vaikeampi kuin NP-kova, se on #P-kova