dispersion#

dispersion(G, u=None, v=None, normalized=True, alpha=1.0, b=0.0, c=0.0)[source]#

计算图 G 中节点 uv 之间的分散度。

当两个参与者( uv )的共同联系( st )彼此之间连接不佳时,他们之间的链接具有较高的分散度。

Parameters:
G

一个 NetworkX 图。

u节点, 可选

分散度分数的源节点(例如网络的自我节点)。

v节点, 可选

如果指定,分散度分数的目标节点。

normalized布尔值

如果为 True(默认),则按节点的嵌入度( uv )进行归一化。

alpha, b, c浮点数

归一化过程的参数。当 normalized 为 True 时,分散度值按以下公式归一化:

result = ((dispersion + b) ** alpha) / (embeddedness + c)

只要分母非零。

Returns:
nodes字典

如果指定了 u (或 v ),则返回一个字典,包含所有“目标”(或“源”)节点的分散度分数。如果 uv 均未指定,则返回一个字典的字典,包含图中所有节点 u 及其对应每个节点 v 的分散度分数。

Notes

此实现遵循 Lars Backstrom 和 Jon Kleinberg [1] 的方法。典型的用法是在指定了 u 的情况下,对自我网络 \(G_u\) 运行分散度分析。如果 uv 均未指定,运行 dispersion() 可能需要一些时间来完成。

References

[1]

浪漫伴侣关系与社交关系的分散度: Facebook 上关系状态的网络分析。 Lars Backstrom, Jon Kleinberg. https://arxiv.org/pdf/1310.6753v1.pdf