这是来自networkx的pagerank函数
def pagerank(G, alpha=0.85, personalization=None,
max_iter=100, tol=1.0e-6, nstart=None, weight='weight',
dangling=None):
我对个性化和重量感到困惑。
我理解,当个性化矩阵未提供时,将使用统一矩阵;当未提供权重时,将使用边缘权重 1。
我一直在阅读:边缘权重个性化和节点权重个性化。
http://www.cs.cornell.edu/~bindel/present/2015-08-kdd-talk_kdd-aug15.pdf
所以我的假设是个性化向量-->可以用于节点权重个性化。例如。我们正在计算特定主题 t 的节点的 pagerank。我们给出个性化向量,其中与主题更相关的节点获得更多值(value)。
但是边缘权重呢?当我对 V 的一个传出边赋予比其他边更高的权重时,会发生什么? ?
我无法区分这两件事(边缘权重和个性化向量)。
还有: 字典 dangling :代表隐形传态向量。如果未提供,则使用个性化向量。悬空字典对我来说更容易理解,它提供了当我们到达悬空节点时随机转移的概率。
有人可以帮助理解我提供所有三个的场景,即边缘权重、个性化向量和悬挂向量(页面排名将如何受到影响)
最佳答案
这并不是一个真正的编程问题,但无论如何我都会回答。
在 NetworkX 实现中,如果您设置个性化向量,这些值也将用于“悬空节点” - 您无法单独设置悬空节点值。
“weight=”参数给出用作数字边缘权重的边缘属性。默认情况下,weight=None 将所有权重设置为相等(为 1)。如果您想偏置某些边,您可以根据图表中的属性随意调整它们。
关于python - Pagerank 个性化向量、边缘权重和悬挂字典(隐形传态向量),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36208135/