edge_betweenness_centrality#

edge_betweenness_centrality(G, k=None, normalized=True, weight=None, seed=None)[source]#

计算边的中介中心性。

\(e\) 的中介中心性是所有节点对最短路径中通过 \(e\) 的路径所占的比例之和。

\[c_B(e) =\sum_{s,t \in V} \frac{\sigma(s, t|e)}{\sigma(s, t)}\]

其中 \(V\) 是节点集合,\(\sigma(s, t)\)\((s, t)\) 最短路径的数量,\(\sigma(s, t|e)\) 是通过边 \(e\) 的这些路径的数量 [2]。

Parameters:
G

一个 NetworkX 图。

kint, 可选 (默认=None)

如果 k 不是 None,则使用 k 个节点样本来估计中介中心性。 k 的值应小于等于图中的节点数 n。 更高的值给出更好的近似。

normalizedbool, 可选

如果为 True,则中介中心性值通过 \(2/(n(n-1))\) 进行归一化(对于无向图), 或 \(1/(n(n-1))\) 进行归一化(对于有向图),其中 \(n\) 是图 G 中的节点数。

weightNone 或 string, 可选 (默认=None)

如果为 None,则所有边的权重视为相等。 否则,持有用作权重的边属性的名称。 权重用于计算加权最短路径,因此它们被解释为距离。

seedinteger, random_state, 或 None (默认)

随机数生成状态的指示器。 参见 Randomness 。 注意,这仅在 k 不是 None 时使用。

Returns:
edges字典

包含边及其对应中介中心性值的字典。

See also

betweenness_centrality
edge_load

Notes

该算法来自 Ulrik Brandes [1]。

对于加权图,边权重必须大于零。 零边权重可能导致节点对之间存在无限数量的等长路径。

References

[1]

Ulrik Brandes, A Faster Algorithm for Betweenness Centrality. Journal of Mathematical Sociology 25(2):163-177, 2001. https://doi.org/10.1080/0022250X.2001.9990249

[2]

Ulrik Brandes: On Variants of Shortest-Path Betweenness Centrality and their Generic Computation. Social Networks 30(2):136-145, 2008. https://doi.org/10.1016/j.socnet.2007.11.001


Additional backends implement this function

parallelParallel backend for NetworkX algorithms

The parallel computation is implemented by dividing the nodes into chunks and computing edge betweenness centrality for each chunk concurrently.

Additional parameters:
get_chunksstr, function (default = “chunks”)

A function that takes in a list of all the nodes as input and returns an iterable node_chunks. The default chunking is done by slicing the nodes into n chunks, where n is the number of CPU cores.

[Source]