pagerank 算法简介
Posted 纯纯的心儿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pagerank 算法简介相关的知识,希望对你有一定的参考价值。
1. 概述:
① 数量假设;在web图模型中,如果一个页面节点接受到的其他网页指向的入链数量越多,那么这个页面就越重要,
②质量假设:指向页面A的入链质量不同,质量高的页面,会通过链接像 其他页面传递更多的权重,所以越是质量
高的页面指向页面A,则页面 A就越重要。
2.计算:
(1)假设只有4个页面组成的集合,ABCD,结果所有都指向A,那么A的PR为PR(A)=PR(B)+PR(C)+PR(D).
假设D指了三个页面,B指了AC,则PR(A)=PR(B)/2+PR(C)+PR(D)/3;
PR(A)=PR(B)/L(B)+PR(C)/L(C)+PR(D)/L(D);
(2) 修正: 加一个阻尼系数,使没有的页面的PR为0. PR(A)=(PR(B)/L(B)+PR(C)/L(C)+PR(D)/L(D))*Q+1-q;
幂法问题:
是被研究的页面,是链入页面的数量,是链出页面的数量,
而N是所有页面的数量。
PageRank值是一个特殊矩阵中的特征向量。这个特征向量为:
R是如下等式的一个解:
如果网页i有指向网页j的一个链接,则
否则=0。
使用幂法求PageRank
那我们PageRank 公式可以转换为求解的值,
其中矩阵为 A = q × P + ( 1 一 q) * /N 。 P 为概率转移矩阵,为 n 维的全 1 行. 则 =
幂法计算过程如下:
X 设任意一个初始向量, 即设置初始每个网页的 PageRank值均。一般为1.
R = AX;
while (1 )(
if ( l X - R I < ) //如果最后两次的结果近似或者相同,返回R
return R;
else
X =R;
R = AX;
求解步骤:
一、 P概率转移矩阵的计算过程:
先建立一个网页间的链接关系的模型,即我们需要合适的数据结构表示页面间的连接关系。
1) 首先我们使用图的形式来表述网页之间关系:
现在假设只有四张网页集合:A、B、C,其抽象结构如下图1:
图1 网页间的链接关系
显然这个图是强连通的(从任一节点出发都可以到达另外任何一个节点)。
2)我们用矩阵表示连通图:
用邻接矩阵 P表示这个图中顶点关系 ,如果顶(页面)i向顶点(页面)j有链接情况 ,则pij = 1 ,否则pij = 0 。如图2所示。如果网页文件总数为N , 那么这个网页链接矩阵就是一个N x N 的矩 阵 。
3)网页链接概率矩阵
然后将每一行除以该行非零数字之和,即(每行非0数之和就是链接网个数)则得到新矩阵P’,如图3所示。 这个矩阵记录了 每个网页跳转到其他网页的概率,即其中i行j列的值表示用户从页面i 转到页面j的概率。图1 中A页面链向B、C,所以一个用户从A跳转到B、C的概率各为1/2。
4)概率转移矩阵P
采用P’ 的转置矩 阵进行计算, 也就是上面提到的概率转移矩阵P 。 如图4所示:
图2 网页链接矩阵: 图3 网页链接概率矩阵:
图4 P’ 的转置矩 阵
A矩阵计算过程。
1)P概率转移矩阵 :
2)/N 为:
3)A矩阵为:q × P + ( 1 一 q) * /N = 0.85 × P + 0.15 * /N
初始每个网页的 PageRank值均为1 , 即X~t = ( 1 , 1 , 1 ) 。
循环迭代计算PageRank的过程
第一步:
因为X 与R的差别较大。 继续迭代。
第二步:
继续迭代这个过程...
直到最后两次的结果近似或者相同,即R最终收敛,R 约等于X,此时计算停止。最终的R 就是各个页面的 PageRank 值。
用幂法计算PageRank 值总是收敛的,即计算的次数是有限的。
(上述摘自http://blog.csdn.net/hguisu/article/details/7996185)
而在一个服务组合的问题当中,比如在政府采购的和信誉评价的问题当中,
我们需要考虑 服务 机构, 用户之间的一个信誉的问题。 然后我们可以添加一系列的链接,
如发布链接,信任链接,熟知链接和评价链接等,在服务组合的问题中,常常会遇到冷启动,数据
稀疏性的问题,那么我们想,如果可以对于一个新的用户或者新的服务来说,我们无法对其进行一些推荐
或者评价等,所以,我们就得借助一种临近用户的感知,通过二者用户的一些属性特征进行评估相似度,
借助这个相似度,我们可以通过临近用户对指定服务的评价来进行当前活跃用户(active user) 进行服务评价。
此外,在拥有用户、服务、机构等的相似度的同时,我们可以对一些服务或用户的行为进行预测,比如: A小姐和B
先生,A小姐和B先生的相似度有99%(当前只是一个假设值),那么这个相似度是通过一系列的服务属性进行研究得出的,
在我们不知道B先生的一些爱好的时候,我们可以结合A小姐的兴趣对B先生进行一个推荐,这也是服务组合在推荐过程中
的一个重要的环节。
注:上述的图片用于 guisu的博客,谢谢。
陆续更新。。。。。
以上是关于pagerank 算法简介的主要内容,如果未能解决你的问题,请参考以下文章