Bayes-verkko on eräänlainen graafi, tarkemmin sanottuna suunnattu syklitön graafi (DAG), jota käytetään mallintamaan satunnaismuuttujien välistä korrelaatiota ja ehdollisia riippuvuuksia. Graafin solmut edustavat satunnaismuuttujia ja suuntautuneet reunat kuvaavat suuntaa riippuvuudessa (eli mikä muuttuja voi suoraan vaikuttaa toiseen). Jokaiselle solmulle määritellään ehdollinen todennäköisyysjakauma (CPT, conditional probability table), joka kertoo todennäköisyyden solmun arvolle olosuhteissa, joissa tunnetaan sen vanhemmat solmut.

Toimintaperiaate

Bayes-verkon perusajatus on hajottaa suureen muuttujajoukkoon liittyvä yhteisjakauma yksinkertaisempiin ehdollisiin jakaumiin käyttäen verkon rakennetta. Jos verkossa on muuttujat X1,...,Xn, niiden yhdistetty todennäköisyys voidaan esittää kertolaskuna muotoa:

P(X1,...,Xn) = Π_i P(Xi | Parents(Xi))

Tässä Parents(Xi) tarkoittaa Xi:n suoraan vaikuttavien vanhempien joukkoa verkossa. Tämä rakenne perustuu oletuksiin ehdollisesta riippumattomuudesta, jotka usein yksinkertaistavat mallinnusta ja laskentaa.

Esimerkki

Yksinkertainen ja usein käytetty esimerkki on muuttujat Rain, Sprinkler ja WetGrass. Verkossa voi olla reunat Rain → WetGrass ja Sprinkler → WetGrass. Tällöin WetGrass:n todennäköisyys määräytyy Rainin ja Sprinklerin arvojen perusteella CPT:n avulla, ja yhteisjakauma hajautuu kahdeksi tai kolmeksi ehdolliseksi todennäköisyydeksi, joita voidaan yhdistellä ennusteiden tai jälkijohdantojen laskemiseksi.

Parametrien ja rakenteen oppiminen

Bayes-verkon voi rakentaa asiantuntijatiedon pohjalta tai oppia datasta. Oppimiseen kuuluu kaksi pääosaa:

  • Rakenneoppiminen: millainen graafi (mitkä reunat) parhaiten kuvaa muuttujien välisiä riippuvuuksia;
  • Parametrioppiminen: kunkin solmun ehdollisten jakaumien (CPT) arviointi annetuista havainnoista.

Rakenneoppiminen on laskennallisesti haastavampaa ja usein vaatii heuristiikkoja, rangaistuksia monimutkaisuudesta (esim. BIC, AIC) tai rajoituksia etsintätilaan.

Päätteleminen ja algoritmit

Kun verkko on määritelty, sillä voidaan tehdä erilaisia päättelytehtäviä: ennustaminen (forward inference), takautuva päättely (likelihood given evidence), marginaalinen todennäköisyyslaskenta ja MAP- tai MPE-estimointi. Algoritmit voidaan jakaa:

  • Tarkkoihin menetelmiin: muuttujien eliminointi (variable elimination), junction tree -algoritmit;
  • Likimääräisiin menetelmiin: satunnaisotannat (Monte Carlo, MCMC), importance sampling, loopy belief propagation.

Valinta riippuu verkon koosta, tiheydestä ja laskennallisista resursseista.

Käyttökohteet

Bayes-verkkoja käytetään laajasti eri aloilla, erityisesti koneoppimisen ja tilastollisen mallintamisen sovelluksissa. Tyypillisiä käyttökohteita ovat:

  • lääketieteellinen diagnostiikka ja päätöksentuki;
  • vikojen tunnistus ja luotettavuusanalyysi;
  • kuvan-, asiakirjan- ja puheentunnistus;
  • ajallisten prosessien mallinnus dynaamisilla Bayes-verkoilla (DBN), joihin kuuluvat myös Hidden Markov -mallit;
  • tiedonhaku, suodatus ja personointi;
  • bioinformatiikka ja geneettisten verkostojen mallinnus;
  • roboikka ja tilannetietoisuus.

Rajoitukset ja huomioita

  • Bayes-verkko perustuu valittuihin ehdollisen riippumattomuuden oletuksiin; väärä rakenne voi johtaa virheellisiin johtopäätöksiin.
  • Rakenneoppiminen on NP-vaikea ongelma yleisessä tapauksessa, ja suuret tiheät verkot voivat olla laskennallisesti haastavia.
  • Kun muuttujilla on jatkuvia arvoja, tarvitaan lisämalleja (esim. Gaussinen Bayes-verkko) tai diskretointia.

Menetelmän juuret ovat Thomas Bayesin havainnoissa, ja periaatteena toimiva Bayesin teoreema antaa teoreettisen pohjan ehdollisille todennäköisyyksille ja päivitykselle uusien havaintojen perusteella.