2024-05-20 11:37:24 发布
网友
我有一个不断变化的图表。随着时间的推移,会添加一些顶点,并且会出现一些新边(不会删除节点)。如果我有以前的pagerank计算结果,如何重用它以提高速度?在
pythonigraph模块看起来很漂亮,但是我找不到任何相关的东西。 指定的改进应该是有用的,因为pr是一个随机算法。我有一个用python编写的原型,但是我真的很想使用C库包装器来实现这一点。还有人经历过吗?在
首先,PageRank是一个随机算法。PageRank方程可以归结为计算稀疏矩阵的主特征向量(不完全是稀疏矩阵,而是稀疏矩阵加上其他一些矩阵的和,我们可以像稀疏矩阵一样快速地计算向量乘积),因此它是完全确定的。在
第二,不幸的是,没有办法告诉PageRank算法的内部实现,结果应该“接近”之前的PageRank向量,虽然理论上它是有用的,因为如果从一个已经接近实际特征向量的向量开始,特征向量计算可能会更快收敛。在
然而,从0.7版开始,igraph使用PRPACK来计算PageRank向量,而且PRPACK已经高度优化,所以即使您事先没有指定“特征向量提示”,它也可能在您的图上运行得很快。我先试试看怎么样。在
首先,PageRank是一个随机算法。PageRank方程可以归结为计算稀疏矩阵的主特征向量(不完全是稀疏矩阵,而是稀疏矩阵加上其他一些矩阵的和,我们可以像稀疏矩阵一样快速地计算向量乘积),因此它是完全确定的。在
第二,不幸的是,没有办法告诉PageRank算法的内部实现,结果应该“接近”之前的PageRank向量,虽然理论上它是有用的,因为如果从一个已经接近实际特征向量的向量开始,特征向量计算可能会更快收敛。在
然而,从0.7版开始,igraph使用PRPACK来计算PageRank向量,而且PRPACK已经高度优化,所以即使您事先没有指定“特征向量提示”,它也可能在您的图上运行得很快。我先试试看怎么样。在
相关问题 更多 >
编程相关推荐