The PageRank algorithm was developed by Page and Sergey Brin in 1996, ranking webpages on the Internet. [@Brin1998]
A webpage is more important if there are more webpages link to it and if other important pages link to it.
PageRank is designed as a score associated with a webpage/URL that indicates its importance. A webpage earns score from webpages linking to it, and equally distributes its score to each page it links to.
The heuristics implies a system of equations:
\[ r = Mr \]
where r
is the vector of all webpages on the Internet, entries of stochastic adjacency matrix \(M_{ij} = 1/d_j\), and \(d_j\) is the out degree of webpage \(r_j\).
But PageRank algorithm adjusted the matrix a little to make the iteration always converge (the interpretation also deviates a little):
\[ r = \beta Mr + (1-\beta) 1/N \]
where N
is the dimension of r, and common vales of β are in between 0.8 and 0.9.
The algorithm starts with r=1/N
, multiplies with coarse matrix M, adjusts for leaked score, and iterates.
Score vector r
is guaranteed to converge.
Theory of Markov chains (Perron–Frobenius applied to stochastic matrices): For any start vector, the power method applied to a Markov transition matrix P will converge to a unique positive stationary vector as long as P is stochastic, irreducible and aperiodic.
The adjusted stochastic adjacency matrix satisfies all the three requirements: \[ A = \beta M + (1-\beta) \mathbf{1} \mathbf{1}^T /N \]