用法:
cugraph.centrality.betweenness_centrality.betweenness_centrality(G, k=None, normalized=True, weight=None, endpoints=False, seed=None, result_dtype=<class 'numpy.float64'>)
計算圖 G 的所有頂點的介數中心性。介數中心性是對通過頂點的最短路徑數量的度量。具有高中介中心性分數的頂點有更多的路徑通過它,因此被認為更重要。
為了提高性能。可以使用 k 個起始頂點的樣本,而不是執行 all-pair 最短路徑。
CuGraph 目前不支持 ‘endpoints’ and ‘weight’ 參數,如相應的 networkX 調用中所示。
- G:cuGraph.Graph 或 networkx.Graph
該圖可以是有向的 (Graph(directed=True)) 或無向的。圖中的權重被忽略,當前實現使用 BFS 遍曆。如果需要考慮權重,則使用權重參數(目前不支持)
- k:int or list or None, optional (default=None)
如果 k 不是 None,則使用 k 個節點樣本來估計介數。較高的值給出更好的近似值。如果 k 是一個列表,則使用列表的內容進行估計:列表應該包含頂點標識符。如果 k 為 None(默認值),則所有頂點都用於估計介數。通過采樣獲得的頂點或定義為列表的頂點將作為算法內部遍曆的源。
- normalized:布爾型,可選
默認為真。如果為真,則對於無向圖,介數值通過 __2 /((n - 1) * (n - 2))__ 標準化,對於有向圖,通過 __1 /((n - 1) * (n - 2))__ 標準化,其中n 是 G 中的節點數。歸一化將確保值在 [0, 1] 中,這種歸一化針對每個最短路徑穿過一個節點的最高可能值進行縮放。
- weight:cudf.DataFrame,可選(默認=無)
指定要用於每條邊的權重。應該包含邊和權重之間的映射。 (不支持)
- endpoints:布爾,可選(默認=假)
如果為真,則將端點包括在最短路徑計數中。 (不支持)
- seed:可選的
如果指定了 k 並且 k 是整數,則使用種子來初始化隨機數生成器。使用無作為種子依賴於隨機。seed() 行為:使用當前係統時間如果 k 為無或列表:種子參數被忽略
- result_dtype:np.float32 或 np.float64,可選,默認=np.float64
表示介數中心性分數的數據類型
- df:cudf.DataFrame 或 Dictionary 如果使用 NetworkX
GPU 數據幀包含兩個大小為 V 的 cudf.Series:頂點標識符和相應的中介中心性值。請注意,生成的‘vertex’ 列可能不是按升序排列的。字典包含相同的兩列
- df[‘vertex’]:cudf.Series
包含頂點標識符
- df[‘betweenness_centrality’]:cudf.Series
包含頂點的中介中心性
參數:
返回:
例子:
>>> 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') >>> bc = cugraph.betweenness_centrality(G)
相關用法
- Python cugraph.centrality.betweenness_centrality.edge_betweenness_centrality用法及代碼示例
- Python cugraph.centrality.katz_centrality.katz_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.betweenness_centrality.betweenness_centrality。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。