验证R中的个性化PageRank矩阵

时间:2015-10-12 08:17:01

标签: r igraph pagerank

我的问题是参考这篇论文here

这是本文的摘录

enter image description here enter image description here

从两个方程的相似性我们可以看出,如果加上ppr_alpha_u,它将等于pr_alpha

然而,当尝试在R中执行此操作时,我的结果似乎不符合

我提供以下代码

graph <- graph.formula(A -+ B, A -+ C, A -+ D,
                   B -+ A, B -+ D,
                   C -+ A,
                   D -+ C, D -+ B)

全球网页排名由

给出
> page_rank(graph,vids=V(graph),directed=T,damping = .8)
$vector
        A         B         C         D 
0.3214286 0.2261905 0.2261905 0.2261905 

$value
[1] 1

$options
NULL

个性化页面排名由

给出
> page_rank(graph,vids=V(graph),directed=T,damping=.8,personalized = c(1,0,0,0))
$vector
        A         B         C         D 
0.4285714 0.1904762 0.1904762 0.1904762 

$value
[1] 1

$options
NULL

> page_rank(graph,vids=V(graph),directed=T,damping=.8,personalized = c(0,1,0,0))
$vector
        A         B         C         D 
0.2693878 0.3578231 0.1578231 0.2149660 

$value
[1] 1

$options
NULL

> page_rank(graph,vids=V(graph),directed=T,damping=.8,personalized = c(0,0,1,0))
$vector
        A         B         C         D 
0.3428571 0.1523810 0.3523810 0.1523810 

$value
[1] 1

$options
NULL

> page_rank(graph,vids=V(graph),directed=T,damping=.8,personalized = c(0,0,0,1))
$vector
        A         B         C         D 
0.2448980 0.2040816 0.2040816 0.3469388 

$value
[1] 1

$options
NULL

我们从个性化页面浏览器的向量中看到,他们没有添加到全局pagerank。 任何帮助理解为什么会发生这种情况将不胜感激。

1 个答案:

答案 0 :(得分:1)

igraph返回的PageRank向量被归一化,使得它们的总和等于1(而不是顶点的数量,如您引用的论文所给出的)。由于这种特殊的归一化,它不再是个性化PageRank向量的总和等于非个性化的PageRank向量。但请注意,如果将igraph给出的非个性化PageRank向量与图形中的顶点数相乘,您将得到个性化PageRank向量的总和。