深入探讨PageRank(二):PageRank原理剖析

深入探讨PageRank(二):PageRank原理剖析

 

关于PageRank的基础知识简介请参见博文:《深入探讨PageRank(一):PageRank算法原理入门》

 

一、PageRank算法的简单举例

Google PageRank算法的思想精华在于:将一个网页级别/重要性的排序问题转化成了一个公共参与、以群体民主投票的方式求解的问题,网页之间的链接即被认为是投票行为。同时,各个站点投票的权重不同,重要的网站投票具有较大的分量,而该网站是否重要的标准还需要依照其PageRank值。这看似是一个矛盾的过程:即我们需要用PageRank值来计算PageRank~

听起来有点不可思议,既像是递归,又像是迭代,似乎陷入了一个漩涡,Google的创始人佩奇和布林证明了这个过程最终收敛值与初始值无关。遗憾的是我一直都没有找到这个证明,甚至我把佩奇他们当年那篇论文找出来看也没有发现~

对于PageRank的收敛性,我们是可以找到反例的,这说明PageRank至少在某些情况下是不可能收敛的,或者说是收敛不完备的。在本文的第三部分,我们将PageRank的问题转化为了马尔可夫链的概率转移问题,其收敛性的证明也即转化为了马氏链的平稳分布是否存在的证明。我们先来看一个简单的例子:

Google PageRank取值范围是0~10,为了叙述方便,我们使用0~1的区间作为度量,这并不会影响我们对PageRank原理的剖析,并且在初始化的时候,我们假设所有网站的PageRank的值是均匀分布的。这意味着,如果有N个网站,那么每个网站的PageRank初始值都是1/N。现在假设有4个网站ABCD,则它们的初始PageRank都是0.25,它们的链接关系如下:

 

则初始值PR(A) = PR(B) = PR(C) = PR(D) = 0.25,又因为BCD都有指向A的链接,因此,它们每人都为A贡献了0.25PageRank值,重新计算APageRank值为:PR(A) = PR(B) + PR(C) + PR(D) = 0.75,由于BCD并没有外部链接指向它们,因此PR(B)PR(C)PR(D)在这次计算中将被赋值为0。反复套用PageRank的计算公式,来看一下,这种情况下PageRank的收敛性,在第二次迭代之后,所有的PageRank值就都是0了:

PageRank

PR(A)

PR(B)

PR(C)

PR(D)

初始值

0.25

0.25

0.25

0.25

第一次迭代后

0.75

0

0

0

第二次迭代后

0

0

0

  • 10
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 16
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值