亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

基于云平臺(tái)的消除近似重復(fù)網(wǎng)頁方法

文檔序號(hào):6517701閱讀:171來源:國知局
基于云平臺(tái)的消除近似重復(fù)網(wǎng)頁方法
【專利摘要】本發(fā)明公開一種基于云平臺(tái)的消除近似重復(fù)網(wǎng)頁的實(shí)現(xiàn)方法,該方法包括以下步驟:網(wǎng)頁預(yù)處理,提取網(wǎng)頁正文;在正文中提取特征項(xiàng)用于表征正文內(nèi)容;計(jì)算特征項(xiàng)的指紋,對(duì)特征項(xiàng)進(jìn)行壓縮或降維處理以方便存儲(chǔ)和檢索;基于特征指紋計(jì)算相似度,判定原始網(wǎng)頁是否近似。本發(fā)明具有能夠極大程度地減少遺漏近似重復(fù)網(wǎng)頁重復(fù),能較好地支持多種網(wǎng)頁結(jié)構(gòu)下的相似度計(jì)算等優(yōu)點(diǎn)。
【專利說明】基于云平臺(tái)的消除近似重復(fù)網(wǎng)頁方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及基于云平臺(tái)的消除近似重復(fù)網(wǎng)頁方法。
【背景技術(shù)】
[0002]利用搜索引擎檢索新聞、博客或RSS閱讀器的人可能會(huì)時(shí)常遭遇信息過載和重復(fù)的問題,經(jīng)常能看到一個(gè)事件發(fā)生之后每個(gè)網(wǎng)頁的內(nèi)容基本相同,觀點(diǎn)相同的文章。重復(fù)的信息過多,導(dǎo)致用戶花大量的時(shí)間閱讀重復(fù)的信息。
[0003]以Google為例,Googlebot網(wǎng)頁爬蟲每天都會(huì)爬取大約200億個(gè)網(wǎng)頁,而在總量上,它追蹤著300億個(gè)左右的獨(dú)立URL鏈接。如此龐大的數(shù)據(jù)量之中網(wǎng)頁質(zhì)量難免參差不齊,查詢時(shí)返回給用戶的信息存在大量的重復(fù),很多時(shí)候用戶找不到所需要的信息。目前的搜索引擎沒有很好的解決這個(gè)問題。例如在Google輸入“iPad mini發(fā)布搭載蘋果A5雙核未配Retina 〃進(jìn)行搜索,在搜索結(jié)果顯示中第一頁10個(gè)條目中有9條內(nèi)容是重復(fù)的,而大多數(shù)人關(guān)心的恰恰是第一頁的搜索結(jié)果。
[0004]搜索最大的問題主要來自三個(gè)方向:搜索質(zhì)量的問題;搜索用戶體驗(yàn)的問題;以及整個(gè)搜索生態(tài)系統(tǒng)的問題。搜索的質(zhì)量是搜索引擎競爭的關(guān)鍵,大量重復(fù)的網(wǎng)頁對(duì)于搜索質(zhì)量的影響是致命的。多的重復(fù)網(wǎng)頁既浪費(fèi)抓取時(shí)間又浪費(fèi)存儲(chǔ)空間。尤其在建立索引時(shí)必須對(duì)大量的重復(fù)網(wǎng)頁建立索引,也使倒排文件變得龐大,影響提供查詢服務(wù)時(shí)的響應(yīng)速度。如果能夠找出這些重復(fù)網(wǎng)頁并從網(wǎng)頁數(shù)據(jù)庫中去掉,就能夠節(jié)省一部分存儲(chǔ)空間,進(jìn)而可以利用這部分空間來存放更多的有效網(wǎng)頁內(nèi)容來進(jìn)行增量收集,同時(shí)也提高了 web頁面檢索質(zhì)量。所以,如何高效、準(zhǔn)確的去掉重復(fù)的網(wǎng)頁,提高檢索效率,增加用戶的檢索體驗(yàn)是我們所要解決的問題。
[0005]在當(dāng)前大數(shù)據(jù)時(shí)代悄然來臨的背景下,應(yīng)當(dāng)從處理數(shù)據(jù)和信息的過程中發(fā)掘其背后的商業(yè)價(jià)值。網(wǎng)絡(luò)中大量的網(wǎng)頁重復(fù)現(xiàn)象給互聯(lián)網(wǎng)應(yīng)用如搜索引擎帶來了資源的浪費(fèi)、索引負(fù)擔(dān)重、影響服務(wù)效果等問題。如何有效、準(zhǔn)確的將重復(fù)網(wǎng)頁去掉,對(duì)挖掘節(jié)約帶寬、提高挖掘的速率、挖掘時(shí)效性強(qiáng)的資源等都有重要的意義。

【發(fā)明內(nèi)容】

[0006]本發(fā)明所要解決的技術(shù)問題是要提供一種能最大程度地減少近似重復(fù)網(wǎng)頁的基于云平臺(tái)的消除近似重復(fù)網(wǎng)頁方法。
[0007]為了解決以上的技術(shù)問題,本發(fā)明提供了一種基于云平臺(tái)的消除近似重復(fù)網(wǎng)頁方法,其特征在于:
該方法包括以下步驟:
⑴網(wǎng)頁預(yù)處理,提取網(wǎng)頁正文;
⑵在正文中提取特征項(xiàng)用于表征正文內(nèi)容;
⑶計(jì)算特征項(xiàng)的指紋,對(duì)特征項(xiàng)進(jìn)行壓縮或降維處理以方便存儲(chǔ)和檢索;
⑷基于特征指紋計(jì)算相似度,判定原始網(wǎng)頁是否近似。[0008]上述步驟⑴、⑵、⑶是對(duì)給定的網(wǎng)頁進(jìn)行預(yù)處理,并將網(wǎng)頁正文表示為分塊指紋集合的過程,這一階段的算法步驟如下:
步驟①:網(wǎng)頁預(yù)處理,去除網(wǎng)頁噪聲,提取網(wǎng)頁正文;
具體的正文提取方法使用基于加權(quán)DOM樹的網(wǎng)頁正文提取算法。
[0009]步驟②:對(duì)網(wǎng)頁正文中待處理的自然分塊,以標(biāo)點(diǎn)符號(hào)作為分隔符,如“,”、“?!?、“?”和“! ”作為分隔符分塊劃分為多個(gè)句子,在這些句子中提取字?jǐn)?shù)不少于k個(gè)字的長句作為分塊的特征項(xiàng),對(duì)每個(gè)提取的長句,根據(jù)網(wǎng)頁的主題語義及長句自身特性計(jì)算其權(quán)重;
步驟③:利用分塊的加權(quán)長句計(jì)算分塊指紋,并將分塊指紋加入正文的分塊指紋集;步驟④:若還有新的分塊,則轉(zhuǎn)到上述步驟②繼續(xù)對(duì)新分塊進(jìn)行長句提取和指紋計(jì)算;若全文結(jié)束,則這一階段結(jié)束,得到全文的分塊指紋集合。
[0010]上述步驟⑷是對(duì)已得到的分塊集合進(jìn)行相似度計(jì)算,并依此判定它們的正文是否近似,步驟如下:
步驟①:設(shè)近似閾值為r ;
步驟②:計(jì)算相似度,若相似度>r,則判定是近似網(wǎng)頁;否則,不是近似網(wǎng)頁。
[0011]準(zhǔn)確的正文提取是進(jìn)行近似檢測的重要前提,能夠同現(xiàn)有的網(wǎng)頁搜集系統(tǒng)較好的整合,同時(shí)通過實(shí)驗(yàn)驗(yàn)證具備較高的有效性和準(zhǔn)確性,并且處理效率上得到了明顯的提高。
[0012]與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點(diǎn):
(1)針對(duì)相似網(wǎng)頁去重的應(yīng)用,利用網(wǎng)頁分塊和主題信息提取技術(shù),提取網(wǎng)頁的特征向量。網(wǎng)頁分塊主要基于DOM語法樹對(duì)其中的內(nèi)容節(jié)點(diǎn)合并成大粒度的網(wǎng)頁塊;主題內(nèi)容塊的提取方法主要基于文本相似度的比較,同時(shí)通過Bayes方法計(jì)算后驗(yàn)概率進(jìn)行優(yōu)化改進(jìn)。通過上述處理,可以完成對(duì)影響網(wǎng)頁去重的網(wǎng)頁噪音信息的去除、文本內(nèi)容的詞項(xiàng)切分、網(wǎng)頁特征向量的提取,較以往方法性能有明顯提升;
(2)分析傳統(tǒng)的基于Shingle的相似網(wǎng)頁去重方法的基本原理,并在此基礎(chǔ)上,基于映射/規(guī)約編程模型提出了改進(jìn)的算法,在分布式運(yùn)行環(huán)境下,該改進(jìn)的算法將增加處理的效率,并具備良好的橫向擴(kuò)展性;
(3)結(jié)合Shingle和Simhash兩種算法對(duì)傳統(tǒng)的網(wǎng)頁指紋計(jì)算技術(shù)進(jìn)行改進(jìn),該指紋具有網(wǎng)頁間內(nèi)容越相似,指紋間的漢明距離越接近的特征,并且在處理效率和精確性上作了較好的權(quán)衡;針對(duì)上述方法得到的網(wǎng)頁指紋,分析了 Manku的相似指紋快速探測算法,通過以空間換時(shí)間的方式使得時(shí)間消耗大量減少;
(4)介紹了類GFS分布式計(jì)算平臺(tái)的工作原理和映射/規(guī)約這一海量數(shù)據(jù)分布式處理模型,并提出了基于開源框架Hadoop的分布式計(jì)算集群的部署方案?;谠撈脚_(tái),將指紋比對(duì)的任務(wù)分散并行化,在各個(gè)執(zhí)行任務(wù)的單機(jī)上利用Manku的相似指紋快速探測技術(shù)進(jìn)行指紋比對(duì),然后系統(tǒng)歸并所有執(zhí)行任務(wù)單機(jī)的處理結(jié)果,在得到原有指紋庫中與待添加指紋相似的條目后,就可以完成對(duì)原有指紋庫的相應(yīng)指紋以及網(wǎng)頁庫的相應(yīng)網(wǎng)頁的刪除工作。
【專利附圖】

【附圖說明】
[0013]圖1為本發(fā)明的流程圖; 圖2為本發(fā)明網(wǎng)頁搜集系統(tǒng)體系架構(gòu)圖;
圖3為本發(fā)明網(wǎng)頁正文表示為分塊指紋集合的流程圖;
圖4為本發(fā)明改進(jìn)的SimHash算法與Manku傳統(tǒng)算法的對(duì)比表;
圖5為本發(fā)明改進(jìn)的SimHash算法與Manku傳統(tǒng)算法運(yùn)行時(shí)間的對(duì)比表。
【具體實(shí)施方式】
[0014]下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)說明。
[0015]如圖1所示,本發(fā)明提供了一種基于云平臺(tái)的消除近似重復(fù)網(wǎng)頁方法,其特征在于:
該方法包括以下步驟:
⑴網(wǎng)頁預(yù)處理,提取網(wǎng)頁正文;
⑵在正文中提取特征項(xiàng)用于表征正文內(nèi)容;
⑶計(jì)算特征項(xiàng)的指紋,對(duì)特征項(xiàng)進(jìn)行壓縮或降維處理以方便存儲(chǔ)和檢索;
⑷基于特征指紋計(jì)算相似度,判定原始網(wǎng)頁是否近似。
[0016]如圖3所示,上述步驟⑴、⑵、⑶是對(duì)給定的網(wǎng)頁A和B進(jìn)行預(yù)處理,并將網(wǎng)頁正文表示為分塊指紋集合的過程,這一階段的算法步驟如下:
步驟①:網(wǎng)頁預(yù)處理,去除網(wǎng)頁噪聲,提取網(wǎng)頁正文;
具體的正文提取方法使用基于加權(quán)DOM樹的網(wǎng)頁正文提取算法。
[0017]步驟②:對(duì)網(wǎng)頁正文中待處理的自然分塊,以標(biāo)點(diǎn)符號(hào)作為分隔符,如“,”、“?!?、“?”和“! ”作為分隔符分塊劃分為多個(gè)句子,在這些句子中提取字?jǐn)?shù)不少于k個(gè)字的長句作為分塊的特征項(xiàng),對(duì)每個(gè)提取的長句,根據(jù)網(wǎng)頁的主題語義及長句自身特性計(jì)算其權(quán)重;
步驟③:利用分塊的加權(quán)長句計(jì)算分塊指紋,并將分塊指紋加入正文的分塊指紋集;步驟④:若還有新的分塊,則轉(zhuǎn)到上述步驟②繼續(xù)對(duì)新分塊進(jìn)行長句提取和指紋計(jì)算;若全文結(jié)束,則這一階段結(jié)束,得到全文的分塊指紋集合。
[0018]設(shè)給定網(wǎng)頁A的自然段數(shù)目為n,圖中S是網(wǎng)頁A的分塊指紋集合。
[0019]上述步驟⑷是對(duì)已得到的分塊集合進(jìn)行相似度計(jì)算,并依此判定它們的正文是否近似,步驟如下:
將Sa和Sb的相似度定義為sim (SA,Sb),設(shè)近似閾值為r:
步驟①:計(jì)算Sa和Sb的相似度sim (SA, Sb)。
[0020]步驟②:若sim(SA,SB) >r,則判定網(wǎng)頁A和B是近似網(wǎng)頁;否則,它們不是近似網(wǎng)頁。
[0021]至此,網(wǎng)頁近似判定階段結(jié)束。
[0022]如圖2為本發(fā)明網(wǎng)頁搜集系統(tǒng)體系架構(gòu)圖,包括以下步驟:
(I)異步抓取原始網(wǎng)頁
對(duì)于互聯(lián)網(wǎng)的網(wǎng)頁下載,通常需要涉及到DNS地址的解析,在高并發(fā)的情況下如果不采取措施,DNS地址解析會(huì)成為一個(gè)重要的瓶頸,通過多線程并發(fā)的DNS客戶端來提高DNS解析的速率,同時(shí)通過DNS Cache來緩存DNS解析的結(jié)果,此外DNS客戶端應(yīng)當(dāng)通過UDP網(wǎng)絡(luò)協(xié)議來獲取結(jié)果,同時(shí)獲取的過程應(yīng)該使用異步非阻塞的方式來提高性能。[0023](2)解析網(wǎng)頁
針對(duì)網(wǎng)頁內(nèi)容做解析,具體解析方式和解析內(nèi)容可以通過配置文件進(jìn)行靈活配置,具體功能的實(shí)現(xiàn)包含提取網(wǎng)頁特征向量和提取鏈接。
[0024](3)提取特征向量和網(wǎng)頁去重
兩者作為相似網(wǎng)頁去重系統(tǒng)被集成到網(wǎng)頁搜集系統(tǒng)中,并根據(jù)不同的工作模式對(duì)網(wǎng)頁指紋進(jìn)行處理,如果運(yùn)行在在線模式下,那么每下載一個(gè)網(wǎng)頁就需要對(duì)其進(jìn)行分析提取網(wǎng)頁特征指紋,使用改進(jìn)的Simhash算法進(jìn)行相似網(wǎng)頁探測,對(duì)于判斷到的原有網(wǎng)頁庫中與新下載頁面近似相似的網(wǎng)頁集合則進(jìn)行刪除。
[0025]( 4 )提取網(wǎng)頁中的鏈接
鏈接提取模塊主要從網(wǎng)頁的內(nèi)容中提取所有的鏈接,同時(shí)針對(duì)網(wǎng)絡(luò)上不規(guī)范的鏈接進(jìn)行不規(guī)范,例如補(bǔ)齊鏈接的Canonical名稱、添加顯式端口號(hào)、大小寫轉(zhuǎn)換等。
[0026](5)鏈接過濾和Robots控制
鏈接過濾和Robots控制主要針對(duì)鏈接進(jìn)行處理,用于以下方面:首先,部分站點(diǎn)使用robots, txt來建議性的控制爬行器的行為,作為網(wǎng)頁搜集系統(tǒng)應(yīng)當(dāng)嚴(yán)格遵守約定;其次,該模塊可以對(duì)需要被過濾的鏈接進(jìn)行預(yù)定義,定義的方式主要基于正則表達(dá)式;再次,對(duì)于網(wǎng)絡(luò)爬行陷阱,該模塊應(yīng)當(dāng)確定適當(dāng)?shù)囊?guī)則,例如限定爬行鏈接的深度,過濾URL重寫鏈接等機(jī)制來進(jìn)行處理;最后,由于網(wǎng)頁搜集系統(tǒng)并行化的需求,單點(diǎn)需要對(duì)提取的鏈接進(jìn)行散列計(jì)算確定獲取該鏈接的主機(jī)。
[0027](6)隊(duì)列負(fù)載監(jiān)控
具體控制策略可以分為兩級(jí),首先根據(jù)爬行鏈接進(jìn)行優(yōu)先級(jí)劃分,然后將鏈接按照訪問主機(jī)進(jìn)行劃分,從而限制對(duì)于某主機(jī)的頻繁訪問。
[0028]具體以測試數(shù)據(jù)為例進(jìn)一步闡述本發(fā)明的技術(shù)方案。該案例實(shí)驗(yàn)環(huán)境設(shè)計(jì)如下:1臺(tái)機(jī)器作為NameNode, 24臺(tái)機(jī)器作為DataNode。每臺(tái)節(jié)點(diǎn)硬件配置如下:聯(lián)想揚(yáng)天T4600v,CPU為Intel賽揚(yáng)E3200 (2.6GHZ);內(nèi)存為2GB ;硬盤為250GB/7200rpm。使用的操作系統(tǒng)為RedHat5.3, Java環(huán)境為JDK1.6, Hadoop版本為0.20.2,每臺(tái)機(jī)器配置4個(gè)slots,即同時(shí)處理4個(gè)map/reduce任務(wù)。
[0029]案例主要通過與原始算法的對(duì)比實(shí)驗(yàn)驗(yàn)證改進(jìn)的基于SimHash網(wǎng)頁去重算法的有效性。這里抓取了約150萬網(wǎng)頁,作為實(shí)驗(yàn)的數(shù)據(jù)集。為了能夠模擬測試網(wǎng)頁去重的過程,按照文本長度隨機(jī)選擇了 5000個(gè)互不重復(fù)的網(wǎng)頁正文,對(duì)其正文進(jìn)行隨機(jī)的少量增、刪、改操作,生成了 10000個(gè)近似重復(fù)的網(wǎng)頁正文,插入到數(shù)據(jù)集中。最終提取到一個(gè)約5GB的文本文件存儲(chǔ)網(wǎng)頁正文的相關(guān)信息。分別使用Manku的算法和改進(jìn)的算法進(jìn)行對(duì)數(shù)據(jù)集進(jìn)行處理,結(jié)果如圖4所示。
[0030]從圖中可以看出,結(jié)果的差異主要體現(xiàn)在對(duì)于較短篇幅網(wǎng)頁的識(shí)別上,顯然改進(jìn)的算法的查全率要優(yōu)于傳統(tǒng)的Manku算法,這主要體現(xiàn)在對(duì)于短文本的識(shí)別上。
[0031]為了給算法加速,Manku提出以下方法:(1)對(duì)64 bit的指紋數(shù)據(jù)進(jìn)行分塊;(2)對(duì)指紋進(jìn)行置換擴(kuò)展,通過空間的冗余來換取時(shí)間的消耗,而改進(jìn)的算法將全局范圍的比較減少為局部范圍的比較,以較小精度的犧牲換取了較低的時(shí)間和空間復(fù)雜度。在改進(jìn)的算法中,原來的一個(gè)Job在改進(jìn)算法中分解為5個(gè)Job完成,如圖5中計(jì)算時(shí)間均為算法完成的總時(shí)間。從圖中可以看出在程序處理時(shí)間上,隨著文件集規(guī)模的增大,改進(jìn)算法的運(yùn)行時(shí)間也是要優(yōu)于傳統(tǒng)算法的。
[0032]在數(shù)據(jù)集不同規(guī)模下比較算法運(yùn)行時(shí)間,從而驗(yàn)證算法是否具有較高的伸縮性。實(shí)驗(yàn)分別比較了在30萬到150萬個(gè)網(wǎng)頁數(shù)據(jù)集下的計(jì)算時(shí)間,由圖可知,時(shí)間消耗基本按照線性增長,因此該改進(jìn)的算法在并行計(jì)算的環(huán)境下具備較高的可擴(kuò)展性。
【權(quán)利要求】
1.一種基于云平臺(tái)的消除近似重復(fù)網(wǎng)頁方法,其特征在于: 該方法包括以下步驟: ⑴網(wǎng)頁預(yù)處理,提取網(wǎng)頁正文; ⑵在正文中提取特征項(xiàng)用于表征正文內(nèi)容; ⑶計(jì)算特征項(xiàng)的指紋,對(duì)特征項(xiàng)進(jìn)行壓縮或降維處理以方便存儲(chǔ)和檢索; ⑷基于特征指紋計(jì)算相似度,判定原始網(wǎng)頁是否近似。
2.根據(jù)權(quán)利要求1所述的基于云平臺(tái)的消除近似重復(fù)網(wǎng)頁方法,其特征在于:所述步驟⑴、⑵、⑶是對(duì)給定的網(wǎng)頁進(jìn)行預(yù)處理,并將網(wǎng)頁正文表示為分塊指紋集合的過程,這一階段的算法步驟如下: 步驟①:網(wǎng)頁預(yù)處理,去除網(wǎng)頁噪聲,提取網(wǎng)頁正文; 步驟②:對(duì)網(wǎng)頁正文中待處理的自然分塊,以標(biāo)點(diǎn)符號(hào)作為分隔符,分塊劃分為多個(gè)句子,在這些句子中提取字?jǐn)?shù)不少于k個(gè)字的長句作為分塊的特征項(xiàng),對(duì)每個(gè)提取的長句,根據(jù)網(wǎng)頁的主題語義及長句自身特性計(jì)算其權(quán)重; 步驟③:利用分塊的加權(quán)長句計(jì)算分塊指紋,并將分塊指紋加入正文的分塊指紋集; 步驟④:若還有新的分塊,則轉(zhuǎn)到上述步驟②繼續(xù)對(duì)新分塊進(jìn)行長句提取和指紋計(jì)算;若全文結(jié)束,則這一階段結(jié)束,得到全文的分塊指紋集合。
3.根據(jù)權(quán)利要求1所述的基于云平臺(tái)的消除近似重復(fù)網(wǎng)頁方法,其特征在于:所述步驟⑷是對(duì)已得到的分塊集合進(jìn)行相似度計(jì)算,并依此判定它們的正文是否近似,步驟如下: 步驟①:設(shè)近似閾值為r ; 步驟②:計(jì)算相似度,若相似度>r,則判定是近似網(wǎng)頁;否則,不是近似網(wǎng)頁。
【文檔編號(hào)】G06F17/30GK103559259SQ201310537406
【公開日】2014年2月5日 申請(qǐng)日期:2013年11月4日 優(yōu)先權(quán)日:2013年11月4日
【發(fā)明者】向陽, 陳佑雄, 張依楊, 平宇, 張波, 袁書寒 申請(qǐng)人:同濟(jì)大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1