Luottamuksen leviämisalgoritmi

Kokeneet kirjoittajat eivät ole vielä tarkistaneet sivun nykyistä versiota, ja se voi poiketa merkittävästi 21. heinäkuuta 2022 tarkistetusta versiosta . tarkastukset vaativat 3 muokkausta .

Uskomuksen leviämisalgoritmi , luottamuksen leviämisalgoritmi , myös summatuloalgoritmi , on marginalisointialgoritmi  , joka käyttää kaksisuuntaista viestiä, joka välittää graafin ja jota käytetään päättelemään graafisista todennäköisyysmalleista (kuten Bayesin ja Markovin verkot ). J. Pearlin ehdotus vuonna 1982.

Ongelman selvitys

Harkitse toimintoa:

, missä

Saadaksesi todennäköisyys, sinun on normalisoitava se:

Seuraavat tehtävät otetaan huomioon:

  1. Normalisointitehtävä : _
löytö
  1. Syrjäytymisen tehtävä :
löytö
  1. Normalisoitu syrjäytymisongelma
löytö

Kaikki nämä ongelmat ovat NP-täydellisiä , joten niiden pahimman tapauksen monimutkaisuus kasvaa eksponentiaalisesti. Jotkut erikoistapaukset voidaan kuitenkin ratkaista nopeammin, minkä tämä algoritmi tekee .

Kaavion rakenne

Algoritmin käyttämä graafi koostuu muuttujia vastaavista pisteistä ja funktioita vastaavista pisteistä. Funktiot on kytketty muuttujiin, joista ne riippuvat.

Esimerkki

Esimerkiksi toiminnot

vastaa seuraavaa kaaviota:

Viesti kulkee

Kaaviossa lähetetään kahdenlaisia ​​viestejä: funktioista muuttujiin ja muuttujista funktioihin.

Muuttujasta funktioon :

(tässä  on joukko i:n vieressä olevia pisteitä)


Funktiosta muuttujaksi :

Tässä tapauksessa tyhjän tuotteen oletetaan olevan yhtä suuri kuin yksi. Näistä kaavoista voidaan nähdä, että jos kärjessä on vain yksi naapuripiste, niin sen (vertex) sanoma voidaan laskea tietämättä saapuvia viestejä.

Algoritmi

On olemassa kaksi lähestymistapaa, riippuen tuloksena olevan kaavion luonteesta.

Lähestymistapa 1

Oletetaan, että graafi on puu . Lehdistä alkaen ohitamme vähitellen kaikki kärjet ja laskemme viestejä (tässä tapauksessa pätee vakioviestinvälityssääntö: viesti voidaan lähettää vain, jos se voidaan rakentaa kokonaan).

Sitten algoritmi päättyy useissa vaiheissa, jotka ovat yhtä suuria kuin kaavion halkaisija .

Lähestymistapa 2

Jos kuvaaja ei ole puu , voit aloittaa siten, että kaikki muuttujat lähettävät viestin 1, ja sitten muokata sitä, kun funktioiden viestit saavuttavat ne.

Tällainen algoritmi toimii yleensä väärin ja tekee paljon turhaa työtä, mutta käytännössä siitä on silti hyötyä.

Marginaalien laskeminen

Kun viestien jakelu on valmis, marginaalit lasketaan seuraavan kaavan mukaan:

Lennossa normalisointi

Jos haluat laskea vain normalisoidut marginaalit ( todelliset todennäköisyydet ), voit normalisoida viestit muuttujista funktioiksi kussakin vaiheessa:

,

missä on valittu niin

Algoritmin matemaattinen perustelu

Matemaattisesta näkökulmasta algoritmi hajottaa uudelleen alkuperäisen jaottelun:

työhön:

,

jossa vastaa funktiosolmuja  ja muuttujasolmuja.

Aluksi ennen viestiä ja

Joka kerta kun funktiosta tulee viesti muuttujalle ja lasketaan uudelleen:

,

On selvää, että kokonaistuote ei muutu tästä, ja viestien lähetyksen lopussa siitä tulee marginaalinen .

Linkit

S. Nikolenko. Todennäköisyyspohjainen oppimiskurssi