PageRank算法


PageRank是網頁重要程度計算方法,可推廣到有向圖結點的重要程度的計算。基本思想是在有向圖上定義隨機游走模型,在一定條件下,極限情況訪問每個結點的概率收斂到平穩分布。

給定有n個結點強連通且非周期性的有向圖,在其基礎上定義隨機游走模型。假設轉移矩陣M,在時刻0,1,2,…,t,…訪問各個結點概率為

則其極限存在,那么極限向量R表示馬爾可夫鏈的平穩分布,滿足

平穩分布R稱為這個圖的PageRank。R的各個分量為各個結點的PageRank值,

這是PageRank的基本定義,但有時有向圖並未能滿足強連通且非周期性的條件,沒有其對應的平穩分布。

然而可以在基本定義上導入平滑項,這樣平穩分布向量R就由下面的公式決定

其中,1是所有分量為1 的n維向量;d阻尼因子,一般由經驗決定

因此這也稱為PageRank的一般定義,其隨機游走模型的轉移矩陣由兩部分的線性組合組成,一部分是有向圖的基本轉移矩陣M,另一部分是完全隨機的轉移矩陣。

PageRank的計算方法包括冪法、迭代計算法、代數算法。

冪法是其常用的方法,通常計算矩陣的主特征值和主特征向量求求得有向圖的一般PageRank。計算流程:

輸入:有n個結點的有向圖,其轉移矩陣M,阻尼因子d,初始向量x0和計算精度ε

輸出:有向圖的PageRank平穩向量R

  1. 令t=0,選擇初始向量x0
  2. 計算有向圖的一般轉移矩陣A

  3. 迭代並規范化結果向量

  4. 當時,令,停止迭代。
  5. 否則,令t=t+1,執行步驟(3)
  6. 對R進行規范化處理,使其表示概率分布

    例,給定以下有向圖,d=0.85,ε=0.005,求其一般的PageRank

    圖1 有向圖

    有向圖的轉移矩陣

  7. 令t=0,

  8. 根據公式計算該圖的一般轉移矩陣A

  9. 迭代並規范化

    通過多次迭代,在t=21,22時,得到向量

    ,停止迭代,取

     

    將R規范化,即使得其各個分量的和為1,

     

    迭代計算算法的流程:

    輸入:有n個結點的有向圖,其轉移矩陣M,阻尼因子d,初始向量R0

    輸出:有向圖的PageRank平穩向量R

    (1)令t=0,

    (2)計算

    (3)當時充分接近,令,停止迭代。

    (4)否則,令t=t+1,執行步驟(2)

    代數算法的流程:

    按照一般PageRank的定義

    當0<d<1時,上定義式的推導解存在且唯一,這樣就可通過求逆矩陣得到有向圖的一般PageRank


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM