实现PageRank算法代码
时间: 2023-02-16 11:34:38 浏览: 122
PageRank代码实现
4星 · 用户满意度95%
PageRank算法的Python实现如下:
```python
import numpy as np
def page_rank(G, alpha=0.85, eps=1e-8):
n = G.shape[0]
PR = np.ones(n) / n # 初始化概率向量
PR_prev = np.zeros(n)
while np.linalg.norm(PR - PR_prev) > eps:
PR_prev = np.copy(PR)
for i in range(n):
PR[i] = (1 - alpha) / n
for j in range(n):
if G[j, i] != 0:
PR[i] += alpha * PR_prev[j] / np.sum(G[j, :])
return PR
```
其中G为邻接矩阵,alpha为阻尼系数(一般取0.85),eps为精度限制(用来判断迭代是否终止)。
返回的PR就是每个页面的PageRank值。
阅读全文