李 劍
(南昌陸軍學(xué)院戰(zhàn)斗實驗室,江西南昌 330103)
互聯(lián)網(wǎng)規(guī)模的幾何級數(shù)增長和萬維網(wǎng)的缺乏規(guī)范性,使網(wǎng)絡(luò)信息檢索與傳統(tǒng)信息檢索相比呈現(xiàn)出明顯的不同之處:互聯(lián)網(wǎng)絡(luò)信息檢索面向的對象為海量數(shù)據(jù)[1];互聯(lián)網(wǎng)絡(luò)信息檢索所提供的信息內(nèi)容包羅萬象,形式多樣。在這種情況下,網(wǎng)頁凈化技術(shù)成為網(wǎng)絡(luò)信息檢索特有的一個研究領(lǐng)域,受到越來越多研究人員的關(guān)注。對于有主題的網(wǎng)頁,文中提出了基于DOM和神經(jīng)網(wǎng)絡(luò)的網(wǎng)頁凈化方法。
文中網(wǎng)頁凈化系統(tǒng)模型分為3個模塊,分別對應(yīng)系統(tǒng)處理網(wǎng)頁的3個不同階段:在第一個模塊中,是把整個網(wǎng)頁的文檔分割成不同的內(nèi)容塊,然后對這些塊進(jìn)行分析;第二個模塊是將內(nèi)容塊樹中的按照給定標(biāo)準(zhǔn)選擇出固定數(shù)量的子樹,作為模塊三的輸入數(shù)據(jù);模塊三是神經(jīng)網(wǎng)絡(luò)的運行部分,能夠選擇出網(wǎng)頁的主要內(nèi)容塊,模型圖如1 所示[2-3]。
圖1 整個模型框架圖
HTML文檔是一種半結(jié)構(gòu)化的文檔,這里運用了HTML Parser工具對它進(jìn)行解析。HTML DOM是一種樹形的結(jié)構(gòu),通常被稱為HTML DOM樹。它的每個結(jié)點都代表一個塊單元,這里把DOM樹的結(jié)點分為兩種[4]:(1)組織結(jié)點,例如:<table>,<tr>,<div>,<ui>等,是被用以劃分整個網(wǎng)頁的結(jié)構(gòu)或組織網(wǎng)頁的內(nèi)容。(2)作非組織結(jié)點,展示網(wǎng)頁內(nèi)容,例如:<td>,<Ii>,<p>,<img>等。通常非組織結(jié)點包含在組織結(jié)點內(nèi)。
通過對大量帶有主題的網(wǎng)頁進(jìn)行研究分析,發(fā)現(xiàn)這類的網(wǎng)頁有著鮮明的特征,內(nèi)容基本都是被按照所處位置不同被分割成幾個內(nèi)容塊,幾個內(nèi)容塊在視覺上都有區(qū)別,并且網(wǎng)頁大部分都用 <table>或者<div>劃分頁面內(nèi)容。因此,可借用這個特征,把一個網(wǎng)頁轉(zhuǎn)化成一個內(nèi)容塊樹,而內(nèi)容塊樹又是由子內(nèi)容塊樹構(gòu)成,子內(nèi)容塊樹是由它所在的塊中的一些相關(guān)DOM結(jié)點組成。這樣,就方便地把一些有相關(guān)信息和有相似布局的DOM結(jié)點集中在一起,從而為下面去除噪音信息做好準(zhǔn)備工作[5-6]。對此,設(shè)計算法如下:
(1)建立HTML文檔的DOM樹,然后把DOM樹轉(zhuǎn)化成DOM結(jié)點屬性,同時把組織結(jié)點和非組織結(jié)點分別標(biāo)上對應(yīng)的標(biāo)簽。
(2)建立一個空的以<body>為根結(jié)點的內(nèi)容塊樹,再把所有的組織結(jié)點給放進(jìn)一個結(jié)點池里。
(3)從結(jié)點池中取一個結(jié)點。
1)如該結(jié)點的左孩子是組織結(jié)點,則跳到2),否則跳到3);如該結(jié)點沒有孩子,則跳到4)。
2)如該結(jié)點是<table>,<tbody>,<div>并且它的后代結(jié)點包含<p>,<li>結(jié)點的話,就把該結(jié)點和它所有的后代結(jié)點都放進(jìn)到一個新的隊列中去;否則就把該結(jié)點的左孩子給讀進(jìn)來,然后跳向1)。
3)如該結(jié)點的其它孩子結(jié)點都不是組織結(jié)點,則把該結(jié)點和它的后代結(jié)點都放進(jìn)到一個新隊列中去;否則,把它的其它孩子給讀進(jìn)來,然后跳向1)。
4)如該結(jié)點沒有父結(jié)點或者它是<h1~h2>,<hr>,則把該結(jié)點標(biāo)注成S(j++);否則把該結(jié)點,它的父結(jié)點和它所有的兄弟結(jié)點都放進(jìn)一個新的列表中。
5)從結(jié)點池中取出下一個結(jié)點。
6)for((3)中建立的所有隊列)。
7)檢查每個隊列中的父結(jié)點的所有屬性,比如,fontsize,fontcolor等。若有一個孩子結(jié)點和父結(jié)點有相同的屬性,這個父結(jié)點就將被作為一個分離結(jié)點從它的隊列中移除。
(4)如果隊列中的父結(jié)點中包含<h1~h6>的話,該父結(jié)點也會被作為分離結(jié)點從隊列中移除。
高情千古一真隱——陶淵明的隱逸思想和隱逸生活探析………………………………………………………………………李蘭東(3.49)
(5)根據(jù)建立隊列的順序在<body>結(jié)點下把所有的子內(nèi)容塊樹線建立起來,最終一個完整對應(yīng)于網(wǎng)頁的內(nèi)容塊樹也就建成了。
在對主題型網(wǎng)頁分析研究中,還發(fā)現(xiàn)一些網(wǎng)頁內(nèi)容在網(wǎng)頁的展示中需要較多的HTML標(biāo)簽去進(jìn)行修飾編碼,特別是標(biāo)題、邊欄、廣告欄、眉頭和頁腳等。從中可以統(tǒng)計出,與網(wǎng)頁主題關(guān)系度較小的網(wǎng)頁信息塊,它所包含的HTML編碼都較多。因此,為了從內(nèi)容塊樹中抽取得網(wǎng)頁的主要內(nèi)容塊,把冗余的不相關(guān)的或者相關(guān)度低的信息過濾凈化掉,文中參考了子塊中文本內(nèi)容和HTML編碼的比例特征對子塊進(jìn)行初步篩選:
(1)設(shè)定子內(nèi)容塊占總內(nèi)容文本比例的臨界值和子內(nèi)容塊和它對應(yīng)的HTML編碼的比例的臨界值。
(2)計算整個內(nèi)容塊樹的文本大小。
(3)計算各個內(nèi)容塊子樹的文本大小,并得出各文本占內(nèi)容塊樹文本的比例。
(5)計算出各個內(nèi)容子塊和它對應(yīng)的HTML編碼的比例。
(6)通過上面的臨界值,來綜合選出用于作為神經(jīng)網(wǎng)絡(luò)的訓(xùn)練輸入子內(nèi)容塊。
本模塊以BP神經(jīng)網(wǎng)絡(luò)為基礎(chǔ)構(gòu)建,整個模塊分成兩個階段:訓(xùn)練階段和測試階段。
文中運用的神經(jīng)網(wǎng)絡(luò)由3層結(jié)構(gòu)組成:輸入層、隱含層和輸出層。實驗證明,多層神經(jīng)元并不會使結(jié)果更優(yōu)化,反而增加了計算的復(fù)雜度,因此采用標(biāo)準(zhǔn)3層結(jié)構(gòu)。作用函數(shù)為非線性的Singmod型函數(shù),表達(dá)式為
從新浪博客、網(wǎng)易體育和百度知道網(wǎng)上分別獲取了3個不同類型的網(wǎng)頁,數(shù)量都為600個,其中各自的500個網(wǎng)頁用作訓(xùn)練,另外各自的100個網(wǎng)頁用來測試。實驗結(jié)果的分析通過3個指標(biāo)來衡量,分別是正確率CR,誤取率ER和漏取率LR。
其中,CB是提取出的正確的內(nèi)容塊數(shù);TB是總的主要內(nèi)容塊數(shù);EB是誤取的內(nèi)容塊數(shù);LB是漏取的主內(nèi)容塊數(shù)。
在運用上述3個模塊對實驗數(shù)據(jù)進(jìn)行實驗后,依據(jù)實驗結(jié)果計算出各自的3個指標(biāo)數(shù)據(jù),用柱狀圖表示如下。
圖2 實驗結(jié)果
如圖2所示,無論從正確率、錯誤率和漏測率都能夠比較正確地把網(wǎng)頁中的冗余信息去除掉,通過從3類網(wǎng)頁的分析和實驗結(jié)果中,得出網(wǎng)易體育的主題性最強(qiáng),其次是百度知道及新浪博客。而且網(wǎng)易體育的凈化效果在3個指標(biāo)中也是最好的。從而說明,該方法是對主題越突顯的網(wǎng)頁效果越好,適合用于網(wǎng)頁分類應(yīng)用中,比如搜索引擎。在搜索引擎按照一定的主題和算法爬取到網(wǎng)頁后,要對這些網(wǎng)頁進(jìn)行分類和建立索引,這個凈化方法就會為網(wǎng)頁的分類提供較大的幫助。
在改進(jìn)的DOM樹和BP神經(jīng)網(wǎng)絡(luò)理論的基礎(chǔ)上,設(shè)計了一種新的中文網(wǎng)頁凈化方法,通過實驗結(jié)果,看到了該方法對于有主題網(wǎng)頁凈化的效果良好,且網(wǎng)頁主題越清晰,效果越好。
[1]張志剛,陳靜,李曉明.一種HTML網(wǎng)頁凈化方法[J].情報學(xué)報,2004(4):387-393.
[2]王建冬,王繼民,田飛佳.一種基于內(nèi)容規(guī)則的網(wǎng)頁去噪算法[J].現(xiàn)代圖書情報技術(shù),2008(3):51-54.
[3]萬樂,左萬利,高金.基于主題的網(wǎng)頁去噪音機(jī)制[J].計算機(jī)工程與技術(shù),2008(8):2072-2084.
[4]劉亞清,陳榮.基于隱馬爾可夫模型的 Web信息抽?。跩].計算機(jī)工程,2009(18):25 -27.
[5]HIROSHI S,JUN R,MITSURU N.Modified minimum classification error learning and its application to neural networks[C].SSPR/SPR,1998,1451:785 -794.
[6]SHEN Dou,YANG Qiang,CHEN Zheng.Noise reduction through summarization for Web - page classification[J].Science Direct,Inf.Process.Manage,2007,43(6):1735-1747.