Hilltop算法
- 威海鏈接原理 威海Hilltop算法
- 2198
HillTop ,是一項(xiàng)搜索引擎結(jié)果排序的專利,是Google的一個(gè)工程師Bharat在2001年獲得的專利。Google的排序規(guī)則經(jīng)常在變化,但變化最大的一次也就是基于HillTop算法進(jìn)行了優(yōu)化。
算法
其實(shí)HillTop算法的指導(dǎo)思想和PageRank的是一致的,都是通過(guò)網(wǎng)頁(yè)被鏈接的數(shù)量和質(zhì)量來(lái)確定搜索結(jié)果的排序權(quán)重。但HillTop認(rèn)為只計(jì)算來(lái)自具有相同主題的相關(guān)文檔鏈接對(duì)于搜索者的價(jià)值會(huì)更大:即主題相關(guān)網(wǎng)頁(yè)之間的鏈接對(duì)于權(quán)重計(jì)算的貢獻(xiàn)比主題不相關(guān)的鏈接價(jià)值要更高。如果網(wǎng)站是介紹“服裝”的,有10個(gè)鏈接都是從“服裝”相關(guān)的網(wǎng)站鏈接過(guò)來(lái),那這10個(gè)鏈接比另外10個(gè)從“電器”相關(guān)網(wǎng)站鏈接過(guò)來(lái)的貢獻(xiàn)要大。。在1999與2000年,當(dāng)這個(gè)算法被Bharat與其他Google開(kāi)發(fā)人員開(kāi)發(fā)出來(lái)的時(shí)候,Bharat稱這種對(duì)主題有影響的文檔為“專家”文檔,從這些專家文檔頁(yè)面到目標(biāo)文檔的鏈接決定了被鏈接網(wǎng)頁(yè)“權(quán)重得分”的主要部分。
與PageRank結(jié)合HillTop算法確定網(wǎng)頁(yè)與搜索關(guān)鍵詞的匹配程度的基本排序過(guò)程取代了過(guò)分依靠PageRank的值去尋找那些權(quán)威頁(yè)面的方法。這對(duì)于兩個(gè)具有同樣主題而且PR相近的網(wǎng)頁(yè)排序過(guò)程中, HillTop算法就顯得非常的重要了。HillTop同時(shí)也避免了許多想通過(guò)增加許多無(wú)效鏈接來(lái)提高網(wǎng)頁(yè)P(yáng)ageRank值的作弊方法。
定義相關(guān)網(wǎng)站
Google最早利用HillTop算法去定義相關(guān)網(wǎng)站:一個(gè)網(wǎng)站與另一個(gè)網(wǎng)站的相關(guān)性,實(shí)際上,HillTop算法在Google中也作為一個(gè)識(shí)別跨站點(diǎn)的鏈接交換干擾(spam)與識(shí)別相似鏈接的技術(shù)。HillTop算法要求:如果有兩個(gè)以上相關(guān)主題的網(wǎng)站鏈接到你的網(wǎng)站,那么你的網(wǎng)站在搜索結(jié)果中出現(xiàn)的機(jī)會(huì)會(huì)更大,如果HillTop算法不查找到最少兩個(gè)相關(guān)性的網(wǎng)站,那么搜索返回的結(jié)果的機(jī)會(huì)絕對(duì)是0。
HillTop算法實(shí)際上是拒絕了部分通過(guò)隨意交換鏈接的方法來(lái)擾亂Google的排名規(guī)則而得到較好排名的做法,而在HillTop的論文中也提到很多關(guān)于識(shí)別“網(wǎng)站鏈接交換聯(lián)盟”的設(shè)計(jì):如根據(jù)IPv4地址的頭3段,根據(jù)域名的別名推測(cè):1
PR值對(duì)于搜索關(guān)鍵詞的匹配度作用不大:因?yàn)樵诤芏喟鄳?yīng)關(guān)鍵詞的非相關(guān)主題的網(wǎng)站具有很高的PR值。這就是Google在HillTop算法中盡量避免的東西:應(yīng)該盡其所能去列出與搜索關(guān)鍵詞相關(guān)的結(jié)果。
總得看來(lái),從過(guò)去到今天,很多搜索引擎停止了那種只使用一種有價(jià)值的算法去決定排名的做法。如:meta keyword標(biāo)簽等。這只是一個(gè)開(kāi)始,Google在第一步已經(jīng)完全忽略html header中的meta標(biāo)簽了。與不可見(jiàn)的meta標(biāo)簽相比,一個(gè)網(wǎng)站的可視部分使用干擾技術(shù)較在meta使用的要少,因?yàn)榭梢暡糠之吘惯€要面對(duì)大部分的實(shí)際的訪問(wèn)者。
算法難點(diǎn)
基于“專家”文檔的HillTop算法最大的難點(diǎn)是第一次“專家文檔”的篩選,從觀察來(lái)看:Google顯然首先給了教育(.edu),政府(.gov)和非盈利組織(.org)站點(diǎn)很高的優(yōu)先級(jí)。在運(yùn)行時(shí):Google會(huì)在龐大的內(nèi)存里儲(chǔ)存搜索頻率比較高的關(guān)鍵詞的索引,以備搜索者在短期內(nèi)繼續(xù)用同樣的關(guān)鍵字短語(yǔ)等進(jìn)行搜索。這些高頻關(guān)鍵詞還有另外一種作用,在“佛羅里達(dá)”更新之前很多人已經(jīng)注意到的了:含有那些突增的搜索關(guān)鍵字的網(wǎng)站會(huì)得到較快的更新頻率。如關(guān)于:\"SARS",每天的搜索次數(shù)數(shù)以百萬(wàn)計(jì):Google就會(huì)優(yōu)先對(duì)與這個(gè)主題有關(guān)的網(wǎng)站進(jìn)行更新。
回頭看一下以前每個(gè)月的“Google Dance”,也能得出以下的結(jié)論:Google也明顯地為一個(gè)關(guān)鍵詞給予一個(gè)隨機(jī)的“權(quán)重”,動(dòng)態(tài)的根據(jù)關(guān)鍵詞查詢統(tǒng)計(jì)發(fā)現(xiàn)這些熱門(mén)關(guān)鍵詞,然后基于HillTop算法面向主題地找到這些含有熱門(mén)關(guān)鍵詞的網(wǎng)頁(yè),讓這些網(wǎng)頁(yè)作為相應(yīng)關(guān)鍵詞的“專家”文檔,針對(duì)這些索引入口保持比較高的更新頻率:這點(diǎn)顯然對(duì)于應(yīng)對(duì)突發(fā)事件非常有效。而那些含有查詢頻率比較低的關(guān)鍵詞所對(duì)應(yīng)的網(wǎng)頁(yè)可能要1月才更新一次。簡(jiǎn)單的說(shuō)就是:Google會(huì)根據(jù)主題的熱門(mén)程度動(dòng)態(tài)調(diào)整相應(yīng)網(wǎng)站的索引的強(qiáng)度。而Google中文用戶在總體用戶中的比例與Google索引的中文網(wǎng)頁(yè)在索引的總體網(wǎng)頁(yè)中的比例,從某種程度上說(shuō),也是有一定關(guān)系的。
運(yùn)行方式
Google所擁有的服務(wù)器體系架構(gòu)就是網(wǎng)絡(luò)上分布的一萬(wàn)臺(tái)奔騰級(jí)服務(wù)器。而一旦了解了Hilltop算法后,我們很難相信這樣的奔騰服務(wù)器能夠具備如此的處理能力:試想一下,首先要從成千上萬(wàn)的主題性文件中找到“專家文件”,然后計(jì)算目標(biāo)網(wǎng)頁(yè)自這些專家文件的鏈接的得分,然后再將數(shù)值返回 Google算法的其它排名系統(tǒng),并做進(jìn)一步處理—而所有這些要在大約0.07秒內(nèi)--這個(gè)讓Google舉世聞名的搜索速度內(nèi)完成。確實(shí)使人難以置信。
運(yùn)行頻率
我們認(rèn)為,要保證Google一貫的“閃電般”搜索速度,Google會(huì)對(duì)搜索頻率較高(熱門(mén))的查詢?cè)~(即所謂的“商業(yè)詞”黑名單)定期運(yùn)行批處理,并將結(jié)果存儲(chǔ)起來(lái)供日后使用。Google的數(shù)據(jù)庫(kù)擁有數(shù)目龐大的高查詢頻率的查詢?cè)~,收集自實(shí)地搜索和其AdWords自助廣告系統(tǒng)中所使用的關(guān)鍵詞。Google很可能對(duì)關(guān)鍵詞搜索次數(shù)設(shè)置了上限值,凡搜索頻率高于此閾值的查詢?cè)~都將被納入Hilltop系統(tǒng),然后Hilltop系統(tǒng)再對(duì)收集的所有高查詢頻率關(guān)鍵詞定期運(yùn)行批處理,可能一個(gè)月一次。增量級(jí)的稍小規(guī)模的批處理可能會(huì)頻繁一些。同時(shí),每個(gè)月將對(duì)Hilltop系統(tǒng)運(yùn)行批處理后的結(jié)果對(duì)Google的萬(wàn)臺(tái)服務(wù)器的數(shù)據(jù)庫(kù)進(jìn)行同步更新,但稍小規(guī)模的批處理的數(shù)據(jù)庫(kù)更新會(huì)更加頻繁一些。
對(duì)于那些用戶查詢頻率不算高,因而無(wú)此“榮幸”被納入Hilltop算法的查詢?cè)~語(yǔ),Google仍將使用原來(lái)的算法并顯示原來(lái)的排名結(jié)果。因而對(duì)于那些高度明確或?qū)I(yè)化的關(guān)鍵詞,由于它們被排除在新算法的范圍之內(nèi),因而有望保持原來(lái)的排名。
投入使用
Google早在2003年2月就獲得了該專利,但在實(shí)際投入使用前,需要首先保證新算法和Google當(dāng)時(shí)所使用的頁(yè)面等級(jí)和頁(yè)面相關(guān)性系統(tǒng)的完全兼容性,所以需要對(duì)其兼容性做大量測(cè)試,然后再評(píng)估算法整合后所提供的結(jié)果,再做精工調(diào)整,然后是進(jìn)一步的繁復(fù)測(cè)試…我想所有這些都需要大量時(shí)間。
在應(yīng)用中不足
專家頁(yè)面的搜索和確定對(duì)算法起關(guān)鍵作用,專家頁(yè)面的質(zhì)量決定了算法的準(zhǔn)確性;而專家頁(yè)面的質(zhì)量和公平性在一定程度上難以保證。 Hiltop忽略了大多數(shù)非專家頁(yè)面的影響。
在Hilltop的原型系統(tǒng)中,專家頁(yè)面只占到整個(gè)頁(yè)面的1.79%,不能全面反映民意。
Hilltop算法在無(wú)法得到足夠的專家頁(yè)面子集時(shí)(少于兩個(gè)專家頁(yè)面),返回為空,即Hilltop適合于對(duì)查詢排序進(jìn)行求精,而不能覆蓋。這意味著Hilltop可以與某個(gè)頁(yè)面排序算法結(jié)合,提高精度,而不適合作為一個(gè)獨(dú)立的頁(yè)面排序算法。
Hilltop中根據(jù)查詢主題從專家頁(yè)面集合中選取與主題相關(guān)的子集也是在線運(yùn)行的,這與前面提到的HITS算法一樣會(huì)影響查詢響應(yīng)時(shí)間。隨著專家頁(yè)面集合的增大,算法的可伸縮性存在不足之處。