Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What are "Factor Graphs" and what are they useful for?

A friend is using Factor Graphs to do text mining (identifying references to people in text), and it got me interested in this tool, but I'm having a hard time finding an intuitive explanation of what Factor Graphs are and how to use them.

Can anyone provide an explanation of Factor Graphs that isn't math heavy, and which focusses on practical applications rather than abstract theory?

like image 277
sanity Avatar asked Apr 18 '11 21:04

sanity


People also ask

What is a factor graph used for?

In probability theory and its applications, factor graphs are used to represent factorization of a probability distribution function, enabling efficient computations, such as the computation of marginal distributions through the sum-product algorithm.

What is factor in factor graph?

A factor graph is a type of probabilistic graphical model. A factor graph has two types of nodes: Variables, which can be either evidence variables when their value is known, or query variables when their value should be predicted. Factors, which define the relationships between variables in the graph.


1 Answers

Factor graph is math model, and can be explained only with math equations. In nutshell it is way to explain complex relations between interest variables in your model. Example: A is temperature, B is pressure, components C,D,E are depends on B,A in some way, and component K is depends on B,A. And you want to predict value K based on A and B. So you know only visible states. Basic ML libraries don't allow to model such structure. Neural network do it better. And Factor Graph is exactly solve that problem. Factor graph is an example of deep learning. When it is impossible to present model with features and output, Factor models allow to build hidden states, layers and complex structure of variables to fit real world behavior. Examples are Machine translation alignment, fingerprint recognition, co-reference etc.

like image 99
yura Avatar answered Sep 22 '22 21:09

yura