Personalized Page Rank in Graphlab create

User 552 | 12/9/2014, 11:23:41 AM

Can we use the pagerank.create API to compute personalized page rank i.e., accept different reset probabilities to specific nodes in the graph instead of a uniform reset probability? Is there some workaround possible in the current release? If not, is this planned for any future release?

Thanks Debdoot

Comments

User 552 | 12/10/2014, 6:16:18 AM

Thanks Brian. Will try the triple_apply function


User 1037 | 12/10/2014, 7:48:57 PM

The general version of Personalized Pagerank is pretty expensive, but the Source-Target version looks promising. A quick scan at this paper from Stanford, http://arxiv.org/pdf/1404.3181v2.pdf, I think it's doable using triple_apply. The core part of the algorithm is to compute K random walk of length L from a single node x.

The tripleapply python interface is great for prototyping. If you want the best performance, please stay tuned for our incoming SDK which allows you to write tripleapply function in native C++.


User 24 | 12/19/2014, 10:55:30 AM

@JayGu‌ , have you considered implementing DrunkardMob (for Personalized Pagerank, as one example)for GraphLab Create? :)

https://github.com/GraphChi/graphchi-java/wiki/Personalized-Pagerank-with-DrunkardMob http://www.cs.cmu.edu/~akyrola/files/drunkard-final.pdf


User 552 | 12/31/2014, 9:03:20 AM

Thanks @"Haijie Gu"‌ . Look forward to the incoming C++ SDK for triple_apply.

A naive question. FAST-PPR authors have a scala implementation for their algorithm here: https://github.com/plofgren/fast-ppr-scala

Do you think a Graphlab Create implementation can be radically faster than the scala one? Also, please drop a post in case you plan to implement DrunkardMob in Graphlab-Create.


User 91 | 12/31/2014, 6:23:41 PM

Checkout the GraphLab create SDK is out. https://github.com/graphlab-code/GraphLab-Create-SDK/blob/master/sdkexample/sgraphweighted_pagerank.cpp

Do give us some feedback on the SDK.

Here is some example code that can help you get started: https://github.com/graphlab-code/GraphLab-Create-SDK/blob/master/sdkexample/sgraphweighted_pagerank.cpp