胡 泉,胡金柱,謝 芳
(1.華中師范大學 武漢 430079;2.湖北工業大學 武漢 430068)
專業服務網站是以行業或領域為服務對象的特殊網站,如面向機械、化工、電力、計算機等行業的服務網站,是針對某一特定領域、某一特定人群或某一特定需求,提供內容集中而深入的信息服務的網站。這類網站數量龐大,基本上都是免費開放,如各級政府的科技信息服務網或情報網、公司的服務網(如海爾公司的服務網站)等。
專業服務網站針對專業領域中的特定用戶群,為其提供專業的、量身打造的服務,它能夠限制用戶查找信息類別的范圍,使用戶快速找到需要的信息。所以,網上信息應該簡潔、明了,確保用戶能在盡可能短的時間內找到最需要的信息內容。因此專業服務網的信息管理工作者,其主要任務之一是從相關的網站上及時、準確地獲取有用信息,并對這些信息內容進行專業處理、深度加工和及時更新發布。網上信息一般是以標題、內容的形式發布,而不是以網頁鏈接的形式表示。所以,直接搜索到的信息不僅僅是網頁鏈接,而是網頁內容的主體和標題等有用信息。因此,需要研究一種專用的信息自主更新系統,才能讓信息管理工作者從枯燥、單調、雜亂無章的海量信息中及時、準確地獲取有用信息。
目前,Google推出的谷歌應用軟件引擎(Google application engine,GAE)是一種免費的云計算平臺,它可以讓開發人員編譯基于Python的應用程序,并免費使用其基礎設施進行托管。因此,用戶在GAE下建設小型專業服務網站時,不再需要租用主機,尋找托管商;開發人員在GAE的框架內開發,不用再考慮CPU、內存、分布等復雜和難以控制的問題。
本體(ontology)是共享概念模型的明確的形式化規范說明,包含概念的定義、概念間的復雜關系以及概念推理的規則。應用本體可以捕獲相關領域的知識,提供對該領域知識的共同理解,確定該領域內共同認可的詞匯(術語),并從不同層次的形式化模式上給出這些詞匯間相互關系的明確定義。
GAE下面向本體的專業信息服務網信息自主更新的基本過程如下:
·利用網絡爬蟲爬取網頁數據;
·本體按照指定的規則模板進行信息獲取;
·將抽取的信息按照規定的格式存儲到元數據庫中;
·索引程序對存儲的數據建立索引,并存入索引數據庫;
·查詢分析器分析用戶的查詢請求,并將分析的結果傳遞給推理機;
·根據推理機的處理結果構建查詢對象,訪問索引數據庫,并將檢索到的結果返回給用戶;
·將得到的專業服務信息推送到專業信息服務網。其中,檢索是面向本體語義檢索的最重要的一部分,查詢處理可描述成以下的IR模型。
本體模型、面向本體的標識Web資源的模型、面向本體的查詢模型,將查詢的關鍵詞匹配成本體描述的匹配算法。在這些模型中,Web資源(R)與查詢(Q)是相關的,僅在面向本體(O)建立的R和Q中,R滿足Q。在云計算平臺GAE下,本文采用本體與本體間的映射方法將查詢關鍵詞匹配成本體描述,讓本體易于被機器所理解,并且使本體間在語義上達到概念的一致性。
實現面向本體語義搜索引擎的過程中,想讓搜索引擎理解用戶的搜索內容和目標,就必須實現如下兩個基本功能:對爬蟲程序爬取的信息進行基于本體的信息抽取;利用推理機進行分析查詢。
基于這兩點功能,本文設計了如圖1所示的基本框架模型。
因為在云計算平臺GAE下,不同的啟發式規則生成的部分解可能是不一致的,所以面向本體的信息抽取過程大致可以分為5個步驟:文本結構解析和漢語分詞、文本分類、假設生成、數據規格化處理與完整性檢查、矛盾消解。其中,信息抽取由后3步完成。第3步產生各種可能的相互矛盾競爭的部分解,并在第4步加以去粗取精的處理,再通過檢測評判從這些競爭部分解中析出最終的一致解。

圖1 基于GAE的本體語義搜索引擎基本框架模型
該過程的關鍵是抽取規則模板和規則算法。本文中面向本體的信息抽取的規則模板采用概念斷言進行描述,這樣可以在云計算平臺GAE下將本體的概念及其屬性之間的關系與約束表示為概念斷言。概念斷言的形式如圖2所示。

圖2 概念斷言的形式
圖3是一個應用示例,即對旅游信息抽取的一些本體斷言。
在云計算平臺GAE下基于本體的信息抽取的規則算法描述如圖4所示。
在云計算平臺GAE下,語義檢索的意義在于對概念及概念間的關系進行語義層面的檢索,其關鍵在于對概念之間的推理。Jena提供了基于規則的推理機,包括RDFSReasoner、OWL Reasoner等,都具有一般的推理功能,目前一般都使用Jena對所建立的專用本體進行推理分析請求。利用Jena對前面所建立的旅游本體進行推理的部分過程如圖5所示。

圖3 對旅游信息抽取的一些本體斷言

圖4 基于本體的信息抽取的規則算法描述
這里的printStatements定義如下:
public void printStatements(Model m,Resource s,Property p,Resource o)
{
for(StmtIterator i=m.listStatements(s,p,o);i.hasNext();){Statement stmt=i.nextStatement();
System.out.println(“-”+PrintUtil.print(stmt));}
}
GAE下的專業服務網信息爬取器是搜索、獲取信息的核心內容之一。本文設計并實現了一個面向主題的專業服務網信息爬取器,如圖6所示,主要由協議處理、頁面分析、頁面內容檢查、URL優先權判定和頁面存儲5部分組成。
·協議處理:處于系統的底層,主要通過各種協議完成數據的采集。

圖5 旅游本體推理的部分過程

圖6 GAE下專業信息服務網爬取器的基本結構
·頁面分析:對于已采集到的頁面,首先判別頁面的類型,然后分析并提取未被訪問的鏈接以及用于鏈接相關性預測的一些其他信息,如提取用于頁面相關性判定的頁面正文等。
·頁面內容檢查:對下載的頁面內容,通過解析、計算其與主題的相似度,對頁面進行檢查,過濾相關度較低的頁面內容,提高采集的準確度。
·頁面存儲:采集到的頁面經過頁面內容過濾后,被判定為符合主題要求的存入專業服務數據庫,以供搜索引擎的索引需要。
·URL優先權判定:采用基于鏈接上下文的自適應爬取算法,計算待爬取的鏈接的優先權,并按該優先權進行排序,不斷調整待爬行的隊列,保證系統持續運行。
專業服務網信息爬取器在啟動之前,需要設置必要的參數,提交需要采集的主題關鍵詞以及一個比較好的初始爬取站點集合,經過系統的初始化,系統將以這些配置信息作為運行的初始值,進行基于主題的有選擇性的網頁爬行,以獲取與主題相關的網頁。
專業服務網信息爬取器需要維護3個隊列:待爬行URL隊列、已爬行隊列和停用隊列。其中,待爬行URL隊列是爬取器爬行的依據,已爬行隊列存儲己經下載過的,停用隊列存儲那些明顯不相關的或是因為別的原因被爬取器拒絕爬行的。待爬行URL隊列隨著爬取器的爬行不斷動態變化,爬取器在爬行的過程中,不斷地有新鏈接出現,根據啟發式搜索策略,這些新的鏈接會按照主題相關性以由大到小的順序排列,并被加入待爬行URL隊列中。所以無論何時,主題相關性最高的URL一定在待爬行隊列的頭部,這樣就保證了爬取器每次從該隊列中取出用于訪問的都是與主題最相關的。相應的網頁被訪問后便將其抽取出來,計算它與主題的相關性,然后將它插入該隊列的相應位置。這個過程周而復始,以保證爬取器能夠對與主題最相關的網頁不斷地爬行下去,直到該隊列為空。爬取器的運行流程如圖7所示。
通常從召回率、準確率和檢索時間3個方面評價搜索引擎的性能。其中,檢索時間除了依賴于索引算法和檢索算法外,還在一定程度上依賴于硬件配置。因此,本文主要統計分析召回率和準確率。表1給出了實驗數據的處理結果,對于檢索請求所要表達的意思在所建本體范圍內的情況,在準確率和召回率上有很好的結果。


表1 實驗數據處理結果
本實驗環境為獨立開發的省情網和農民工信息服務網,這是兩個典型的專業信息服務網,是為專門領域的專門人群提供相應的信息服務的網絡,按照圖1所示的基本框架模型設計,并各自建有相應的本體庫。
針對傳統信息更新系統中存在的不能理解查詢語義的問題,本文研究了一種基于GAE面向本體語義的專業信息服務網信息更新系統的框架結構,充分利用本體語義的優點,可以從知識庫中快速查找與用戶需求密切相關的信息。在省情網和農民工信息服務網上得到具體實現,證明了其信息獲取技術的有效性和準確性。同時,在GAE下建設小型專業服務網站時,不再需要非云計算環境下的主機租用和尋找托管商等繁瑣工作;開發人員在GAE的框架內開發,也不用再考慮非云計算環境下的CPU、內存、分布等復雜和難以控制的問題。但如果所要獲取的信息需求所表達的語義不在系統本體的范圍內,搜索到的結果不太理想,這是需要進一步研究的問題。
1 陳全,鄧倩妮.云計算及其關鍵技術.計算機應用,2009,29(9)
2 欒靜,李軍鋒.基于Lucene全文檢索引擎的應用研究.計算機與數字工程,2010,38(12)
3 He B,Chang K C C.Automatic complex schema matching across Web queryinterfaces:a correlation mining approach.ACM Transactions on Database Systems(TODS),2006,31(1):346~395
4 Su W F,Wang J Y,Lochovsky F.Automatic hierarchical classification of structured deep Web databases.Web Information Systems-Wise,Proceedings Lecture Notes in Computer Science,2006(4 255):210~221
5 Caverlee J,Liu L,Rocco D.Discovering interesting relationships among deep Web databases:a source-biased approach.World Wide Web-Internet and Web Information Systems,2006,9(4):585~622
6 Shestakov D,Bhowmick S S,Lim E P.DEQUE:querying the deep Web.Data&Knowledge Engineering,2005,52(3):273~311
7 Caverlee J,Liu L.QA-pagelet:data preparation techniques for large-scale data analysis of the deep Web.IEEE Transactions on Knowledge and Data Engineering,2005,17(9):1 247~1 262