google_matrix#

返回图的 Google 矩阵。

参数:
G

一个 NetworkX 图。无向图将被转换为有向图,其中每条无向边对应两条有向边。

alpha浮点数

阻尼系数。

personalization: 字典, 可选

“个性化向量”,包含一个字典,其键是图节点的某个子集,值是对应的个性化值。至少一个个性化值必须非零。如果未指定,节点的个性化值将为零。默认使用均匀分布。

nodelist列表, 可选

行和列的顺序按照 nodelist 中的节点排列。如果 nodelist 为 None,则顺序由 G.nodes() 生成。

weight键, 可选

用作权重的边数据键。如果为 None,权重将设为 1。

dangling: 字典, 可选

分配给任何“悬空”节点(即没有出边的节点)的出边。字典的键是出边指向的节点,字典的值是该出边的权重。默认情况下,悬空节点根据个性化向量(如果未指定则为均匀分布)被赋予出边。必须选择此项以生成不可约的转移矩阵(参见下面的说明)。通常可以将 dangling 字典设置为与 personalization 字典相同。

返回:
A二维 NumPy ndarray

图的 Google 矩阵

另请参阅

pagerank

说明

返回的数组表示 PageRank 中使用的马尔可夫链的转移矩阵。为了使 PageRank 收敛到唯一解(即马尔可夫链中的唯一平稳分布),转移矩阵必须是不可约的。换句话说,图中任意一对节点之间都必须存在路径,否则可能存在“排名陷阱”。

此实现适用于 Multi(Di)Graphs。对于多重图,两个节点之间的权重设置为它们之间所有边权重的总和。


其他后端实现此函数

graphblas : 支持 OpenMP 的稀疏线性代数后端。