搜索引擎對重復(fù)頁面算法分析 |
發(fā)布時間: 2012/9/15 14:58:31 |
搜索引擎判斷復(fù)制網(wǎng)頁一般都基于這么一個思想:為每個網(wǎng)頁計算出一組信息指紋(Fingerprint),若兩個網(wǎng)頁有一定數(shù)量相同的信息指紋,則認(rèn)為這兩個網(wǎng)頁的內(nèi)容重疊性很高,也就是說兩個網(wǎng)頁是內(nèi)容復(fù)制的。
很多搜索引擎判斷內(nèi)容復(fù)制的方法都不太一樣,主要是以下兩點(diǎn)的不同:
1、計算信息指紋(Fingerprint)的算法;
2、判斷信息指紋的相似程度的參數(shù)。
在描述具體的算法前,先說清楚兩點(diǎn):
1、什么是信息指紋?信息指紋就是把網(wǎng)頁里面正文信息,提取一定的信息,可以是關(guān)鍵字、詞、句子或者段落及其在網(wǎng)頁里面的權(quán)重等,對它進(jìn)行加密,如MD5加密,從而形成的一個字符串。信息指紋如同人的指紋,只要內(nèi)容不相同,信息指紋就不一樣。
2、算法提取的信息不是針對整張網(wǎng)頁,而是把網(wǎng)站里面共同的部分如導(dǎo)航條、logo、版權(quán)等信息(這些稱之為網(wǎng)頁的“噪音”)過濾掉后剩下的文本。
分段簽名算法
這種算法是按照一定的規(guī)則把網(wǎng)頁切成N段,對每一段進(jìn)行簽名,形成每一段的信息指紋。如果這N個信息指紋里面有M個相同時(m是系統(tǒng)定義的闕值),則認(rèn)為兩者是復(fù)制網(wǎng)頁。
這種算法對于小規(guī)模的判斷復(fù)制網(wǎng)頁是很好的一種算法,但是對于像google這樣海量的搜索引擎來說,算法的復(fù)雜度相當(dāng)高。
基于關(guān)鍵詞的復(fù)制網(wǎng)頁算法
像google這類搜索引擎,他在抓取網(wǎng)頁的時候都會記下以下網(wǎng)頁信息:
1、網(wǎng)頁中出現(xiàn)的關(guān)鍵詞(中文分詞技術(shù))以及每個關(guān)鍵詞的權(quán)重(關(guān)鍵詞密度);
2、提取meta descrīption或者每個網(wǎng)頁的512個字節(jié)的有效文字。
關(guān)于第2點(diǎn),baidu和google有所不同,google是提取你的meta descrīption,如果沒有查詢關(guān)鍵字相關(guān)的512個字節(jié),而百度是直接提取后者。這一點(diǎn)大家使用過的都有所體會。
在以下算法描述中,我們約定幾個信息指紋變量:
Pi表示第i個網(wǎng)頁;
該網(wǎng)頁權(quán)重最高的N個關(guān)鍵詞構(gòu)成集合Ti={t1,t2,...tn},其對應(yīng)的權(quán)重為Wi={w1,w2,...wi}
摘要信息用Des(Pi)表示,前n個關(guān)鍵詞拼成的字符串用Con(Ti)表示,對這n個關(guān)鍵詞排序后形成的字符串用Sort(Ti)表示。
以上信息指紋都用MD5函數(shù)進(jìn)行加密。
基于關(guān)鍵詞的復(fù)制網(wǎng)頁算法有以下5種:
1、MD5(Des(Pi))=MD5(Des(Pj)),就是說摘要信息完全一樣,i和j兩個網(wǎng)頁就認(rèn)為是復(fù)制網(wǎng)頁;
2、MD5(Con(Ti))=MD5(Con(Tj)),兩個網(wǎng)頁前n個關(guān)鍵詞及其權(quán)重的排序一樣,就認(rèn)為是復(fù)制網(wǎng)頁;
3、MD5(Sort(Ti))=MD5(Sort(Tj)),兩個網(wǎng)頁前n個關(guān)鍵詞一樣,權(quán)重可以不一樣,也認(rèn)為是復(fù)制網(wǎng)頁。
4、MD5(Con(Ti))=MD5(Con(Tj))并且Wi-Wj的平方除以Wi和Wj的平方之和小于某個闕值a,則認(rèn)為兩者是復(fù)制網(wǎng)頁。
5、MD5(Sort(Ti))=MD5(Sort(Tj))并且Wi-Wj的平方除以Wi和Wj的平方之和小于某個闕值a,則認(rèn)為兩者是復(fù)制網(wǎng)頁。
關(guān)于第4和第5的那個闕值a,主要是因?yàn)榍耙粋判斷條件下,還是會有很多網(wǎng)頁被誤傷,搜索引擎開發(fā)根據(jù)權(quán)重的分布比例進(jìn)行調(diào)節(jié),防止誤傷。
這個是北大天網(wǎng)搜索引擎的去重算法(可以參考:《搜索引擎--原理、技術(shù)與系統(tǒng)》一書),以上5種算法運(yùn)行的時候,算法的效果取決于N,就是關(guān)鍵詞數(shù)目的選取。當(dāng)然啦,選的數(shù)量越多,判斷就會越精確,但是誰知而來的計算速度也會減慢下來。所以必須考慮一個計算速度和去重準(zhǔn)確率的平衡。據(jù)天網(wǎng)試驗(yàn)結(jié)果,10個左右關(guān)鍵詞最恰當(dāng)。
后記
以上肯定無法覆蓋一個大型搜索引擎復(fù)制網(wǎng)頁的所有方面,他們必定還有一些輔助的信息指紋判斷,本文作為一個思路,給做搜索引擎優(yōu)化的一個思路。 本文出自:億恩科技【mszdt.com】 服務(wù)器租用/服務(wù)器托管中國五強(qiáng)!虛擬主機(jī)域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |