On 12.10.2016 07:12, isukritgupta wrote:
Hi Tiago, I am a new user for Graph Tool. I was trying to do a fitting approach for a graph. And to measure the goodness of fit, I intend to use log of likelihood score for the generated graph and the real graph.
For this, I needed to calculate the probabilities of each edge existing in the generated graph. However, when I use the 'get_edge_prob' function for BlockState, I get values which are greater than 0 for an edge existing. Which should not be possible since log(prob) <= 0. It is supposed to return 'unnormalised log probability' of the edge.
Can you please clarify?
The exact quantity computed is explained here: https://graph-tool.skewed.de/static/doc/demos/inference/inference.html#predi... It is the posterior likelihood of a missing edge, conditioned on the observed graph and model. It is unnormalized, because computing the normalization constant would require obtaining this value for every possible missing edge, which is typically of the order O(N^2). Since it is not normalized, it can also return log-probability values that are above zero. Best, Tiago -- Tiago de Paula Peixoto <tiago@skewed.de>