用法:
cugraph.centrality.katz_centrality.katz_centrality(G, alpha=None, beta=None, max_iter=100, tol=1e-06, nstart=None, normalized=True)
計算圖 G 的節點的 Katz 中心性。cuGraph 目前不支持 ‘beta’ and ‘weight’ 參數,如相應的 networkX 調用中所示。該實現基於 Foster 定義的 Katz 的寬鬆版本,計算複雜度為 O(n+m)
在有向圖上,cuGraph 計算 out-edge Katz 中心度得分。這與默認情況下計算 in-edge Katz 中心性分數的 NetworkX 相反。您可以使用 G.reverse 翻轉 NetworkX 邊,以便結果與 cuGraph 匹配。
- G:cuGraph.Graph 或 networkx.Graph
帶有連接信息的 cuGraph 圖說明符。該圖可以包含有向邊 (DiGraph) 或無向邊 (Graph)。
- alpha:浮點數,可選(默認=無)
衰減因子默認為無。如果未指定 alpha,則它在內部計算為 1/(degree_max),其中 degree_max 是最大出度。
- 注意
收斂的最大可接受值 alpha_max = 1/(lambda_max) 其中 lambda_max 是圖的最大特征值。由於圖表的lambda_max 始終小於或等於degree_max,因此alpha_max 將始終大於或等於 (1/degree_max)。因此,將 alpha 設置為 (1/degree_max) 將保證它永遠不會超過 alpha_max,從而滿足收斂的要求。
- beta:浮點數,可選(默認=無)
權重標量 - 目前不支持
- max_iter:int,可選(默認=100)
返回答案之前的最大迭代次數。這可用於限製執行時間並在求解器達到收斂容差之前提前退出。如果此值小於或等於 0,cuGraph 將使用默認值,即 100。
- tol:浮點數,可選(默認=1.0e-6)
設置容差的近似值,這個參數應該是一個小的幅度值。容差越低,近似值越好。如果該值為 0.0f,cuGraph 將使用默認值 1.0e-6。由於數值舍入,容差設置太小會導致不收斂。通常 1e-2 和 1e-6 之間的值是可以接受的。
- nstart:cudf.Dataframe,可選(默認=無)
包含 katz 中心性的初始猜測的 GPU 數據幀。
- nstart[‘vertex’]:cudf.Series
包含頂點標識符
- nstart[‘values’]:cudf.Series
包含頂點的 katz 中心值
- normalized:布爾,可選,默認=真
如果 True 歸一化生成的 katz 中心性值
- df:cudf.DataFrame 或 Dictionary 如果使用 NetworkX
GPU 數據幀包含兩個大小為 V 的 cudf.Series:頂點標識符和相應的 katz 中心值。
- df[‘vertex’]:cudf.Series
包含頂點標識符
- df[‘katz_centrality’]:cudf.Series
包含頂點的 katz 中心性
參數:
返回:
參考:
Foster, K.C., Muth, S.Q., Potterat, J.J.等。計算與數學組織理論 (2001) 7: 275. https://doi.org/10.1023/A:1013470632383
卡茨,L.(1953 年)。一種源自社會計量分析的新地位 index 。心理測量學,18(1),39-43。
例子:
>>> gdf = cudf.read_csv(datasets_path / 'karate.csv', delimiter=' ', ... dtype=['int32', 'int32', 'float32'], header=None) >>> G = cugraph.Graph() >>> G.from_cudf_edgelist(gdf, source='0', destination='1') >>> kc = cugraph.katz_centrality(G)
相關用法
- Python cugraph.centrality.betweenness_centrality.betweenness_centrality用法及代碼示例
- Python cugraph.centrality.betweenness_centrality.edge_betweenness_centrality用法及代碼示例
- Python cugraph.community.spectral_clustering.spectralBalancedCutClustering用法及代碼示例
- Python cugraph.community.ecg.ecg用法及代碼示例
- Python cugraph.community.louvain.louvain用法及代碼示例
- Python cugraph.community.egonet.batched_ego_graphs用法及代碼示例
- Python cugraph.components.connectivity.strongly_connected_components用法及代碼示例
- Python cugraph.community.spectral_clustering.analyzeClustering_modularity用法及代碼示例
- Python cugraph.community.spectral_clustering.spectralModularityMaximizationClustering用法及代碼示例
- Python cugraph.components.connectivity.connected_components用法及代碼示例
- Python cugraph.community.triangle_count.triangles用法及代碼示例
- Python cugraph.community.spectral_clustering.analyzeClustering_edge_cut用法及代碼示例
- Python cugraph.community.ktruss_subgraph.ktruss_subgraph用法及代碼示例
- Python cugraph.community.subgraph_extraction.subgraph用法及代碼示例
- Python cugraph.cores.k_core.k_core用法及代碼示例
- Python cugraph.cores.core_number.core_number用法及代碼示例
- Python cugraph.community.egonet.ego_graph用法及代碼示例
- Python cugraph.components.connectivity.weakly_connected_components用法及代碼示例
- Python cugraph.community.spectral_clustering.analyzeClustering_ratio_cut用法及代碼示例
- Python cugraph.community.leiden.leiden用法及代碼示例
注:本文由純淨天空篩選整理自rapids.ai大神的英文原創作品 cugraph.centrality.katz_centrality.katz_centrality。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。