For our experiments with the random alpha PageRank model, we provide all of our code from our real experimental directories.
This code has been edited somewhat for online posting. Namely, we removed most of the data files, and deleted a few directories that weren't relevant to the paper. Finally, we moved a few files around that I hope shouldn't break anything. I believe we also corrected a small bug in the inner-outer iteration for PageRank that did not affect the results.
For any interested parties, we are happy to provide a full copy of our entire experimental directory. It is a few gigabytes in size.
The code contains pieces from the following projects:
- law: Laboratory for Web Algorithmics; for Kendall's Tau
- webgraph++ (slightly adjusted to make it easier to compile)
- libbvg/bvgraph (for using bvgraph's in Matlab)
- OPQ (for quadrature routines)
- barylag (for polynomial interpolation)
- Numerical Computing with Matlab (for harvard500 graph)
The experiments use data from the following sources:
- webgraph datasets (cnr-2000, indochina, eu-2005)
- webspam datasets (uk-2006-host, uk-2007-host, uk-2006)
- socscibot crawls (nz2006, uk2005, us2004cc, converted to bvgraph files for the experiments)
- wikipedia (see wikipedia datasets)
- generank (w_All, and expr_data used, requires conversion to RAPr stochastic matrix input)
- harvard500 (included with RAPr download)
Download
Random Alpha Pagerank aka RAPr
Usage
To use the Matlab codes, you will only have to compile the bvgraph codes if you need them. (You should get an error if you need them.)
The bvgraph codes should compile themselves for your platform, if they don't, please email me for help.
We don't really have time to write additional usage documentation. Just explore around the directories, we've tried to make things as self-explanatory as possible. Especially look at the html directories underneath the experiment directories. They often have copies of the actual sequence of runs we used to produce the results.
Figure | Code | Requires |
---|---|---|
Figure 1 | None (Inkscape drawing) | |
Figure 2 | experiments/density/driver_pagerank_pdfs.m | |
Figure 3 | experiments/density/driver_beta_density.m | |
Figure 4 | experiments/damping/driver_damping_coeffs.m | |
Figure 5 | matlab/inoutpr.m | |
Figure 6 | matlab/pdrapr.m and matlab/beta_moments.m | |
Figure 7 | matlab/pcerapr.m and matlab/solve_pcesys_ujacobi.m | |
Figure 8 | matlab/gqrapr.m | |
Figure 9a | experiments/correctness/driver_exact_har500.m | |
Figure 9b | experiments/correctness/driver_convergence_har500.m | |
Figure 9c | experiments/correctness/driver_convergence_large.m | |
Figure 10 | experiments/correctness/driver_convergence_large_time.m | |
Table 3 | experiments/datastats/driver_datastats.m | |
Table 4 | experiments/comparison/driver_analyze_comparison.m | |
Table 5 | experiments/comparison/driver_uk_2006.m | uk-2006-data |
Figure 11 | experiments/comparison/driver_uk_2006.m | uk-2006-data |
Table 6 | experiments/generank/driver_generank.m | generank.mat |