【问题标题】:how can i re-use previous results of a pagerank calculation in python-igraph如何在 python-igraph 中重用以前的 pagerank 计算结果
【发布时间】:2014-11-17 23:51:27
【问题描述】:

我有一个不断变化的图表。随着时间的推移,添加了一些顶点并出现了一些新边(节点没有被删除)。如果我有以前的 pagerank 计算结果,我该如何重复使用它以提高速度?

python igraph 模块看起来很漂亮,但我找不到任何相关的东西。 指定的改进应该是有用的,因为 pr 是一种随机算法。我有一个用 python 编写的原型,但我真的很想为此使用 C 库包装器。还有其他人经历过吗?

【问题讨论】:

    标签: python graph-theory igraph pagerank


    【解决方案1】:

    首先,PageRank 不是一种随机算法。 PageRank 方程归结为计算稀疏矩阵的主要特征向量(嗯,不完全是稀疏矩阵,而是稀疏矩阵加上一些其他矩阵的总和,我们可以像稀疏矩阵一样快速计算向量积),所以这是完全确定的。

    其次,不幸的是,没有办法告诉 PageRank 算法的内部实现结果应该“接近”之前的 PageRank 向量,尽管理论上它可能有用,因为特征向量计算可能 如果从已经接近真实特征向量的向量开始,则收敛速度更快。

    但是,igraph 从 0.7 版本开始使用PRPACK 计算 PageRank 向量,并且 PRPACK 已经高度优化,因此即使您没有提前指定“特征向量提示”,它在您的图上也可能很快.我会先试一试,看看效果如何。

    【讨论】:

      猜你喜欢
      • 2017-07-02
      • 2014-04-01
      • 2016-05-01
      • 2015-07-17
      • 2019-12-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多