neural networks と bayesian networks

Feed Forward Neural Networks (Multi-layer Perceptron)と Baysian Networks (Belief Networks) は、DAG で表現された学習・推論のモデルであるという点で似ている。

FFNNでは、1つのノードは入力の線形和に対する閾値関数として定義され、
線形和の重みと閾値関数(典型的には閾値そのの)が、1つのノードのパラメータ。

BN では、1つのノードは入力確率変数に対する条件付き確率分布として定義され、
離散確率変数を用いる場合は全組み合わせの確率表(Conditional Probability Table)、
連続確率変数を用いる場合はそのパラメータが、1つのノードのパラメータ。

FFNNでは有向グラフの向きに沿って、入力値が加工されていき、
最後の出る辺がないノードから、出力値が出される。

BNでは観測変数が入力されると、
そこから有効グラフの向きに沿って、もしくは逆流して、ノードの確率表が埋められてゆく。
隠れ変数の確率表が埋められたら、それが出力となる。

neural networks と baysian networks のからみの一例として
sigmoid belief networks がある。
Mean Field Theory for Sigmoid Belief Networks - Saul, Jaakkola, Jordan (1996)
BNのノードは一般にFFNNのノードよりも多くの情報を持つが、
特に各ノードの条件付き確率分布を入力の確率の線形和にsigmoidを掛けた関数とした場合のBNは、
ニューロン閾値関数がsigmoidになったFFNNに一致する。
ただし、信号が伝わる方向がDAGの方向とは限らなくて、
誤差逆伝播のかわりに、
ベイズ則を使って隠れ変数ノードのパラメータを求める。
解析的には求まらないので、サンプリングかvariational bayes法(平均場近似)を用いるのが一般的。

もっと深い解説は http://d.hatena.ne.jp/higotakayuki2/20070712/p2#c

変分ベイズ - 朱鷺の杜Wiki
ベイジアンネット - 朱鷺の杜Wiki
ニューラルネット - 朱鷺の杜Wiki
Markov確率場 - 朱鷺の杜Wiki

Frequently asked questions about Bayesian methods for neural networks