知乎搜尋 (引擎)的故事

2022-05-19 08:00:10 字數 2550 閱讀 1158

寫在最前面:

基於以下的測試,在搜尋時應該這麼做:

以上兩種要結合使用,單獨使用可能效果不佳

同樣適用於bilibili.com,blog.sina.com.cn,bbs.hupu.com,tianya.cn, tieba.baidu.com以及52pojie.cn等等。

pc端目前有三類四種知乎搜尋的方法:

第一類自然是知乎網頁內部直接搜尋(zhihu.com)

第一類是:搜狗知乎搜尋(

第二類是:主流搜尋引擎的站點內搜尋。

二是谷歌:如搜尋框:姬無命 site:zhihu.com

搜尋結果多達76頁,按每頁10個條目計那就是760個搜尋結果。基本是涉及到完整的「姬無命」的回答都出現了一次。

谷歌搜尋結果:

共28頁的1760條結果

知乎內部搜尋結果:

不顯示條目數,目測應當是最多的。

可以看得出知乎本身搜尋與搜狗知乎搜尋結果並不重合。

評價搜尋的好壞包括兩個問題:搜尋結果和結果排序。這兩問題都屬於搜尋演算法。

一次搜尋流程主要包括 query 解析、召回、排序幾個階段。

使用者輸入 query 之後,首先要進行 query 解析,生成查詢 query tree 和語義表示向量。之後進入多佇列的召回模組,召回階段從召回方式上說可以分為倒排召回和向量召回,在這一環節會篩選出前400的文件進入到排序階段。排序階段又分為精排和重排序兩個環節,精排階段通過模型對多召回源的文件進行統一打分,之後將 top16的文件送入重排序模型進行位置的微調,最終呈現給使用者。

搜尋是技術方向輻射相當廣的乙個複雜系統,其技術門檻之高,在眾多的網際網路產品中能與搜尋比肩的是少之又少。要想玩轉這套系統,擁有一批最優秀且懂搜尋的工程師和研究員是必不可少的。想解決的話,知乎可能需要5個熟練工幹大半年。在我看來,這種團隊配置作為站內搜尋差不多能解決大部分基礎問題,即達到不被「到處」抱怨。但如果要求再高一點點,能稍」智慧型」地處理使用者查詢,那麼這種團隊配置恐怕還是望成莫及。

當然搜尋也絕不僅僅是乙個人力問題,支撐搜尋的人工智慧技術正在」經驗主義」(以統計學為代表)的道路上享受著大資料(特別是使用者行為資料)的紅利。

從乙個特定站點出發,即使是乙個格調高、深受使用者喜愛的站點,其能夠接觸到的資料無論是使用者群體行為資料還是全網的資訊資源都是十分有限的。

使用者對於全網通用搜尋和站內搜尋的期望的差別僅在於搜尋範圍從全網變為這個特定站點,但搜尋使用者天生的」懶惰」、表達含糊以及對搜尋結果智慧型的期待從未改變過。而且由於使用者對他所喜愛的站點的了解、熟悉程度遠遠超出其對全網的了解,所以使用者對搜尋服務所存在的各種問題更為敏感,從而也有更高的要求。

正是這種資料侷限所帶來的技術水平侷限與使用者需求之間的矛盾,使得原生站內搜尋注定就是一件不太可能成功的路。

知乎搜尋體驗不理想,存在多種問題,但這些問題絕不是知乎僅有的問題,也不僅僅是人力投入的問題。

搜尋乙個異常複雜的系統,好的搜尋體驗需要技術的沉澱與積累,需要海量資料特別是海量使用者行為資料的支撐。

站內搜尋就於其在搜尋方向的積累、其能接觸到的資料,像知乎這樣面對高標準嚴要求的使用者,注定不易做到使用者滿意。

知乎官方搜尋負責人也解釋過為什麼沒有接入 site(通用引擎的站內搜尋)

儘管線上問題很多,解決起來也不容易,但考慮從知乎搜尋能到達的理想狀態,我們仍然不甘心簡單接入乙個 site 語法搭建的站內搜尋了事。

乙個重要原因是,知乎搜尋是貫穿整個知乎平台的重要基礎功能。搜尋對於整個產品的效率都有很大影響。

另外乙個重要的原因是:知乎的內容不僅僅是乙個個網頁。知乎上使用者與內容之間豐富的互動資訊可以幫助搜尋引擎識別哪些內容更為重要,資料富集度和準確度遠遠高於[pagerank],同時,知乎的內容天然有人的屬性,而這應該被用來滿足知乎特有的搜尋需求。比如:

個性化-

與你相關的內容可以有更好的排序,你曾看過的、點過贊同反對的、關注過的話題裡的內容等,搜起來應該更容易。

通用引擎的站內搜尋確實能簡單快速解決目前很多的搜尋痛點問題。但對知乎來說它是沒有生命力,或者說提高空間非常有限的。我們希望知乎上的內容能被更好的搜尋,知乎獨有的使用者需求能被更好的滿足,所以我們並沒有選擇這個明顯更為容易,也是一部分網友建議的方案。

關於 知乎內部 搜尋的發展歷程,如下:

參考:為什麼知乎的搜尋功能如此之爛? - 張前川的回答 - 知乎

為什麼知乎的搜尋功能如此之爛? - 許靜芳的回答 - 知乎

知乎搜尋排序模型的演進

知乎搜尋文字相關性與知識蒸餾

搜尋引擎 索引

正排索引 文件編號,單詞編號,單詞的數量,單詞出現的位置。倒排索引 1,單詞詞典,儲存單詞以及統計資訊,單詞在記錄表中的便宜,可常駐記憶體,用雜湊表儲存。2,記錄表,單詞對應的文件集合,記錄單詞出現的數目 位置。文件採用差分變長編碼。其中文件可按編號公升序排列 可利用差分編碼 也可按出現次數排列,可...

MySQL搜尋引擎程式 mysql搜尋引擎

mysql是我們比較常用的一種資料庫軟體。它有著諸多的優點,如開源的,免費的等等。其實它還有乙個很好的特點,那就是有多種引擎可以供你選擇。如果賽車手能根據不同的路況,地形隨手更換與之最適宜的引擎,那麼他們將創造奇蹟。然而目前他們還做不到那樣便捷的更換引擎,但是我們卻可以 所謂知己知彼方可百戰不殆,要...

lycos搜尋引擎 常用的搜尋引擎都有哪些特點?

1 基於字詞結合的資訊處理方式,巧妙解決了中文資訊的理解問題,極大地提高了搜尋的準確性。2 智慧型相關度演算法。採用了基於內容和基於超鏈分析相結合的方法進行相關度評價,能夠客觀分析網頁所包含的資訊,從而最大限度保證了檢索結果相關性。4 智慧型性 可擴充套件的搜尋技術保證最快最多的收集網際網路資訊。擁...