1. 程式人生 > >知乎搜尋/(引擎)的故事

知乎搜尋/(引擎)的故事

一、以搜尋“姬無命”為例——站內搜尋與通用搜索之爭

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

(注:手機端微信內支援知乎搜尋。)

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

第一類是:搜狗知乎搜尋(https://zhihu.sogou.com/)

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

一是百度:如搜尋框:姬無命 site:zhihu.com

百度可以不用輸“site:XX.com”搜尋框下邊就是搜尋工具。谷歌沒有單列出搜尋工具,需要添上。

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

 

以下對4種方式進行對比,關鍵詞是“姬無命”

百度搜索:

 

 

 

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

 

谷歌搜尋結果:

 

共28頁的1760條結果

 

知乎內部搜尋結果:

 

 

 

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

 

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

 

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

最終結論:谷歌站內搜尋≈百度站內搜尋>搜狗知乎搜尋>知乎內部搜尋。

 

二、關於搜尋、知乎搜尋

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

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

以上每一個階段都是很重要的,演算法的好壞決定了最終你閱讀到搜尋內容的相關程度和滿意度。

 

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

 

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

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

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

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

為什麼知乎站內搜尋沒有通用搜索(例如百度、搜狗)的site查詢好用?

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

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

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

 

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

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

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

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

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

社會化-你關注的圈子中使用者的贊同、反對、感謝和評論可以更好的幫助你定位你找的內容。

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

 

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

 

 

 參考:

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

https://www.zhihu.com/question/26617244/answer/70731152

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

https://www.zhihu.com/question/26617244/answer/70802668

知乎搜尋排序模型的演進

https://mp.weixin.qq.com/s/DZZ_BCiNw0EZg7V0KvhXVw

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

https://mp.weixin.qq.com/s/xgCtgEMRZ1VgzRZWjY