在谷歌搜索引擎問(wèn)世之前,網(wǎng)絡(luò)搜索是一件很讓人崩潰的事情。那時(shí)的搜索引擎常常給出一些不相關(guān)的搜索結(jié)果。而你想找的網(wǎng)站不是排在網(wǎng)站列表的第50 頁(yè),就是顯示根本找不到。由于有了“鏈接分析”的算法,上述問(wèn)題如今已被解決?!版溄臃治觥彼惴ǖ脑砺犉饋?lái)像是一條似是而非的禪理:網(wǎng)絡(luò)搜索應(yīng)該反饋?zhàn)罴丫W(wǎng)頁(yè)。那么,什么樣的網(wǎng)頁(yè)是最佳網(wǎng)頁(yè)呢?最佳網(wǎng)頁(yè)是那些鏈接著其他最佳網(wǎng)頁(yè)的網(wǎng)頁(yè)。
這聽起來(lái)有點(diǎn)兒循環(huán)論證的意味。事實(shí)上,這就是一個(gè)循環(huán)論證,而且這個(gè)理念的深刻之處就在于它的循環(huán)論證性?!版溄臃治觥闭鞣诉@個(gè)循環(huán)論證,把劣勢(shì)變成了優(yōu)勢(shì),最終,一種柔術(shù)般的網(wǎng)絡(luò)搜索方法橫空出世了。
這種算法的數(shù)學(xué)基礎(chǔ)是線性代數(shù)。線性代數(shù)是處理向量和矩陣的一種數(shù)學(xué)工具,當(dāng)你想從大量數(shù)據(jù)中發(fā)現(xiàn)規(guī)律,或者進(jìn)行含有數(shù)百萬(wàn)個(gè)變量的超大型計(jì)算的時(shí)候,你就需要用到線性代數(shù)。線性代數(shù)除了可以幫谷歌公司設(shè)計(jì)出“網(wǎng)頁(yè)排序號(hào)”的搜索算法,還可用于人臉識(shí)別技術(shù)、分析高等法院的判決規(guī)律、贏得網(wǎng)飛(Netflix)公司的百萬(wàn)美元大獎(jiǎng)等。
為了解釋線性代數(shù)的工作原理,我們以谷歌的網(wǎng)頁(yè)鏈接搜索技術(shù)為實(shí)例進(jìn)行說(shuō)明。當(dāng)然,現(xiàn)實(shí)中這個(gè)技術(shù)是非常復(fù)雜的,但此處我們只看一個(gè)極度簡(jiǎn)化的模型。假設(shè)有一個(gè)迷你網(wǎng)絡(luò),這個(gè)網(wǎng)絡(luò)只含有3個(gè)頁(yè)面X、Y和Z,這3個(gè)頁(yè)面的鏈接方式如下圖所示。
上圖中的箭頭含義如下:頁(yè)面X含有頁(yè)面Y的鏈接,但是頁(yè)面Y卻不含有頁(yè)面X的鏈接。頁(yè)面Y含有頁(yè)面Z的鏈接。頁(yè)面X和Z互相鏈接。
下面,我們考慮這樣一個(gè)問(wèn)題:在這個(gè)迷你網(wǎng)絡(luò)中,哪個(gè)網(wǎng)頁(yè)最重要,哪個(gè)網(wǎng)頁(yè)最不重要?你可能會(huì)說(shuō),信息不足回答不了這個(gè)問(wèn)題,因?yàn)槲覀兺耆恢肋@3個(gè)網(wǎng)頁(yè)的內(nèi)容。抱歉,你的這種說(shuō)法已經(jīng)過(guò)時(shí)了。事實(shí)證明,通過(guò)研究網(wǎng)頁(yè)的內(nèi)容來(lái)研究網(wǎng)絡(luò)搜索是行不通的,這種方法現(xiàn)在基本被淘汰了。計(jì)算機(jī)不大善于評(píng)判一個(gè)網(wǎng)頁(yè)的內(nèi)容,而我們也不可能人為地去做這件事情,畢竟每天都有成千上萬(wàn)的新網(wǎng)絡(luò)頁(yè)面產(chǎn)生。