百度搜索引擎工作原理-3-檢索排序
搜索引擎索引系統概述
眾所周知,搜索引擎的主要工作過程包括:抓取、存儲、頁面分析、索引、檢索等幾個主要過程。上一章我們主要介紹了部分抓取存儲環節中的內容,此章簡要介紹一下索引系統。
在以億為單位的網頁庫中查找特定的某些關鍵詞猶如大海里面撈針,也許一定的時間內可以完成查找,但是用戶等不起,從用戶體驗角度我們必須在毫秒級別給予用戶滿意的結果,否則用戶只能流失。怎樣才能達到這種要求呢?
如果能知道用戶查找的關鍵詞(query切詞后)都出現在哪些頁面中,那么用戶檢索的處理過程即可以想象為包含了query中切詞后不同部分的頁面集合求交的過程,而檢索即變成了頁面名稱之間的比較、求交。這樣,在毫秒內以億為單位的檢索成為了可能。這就是通常所說的倒排索引及求交檢索的過程。如下為建立倒排索引的基本過程:
1,頁面分析的過程實際上是將原始頁面的不同部分進行識別并標記,例如:title、keywords、content、link、anchor、評論、其他非重要區域等等;
2,分詞的過程實際上包括了切詞分詞同義詞轉換同義詞替換等等,以對某頁面title分詞為例,得到的將是這樣的數據:term文本、termid、詞類、詞性等等;
3,之前的準備工作完成后,接下來即是建立倒排索引,形成{termàdoc},下圖即是索引系統中的倒排索引過程。
倒排索引是搜索引擎實現毫秒級檢索非常重要的一個環節,下面我們要重要介紹一下索引系統建立倒排索引的重要過程——入庫寫庫。
倒排索引的重要過程——入庫寫庫
索引系統在建立倒排索引的最后還需要有一個入庫寫庫的過程,而為了提高效率這個過程還需要將全部term以及偏移量保存在文件頭部,并且對數據進行壓縮,這涉及到的過于技術化在此就不多提了。在此簡要給大家介紹一下索引之后的檢索系統。
檢索系統主要包含了五個部分,如下圖所示:
(1)Query串切詞分詞即將用戶的查詢詞進行分詞,對之后的查詢做準備,以“10號線地鐵故障”為例,可能的分詞如下(同義詞問題暫時略過):
10 0x123abc
號 0x13445d
線 0x234d
地鐵 0x145cf
故障 0x354df
(2)查出含每個term的文檔集合,即找出待選集合,如下:
0x123abc 1 2 3 4 7 9…..
0x13445d 2 5 8 9 10 11……
……
……
(3)求交,上述求交,文檔2和文檔9可能是我們需要找的,整個求交過程實際上關系著整個系統的性能,這里面包含了使用緩存等等手段進行性能優化;
(4)各種過濾,舉例可能包含過濾掉死鏈、重復數據、色情、垃圾結果以及你懂的;
(5)最終排序,將最能滿足用戶需求的結果排序在最前,可能包括的有用信息如:網站的整體評價、網頁質量、內容質量、資源質量、匹配程度、分散度、時效性等等
影響搜索結果排序的因素
上面的內容好象有些深奧,因為涉及大量技術細節,我們只能說到這兒了。那下面我們說說大家最感興趣的排序問題吧。用戶輸入關鍵詞進行檢索,百度搜索引擎在排序環節要做兩方面的事情,第一是把相關的網頁從索引庫中提取出來,第二是把提取出來的網頁按照不同維度的得分進行綜合排序?!安煌S度”包括:
1,相關性:網頁內容與用戶檢索需求的匹配程度,比如網頁包含的用戶檢查關鍵詞的個數,以及這些關鍵詞出現的位置;外部網頁指向該頁面所用的錨文本等
2,權威性:用戶喜歡有一定權威性網站提供的內容,相應的,百度搜索引擎也更相信優質權威站點提供的內容。
3,時效性:時效性結果指的是新出現的網頁,且網頁內承載了新鮮的內容。目前時效性結果在搜索引擎中日趨重要。
4,重要性:網頁內容與用戶檢查需求匹配的重要程度或受歡迎程度
5,豐富度:豐富度看似簡單卻是一個覆蓋范圍非常廣的命題??梢岳斫鉃榫W頁內容豐富,可以完全滿足用戶需求;不僅可以滿足用戶單一需求,還可以滿足用戶的延展需求。
6,受歡迎程度:指該網頁是不是受歡迎。
以上便是百度搜索引擎決定搜索結果排序時考慮的六大原則,那么六大原則的側重點是怎樣的呢?哪個原則在實際應用時占比最大呢?其實在這里沒有一個確切的答案。在百度搜索引擎早期,這些閾值的確是相對固定的,比如“相關性”在整體排序中的重量可以占到七成。但隨著互聯網的不斷發展,檢索技術的進步,網頁數量的爆發式增長,相關性已經不是難題。于是百度搜索引擎引入了機器學習機制,讓程序自動產出計算公式,推進排序策略更加合理。
低質網頁狙擊策略——石榴算法
我們理解網站生存發展需要資金支持,從來不反對網站添加各種合法廣告,不要再問我們“我們網站加了XX聯盟的廣告會不會被處罰”這類問題。有些站點好不容易在百度有了比較好的排位,卻在頁面上放置大量有損訪問用戶體驗的廣告,已經嚴重影響到百度搜索引擎用戶的使用感受。為此,百度質量團隊2013年5月17日發布公告:針對低質量網頁推出了石榴算法,旨在打擊含有大量妨礙用戶正常瀏覽的惡劣廣告的頁面,尤其是彈出大量低質廣告、存在混淆頁面主體內容的垃圾廣告的頁面。
如以下網頁截圖,用戶要花很長時間去尋找真正的下載地址,是百度無法接受容忍的。
百度質量團隊希望站長能夠多從用戶角度出發,朝著長遠發展考慮,在不影響用戶體驗的前提下合理地放置廣告,贏得用戶的長期青睞才是一個網站發展壯大的基礎。
來源:百度搜索資源平臺 百度搜索學堂