一. Pagerank介紹
PageRank算法以前就是Google的網(wǎng)頁(yè)排序算法。PageRank算法娃豹,對(duì)每個(gè)目標(biāo)網(wǎng)頁(yè)進(jìn)行附上權(quán)值讨勤,權(quán)值大的就靠前顯示,權(quán)值小的就靠后顯示析苫。PageRank算法就是給每個(gè)網(wǎng)頁(yè)附加權(quán)值的兜叨。PageRank算法借鑒學(xué)術(shù)界論文重要性的評(píng)估方法:誰被引用的次數(shù)多,誰就越重要衩侥。
注:PageRank算法不單單是按照“被索引數(shù)”來給網(wǎng)頁(yè)付權(quán)值的国旷,用PR值表示每個(gè)網(wǎng)頁(yè)被PageRank算法附加的權(quán)值。
二. PageRank算法的核心細(xì)想
(1)如果一個(gè)網(wǎng)頁(yè)被很多其他網(wǎng)頁(yè)鏈接到的話,說明這個(gè)網(wǎng)頁(yè)比較重要茫死,也就是PageRank值會(huì)相對(duì)較高
(2)如果一個(gè)PageRank值很高的網(wǎng)頁(yè)鏈接到一個(gè)其他的網(wǎng)頁(yè)跪但,那么被鏈接到的網(wǎng)頁(yè)的PageRank值會(huì)相應(yīng)地因此而提高
三. 基本概念
(1)出鏈
如果在網(wǎng)頁(yè)A中附加了網(wǎng)頁(yè)B的超鏈接B-Link,用戶瀏覽網(wǎng)頁(yè)A時(shí)可以點(diǎn)擊B-Link然后進(jìn)入網(wǎng)頁(yè)B峦萎。上面這種A附有B-Link這種情況表示A出鏈B屡久。可知爱榔,網(wǎng)頁(yè)A也可以出鏈C被环,如果A中也附件了網(wǎng)頁(yè)C的超鏈接C-Link。
(2)入鏈
上面通過點(diǎn)擊網(wǎng)頁(yè)A中B-Link進(jìn)入B详幽,表示由A入鏈B筛欢。如果用戶自己在瀏覽器輸入欄輸入網(wǎng)頁(yè)B的URL,然后進(jìn)入B唇聘,表示用戶通過輸入U(xiǎn)RL入鏈B
(3)無出鏈
如果網(wǎng)頁(yè)A中沒有附加其他網(wǎng)頁(yè)的超鏈接版姑,則表示A無出鏈
(4)只對(duì)自己出鏈
如果網(wǎng)頁(yè)A中沒有附件其他網(wǎng)頁(yè)的超鏈接,而只有他自己的超鏈接A-Link雳灾,則表示A只對(duì)自己出鏈
(5)PR值
一個(gè)網(wǎng)頁(yè)的PR值漠酿,概率上理解就是此網(wǎng)頁(yè)被訪問的概率,PR值越高其排名越高谎亩。
四. 幾種網(wǎng)頁(yè)出入鏈關(guān)系
case1:網(wǎng)頁(yè)都有出入鏈
此種情況下的網(wǎng)頁(yè)A的PR值計(jì)算公式為:
case2:存在沒有出鏈的網(wǎng)頁(yè)
網(wǎng)頁(yè)C是沒有出鏈炒嘲。因?yàn)镃沒有出鏈,所以對(duì)A,B,D網(wǎng)頁(yè)沒有PR值的貢獻(xiàn)匈庭。PageRank算法的策略:從數(shù)學(xué)上考慮夫凸,為了滿足Markov鏈,設(shè)定C對(duì)A,B,C,D都有出鏈(也對(duì)他自己也出鏈~)阱持。你也可以理解為:沒有出鏈的網(wǎng)頁(yè)夭拌,我們強(qiáng)制讓他對(duì)所有的網(wǎng)頁(yè)都有出鏈,即讓他對(duì)所有網(wǎng)頁(yè)都有PR值貢獻(xiàn)衷咽。
此種情況PR(A)的計(jì)算公式:
case3:存在只對(duì)自己出鏈的網(wǎng)頁(yè)
C是只對(duì)自己出鏈的網(wǎng)頁(yè)鸽扁。
此時(shí)訪問C時(shí),不會(huì)傻乎乎的停留在C頁(yè)面镶骗,一直點(diǎn)擊C-Link循環(huán)進(jìn)入C桶现,即C網(wǎng)頁(yè)只對(duì)自己的網(wǎng)頁(yè)P(yáng)R值有貢獻(xiàn)。正常的做法是鼎姊,進(jìn)入C后骡和,存在這種情況:在地址輸入欄輸入A/B/C/D的URL地址,然后跳轉(zhuǎn)到A/B/C/D進(jìn)行瀏覽相寇,這就是PageRank算法解決這種情況的策略:設(shè)定存在一定概率為α慰于,用戶在地址欄輸入A/B/C/D地址,然后從C跳轉(zhuǎn)到A/B/C/D進(jìn)行瀏覽唤衫。
此時(shí)PR(A)的計(jì)算公式為:
五. 算法公式
一般情況下婆赠,一個(gè)網(wǎng)頁(yè)的PR值計(jì)算公式為:
注:Mpi是有出鏈到pi的所有網(wǎng)頁(yè)集合,L(pj)是有網(wǎng)頁(yè)pj的出鏈總數(shù)佳励,N是網(wǎng)頁(yè)總數(shù)休里,α一般取值為0.85
所有網(wǎng)頁(yè)P(yáng)R值一直迭代計(jì)算,停止直到下面兩種情況之一發(fā)生:每個(gè)網(wǎng)頁(yè)的PR值前后誤差小于自定義誤差閾值植兰,或者迭代次數(shù)超過了自定義的迭代次數(shù)閾值
六. PageRank算法的缺點(diǎn)
這是一個(gè)天才的算法份帐,原理簡(jiǎn)單但效果驚人。然而楣导,PageRank算法還是有一些弊端废境。
第一,沒有區(qū)分站內(nèi)導(dǎo)航鏈接筒繁。很多網(wǎng)站的首頁(yè)都有很多對(duì)站內(nèi)其他頁(yè)面的鏈接噩凹,稱為站內(nèi)導(dǎo)航鏈接。這些鏈接與不同網(wǎng)站之間的鏈接相比毡咏,肯定是后者更能體現(xiàn)PageRank值的傳遞關(guān)系驮宴。
第二,沒有過濾廣告鏈接和功能鏈接(例如常見的“分享到微博”)呕缭。這些鏈接通常沒有什么實(shí)際價(jià)值堵泽,前者鏈接到廣告頁(yè)面修己,后者常常鏈接到某個(gè)社交網(wǎng)站首頁(yè)。
第三迎罗,對(duì)新網(wǎng)頁(yè)不友好睬愤。一個(gè)新網(wǎng)頁(yè)的一般入鏈相對(duì)較少,即使它的內(nèi)容的質(zhì)量很高纹安,要成為一個(gè)高PR值的頁(yè)面仍需要很長(zhǎng)時(shí)間的推廣尤辱。
針對(duì)PageRank算法的缺點(diǎn),有人提出了TrustRank算法厢岂。其最初來自于2004年斯坦福大學(xué)和雅虎的一項(xiàng)聯(lián)合研究光督,用來檢測(cè)垃圾網(wǎng)站。TrustRank算法的工作原理:先人工去識(shí)別高質(zhì)量的頁(yè)面(即“種子”頁(yè)面)塔粒,那么由“種子”頁(yè)面指向的頁(yè)面也可能是高質(zhì)量頁(yè)面结借,即其TR值也高,與“種子”頁(yè)面的鏈接越遠(yuǎn)窗怒,頁(yè)面的TR值越低映跟。“種子”頁(yè)面可選出鏈數(shù)較多的網(wǎng)頁(yè)扬虚,也可選PR值較高的網(wǎng)站努隙。
TrustRank算法給出每個(gè)網(wǎng)頁(yè)的TR值。將PR值與TR值結(jié)合起來辜昵,可以更準(zhǔn)確地判斷網(wǎng)頁(yè)的重要性荸镊。
補(bǔ)充:
谷歌用PR值來劃分網(wǎng)頁(yè)的等級(jí),有0~10級(jí)堪置,一般4級(jí)以上的都是比較好的網(wǎng)頁(yè)了躬存。谷歌自己PR值為9,百度也是9舀锨,博客園的PR值則為6岭洲。
如今PR值雖不如以前重要了(沒有區(qū)分頁(yè)面內(nèi)的導(dǎo)航鏈接、廣告鏈接和功能鏈接導(dǎo)致PR值本身能夠反映出的網(wǎng)頁(yè)價(jià)值不精確坎匿,并且對(duì)新網(wǎng)頁(yè)不友好)盾剩,但是流量交易里PR值還是個(gè)很重要的參考因素。