Typically because results are insufficiently precise.
Usage
# S3 method for Tracker
update(object, ..., epsilon, max_visits)Arguments
- object
The
Trackerobject to update.- ...
Ignored. Passing arguments to
...results in a warning.- epsilon
Desired accuracy of approximation.
epsilonmust be a small positive number. Defaults to1e-6.aPPRguarantees that approximated personalized pageranks are uniformly withinepsilonof their true value. That is, the approximation is guaranteed to be good in an L-infinity sense. This does not guarantee, however, that a ranking of nodes by aPPR is close to a ranking of nodes by PPR.For Twitter graphs, we recommend testing your code with
1e-4or1e-5, using1e-6for exploration, and1e-7to1e-8for final results, although these numbers are very rough. It also perfectly reasonable to runaPPRfor a given number of steps (set viamax_visits), and then note the approximation accuracy of your results. Internally,aPPRkeeps a running estimate of achieved accuracy that is always valid.Anytime you would like to explore more of the graph, you can simply decrease
epsilon. So you can start withepsilon = 1e-5and then gradually decreaseepsilonuntil you have a sample of the graph that you are happy with.Also note that runtime is proportional to
1 / (epsilon * alpha), so smallepsiloncan result in long runtimes.- max_visits
Maximum number of unique nodes to visit. Should be a positive integer. Defaults to
Inf, such that there is no upper bound on the number of unique nodes to visit. Useful when you want to specify a fixed amount of computation (or API calls) to use rather than an error tolerance. We recommend debugging withmax_visits ~ 20, exploration withmax_visitsin the hundreds, andmax_visitsin the thousands to ten of thousands for precise results, although this is a very rough heuristic.