PageRank理論與實踐及用戶評分應用PeopleRank算法


PageRank,網頁排名,又稱網頁級別、Google左側排名或佩奇排名,是一種由根據網頁之間相互的超鏈接計算的技術,而作為網頁排名的要素之一. Google用它來體現網頁的相關性和重要性,在搜索引擎優化操作中是經常被用來評估網頁優化的成效因素之一.PageRank適用於任何圖或網絡在任何域.因此,PageRank是現在經常使用在文獻計量學,社會和信息網絡分析,用於鏈接預測和推薦,甚至用於道路網絡的系統分析,以及生物學、化學、神經科學、物理.

原理:

 由於存在一些出鏈為0,也就是那些不鏈接任何其他網頁的網, 也稱為孤立網頁,使得很多網頁能被訪問到.因此需要對 PageRank公式進行修正,即在簡單公式的基礎上增加了阻尼系數(damping factor)d, d一般取值d=0.85.其意義是,在任意時刻,用戶到達某頁面后並繼續向后瀏覽的概率. 1- d= 0.15就是用戶停止點擊,隨機跳到新URL的概率的算法被用到了所有頁面上,估算頁面可能被上網者放入書簽的概率.

      最后,即所有這些被換算為一個百分比再乘上一個系數d.由於下面的算法,沒有頁面的

 

 

優缺點:

優點:

1、  在於它對互聯網上的網頁給出了一個全局的重要性排序,它使用鏈接來衡量整體受歡迎程度,而不是使用相關主題.

2、  算法的計算過程是可以離線完成的,這樣有利於迅速響應用戶的請求.

缺點:

1、  主題無關性,沒有區分頁面內的導航鏈接、廣告鏈接和功能鏈接等,容易對廣告頁面有過高評價;

2、  舊的頁面等級會比新頁面高,因為新頁面,即使是非常好的頁面,也不會有很多鏈接,除非他是一個站點的子站點.

 應用:

基於PageRank的理論,我們以每個微博賬戶的“關注”為鏈出鏈接,“粉絲”為鏈入鏈接,我們把這種以人為核心的關系,叫PeopleRank

,代碼見http://blog.fens.me/hadoop-social-peoplerank/

#################################Matlab########################################

% Parameter M adjacency matrix where M_i,j represents the link from 'j' to 'i', such that for all 'j'

%     sum(i, M_i,j) = 1

% Parameter d damping factor

% Parameter v_quadratic_error quadratic error for v

% Return v, a vector of ranks such that v_i is the i-th rank from [0, 1]

 

function [v] = rank2(M, d, v_quadratic_error)

 

N = size(M, 2); % N is equal to either dimension of M and the number of documents

v = rand(N, 1);

v = v ./ norm(v, 1);   % This is now L1, not L2

last_v = ones(N, 1) * inf;

M_hat = (d .* M) + (((1 - d) / N) .* ones(N, N));

 

while(norm(v - last_v, 2) > v_quadratic_error)

         last_v = v;

         v = M_hat * v;

        % removed the L2 norm of the iterated PR

end

 

end %function

 

 

##################################R語言########################################

Library(“igraph”)

page.rank (graph, algo = c("prpack", "arpack", "power"),

vids = V(graph), directed = TRUE, damping = 0.85,

personalized = NULL, weights = NULL, options = NULL)

 

g2 <- make_star(10)

page_rank(g2)$vector

 


免責聲明!

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



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