當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python NetworkX pagerank用法及代碼示例


本文簡要介紹 networkx.algorithms.link_analysis.pagerank_alg.pagerank 的用法。

返回圖中節點的PageRank。

PageRank 根據傳入鏈接的結構計算圖 G 中節點的排名。它最初被設計為一種對網頁進行排名的算法。

參數

G圖形

NetworkX 圖表。無向圖將轉換為每個無向邊有兩條有向邊的有向圖。

alpha浮點數,可選

PageRank 的阻尼參數,默認 = 0.85。

personalization: dict, optional

“personalization vector” 由一個字典組成,其中一個鍵是圖形節點的一些子集和每個節點的個性化值。至少一個個性化值必須非零。如果未指定,節點個性化值將為零。默認情況下,使用均勻分布。

max_iter整數,可選

冪法特征值求解器中的最大迭代次數。

tol浮點數,可選

誤差容限用於檢查冪法求解器的收斂性。

nstart字典,可選

每個節點的PageRank 迭代的起始值。

weight鍵,可選

用作權重的邊數據鍵。如果 None 權重設置為 1。

dangling: dict, optional

要分配給任何 “dangling” 節點的外邊,即沒有任何外邊的節點。 dict鍵是outedge指向的節點,dict value是outedge的權重。默認情況下,根據個性化向量(如果未指定,則統一)為懸空節點提供外邊。必須選擇此選項以產生不可約的轉移矩陣(參見google_matrix 下的注釋)。懸空字典與個性化字典相同可能很常見。

返回

pagerank字典

以 PageRank 為值的節點字典

拋出

PowerIterationFailedConvergence

如果算法在冪迭代法的指定迭代次數內未能收斂到指定的容差。

注意

特征向量計算是通過冪迭代法完成的,不能保證收斂。達到len(G) * tol 的容錯後,迭代將停止。如果迭代次數超過 max_iter ,則會引發 networkx.exception.PowerIterationFailedConvergence 異常。

PageRank 算法是為有向圖設計的,但該算法不檢查輸入圖是否有向,而是通過將有向圖中的每條邊轉換為兩條邊來在無向圖上執行。

參考

1

A. Langville and C. Meyer, “A survey of eigenvector methods of web information retrieval.” http://citeseer.ist.psu.edu/713792.html

2

Page, Lawrence; Brin, Sergey; Motwani, Rajeev and Winograd, Terry, The PageRank citation ranking: Bringing order to the Web. 1999 http://dbpubs.stanford.edu:8090/pub/showDoc.Fulltext?lang=en&doc=1999-66&format=pdf

例子

>>> G = nx.DiGraph(nx.path_graph(4))
>>> pr = nx.pagerank(G, alpha=0.9)

相關用法


注:本文由純淨天空篩選整理自networkx.org大神的英文原創作品 networkx.algorithms.link_analysis.pagerank_alg.pagerank。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。