Web信息提?。╓eb Information Extraction,簡稱為WebIE)是將 Web作為信息源的一類信息進行提取。它的主要目的是從半結(jié)構(gòu)或無結(jié)構(gòu)的信息中提取出特定的事實信息(Factual Information)。比如,從新聞報道中提取出恐怖事件的詳細情況:時間、地點、作案者、受害者、襲擊目標、使用的武器等;從經(jīng)濟新聞中提取出公司發(fā)布新產(chǎn)品的情況:公司名、產(chǎn)品名、發(fā)布時間、產(chǎn)品性能等;從病人的醫(yī)療記錄中提取出癥狀、診斷記錄、檢驗結(jié)果、處方等,或者直接提取文章中某句話或某段話的信息等等。
隨著Internet的飛速發(fā)展,Web已經(jīng)發(fā)展成為一個巨大、分布和共享的信息資源,目前Web數(shù)據(jù)大都以HTML形式出現(xiàn),缺乏對數(shù)據(jù)本身的描述,不含清晰的語義信息,模式也不明確,結(jié)構(gòu)上也不良好。這使得應用程序無法直接解析并利用到 Web的海量信息,為增強Web數(shù)據(jù)的可用性,出現(xiàn)了Web信息提取技術,它通過包裝現(xiàn)有 Web信息源,將網(wǎng)頁上的信息以更為結(jié)構(gòu)化的方式提取出來,為應用程序利用 Web數(shù)據(jù)提供了良好的方式。
信息提取的研究起源于20世紀90年代初,國外的研究表現(xiàn)在以下幾個方面:斯坦福大學的Sergey Brin提出的DIPRE算法可以對 Web文檔數(shù)據(jù)關系進行發(fā)現(xiàn);IBM 研究中心的N.Sundaresan等對Web文檔中的雙義問題進行了討論并提出了改進的算法,并對 Web中的英文單詞縮寫和全稱進行了挖掘。國內(nèi)的研究:復旦大學周傲英等對半結(jié)構(gòu)化文檔的模式提取進行了研究,提出了遞增式模式挖掘算法;南京大學張福炎等采用OEM模型構(gòu)造了半結(jié)構(gòu)化數(shù)據(jù)的提取器。這些 Web提取研究利用了半結(jié)構(gòu)化文檔的特點,對互聯(lián)網(wǎng)上的數(shù)據(jù)進行深層次的查找和分析,用知識代替了信息作為信息獲取的最終結(jié)果。
圖1 整體結(jié)構(gòu)圖
本文重點研究如何從半結(jié)構(gòu)化的 Web頁面中提取出用戶感興趣的數(shù)據(jù),并試圖提出一個基于XML的Web信息提取平臺。其工作的核心是生成提取規(guī)則。這里,提取規(guī)則實際上就是對感興趣的信息點進行定位。首先需要將樣本 Web頁面轉(zhuǎn)化成為結(jié)構(gòu)良好的XML文檔;通過從樣本XML文檔中找到用戶感興趣的區(qū)域;并在這個區(qū)域內(nèi)細粒度地查找到具體要提取的信息點的定位信息;然后對不同樣本頁面的定位信息進行歸納學習,學習出該類頁面感興趣信息點的定位信息,并構(gòu)造出以XSLT文檔表示的提取規(guī)則,最終應用該提取規(guī)則進行實際的信息提取,如圖1所示。
本信息提取平臺目的是結(jié)合現(xiàn)有不同提取技術的優(yōu)點,以XML技術為基礎,將Web頁面中的關鍵信息自動地提取出來,并表達成為結(jié)構(gòu)化的、擴展性很強的XML文檔。
本文希望通過一組相似的頁面,能夠歸納出相應的提取規(guī)則,進而利用提取規(guī)則進行頁面信息的提取。
系統(tǒng)首先根據(jù)用戶指定的URL獲取樣例網(wǎng)頁數(shù)據(jù)并且將該網(wǎng)頁利用HTML Tidy轉(zhuǎn)換為XHTML。
然后利用 XML Parser將該 XHTML文檔解析成為 DOM(Document Object Model)樹結(jié)構(gòu),這樣DOM樹就成為Web網(wǎng)頁在系統(tǒng)內(nèi)部的表示形式。
最后在獲得DOM樹的基礎上,應用XSLT將DOM樹結(jié)構(gòu)轉(zhuǎn)化為結(jié)果XML文檔。
3.4.1 知識庫和數(shù)據(jù)庫
系統(tǒng)中的庫包括知識庫(Knowledge Base)和數(shù)據(jù)庫(database),知識庫包括領域知識庫和提取規(guī)則庫。數(shù)據(jù)庫包括提取結(jié)果數(shù)據(jù)庫和Web頁面數(shù)據(jù)庫。
在實際操作中,提取系統(tǒng)中的知識庫和數(shù)據(jù)庫的構(gòu)建比較復雜,而本文的側(cè)重是信息提取的研究,所以有關知識庫和數(shù)據(jù)庫的部分本文不做深入的闡述,如圖2所示。
圖2 總體框架
3.4.2 頁面優(yōu)化模塊
主要針對待學習頁面和待提取頁面進行優(yōu)化處理,使結(jié)構(gòu)不完整或不規(guī)范的Web頁面轉(zhuǎn)化成為結(jié)構(gòu)良好的XHTML文檔,并解析成為DOM樹結(jié)構(gòu)。
3.4.3 信息提取模塊
信息提取是本文的核心,信息提取以獲得提取規(guī)則為前提,任何信息提取的研究都致力于獲得健壯可靠的提取規(guī)則,然后運用提取規(guī)則進行信息的提取。因此,該部分就分為兩個步驟:首先進行樣本學習,以獲得提取規(guī)則;然后運用規(guī)則進行信息提取。
領域知識庫的功能主要包括如下幾點:
(1)為用戶提供查詢導航服務,使用戶開始使用時不至于束手無策。方法是將一些較重要的網(wǎng)站的URL添加到相應的領域下。
(2)為規(guī)則的管理提供邏輯和方法上的支持,方法是將提取規(guī)則按照子領域分類存儲。
本文中的領域指的是發(fā)布同類信息的專業(yè)網(wǎng)站,領域知識庫是要提取的信息所在領域所包含的基本概念、屬性、實體、規(guī)則等知識。如出版社圖書出版網(wǎng)站發(fā)布的是有關圖書的一類信息,它的領域知識庫就要包含圖書所要求的各種基本概念和屬性等知識。本文中規(guī)定,領域知識庫中的各領域按從屬關系形成一個層次樹,而根是虛擬的,也可稱為“根領域”。
提取規(guī)則庫存儲的是已經(jīng)學習到的提取規(guī)則,提取規(guī)則是欲提取的識別模式知識。對不同的領域和網(wǎng)站所采用的規(guī)則各不相同,隨著提取系統(tǒng)的運行,會產(chǎn)生許多規(guī)則,系統(tǒng)自然需要一個庫來存放這些規(guī)則。當系統(tǒng)需要進行信息提取時,首先可以向規(guī)則庫中查找是否有可以重復利用的規(guī)則,如果有則可以直接從規(guī)則庫中提取出相應的規(guī)則,不必再重新生成針對相似網(wǎng)站或網(wǎng)頁的新規(guī)則。
最終提取出來的結(jié)果是含有用戶感興趣信息點的 XML文檔,提取結(jié)果數(shù)據(jù)庫中存放的也就是這些XML頁面。Native XML DataBase,也稱 XML本源數(shù)據(jù)庫,是專門設計用于存儲 XML文檔的數(shù)據(jù)庫,它以XML文檔自身的形式來存儲XML文檔,與其它數(shù)據(jù)庫的不同在于其內(nèi)部模型是基于XML文檔格式的。
4.4.1 清洗(TIDY)頁面文檔
清洗(TIDY)頁面需要做的是對Web頁面進行修復轉(zhuǎn)換成為符合規(guī)范的XHTML文檔,本文中稱為清洗(TIDY)。
HTML Tidy是一個開放源代碼的強大工具,可用于修正HTML文檔中的常見錯誤并生成格式編排良好的等價文檔。本文使用了Tidy的類庫,將其集成到系統(tǒng)當中。Web頁面將通由Tidy進行頁面預處理,將源HTML文檔轉(zhuǎn)換成等價的XHTML文檔。
4.4.2 頁面解析(PARSER)
HTML DOM樹是Web頁面的一種描述方式,是根據(jù)Web頁面中 HTML標簽的含義而建立的,有層次關系的樹狀結(jié)構(gòu),其上的每個節(jié)點都是一個單獨的HTML元素。因此,將DOM層次結(jié)構(gòu)中的路徑理解成為提取的“坐標”,通過對坐標的獲得和理解來得到需要提取的信息。這個過程中,將XML文件加載到內(nèi)存生成XML DOM樹,以供提取規(guī)則學習模塊來生成基于DOM的規(guī)則。
在 Web信息應用中,使用包裝器進行信息提取。包裝器是一個軟件過程,應用已經(jīng)定義好的信息提取規(guī)則,將輸入 Web頁面中的信息數(shù)據(jù)提取出來,轉(zhuǎn)換成用特定格式描述的信息,提供給其它信息系統(tǒng)做進一步研究,信息提取的工作流程如圖3所示。
圖3 信息提取工作流程
4.5.1 規(guī)則學習的依據(jù)
規(guī)則(rule),不同的文獻中也有稱作模式(pattern)的。Wrapper的核心是提取規(guī)則,構(gòu)造準確健壯的提取規(guī)則是重中之重,也是任何提取系統(tǒng)致力的目標。
文中主要采用 HTML中所包含的結(jié)構(gòu)特征、位置特征、顯示特征、語義特征和引用特征形成提取規(guī)則。規(guī)則學習的步驟:(1)確定樣本頁面集;(2)樣本學習,生成提取規(guī)則。
4.5.2 信息提取過程的描述
當?shù)贸隽颂崛∫?guī)則XSLT文檔后,要構(gòu)造一個進行信息提取的wrapper僅需要執(zhí)行這個XSLT。
本文方法為 Web頁面的信息提取奠定了良好的基礎,但其適用范圍仍然有所局限。當遇到了頁面結(jié)構(gòu)較為復雜并且缺乏語義的時候,提取的準確率就會降低。所以,需要加強學習提取規(guī)則的適應性和算法來解決信息復雜性,信息源權威性和有效性,提高信息提取的準確性。