pagerank以及個性化的pagerank算法

pagerank最開始是Google提出來用來衡量網頁重要度排行的算法。

她的思想是基於網頁之間互相的鏈接作爲加權投票。假如網頁a指向b,

那麼網頁b的重要程度受網頁a的影響,a越重要,則b就越重要。假如網頁c也指向b,

但是c跟a對比,c指向其他網頁的數量(出度)較少,那麼c對b的貢獻程度要大於a對b。

 

 

下面是網頁i的重要程度的公式,其中d是一個概率,in(i)表示所有指向網頁i的網頁。

這公式的思想是模擬一個隨機衝浪者的瀏覽網頁的行爲,公式左邊部分表示該衝浪者以(1-d)/N的概率從瀏覽器輸入url的方式訪問到網頁i,公式右邊部分表示從其他指向網頁i的網頁跳轉過來的。多次迭代後,所有網頁的重要性值會收斂。

 

用概率轉移的方式表示,公式如下

一次迭代的計算的例子如下:

其中概率轉移矩陣M,

每一列表示網頁j的出度,每列的和加起來是1。

每一行表示網頁i的入度。

 

 

個性化的pagerank

 

個性化的pagerank的目標是要計算所有節點相對於用戶u的相關度。從用戶u對應的節點開始遊走,每到一個節點都以1-d的概率停止遊走並從u重新開始,或者以d的概率繼續遊走,從當前節點指向的節點中按照均勻分佈隨機選擇一個節點往下游走。這樣經過很多輪遊走之後,每個頂點被訪問到的概率也會收斂趨於穩定,這個時候我們就可以用概率來進行排名了。

 

從公式可以看出,個性化的pagerank跟傳統pagerank不同的是,每次重新遊走時,總是從用戶u節點開始。另外,每個節點權重初始化時,個性化的pagerank是這樣子的,假如對用戶u推薦,則對用戶u節點初始化爲1,其他節點都初始化爲0。
--------------------- 
作者:lingerlanlan 
來源:CSDN 
原文:https://blog.csdn.net/lingerlanlan/article/details/46991167 
版權聲明:本文爲博主原創文章,轉載請附上博文鏈接!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章