語義搜索引擎綜述
1.網路搜索引擎的現狀 搜索引擎在互聯網的重要地位由來已久。Yahoo 作為門戶網站奇蹟般崛起所依靠的正是搜索引擎,Google 也以搜索引擎的技術創新、競價排名和專業風格創造了新的奇蹟。在國內,百度也在很短的時間裡憑藉搜索引擎取得很大成功。
搜索引擎技術及業務模式的持續創新,不僅為互聯網注入了活力,而且其自身的價值正被重新審視和評估。互聯網的發展使得信息短缺的問題被信息泛濫所取代,世界也已從信息時代走進信息經濟時代,這兩者的區別在於,前者強調信息本身的價值,只要解決信息資源短缺就會帶來價值的提升;後者認為信息並不稀缺,只有通過對信息的甄別、加工提純和挖掘才能帶來價值的提升。
據中國國家互聯網中心(CNNIC)2005年1月發布的第15次互聯網發展統計報告[[1]],我國的網路用戶有9400萬人,比2004年6月發布的14次報告又增加了700萬。在用戶經營使用的網路服務中,搜索引擎僅次於電子郵箱排在第2位。有98.5%的用戶上網最主要的是獲取信息,通過搜索引擎獲取信息的佔70.7%,搜索引擎成為未知狀態下發現有效信息的最有效方式。
2.網路搜索引擎的工作原理搜索引擎的原理,可以看作三步:
a) 從互聯網上抓取網頁;
b) 建立索引資料庫;
c) 在索引資料庫中搜索排序。
1. 從互聯網上抓取網頁
利用能夠從互聯網上自動收集網頁的Spider系統程序,自動訪問互聯網,並沿著任何網頁中的所有URL爬到其它網頁,重複這過程,並把爬過的所有網頁收集回來。
2. 建立索引資料庫
由分析索引系統程序對收集回來的網頁進行分析,提取相關網頁信息(包括網頁所在URL、編碼類型、頁面內容包含的所有關鍵詞、關鍵詞位置、生成時間、大小、與其它網頁的鏈接關係等),根據一定的相關度演算法進行大量複雜計算,得到每一個網頁針對頁面文字中及超鏈中每一個關鍵詞的相關度(或重要性),然後用這些相關信息建立網頁索引資料庫。
3. 在索引資料庫中搜索排序
當用戶輸入關鍵詞搜索後,由搜索系統程序從網頁索引資料庫中找到符合該關鍵詞的所有相關網頁。因為所有相關網頁針對該關鍵詞的相關度早已算好,所以只需按照現成的相關度數值排序,相關度越高,排名越靠前。最後,由頁面生成系統將搜索結果的鏈接地址和頁面內容摘要等內容組織起來返回給用戶。
3.網路搜索引擎的評價指標評價搜索引擎的主要指標有查全率、查准率、響應時間、覆蓋範圍、用戶使用方便性等等。
1. 查全率(Recall)
查全率又叫召回率,是指檢索出的相關文檔佔全部相關文檔的比率。即用戶通過搜索引擎所獲取的有用信息與整個Internet中相關信息的比率。
2. 查准率(Precision)
查准率是指獲取的相關文檔與獲取文檔的比率。即用戶通過搜索引擎所獲取的真正是用戶需要的信息占獲取信息的比率。搜索引擎的查准率是個複雜的概念,一方面表示搜索引擎對搜索結果的排序能力,另一方面卻體現了搜索引擎對垃圾網頁的抗干擾能力。
3. 響應時間(Response Time)
響應時間是指用戶發出查詢請求後到看到查詢結果的這段時間。
4. 覆蓋範圍(Coverage)
覆蓋範圍是指搜索引擎索引的Web頁面占整個Internet中頁面的比例。
5. 用戶方便性(Convenience)
用戶方便性包括查詢介面是否直觀、易於使用、查詢語法是否豐富,顯示結果是否易於查看等。
4.網路搜索引擎的主要技術網路搜索引擎做為信息檢索系統的一個分支,理所當然的涉及到信息檢索方面的技術,同時它做為一個獨立、成熟的領域也有自己的技術空間:
1. 目錄檢索和全文檢索
傳統的搜索引擎一般使用兩種技術來實現信息檢索:
一是使用網站分類技術實現目錄檢索,即把網站進行樹狀的歸類,登陸的網站屬於至少一個類別,對每個站點都有簡略的描述。Yahoo採用了這種方法。為了分類科學準確,需要有一支各科人才組成的維護隊伍。
二是使用全文檢索技術。全文檢索技術處理的對象是文本,它能夠對大量文檔建立由字(詞)到文檔的倒排索引,在此基礎上,用戶使用關鍵詞來對文檔進行查詢時,系統將給用戶返回該關鍵詞的網頁。
2. 索引文件結構
全文檢索的兩個關鍵技術是索引和檢索。檢索又是基於所建立的索引結構進行的。索引文件主要分為正向索引和倒排索引。正向索引是基於文檔的,每一個文檔對應一個索引文件,其中記錄著這個文檔中出現的詞。倒排索引是基於辭彙表的,每一個特徵詞對應一個倒排索引,其中記錄著所有出現過這個詞的文檔。目前,技術比較成熟、也是公認效率較高的索引存儲結構是倒排文件。需要明確的是,中文的構詞方式、句法、語法都與英文有很大區別,因此,不同於英文全文檢索的索引方法,中文全文檢索中主要的建立索引方法是字索引和詞索引。字索引保證了高的召回率,不會出現漏查錯誤,但是會出現多查和誤查。檢索結果中會出現不少與檢索意圖無關的條目。另外,基於字索引的全文檢索的檢索效率也比較低。而詞索引保證了較高的查准率和檢索效率,但是由於中文分詞能力的局限,導致基於詞索引的全文檢索必定會存在漏檢情況。另外,對於未登陸詞,詞索引顯得力不從心。現存比較實用的中文信息檢索系統一般都結合使用了字詞混合索引,或者擴展的詞索引,來保證召回率和查准率。
網路搜索引擎由於各自的策略不同,在選擇索引對象的內容時也有不同。有些搜索引擎對於信息庫中的頁面建立全文索引,有些只建立摘要部分,或者每個段落前面部分的索引,還有些搜索引擎(如Google)建立索引的時候,同時考慮超文本的不同標記所表示的不同含義。如粗體、大字體顯示的東西往往比較重要;放在錨鏈中的信息往往是它所指向頁面的信息的概括,所以用它來作為它所指向的頁面的重要信息。Google,Infoseek還在建立索引的過程中收集頁面中的超鏈接。這些超鏈接反映了收集到的信息之間的空間結構。利用這些結果信息可以提高頁面相關度判別時候的準確度。
3. 數據源文件的分布策略
搜索引擎的數據源文件主要包括索引文件和原文檔。目前,數據源文件的分布策略主要有集中存放和分散式存放。文獻[2]指出Google就是採用了集群的方式集中存放數據源文件,事實上,幾乎所有的商業搜索引擎都採用集中存放的方式,這是因為分散式存放策略有一個硬傷,就是搜索請求從一個端點傳送到另外一個端點消耗的時間讓用戶難以忍受。但是,隨著互聯網上信息的急劇膨脹,改進後的分散式策略是最終的解決方案。
4. 索引大文件的存放策略
倒排文件是一個大文件,這是因為倒排文件中存放的記錄(Hit)表示的是文檔中出現本特徵詞的狀況。目前的商業搜索引擎的文檔集中的文檔數量非常之大,因此倒排文件的記錄數也會很大,最終導致倒排文件的尺寸非常大。
對於大文件首先考慮的是壓縮,像是Google存放的索引文件就是經過壓縮的。好的壓縮演算法同時要求壓縮比儘可能高、查找壓縮文件容易、解壓縮時間短。即使壓縮之後的文件仍然大到不能以獨立的文件形式存放,目前有兩種分離大文件為多個小文件的策略:
一是基於文檔集的分離。主要是將文檔集分成有限個子集,對於每一個子集建立各自的索引文件,檢索過程就演變為對多個文檔子集的檢索,最後做的合併處理。
一是基於索引文件的分離。即是將索引大文件分為有限個子文件,並設計一張表記錄這種分離情況,當要檢索這個索引文件時就查找這張表,根據表的記錄去查找每一個子文件。文獻[3]指出Google將索引大文件分離為若干個小文件,每一個小文件都以獨立的linux文件存放,通過linux系統管理這些小文件,這正是這個策略的一種表現。
5. 排序演算法
各種搜索引擎的技術改進和優化,都直接反應到搜索結果的排序上。許多搜索引擎都在進一步研究新的排序方法,來提升客戶的滿意度。目前,不同搜索引擎基於不同的搜索策略設計有多種不同的排序演算法,以Google為例,它採用很多種排序演算法支持搜索結果,其中最典型的代表有PageRank和HillTop,這兩種都屬於超鏈接分析技術。
5.語義搜索的興起目前實用化的信息檢索系統主要基於人工分類目錄或關鍵詞匹配。前者對海量信息資源的揭示的效率不高、深度有限;後者在信息的語義和語用的揭示上有局限性。信息檢索系統在智能處理能力上的缺乏,導致這些工具遠遠不能滿足用戶的需求。如何解決好諸如信息組織、知識表示、機器理解與人機交互等問題,對於提高信息利用的效率,是非常重要和迫切的。近年來,語義網的提出為解決這些問題提供了鍥機,由於語義網中的資源被結構化,能被計算機所理解和識別,這樣提供了改進傳統搜索技術的機會。語義檢索的目的是通過從語義網上獲取的數據增強並改進傳統的搜索結果(基於信息檢索技術)。它實現了用戶檢索請求的本體化,整個搜索引擎像領域專家一樣,不僅給出查詢結果,還給出了與檢索請求相關的資源,大大提高檢索的精度和覆蓋率;實現了本體層次的檢索,突破了關鍵詞檢索局限於形式的固有缺陷。它的出現提高了用戶的滿意度,減少了不相關的返回結果,提高了檢索的精度和覆蓋率。
最初人們通過代表語義的HTML標籤來改造網頁,主要有GDA系統和SHOE(SimpleHTMLOntologyExtensions)系統等。但這些系統的不足是僅能處理經過HTML標籤改造的網頁。
XML是非常有前途的語言,因為它將網頁的內容、結構和描述分離,並且非常適合知識的描述。但是XML通過它的句法結構僅能描述一些語義屬性。
語義網路的建立使得以語義為基礎的搜索引擎同時可以建立起來。在語義搜索引擎中,每一個查詢都在一些本體的上下文範圍內執行,來自本體的一些指南可以提高檢索的準確性。在語義檢索中,使用的是概念匹配,即自動抽取文檔的概念,加以標引,用戶在系統的輔助下選用合適的詞語表達自己的信息需求,然後在兩者之間執行概念匹配,即匹配在語義上相同、相近、相包含的詞語。
6.語義搜索當前的應用當前基於ontology 的語義檢索系統已經得到了廣泛的關注和應用,出現了一系列優秀的應用系統,其中典型的有兩個:SWOOGLE——語義網中的基於蜘蛛網的檢索系統,系統從每個搜索到的文本中抽取本體,根據本體之間的相關度來比較文本之間的關係;TUCUXI(InTelligent Hunter Agent for Concept Understanding and LeXical ChaIning),該系統根據查找的本體在網頁上爬行,決定哪種網頁最滿足需求。特別的,TUCUXI 判斷文檔的相關性是同Map of Meanings 比較用戶所查詢的相關本體。Map of Meanings 語義豐富,用來對資源文本的表達。TUCUXI 採用了MOMIS 公用字典來表徵用戶查詢的本體。在語義網中,基於Ontology 的語義檢索搜索引擎有SHOE、OntoBroker、OntoSeek、WebKB、Corese。
7.總結語義搜索引擎是未來搜索引擎發展的方向,它的發展主要受限於語義web的發展以及自然語言處理技術。語義搜索引擎設計的最終目標是讓計算機具有人的智能,以解決問題的形式返回給用戶。語義搜索引擎設計的當前目標是讓計算機返回的結果更有針對性、準確性。
參考文獻:
[1] CNNIC第15次互聯網發展狀況報告
[[2]] Luiz André Barroso, Jeffrey Dean, Urs H?lzle. WEB SEARCH FOR A PLANET: THE GOOGLE CLUSTER ARCHITECTURE
[[3]] Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung. The Google File System
推薦閱讀: