詳解PageRank算法


簡介

PageRank算法,是一種網頁排名算法。在組建搜索引擎時,爬下來的數據從網頁的角度來看,將所有的連接指向放到一起,可以構成一個圖。PageRank,就是在這圖上做文章。利用PageRank算法,得到PR(PageRank)值,當一個網頁的PR值越大,則說明該網頁越受歡迎。

算法原理

基本思想

"重要性",即如果兩個網頁的鏈入的網頁數相同的,如果網頁1的連入的頁面重要性較高,則認為網頁1比網頁2重要

隨機游走模型

假設有一個永不停息,在瀏覽器上瀏覽網頁的人,他隨機的點擊一個鏈接繼續訪問下一個網頁,當達到穩態的時候(即經過了足夠長的時間),他會正在看哪個網頁?

這等價於,在靜態情況下,每個網頁$v$都有一個被訪問的概率$p(v)$,它可以視為網頁的重要程度。

$p(v)=\sum{E[u,v]*p(u)/d_u}$

其中$d_u$時網頁$u$的"出度",$\sum{p(u)}=1$

我們可以令$L[u,v]={E[u,v] \over d_u}$

此時的公式就改寫為$p[v]=\sum{L[u,v]p[u]}$,寫成矩陣形式

當節點為懸掛節點時,,即出度為0的節點,修正為$L[u,v]={1 \over N}$

模型存在的問題

上訴隨機游走模型有穩態解的條件:強連通,無圈,即形成的有向圖通過鏈接方式訪問到每一個網頁

破壞條件:

  • 圖中有圈
  • 有入度或出度為0的點

改進后PageRank模型

引入一個隨機跳轉概率$\beta$,每次瀏覽者都有$1-\beta$的概率沿着鏈接走,有$\beta$的概率重新隨機的選擇一個新的起始點。

其中 Google matrix 為

模型的求解過程

 


免責聲明!

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



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