you are completely right. I also started implementing RWR today
coincidently, could you file a JIRA ticket for RWR? I would attach my
work done so far and we could work a little on the code.
I think that a lot of things need improvement in the PageRank/RWR
implementation, e.g. stuff like the teleportation probability should be
configurable. Furthermore you shouldn't have to specify the number of
supersteps that need to be executed, but convergence should be checked
somehow via an aggregator.
On 17.05.2012 22:58, Gianmarco De Francisci Morales wrote:
> Hi Giraphers,
> I am implementing a Random Walk with Restart on Giraph.
> As far as I have understood, the only thing needed would be to modify
> PageRank in order to take into account the preference vector.
> This means all random jumps get back to the source of the RWR.
> In practice, in org/apache/giraph/examples/SimplePageRankVertex.java the
> new vertex value is computed as:
> DoubleWritable vertexValue = new DoubleWritable((0.15f /
> getNumVertices()) + 0.85f * sum);
> And the only thing I should do to implement the RWR is
> if ( myID == sourceID )
> DoubleWritable vertexValue = new DoubleWritable((0.15f + 0.85f * sum);
> DoubleWritable vertexValue = new DoubleWritable(0.85f * sum);
> Because all the random jumps converge on the single source.
> Am I correct or am I missing something?