您的位置:首页 > 其它

简单快速地理解pagerank

2015-12-07 17:21 260 查看

直观理解

一句话概括:pagerank求的是,一个人沿着网站之间的超链接浏览整个互联网,一段时间后,其停留在某个网页上的概率。这个概率就是这个网页的pagerank值。

当然,这只是基本思想,实际的pagerank值不一定非要在0-1之间。(根据实现方法不同)

以及,还有一种解释是,一个网页A包含一条指向另一个网页B的超链接,就可以理解为网页A认为网页B比较重要,相当于为网页B投了一票。而这种通过超链接的形式得到的“票数”越多,就说明这个网页越重要(pagerank值越高)。不过,这个说法容易跟其他类似的算法搞混(比如HITS算法),所以我还是比较喜欢第一种解释。

实际例子可以参考这篇博客

数学建模

数学建模部分参考了这篇博客。相当于对其重新整理,再加上自己的理解。

首先,我们需要一个超链接矩阵GG(所有元素都是0或1),其中GijG_{ij}表示有一条从网页jj指向网页ii的超链接。(虽然这么定义貌似有些别扭,但是为了后面的式子好看,这种别扭还是值得的)

然后,我们假设一个user只能通过两种方式访问一个网页。

通过其当前所在页面的超链接跳转到另一个网页

随机地访问一个网页

我们假设用户采用第一种方式的概率是pp,采用第二种方式的概率是1−p1-p。这个pp通常取0.85(经验性的)。

之所以定义了两种方式,是因为如果只采用第一种方式,则若一个网页不指向任何其他网页,则用户到了这个页面后就无法继续访问其他网页了。这就是pagerank理论中说的黑洞,或者悬挂页面。所以我们加上一个随机访问的方式,从而使得每个页面都是可达的。

我们定义另外一个矩阵AA,AijA_{ij}表示从页面jj进入页面ii的概率。另外我们定义cjc_j代表页面jj中所有超链接的个数。

显然,AijA_{ij}由两部分组成:

从jj通过超链接跳转到ii,概率为:pGijcjp\frac{G_{ij}}{c_j}。其中GijG_{ij}取0或1。

通过随机访问进入页面ii,概率为:(1−p)1n(1-p)\frac{1}{n}。其中nn为所有网页的个数。

所以:

Aij=pGijcj+(1−p)1n\begin{equation}
A_{ij} = p\frac{G_{ij}}{c_j} + (1-p)\frac{1}{n}
\end{equation}

写成矩阵形式:

A=pGD+(1−p)1nI\begin{equation}
A = pGD + (1-p)\frac{1}{n}I
\end{equation}

其中,DD是对角矩阵,DjjD_{jj}是1cj\frac{1}{c_j},即第jj个页面超链接数目的倒数。II是单位矩阵,即对角线元素为1的对角矩阵。

这样,我们就得到包含从页面jj进入页面ii的概率的转移矩阵A。

设rkr^k代表第k轮迭代后,每个页面的pagerank值组成的向量。且|rk|1=1|r^k|_1=1,即所有页面pagerank值之和等于1(因为pagerank值是若干步后,user停留在某个页面上的概率)。初始时,r0r^0中每个元素都是1n\frac{1}{n}。

通过下面的式子进行若干轮迭代后,即可得到最终的pagerank值:

rk+1=Ark\begin{equation}
r^{k+1} = Ar^k
\end{equation}

当然这个求解方式只是最naive的版本。更快速的版本可以参考本节开头的引文。

pagerank算法的收敛性

所谓的收敛,即经过若干轮迭代后,rk+1r^{k+1}与rkr^k相差很小。

上述迭代的过程其实是一个马尔科夫过程,即当前状态只跟其前一个状态有关的随机过程(一阶马尔科夫过程),这里的状态就是user停留在各个页面的概率。

而pagerank算法的收敛性,则来自于马尔科夫过程的收敛性。

随机过程理论表明,当一个马尔科夫过程满足下面四个条件时,其经过若干步后,会达到一个平稳分布,即各个状态的概率不再改变(pagerank中就是user在若干步后,其停留在某个页面的概率不再改变)。

这四个条件是:

可能的状态数量是有限的。

转移概率固定不变。

从任意一个状态能够变到任意其他一个状态。有可能不是从状态A直接变到状态C,而是先变到状态B再变到C,但只要有路径从状态A变成状态C就行。

过程不是简单循环。比如不能是从全A变到全B,然后又自动从全B变到全A。

显然,pagerank算法所对应的马尔科夫过程全都满足。所以,pagerank算法必然会收敛。

当然,上面的四个条件只是比较白话的版本,正式的版本是:有限状态的不可约非周期马尔可夫链必存在平稳分布。看不懂的话随便找一本随机过程的书即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: