如何在pythonigraph中重用pagerank计算的先前结果

2024-05-20 11:37:24 发布

您现在位置:Python中文网/ 问答频道 /正文

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

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


Tags: 模块算法节点图表时间pr原型速度
1条回答
网友
1楼 · 发布于 2024-05-20 11:37:24

首先,PageRank是一个随机算法。PageRank方程可以归结为计算稀疏矩阵的主特征向量(不完全是稀疏矩阵,而是稀疏矩阵加上其他一些矩阵的和,我们可以像稀疏矩阵一样快速地计算向量乘积),因此它是完全确定的。在

第二,不幸的是,没有办法告诉PageRank算法的内部实现,结果应该“接近”之前的PageRank向量,虽然理论上它是有用的,因为如果从一个已经接近实际特征向量的向量开始,特征向量计算可能会更快收敛。在

然而,从0.7版开始,igraph使用PRPACK来计算PageRank向量,而且PRPACK已经高度优化,所以即使您事先没有指定“特征向量提示”,它也可能在您的图上运行得很快。我先试试看怎么样。在

相关问题 更多 >