搜索引擎優化相關性排名技術
相關性,是搜索引擎優化中的重點。但是對于相關性的搜索引擎工作原理,相信大部分的SEOER對于都缺乏了解。青青電商致力于搜索引擎技術中的相關性排名技術研究,以有多年的時間。作為職業SEO對于搜索引擎算法的研究是必須的,雖然說,我們不可能知道搜索引擎算法的全部。但是只需要我們主流搜索引擎技術的方向,你就可以知道搜索引擎時代的脈搏。
相關度排序技術的產生主要是由搜索引擎的特點決定的。首先,現代搜索引擎能夠訪問的Web網頁數量已經達到上十億的規模,哪怕用戶只是搜索其中很少的一部分內容,基于全文搜索技術的搜索引擎也能返回成千上萬的頁面。即便這些結果網頁都是用戶所需要的,用戶也沒有可能對所有的網頁瀏覽一遍,所以能夠將用戶最感興趣的結果網頁放于前面,勢必可以增強搜索引擎用戶的滿意度。其次,搜索引擎用戶自身的檢索專業能力通常很有限,在最為普遍的關鍵詞檢索行為中,用戶一般只是鍵人幾個詞語。例如,Spink等曾對Excite等搜索引擎的近300位用戶做過實驗調查,發現人均輸入的檢索詞為3.34個。國內部分學者也有相似的結論,發現90%左右的用戶輸入的中文檢索單字為2~6個,而且2字詞居多,約占58%,其次為4字詞(約占18%)和3字詞(約占14%)。過少的檢索詞事實上無法真正表達用戶的檢索需求,而且用戶通常也不去進行復雜的邏輯構造,只有相當少的用戶進行布爾邏輯檢索、限制性檢索和高級檢索等方法,僅有5.24%的檢索式中包含有布爾邏輯算符。國內的部分學者的研究結果也表明,約40%的用戶不能正確運用字段檢索或二次檢索,80%左右的用戶不能正確運用高級檢索功能,甚至還發現用戶缺乏動力去學習復雜的檢索技能,多數用戶都寄希望于搜索引擎能夠自動地為他們構造有效的檢索式。由于缺乏過去聯機檢索中常常具備的檢索人員,因此,用戶實際的檢索行為與用戶理想的檢索行為存在事實上的差距,檢索結果的不滿意也是不奇怪的。正是由于這個特點,搜索引擎就必須設法將用戶最想要的網頁結果盡可能地放到網頁結果的前面,這就是網頁相關度排序算法在搜索引擎中為什么非常重要的原因。
現階段的相關度排序技術主要有以下幾種:一是基于傳統信息檢索技術的方式,它主要利用關鍵詞本身在文檔中的重要程度來對文檔與用戶查詢要求的相關度做出測量,如利用網頁中關鍵詞出現的頻率和位置。一般而言,檢索出的網頁文檔中含有的查詢關鍵詞個數越多,相關性越大,并且此關鍵詞的區分度越高;同時,查詢關鍵詞如果出現在諸如標題字段等重要位置上,則比出現在正文的相關度要大。二是超鏈分析技術,使用此技術的代表性搜索引擎有Google和Baidu等。和前者相比,它以網頁被認可的重要程度作為檢索結果的相關度排序依據。從設計思想上看,它更注重第三方對該網頁的認可,如具有較大鏈入網頁數的網頁才是得到廣泛認可的重要網頁,而根據關鍵詞位置和頻率的傳統方法只是一種網頁自我認可的形式,缺乏客觀性。最后還有一些其他方式,如由用戶自由定義排序規則的自定義方式。北京大學的天網FTP搜索引擎就采用這種排序方式,它可以讓用戶選擇諸如時間、大小、穩定性和距離等具體排序指標來對結果網頁進行相關度排序。再如收費排名模式,它作為搜索引擎的一種主要贏利手段,在具有網絡門戶特點的大型搜索引擎中廣為使用,但于擔心影響搜索結果的客觀性,這種方式不是它們的主流排序方式,而僅僅作為一個補充顯示在付費搜索欄目中。
相關度排序技術主要依賴于超鏈分析技術實現。超鏈分析技術可以提供多種功能,其中的主要功能就是解決結果網頁的相關度排序問題。它主要是利用網頁間存在的各種超鏈指向,對網頁之間的引用關系進行分析,依據網頁鏈人數的多少計算該網頁的重要度權值。一般認為,如果A網頁有超鏈指向B網頁,相當于A網頁投了B網頁一票,即A認可了B網頁的重要性。深入理解超鏈分析算法,可以根據鏈接結構把整個Web網頁文檔集看成一個有向的拓撲圖,其中每個網頁都構成圖中的一個結點,網頁之間的鏈接就構成了結點間的有向邊,按照這個思想,可以根據每個結點的出度和入度來評價網頁的重要性。
對于超鏈分析技術,有代表性的算法主要是Page等設計的PageRank算法和Kleinberg創造的HITS算法。其中,PageRank算法在實際使用中的效果要好于HITS算法,這主要是由于以下原因:首先,PageRank算法可以一次性、脫機且獨立于查詢的對網頁進行預計算以得到網頁重要度的估計值,然后在具體的用戶查詢中,結合其他查詢指標值,一起對查詢結果進行相關性排序,從而節省了系統查詢時的運算開銷;其次,PageRank算法是利用整個網頁集合進行計算的,不像HITS算法易受到局部鏈接陷阱的影響而產生“主題漂移”現象,所以現在這種技術廣泛地應用在許多搜索引擎系統中,Google搜索引擎的廣獲成功也表明了以超鏈分析為特征的網頁相關度排序算法日益成熟。
PageRank技術基于一種假設,即對于Web中的一個網頁A,如果存在指向網頁A的鏈接,則可以將A看成是一個重要的網頁。 PageRank認為網頁的鏈入鏈接數可以反映網頁的重要程度,但是由于現實中的人們在設計網頁的各種超鏈時往往并不嚴格,有很多網頁的超鏈純粹是為了諸如網站導航、商業廣告等目的而制作,顯然這類網頁對于它所指向網頁的重要程度貢獻程度并不高。但是,由于算法的復雜性,PageRank沒有過多考慮網頁超鏈內容對網頁重要度的影響,只是使用了兩個相對簡單的方法:其一,如果一個網頁的鏈出網頁數太多,則它對每個鏈出網頁重要度的認可能力降低;其二,如果一個網頁由于本身鏈入網頁數很低造成它的重要程度降低,則它對鏈出網頁重要度的影響也相應降低。所以,在實際計算中,網頁A的重要性權值正比于鏈入網頁A的重要性權值,并且和鏈入網頁A的鏈出網頁數量呈反比。由于無法知道網頁A自身的重要性權值,所以決定每個網頁的重要權值需要反復迭代地進行運算才能得到。也就是說,一個網頁的重要性決定著同時也依賴于其他網頁的重要性。