Difference between revisions of "Belief Propagation"

From Cohen Courses
Jump to navigationJump to search
Line 5: Line 5:
 
* Otherwise, loopy Belief Propagation will become an approximation inference algorithm.
 
* Otherwise, loopy Belief Propagation will become an approximation inference algorithm.
  
== Definition ==
+
== Motivation: Marginals vs. Joint Maximizer ==
In a generalized Markov random fields, the
 
 
 
== Marginals vs. Joint Maximizer ==
 
 
To compute marginals, we need to find:
 
To compute marginals, we need to find:
: <math> P(x_1), P(x_2), P(x_3), ... , P(x_n).</math>
+
: <math> p{x_1}, p{x_2}, P{x_3}, ... , P{x_N}.</math>
  
 
where as to compute joint maximum likelihood, we need:
 
where as to compute joint maximum likelihood, we need:
: <math>\underset{x_1,x_2,x_3,...,x_n}{\operatorname{argmax}}\  P(x_1,x_2,x_3,...,x_n).</math>
+
: <math>\underset{x_1,x_2,x_3,...,x_N}{\operatorname{argmax}}\  P(x_1,x_2,x_3,...,x_N).</math>
 +
 
 +
Unfortunately, for each random variable $X_i$, it might have M possible states, so if we run search algorithms for all states, the complexity is
 +
$O(M^N)$, which is a hard problem.
 +
 
 +
== Problem Formulation ==
 +
In a generalized Markov random fields, the
 +
 
  
  
  
 
== Inference ==
 
== Inference ==

Revision as of 23:39, 26 September 2011

This is a Method proposed by Judea Pearl, 1982: Reverend Bayes on inference engines: A distributed hierarchical approach, AAAI 1982.

Belief Propagation is a message passing inference method for statistical graphical models (e.g. Bayesian networks and Markov random fields). The basic idea is to compute the marginal distribution of unobserved nodes, based on the conditional distribution of observed nodes. There are two major cases:

  • When the graphical model is both a factor graph and a tree (no loops), the exact marginals can be obtained. This is also equivalent to dynamic programming and Viterbi.
  • Otherwise, loopy Belief Propagation will become an approximation inference algorithm.

Motivation: Marginals vs. Joint Maximizer

To compute marginals, we need to find:

where as to compute joint maximum likelihood, we need:

Unfortunately, for each random variable $X_i$, it might have M possible states, so if we run search algorithms for all states, the complexity is $O(M^N)$, which is a hard problem.

Problem Formulation

In a generalized Markov random fields, the



Inference