Factor Graphs Young Ki Baik Computer Vision Lab. Seoul National University
Factor Graph Computer Vision Lab. SNU Contents Introduction Sum product algorithm Computing a single marginal function Computing all marginal function Probabilistic modeling Conclusion
Factor Graph Computer Vision Lab. SNU Introduction What is a Factor Graph? A factor graph shows how a function of several variables can be factored into a product of “smaller” function.
Factor Graph Computer Vision Lab. SNU Introduction What is a Factor Graph?
Factor Graph Computer Vision Lab. SNU Introduction Why are factor graphs useful? Factor graphs simplify problems. Many efficient algorithms can be applied to factor graphs. Special Feature Factor graph represent not only variables or constant, but also functions.
Factor Graph Computer Vision Lab. SNU Marginal function “~{x}” notation Marginal function Sum product algorithm Object : Get marginal function g(x) using factor graph
Factor Graph Computer Vision Lab. SNU Example (Simple Factor Graph) Let be a function of four variables. Sum product algorithm
Factor Graph Computer Vision Lab. SNU Computing a single marginal function Example (Simple Factor Graph) Marginal function for
Factor Graph Computer Vision Lab. SNU Computing a single marginal function Example (Simple Factor Graph) Marginal function for
Factor Graph Computer Vision Lab. SNU Computing a single marginal function Example (Simple Factor Graph) Marginal function for and Bottom-up procedure
Factor Graph Computer Vision Lab. SNU Computing all marginal functions Computing all marginal functions problem In order to compute all marginal functions, we need to calculate single marginal function as much as n times. Message passing algorithm Solution for redundancy problem
Factor Graph Computer Vision Lab. SNU Message passing algorithm Let denote the message sent from node x to node f in the operation. Let denote the message sent from node f to node x. Computing all marginal functions
Factor Graph Computer Vision Lab. SNU Message passing algorithm Variable to local function Local function to variable Computing all marginal functions
Factor Graph Computer Vision Lab. SNU A Detail Example (Message passing algorithm) The message may be generated in 4 steps. ➀ ~ ➃ are step of message passing algorithm Algorithms start from each leaves. Computing all marginal functions ➀ ➀ ➀ ➁ ➁ ➁ ➂ ➃ ➃ ➂➃ ➂
Factor Graph Computer Vision Lab. SNU A Detail Example (Message passing algorithm) Step 1: Computing all marginal functions ➀ ➀ ➀ Variable to local function
Factor Graph Computer Vision Lab. SNU A Detail Example (Message passing algorithm) Step 2: Computing all marginal functions ➁ ➁ ➁ Local function to variable
Factor Graph Computer Vision Lab. SNU A Detail Example (Message passing algorithm) Step 3: Computing all marginal functions ➂ ➂ ➂ Variable to local function
Factor Graph Computer Vision Lab. SNU A Detail Example (Message passing algorithm) Step 4: Computing all marginal functions ➃ ➃ ➃ Local function to variable
Factor Graph Computer Vision Lab. SNU A Detail Example (Message passing algorithm) Termination Computing all marginal functions ➀ ➀ ➀ ➁ ➁ ➁ ➂ ➃ ➃ ➂➃ ➂
Factor Graph Computer Vision Lab. SNU Probabilistic Modeling Markov chain
Factor Graph Computer Vision Lab. SNU Probabilistic Modeling Hidden markov model
Factor Graph Computer Vision Lab. SNU Conclusion More information The closed factor graph It can be computed by iterative method. Conclusion Factor graph can apply to many efficient algorithms. Factor graph is only a simplifying tool to solve the problems.