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