ベイジアンネットワークによる確率推論は観測された変数の確定値(evidence:)から, 知りたい確率変数()の確率,すなわち事後確率 を求め, それにより期待値や確信度最大の値(MAP値),ある仮説の確信度(いくつかの変数が 特定の値の組をとる同時確率)などを評価することである. すなわち,i) 観測された変数の値をノードにセットする, ii) 親ノードも観測値も持たないノードに事前確率分布を与える, iii) 知りたい対象の変数の事後確率を得る, という手順で計算を行なうことがベイジアンネットワークの上の確率推論である.
iii)における事後確率を求めるために,evidenceからの確率伝播(変数間の局所計算) によって各変数の確率分布を更新していくbelief propagationと呼ばれる計算が ベイジアンネットワークの上の計算アルゴリズムの特徴である.ここでは簡単な 図3の構造での計算の例を示す.
の条件付き依存性が成立しており,計算するノードから
先の親ノードに与えられるevidenceを, 計算するノードから先の子ノードに
与えられるevidenceをとする.ベイズの定理より,ノードの確率は
一方,子ノード側のの寄与分,を計算するためには,
に関する条件付き確率
を使った周辺化を行なう.
この局所的な変数間を伝播するような確率計算が繰り返し行なわれ, 観測値として確定値の代入されたevidenceを起点にしてネットワーク全体をくまなく 伝播することで各ノードの確率値が得られる.
ただし,一般的なグラフの場合にはノードには複数の親,子ノードが存在し, また観測値が多数入ることもある.そのため,計算の複雑性はグラフの構造や 観測値の入り方により大きく影響を受け,高速な計算のためにはネットワーク内の伝播を 効率的に行うことが重要になる. 任意の二つのノード間にパス5が一つしか存在しない singly connectedグラフの場合には最悪計算量がノードの数にたいしては線形オーダー となる効率の良い確率伝播アルゴリズムが複数の研究者により提案されている [Pearl 88,Lauritzen 88].
ノード間のパスが複数存在してもよい一般のグラフ構造, multiply connectedグラフの場合には,最悪計算量がNP困難になるという問題がある[Cooper 90]. そこで,この場合には複数のノードを併合してグラフ構造を一つのsingly connectedグラフに 変換する(clustering),確率変数を複数の値に場合分けして,複数のsingly connectedグラフに変換する (conditioning),モンテカルロサンプリングを行う,などの様々な近似的な解決法がある. とくに最近では,さらに現実的な計算効率の良いアルゴリズムとして,グラフをいくつかの部分的な無向グラフと それらを結合した木に変換して計算を限定的に行うjunction treeアルゴリズムと呼ばれるものが,また 理論的な近似アルゴリズムとしてvariational method(変分法) 6と平均場近似の応用 [Jordan 98,Wiegerinck 98,Tanaka 00]が注目されている.