【问题标题】:Pagerank formula for graph with weighted edges(sequential or BSP )具有加权边的图的 Pagerank 公式(顺序或 BSP)
【发布时间】:2013-02-18 18:27:29
【问题描述】:

Pagerank 算法(我知道)假设边缘没有权重。所以标准公式是:

PR(A) = (1 - d)/N + d*\sigma PR(E)/L(E)

其中 L(E) 是页面 E 的传出链接数,其中 E 是指向页面 A 的每个页面。

正如您在此处看到的,公式中不考虑进入 A 的边的权重。

两个问题:

a) 如果我们考虑进入 A 的每条边的权重,那么调整后的公式是什么,假设权重越高越好(python 中的 networkx 包确实考虑了加权边,但是代码比上面涉及的要多得多公式,我更愿意检查是否有更简单的解决方案)

b) 我实际上想要一个类似 BSP Pregel 的框架。有一个BSP Pregel style implementation,但如您所见,它不考虑边缘的权重。如果你能推荐一个,那就太好了

【问题讨论】:

    标签: parallel-processing graph-algorithm bigdata pagerank


    【解决方案1】:

    我建议您首先将所有边权重加到邻居中,然后将节点排名的百分比发送给邻居。

    示例: 一个节点的等级为 10。他有 2 个邻居,它们的边的权重分别为 70 和 30。 总而言之,这将是 100。对于边权重为 70 的第一个节点,您发出 7 的等级,而对另一个节点发出 3。

    【讨论】:

      【解决方案2】:

      WeightedPageRank here 有一个 Java 实现。我没有尝试过,但在快速阅读来源后,它似乎符合您的要求。

      【讨论】:

      • 谢谢 :),我将从 merando 提供的简单方法开始
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-26
      • 2023-03-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多