聯(lián)網(wǎng)的出現(xiàn)和迅速發(fā)展使信息檢索的環(huán)境發(fā)生了重大變化。而基于互聯(lián)網(wǎng)的搜索引擎的排名算法直接關系到用戶在新的環(huán)境里進行信息檢索的使用體驗。 現(xiàn)有的搜索引擎排名算法,以基于網(wǎng)頁鏈接結構的算法為主,主要的兩種代表性算法是PageRank算法和Hits算法,基于這兩種算法國內(nèi)外許多學者和研究機構又進行了新的探索和改進。
在此基礎上形成了一些適于搜索引擎使用的成熟的綜合排名模型。 本文研究分析了國內(nèi)外搜索引擎的發(fā)展背景,以及對搜索引擎排序有重要影響的SEO技術。在此基礎之上,對PageRank算法和Hits算法進行了深入的分析。
一、PageRank
算法PageRank是最著名的搜索引擎Google采用的一種算法策略,是根據(jù)每個網(wǎng)頁的超級鏈接信息計算網(wǎng)頁的一個權值,用于優(yōu)化搜索引擎的結果。由拉里-佩奇提出。
簡單說,PageRank算法是計算每個網(wǎng)頁的綜合得分數(shù),即假如網(wǎng)頁A鏈向網(wǎng)頁B,則網(wǎng)頁B加一分,當然。不同鏈接網(wǎng)頁對于指向網(wǎng)頁的加分也是不同的,一個頁面的得分情況是由所有鏈向它的頁面的重要性經(jīng)過遞歸算法得到的。
PageRank算法的基本原理推導如下:
PR(A) = (1-d) + d*(PR(T1)/C(T1) + ... + PR(Tn)/C(Tn))
其中,PR(A)是指網(wǎng)頁A的PR值。
T1,T2,...,Tn是指網(wǎng)頁A的鏈入網(wǎng)頁。
PR(Ti)是指網(wǎng)頁Ti的PR值(i=1,2,...,n)。
C(Ti)是指網(wǎng)頁Ti的鏈出數(shù)量(i=1,2,...,n)。
D是一個衰減因子,0d1,通常取值為0.85。
從以上公式可以看出,影響一個網(wǎng)頁PR值的主要因素如下:
(1)該網(wǎng)頁的鏈入數(shù)量。
?。?)該網(wǎng)頁的鏈入網(wǎng)頁本身的PR值。
(3)該網(wǎng)頁的鏈入網(wǎng)頁本身的鏈出數(shù)量。
根據(jù)上面分析可以判斷:一個網(wǎng)頁的鏈入數(shù)量越多,這些鏈入網(wǎng)頁的PR值越高,這些網(wǎng)頁本身的鏈出數(shù)量越少,則該網(wǎng)頁的PR值越高。
Google給每一個網(wǎng)頁都賦予一個初始PR值(1-d),然后利用PageRank算法收斂計算其PR值。
網(wǎng)頁的鏈入鏈出關系,時刻都在變化,那么PR值也需要更新,可以用定時任務重復計算后更新,使得網(wǎng)頁的最終PR值達到一個均衡穩(wěn)定的狀態(tài)。
Google的查詢過程是這樣的:首先根據(jù)用戶輸入的查詢關鍵詞對于網(wǎng)頁數(shù)據(jù)庫中的網(wǎng)頁盡情匹配,然后對于匹配到的網(wǎng)頁按照其本身的PR排序呈獻給用戶。
此外,一個網(wǎng)頁在檢索結果列表中的位置還與其它很多因素相關,比如檢索詞在網(wǎng)頁中的位置等。
PageRank的缺陷在于不考慮鏈接的價值,這對通用搜索引擎比較合適,但對主題相關的垂直搜索引擎而言并不是很好的策略。
二、HITS
PageRank算法對于向外鏈接的權值貢獻是平均的,即不考慮不同鏈接的重要性,但是頁面鏈接中可能某些是廣告、導航或者注釋鏈接,平均權值顯然不太符合實際情況。
HITS(Hyperlink Induced Topic Search)算法則是一種經(jīng)典的專題信息提取策略,能夠提高垂直查準率。
1、原理
HITS算法由Jon Kleinberg提出,其對每個網(wǎng)頁都要計算兩個值:權威值(authority)和中心值(hub)。
(1)權威網(wǎng)頁
一個網(wǎng)頁被多次引用,則它可能是很重要的;一個網(wǎng)頁雖然沒有被多次引用,但是被重要的網(wǎng)頁引用,則它也可能是很重要的;一個網(wǎng)頁的重要性被平均的傳遞到它所引用的網(wǎng)頁。這種網(wǎng)頁稱為權威網(wǎng)頁。
?。?)Hub網(wǎng)頁
提供指向權威網(wǎng)頁的鏈接集合的Web網(wǎng)頁,它本身可能并不重要,或者說沒幾個網(wǎng)頁指向它,但是它提供了指向就某個主題而言最為重要的站點的鏈接集合,這種網(wǎng)頁叫做Hub網(wǎng)頁。
?。?)算法思想
首先利用通用搜索引擎得到一個網(wǎng)頁的初始子集I,當然I內(nèi)的頁面都是和用戶查詢條件有很大相關性。然后把I指向的網(wǎng)頁和指向I的網(wǎng)頁都包含進來,形成基礎集合E,E中的每個頁面都具有一個authority權值和hub權值,分別記作a和h,a值表示網(wǎng)頁與查詢條件相關度的高低,h反應的是該頁面鏈出相關度頁面的多少情況。a=(a1, a2, ..., an)和h=(h1, h2, ..., hn)代表E中所有網(wǎng)頁的authority和hub向量,初始時把所有的ai和hi都設置為1,然后利用下面的公式進行計算:
其中,B(i)和F(i)分別表示指向該網(wǎng)頁的網(wǎng)頁鏈接集合和該網(wǎng)頁指向的網(wǎng)頁鏈接集合。用n*n的矩陣A表示集合E的網(wǎng)頁節(jié)點間的連接,如果節(jié)點i和節(jié)點j之間有連接,則A[i,j]=1,則A[i,j]=0,因此,上面公式可以表示為:
迭代計算a和h,直至收斂。這樣我們集中求ATA和AAT。最后按照authority和hub值排序,將a和h值大于閾值M的網(wǎng)頁挑出來。
若一個網(wǎng)頁由很多好的hub指向,則其權威值會相應增加;若一個網(wǎng)頁指向很多好的權威頁,則hub值也會相應增加。HITS算法最后輸出的一組具有較大hub值的網(wǎng)頁和具有較大權威值的網(wǎng)頁。
2、缺陷
HITS算法在提高一定的垂直查準率的同時,也存在如下缺陷:
?。?)HITS算法忽略了網(wǎng)頁內(nèi)容的差異,對于每個鏈接網(wǎng)頁賦予相同的加權常數(shù),因為每個網(wǎng)頁中都會有一些廣告鏈接等非相關的鏈接網(wǎng)頁,這些非相關網(wǎng)頁和相關網(wǎng)頁同等對待,會容易產(chǎn)生主題漂移現(xiàn)象。
?。?)在開始形成url集合E中,對于初始集合I中網(wǎng)頁的一些非相關鏈接也加入到E中,增加了無謂的下載量,也致使后邊更多的無關網(wǎng)頁參與到了計算,對準確率存在一定的影響。
3、改進
改進方向如下:
?。?)主題漂移
(2)下載過濾
以上就是搜索引擎技術之排序算法,雖然公式有點麻煩,但是仔細鉆研的話就會有所收獲的哦,謝謝大家閱讀。