Hi,
I am having a hard time understanding belief propagation algorithm mentioned here:
http://docs.graphlab.org/graphical_models.htmlvs the wiki link.
I would really appreciate if you can help me clarify my understanding.
Lets say... that I have the following data:
0 0.5 0.5
1 0.8 0.2
2 0.1 0.9
3 0.3 0.7
4 0.2 0.8
0 1
0 2
0 3
0 4
and so on..
I just want to focus on computation happening on vertex 0...
So, lets start working on the forumla (joint prob distribution) from left
The exp part means the following...
For all the edges connected to vertex 0, let me grab all the weights (defaulted to 1) and smoothing parameter (defaulted to 2) and then sum them up.. The indicator function is just to check self edges?? (Please confirm)
So, in this example I should get:
exp-(1*2 +1*2 +1*2 +1*2) = exp(-8)
Now this is multiplied by the prior vector? How?
Is it the belief I computed from the vertices attached to vertex 0?? (1,2,3,4?)
So, lets say vertices 1,2,3 and 4 have believes [0.1,0.9] (for sake of an example)
Then this is a probability vector?? Since the formula says product.. Is it a dot product of these vectors?
Then that would mean I get a scalar "k", so for vertex 0, I get exp(-8)*k
That doesnt make any sense? This should have been a vector?
Can someone please explain to me what am i lacking? (in plain simple words if possible.)
Many thanks