如何使用图形工具计算包含 200 万个顶点的图形的 katz 中心性
How can I use graph-tool to calculate katz centrality for a graph which contain 2 million vertex
代码很简单:
centrality = graph_tool.centrality.katz(Graph)
但是有一些警告:
/usr/lib/python3/dist-packages/numpy/linalg/linalg.py:2056: RuntimeWarning: overflow encountered in multiply
return sqrt(add.reduce((x.conj() * x).real, axis=None))
/usr/lib/python3/dist-packages/graph_tool/centrality/__init__.py:765: RuntimeWarning: invalid value encountered in true_divide
vprop.fa = vprop.fa / numpy.linalg.norm(vprop.fa)
这些警告可能是由于此图的大小引起的,我该如何处理。非常感谢。
您可以禁用标准化步骤:
centrality = graph_tool.centrality.katz(Graph, norm=False)
你可以先除以最大值,归一化时:
centrality.fa /= centrality.fa.max()
centrality.fa /= numpy.linalg.norm(centrality.fa)
代码很简单:
centrality = graph_tool.centrality.katz(Graph)
但是有一些警告:
/usr/lib/python3/dist-packages/numpy/linalg/linalg.py:2056: RuntimeWarning: overflow encountered in multiply
return sqrt(add.reduce((x.conj() * x).real, axis=None))
/usr/lib/python3/dist-packages/graph_tool/centrality/__init__.py:765: RuntimeWarning: invalid value encountered in true_divide
vprop.fa = vprop.fa / numpy.linalg.norm(vprop.fa)
这些警告可能是由于此图的大小引起的,我该如何处理。非常感谢。
您可以禁用标准化步骤:
centrality = graph_tool.centrality.katz(Graph, norm=False)
你可以先除以最大值,归一化时:
centrality.fa /= centrality.fa.max()
centrality.fa /= numpy.linalg.norm(centrality.fa)