國內(nèi)外搜索引擎精確搜索實際應(yīng)用對比
時間:2023-03-19 22:20:01 | 來源:電子商務(wù)
時間:2023-03-19 22:20:01 來源:電子商務(wù)
這篇文章主要是之前寫的文章的繼續(xù)和補充(見鏈接)。
在之前的文章中,我主要介紹并從多個角度對比了百度、谷歌和必應(yīng)搜索引擎。在這篇文章中,我將從實際場應(yīng)用場景出發(fā),去對比國內(nèi)外主要搜索引擎的索引邏輯和算法,并提出一些評價。當(dāng)然,由于篇幅所限,我不可能做到面面俱到。同時,雖然我的專業(yè)是電氣和計算機工程,但是我不曾在相關(guān)搜索引擎公司就業(yè),所以我將主要從用戶的體驗來評價和分析。因此,歡迎各位讀者在評論區(qū)提出自己的見解和補充。
除了關(guān)鍵詞搜索和聯(lián)想外,精確搜索,或“完全匹配”(Exact Match),是搜索引擎的一個非常重要的功能。通常情況下,搜索引擎會將包含在雙引號(“”)中的內(nèi)容視為用戶需要查找的完全匹配的內(nèi)容,并將其設(shè)為優(yōu)先的過濾條件,也就是優(yōu)先顯示包含完全匹配于雙引號中內(nèi)容的結(jié)果。按理說,相比于在海量的數(shù)據(jù)庫中尋找相符的關(guān)鍵詞,過濾完全匹配的結(jié)果的技術(shù)難度會小很多,畢竟省去了關(guān)鍵詞聯(lián)想等步驟。
根據(jù)谷歌的官方介紹,谷歌的搜索引擎在爬行過的所有結(jié)果(包含網(wǎng)頁、文本文件等)中的每一個字都做了標(biāo)簽。當(dāng)用戶在谷歌搜索欄中搜索完全匹配的結(jié)果時,谷歌搜索引擎會將引號中的內(nèi)容與標(biāo)簽做對比,并顯示完全匹配的結(jié)果。事實上,所有的搜索引擎運作原理都是如此。由此可見,理論上只要多個搜索引擎都收錄了某一個網(wǎng)頁,當(dāng)用戶截取這個網(wǎng)頁當(dāng)中的一段文字并使用完全匹配搜索時,這些搜索引擎都應(yīng)該顯示這一結(jié)果。然而,實際操作起來似乎不完全是這樣的情況。
首先,我們先在搜索引擎上隨便查找一個結(jié)果,并且確保這個結(jié)果同時被多個搜索引擎收錄。然后,我們截取這個結(jié)果當(dāng)中的任意一段內(nèi)容(圖一)。
圖一接著,我們把這段內(nèi)容粘貼到多個搜索引擎的搜索欄中,并用引號包圍(圖二、圖三)。
圖二圖三在以上這個例子中,我們可以發(fā)現(xiàn),即便這個網(wǎng)站同時被百度和谷歌收錄,但是當(dāng)我們使用完全匹配進行搜索時,只有谷歌成功地索引除了相對應(yīng)的結(jié)果。值得一提的是,手機版的百度(m.baidu.com)和電腦版的百度(baidu.com)網(wǎng)頁的搜索引擎使用的是兩套不同的算法,因此,即便在搜索欄中輸入同樣的內(nèi)容,索引的結(jié)果也不一樣(這里主要以電腦版為例)。但是在這個例子當(dāng)中,無論是手機版還是網(wǎng)頁版,百度搜索引擎都無法索引出包含完全匹配內(nèi)容的結(jié)果。甚至,當(dāng)我們把引號中的內(nèi)容縮短,仍然無法搜到相關(guān)的結(jié)果(圖四)。
圖四然而,在過去的使用當(dāng)中,我發(fā)現(xiàn),百度很多時候仍然是可以有效地進行完全匹配搜索的,并且在搜索中文內(nèi)容的方面,百度很多時候比谷歌更加有效(在之前的那篇文章中有提到)。顯然,百度搜索引擎在基礎(chǔ)的邏輯上進行了優(yōu)化。
在另一輪對比實驗當(dāng)中,有一個結(jié)果雖然同時被百度、谷歌、必應(yīng)、360等搜索引擎收錄,但是當(dāng)使用完全匹配進行搜索時,唯獨360能夠索引出結(jié)果(圖五),但即便如此,其排名也不是第一位。與此同時,百度則將引號中的內(nèi)容拆分成了多個關(guān)鍵詞,并由此進行搜索(圖六)。
圖五圖六按理說,無論是百度、谷歌,還是其他的搜索引擎,都會在其收錄的結(jié)果中的內(nèi)容進行標(biāo)簽。而精確搜索(完全匹配)的技術(shù)含量是較低的,但是市面上較為復(fù)雜的搜索引擎有時卻無法有效地索引出相關(guān)的結(jié)果。我認(rèn)為,這當(dāng)中有更深層的原因。
雖然理論上,完全匹配搜索實現(xiàn)起來會相對簡單,但是搜索引擎的數(shù)據(jù)庫儲存了數(shù)以萬計的頁面;一頁一頁、一行一行地尋找顯得不切實際。通常情況下,搜索引擎會將索引時間限制在一定的范圍內(nèi)。然而,這樣做的后果就是對搜尋結(jié)果的數(shù)量進行妥協(xié),也因此不可避免地忽略了一些結(jié)果。為了盡可能地在規(guī)定時間內(nèi)找到更多的相關(guān)結(jié)果,不同的搜索引擎采取了不同的邏輯和算法。以百度搜索引擎為例,當(dāng)沒能在規(guī)定時間內(nèi)尋找到相符的結(jié)果時,會將引號內(nèi)的內(nèi)容拆分成多個關(guān)鍵詞,并列出包含這些關(guān)鍵詞的結(jié)果(也有時候百度搜索引擎并不會拆分關(guān)鍵詞,于是直接反饋空白的結(jié)果頁面)。雖然這樣做可以將搜索范圍變得更廣,我認(rèn)為將引號內(nèi)的內(nèi)容進行拆分,似乎從根本上有違精確搜索的初衷。與此同時,百度搜索引擎的關(guān)鍵詞拆分方法有些時候顯得較為隨機。而其原因可能與網(wǎng)絡(luò)傳播速度有關(guān)。我的猜想是,當(dāng)用戶使用搜索引擎時,用戶的設(shè)備發(fā)送的指令當(dāng)中含有時間信息;搜索引擎服務(wù)器根據(jù)用戶的指令傳輸?shù)臅r間來決定搜索多少信息。所以,在國外使用百度搜索引擎似乎會搜到較少的結(jié)果,因為百度搜索引擎的服務(wù)器全部位于中國內(nèi)地。
以上。
關(guān)鍵詞:實際,對比,精確,內(nèi)外,索引