PageRank
目录
Links as votes
使用In-coming links作为投票,也就是别人引用了我,即一个节点被多少其他节点指向,那么这个节点被多少用户点击的概率就越大。
pagerank假设 In-Links 之间也是不一样,重要网站引用我和无名小将引用我肯定前者更重要。
所以这是一个递归问题。
PageRank求解节点重要度
5个角度理解该问题
连立线性方程组迭代求解
迭代左乘M矩阵
左乘的这个矩阵是M矩阵,右边向量叫做pagerank向量:
矩阵的特征向量:矩阵M代表一种线性变换(原点不变的变换),特征向量也即是变换过程中方向不变的向量,特征值就是变换过后,特征向量前后缩放的系数。(非特征向量线性变换后反向和原来不一样了)
随机游走
随机游走,每访问一个节点该节点计数+1,最后归一化整个有向图的节点得到概率,值就是pagerank值。
马尔科夫链
复杂度
pagerank向量此时刻与上一时刻差值小于某个值就认为是收敛了
收敛性分析
不可约且非周期的马尔科夫链是收敛的。
可约的 –> 孤立的首尾相连环的节点
周期的 –> 两个节点互连
收敛是收敛了,是否收敛到的是网页重要度的值呢?
以上两种情况会导致收敛是收敛,但不会是重要度的值(都为0或都为1了)
这种情况则是直接不收敛,因为连通域互相独立
PageRank需要解决上述问题
遇到爬虫仅指向自己的节点(spider trap),解决方法:
- 有β概率被传送回去
- 有1-β的概率被传送到其他节点(任意一个节点)
- β在0.8到0.9之间随机
遇到死胡同(dead end)节点,解决方法:
- 就让其100%被传送走到其他节点(任意一个节点,任意节点概率相等)
谷歌的解决方案 –> Damping Factor(阻尼系数)
总结
PageRank求解节点相似度
基于PageRank的变种
以上数字反映了与起点节点Q的相似度