徐舒
(杭州師范大學錢江學院 電氣機械工程系 計算機科學與技術專業(yè),浙江 杭州 310012)
1.1 目錄式搜索引擎
目錄式搜索引擎(也稱分類式搜索引擎)主要通過人工發(fā)現(xiàn)信息,由編輯人員根據(jù)信息資源的內容按一定的主題進行分類組織,并形成信息摘要,將信息置于事先確定的分類框架中,組織成一層一層的分類目錄,目錄下面有更具體的子目錄。信息的類別也由大到小、由粗到細,整個搜索引擎形成了一個層次型的類別目錄。用戶可以逐層瀏覽,選擇不同的主題對網(wǎng)絡信息進行過濾,所選擇的主題類別越小,信息的相關性就越高,用戶就越有可能找到自己所需要的信息。這類搜索引擎的性能主要取決于對所獲取網(wǎng)頁的人工歸類或自動分類算法的精確度如何。其代表有:Yahoo,LookSmart,Open,Directory,GoGuide等。例如,中文雅虎(Yahoo)有14個一級目錄,最深有6級子目錄,其使用的是手工錄入方式得到Web頁面摘要信息,而非全頁面內容信息。其形成的具體方式是:首先維護人員對新Web站點進行瀏覽,然后對瀏覽內容進行內容提取,并形成摘要信息和關鍵字,最后將這些信息分類進行存儲。由于Yahoo的普及程度非常高,因此現(xiàn)在Yahoo系統(tǒng)的維護人員不再需要到Internet上去尋找新Web站點,而是由新Web站點的發(fā)布者主動通過頁面提交本站點的有關信息,系統(tǒng)的維護人員只需要對這些提交的信息進行歸類存儲,然后對外發(fā)布公開。
Yahoo給用戶提供了兩種查詢方式:漫游查詢和關鍵詞自動搜索。漫游查詢即用戶利用瀏覽器在Yahoo的Web頁面上按主題目錄進行逐層深入地查找所需要的內容信息。關鍵詞自動搜索方式是系統(tǒng)根據(jù)用戶提交的查詢關鍵詞,自動對目錄樹結構進行搜索查找,返回符合條件的結果集。目錄式搜索引擎的突出特點是具有比較好的信息質量,但由于采用手工進行Web頁面信息的獲取和維護,所以存在以下不足:信息覆蓋率低,信息實時更新不夠及時,目錄維護耗費的人力資源大;基于關鍵詞而非全文進行查詢,可能在查詢時造成某些相關信息的遺漏;采用漫游查詢方式的效率不高,并且由于目錄查詢樹結構的不斷增大,查詢某一特定主題的代價和時間開銷會越來越大。
為了解決目錄式搜索引擎存在的問題,人們引入了人工智能技術,用機器人(也稱之為Robot,Spider,Wanderer,Worm)代替手工去發(fā)現(xiàn)、加工、整理信息,這樣就出現(xiàn)了機器人搜索引擎。
1.2 機器人搜索引擎
為了解決目錄式搜索引擎存在的問題人們引入了人工智能技術用機器人代替手工去發(fā)現(xiàn)加工整理信息這樣就出現(xiàn)了機器人搜索引擎,機器人搜索引擎不需要人工收集信息而是由一個被稱作"機器人"的計算機程序在網(wǎng)絡上不停地爬行和搜索,依據(jù)一定的網(wǎng)絡協(xié)議在Internet中自動獲取網(wǎng)頁信息并通過對網(wǎng)頁內容和特征的分析采用一定的策略組織信息并建立自己的索引數(shù)據(jù)庫為用戶提供查詢務。HotBot,InfoSeek,Google,Excite、天網(wǎng)等就是這類檢索系統(tǒng)的典型代表。
1.3 元搜索引擎
由于單個搜索引擎的覆蓋范圍往往不會太廣,為了找到自己所需要的信息,用戶常常需要使用多個搜索引擎,以期望找到更多、更全、更準確的信息。但由于不同的搜索引擎在其查詢語法以及接口界面上往往不同,需要用戶重新學習和適應不同的檢索方法,這給用戶使用多個搜索引擎帶來了極大的不便。為了解決這個問題,研究人員開發(fā)了元搜索引擎。元搜索引擎統(tǒng)一了不同搜索引擎的查詢接口,由統(tǒng)一的元搜索引擎接口對用戶提交的查詢請求進行處理,分別將其轉換為符合底層搜索引擎查詢語法要求的子查詢,同時向多個搜索引擎提交查詢的結果,由底層搜索引擎在各自的索引數(shù)據(jù)庫中進行查詢。在各個搜索引擎返回檢索結果后,元搜索引擎將子查詢結果進行匯總、去重、重新排序等處理,最后向用戶返回最終的檢索結果。元搜索引擎系統(tǒng)一般都沒有自己的索引數(shù)據(jù)庫,而是以一個代理的角色,利用其它搜索引擎的數(shù)據(jù)庫來進行服務。在層次上,元搜索引擎要比機器人搜索引擎和目錄式搜索引擎要高。元搜索引擎系統(tǒng)的底層搜索引擎可以是機器人搜索引擎,也可以是目錄式搜索引擎。元搜索引擎的優(yōu)點是返回結果的信息量更大、更全,其查全率較高,解決了單個搜索引擎覆蓋范圍相對狹窄的局限,缺點是不能夠充分利用下層搜索引擎的排序功能,用戶需要做更多的篩選。這類搜索引擎的代表是MetaCrawler,SawyScarch,InfoMarket等。
2.1 搜索引擎的工作原理
以機器人搜索引擎為例。機器人搜索引擎的工作過程分為三大步:一是在網(wǎng)上發(fā)現(xiàn)信息,如www網(wǎng)頁、Newsgroup文章、FTP文件等等;二是把發(fā)現(xiàn)的信息收集到本地,經過信息分類和索引等加工處理把信息存儲在本地數(shù)據(jù)庫;三是提供服務,即通過相應的算法和接口在本地數(shù)據(jù)庫中查找到信息,并以一定的形式返回給用戶。搜索引攀主要由三個模塊組成,分別為搜集模塊,預處理模塊和服務模塊。搜索引擎三段式工作流程如圖1所示:
圖1 搜索引擎三段式工作流程
其中搜集模塊即為網(wǎng)頁搜集,由網(wǎng)絡爬取器自動完成。預處理是對抓取到的原始網(wǎng)頁數(shù)據(jù)進行索引處理,獲得索引數(shù)據(jù)庫。服務指的就是檢索系統(tǒng),為用戶提供查詢服務。
2.2 搜索引擎的體系結構
由圖2可知,搜索引擎主要由搜集器,索引器,檢索器,日志分析器組成。搜索引擎先由搜集器到網(wǎng)上搜集網(wǎng)頁原始數(shù)據(jù),然后由索引器對原始數(shù)據(jù)進行處理,建立索引數(shù)據(jù)庫,最后由檢索系統(tǒng)向用戶提供查詢服務。這其中還有日志分析器對過程進行記錄,便于日后對用戶行為進行分析,獲得有用信息,有助于改進系統(tǒng)。
圖2 搜索引擎體系結構
信息索引就是從已發(fā)現(xiàn)的網(wǎng)頁中提取一些特征,以便用戶很容易地檢索到所需的信息。即通過一定的方法產生一個索引項集合來作為一篇文檔或查詢請求的內部表示。
索引的方法主要分為兩種:一種基于關鍵詞的索引;另一種是基于概念的索引。第一種是大多數(shù)搜索引擎使用的方法,是從文檔中提取重要的詞作索引。在文檔中頂部出現(xiàn)的詞以及在整個文檔中出現(xiàn)多次的詞可以認為是比較重要的。第二種方法與前種不同之處在于試著了解語義,用一個詞能代表許多意義相近的詞,這樣既節(jié)省了索引空間,也為檢索時可返回有關主題的所有文檔,甚至這些文檔中的詞與檢索詞并不精確匹配。Excite是當前網(wǎng)絡中比較著名的基于概念檢索的搜索引擎。本文中僅介紹基于關鍵詞的全文索引,也就是對每篇文檔全文提取關鍵詞進行索引。建立索引需要進行兩方面的技術處理:關鍵詞的提取,建立倒排文檔索引。
分詞就是從每個頁面文檔中提取一定數(shù)量的關鍵詞或者知識。為了提取關鍵詞或知識,必須分割出單個詞或句子??梢酝ㄟ^對英文文章或句子的語法和語義分析來提取出該文章的主要意思。但這些方法都是基于英文本身就有明顯的詞間分割這個事實上的,因而英文根本不存在分詞問題。但對于漢語等無明顯詞間隔的語言來說,必須要先對原文進行分詞,然后再提取它。
中文分詞技術屬于自然語言處理技術范疇,對于一句話,人可以通過自己的知識來明白哪些是詞,哪些不是詞,但如何讓計算機也能理解,其處理過程就是分詞算法?,F(xiàn)有的分詞算法可分為三大類:基于字符串匹配的分詞方法、基于理解的分詞方法和基于統(tǒng)計的分詞方法。
[1]劉琨,鄭有才.搜索引擎剖析[J].微機發(fā)展,2005.
[2]化柏林.Google搜索引擎技術實現(xiàn)探究[J].現(xiàn)代圖書情報技術,2004.
[3]郭少友.元搜索引擎的原理和設計[J].情報科學,2005.