junto icon indicating copy to clipboard operation
junto copied to clipboard

Discrepancy in auxiliary functions between MAD paper and junto's implementation

Open abhranilc opened this issue 6 years ago • 0 comments

In http://talukdar.net/papers/adsorption_ecml09.pdf, Pg. 5, the monotonically decreasing function f(x) = log(beta) / log(beta + e^x) is used in computing cv = f(H[v]) where H[v] is the entropy of transition probabilities for each node However, in junto's code, src/main/scala/upenn/junto/graph/Vertex.scala, line 162, var cv = math.log(beta) / math.log(beta + ent) instead of var cv = math.log(beta) / math.log(beta + math.exp(ent))

This discrepancy is resulting in the converged labels to be different when using the paper's formula from using the junto's formula.

Moreover, in src/main/scala/upenn/junto/graph/Vertex.scala, lines (170-178), special handling for the case where jv (dv in paper) is 0. However, if the computation of cv uses the form in paper, this case of jv (or dv) being 0 would not arise.

I am trying to understand why this discrepancy was introduced and what are the implications of the converged labels being different between the two cases.

abhranilc avatar Mar 06 '18 07:03 abhranilc