搜尋結果去重 知乎搜尋評測實踐

2021-10-14 20:02:51 字數 2238 閱讀 3689

效果評測一直是軟體測試中令人頭疼的部分,因為很多情況下效果的好壞是乙個偏主觀的東西,如何經過抽樣、對比、打分、使用者資料等客觀的方式來評價一款產品的好壞,是我們測試工程師值得思考的問題。

隨著知乎 dau 的持續增長,知乎搜尋也成了乙個重要的流量分發的入口。知乎搜尋對質量的要求也越來越高,於是效果評測勢在必行。

本文主要介紹了目前業界通用的評測方法和流程;在知乎搜尋評測中使用的方法、工具;遇到的問題及評測平台的建設。希望對評測入門,尤其是做搜尋評測的同學有一定的指導意義。

評測的基本流程主要分為評測方法、評測抽樣、評測抓取、人工標註與質檢、統計分析與報告和短板 review,在下文會一一介紹。

常用於相對正式的綜合競品評測,按頁面整體評測,主旨在評測乙個頁面整體的好壞。可以分為整體感官打分、相關性打分、排序打分、頁面質量打分等。

有列表返回,需要逐條進行打分的評測,常用於搜尋評測,知乎搜尋評測用到的就是這個方法,可以用到 dcg 評分將不同條目賦予不同的權值,得出綜合分數,以達到綜合評測的效果。

顧名思義,使用對比的方式進行評測,分為與競品對比,版本間對比等。制定指標,利用打分、對比等形式,評價出 2 個版本的好壞。

適用於可人工判斷與實際程式效果的對比,多用於專項評測,對系統中某一功能進行效果評測。參考:混淆矩陣。

根據查詢量,分為熱門、中段、長尾,並按照比例分別進行抽樣

將使用者查詢進行去重,再進行抽樣,能夠更好的覆蓋長尾查詢,但與使用者需求比例相差較大

針對一些特性(如類別、成分、長度、diff )等進行區域性抽樣,能更好的覆蓋和發現區域性型別的問題,但無法從整體上說明問題

在日常評測中主要使用 python 指令碼驅動抓取知乎與競品的引擎的搜尋的結果,分別做對比。均用對應的 api 進行抓取。

主要策略,將每日所有長尾搜尋 query 進行隨機抽樣 1000 個,分別請求知乎、競品 1、競品 2 三家搜尋引擎,記錄競品前 10 條相同返回結果,如果有 3 條以上返回結果在知乎前 20 條返回結果中未出現,該 query 記為 badcase。

具體一次評測結果如下:

上文中問題 query 數的詳細資訊

搜尋評測我們目前採用 pi 和 sbs 的方法評測,抓取結果後人工逐條進行對比打分,綜合每條結果進行 query 的 dcg 打分,最後生成測試報告。

評測平台相關:

例:需求生成:

badcase 回歸驗證:

總體來說,評測適合那些返回結果不確定、偏效果類的測試。尤其是在搜尋中,我們如何能量化的判斷搜尋的質量是值得思考的問題。

知乎的搜尋評測總的來說屬於剛起步階段,目前保持乙個季度 2 次的頻率,還在摸索優化打分的策略。已經有了自己的評測平台,可以穩定提供評測結果,badcase 以及優化建議。

後續期望可以通過反覆的實踐不斷優化評測的方向及方法,打分的合理性;平台方面希望可以接入更多的評測需求,擴大平台的覆蓋面,不侷限於搜尋。

one more thing:

國際慣例,歡迎有志於質量保障工作的知友們加入知乎 qa 團隊,與知乎一起發現更大的世界,詳細職位可以參見 這裡,期待知友們的加入 ~

mysql搜尋結果去重 MySQL去除查詢結果重複

出現結果重複數sql 四表關聯 select count post.id from wp posts as post left join wp term relationships as relation on post.menu order relation.term order left joi...

知乎搜尋 (引擎)的故事

寫在最前面 基於以下的測試,在搜尋時應該這麼做 以上兩種要結合使用,單獨使用可能效果不佳。同樣適用於bilibili.com,blog.sina.com.cn,bbs.hupu.com,tianya.cn,tieba.baidu.com以及52pojie.cn等等。pc端目前有三類四種知乎搜尋的方法...

搜尋引擎 聊一聊網頁去重

網頁去重是有必要而且有好處的,首先,相似的網頁肯定沒有意思,應該提高使用者的體驗,所以應該把相似的網頁去重後顯示,或者聚合後顯示.其次,如果某些網頁相似的很多,說明其中內容 如果是非人為惡意製造的話 應該是最近比較熱門的內容,應該優先展示,還有,相似網頁去重可以節省索引空間.所謂的網頁重複可以分為以...