序言

對于當下的互聯網產品,無論是主流或非主流,處處都能看到推薦系統的應用場景。比如,當你在淘寶下單購買了一臺iPhone 11,購買完成頁下方立刻就會給你推薦諸如「全新AirPods Pro」、「Apple Watch 5」等相關商品;再比如,當你在豆瓣上標記了想看熱門懸疑網劇《隱秘的角落》,在廁所刷抖音的時候,可能就會看到《無證之罪》、《輪到你了》、《白夜追兇》等等相似劇集的精彩片段。推薦系統這只無形的「大手」已經把我們安排的明明白白了。

想給用戶做推薦?先收下這份「推薦系統」評估指南

△ @alienking2000 from unsplash.com

推薦系統的強大毋庸置疑,而且我們經常會把它看作是一個神秘的黑箱子,會將其與多種復雜的技術術語相關聯,比如「大數據」、「人工智能」、「機器學習」等等,進而認為推薦系統的好壞,就是對用戶偏好預測的精準與否。然而,不久前完成的一個研究課題,打破了這個認知誤區。

推薦系統的本質

面對這個課題,首先需要回答的就是:如何定義推薦系統的好壞?其實,這個問題有一種最符合直覺的答案,即越能精準預測用戶需求的推薦系統就是好的。乍一看,這個答案幾乎沒什么問題,然而,精準預測只是一個好的推薦系統的必要條件,那究竟什么才是「好」?要回答這個問題,我們需要先了解推薦系統的本質。

推薦系統(Recommend System)的研究由來已久,這一概念初次被提及,是在1990年哥倫比亞大學研究者Jussi Karlgren的著作中,直到1994年才成為一個相對獨立的研究領域,雖然這一領域已經有30年的研究沉淀,但業內對推薦系統的定義仍未達成一致,不過密歇根大學的研究者Resnick和Varian在1997年提出了一個較為公認的定義:「推薦系統是利用電子商務網站向顧客提供商品信息和建議,幫助用戶決定應該購買什么產品,模擬銷售人員幫助客戶完成購買過程」。

想給用戶做推薦?先收下這份「推薦系統」評估指南

△ @linkedinsalesnavigator from unsplash.com

以上這段描述反映了推薦系統最本質的三個問題:第一,如何精準的預測用戶的需求?第二,如何全面細致地描述網站上的信息?第三,如何給用戶推薦最適合的信息?

「預測用戶」&「描述信息」主要是依賴技術團隊的算法,而且業內在該方面的研究相對比較成熟,目前常用的預測技術包括:基于內容的推薦、協同過濾推薦、基于知識的推薦、基于網絡結構的推薦、組合推薦及其他推薦等等,由于技術難度較硬核,在此不做展開;在確保預測精準及全面描述的基礎上,便是「推薦」最合適的信息給用戶了,但什么是最合適的?這個評判的標尺就拿捏在用戶的手上。

推薦系統的評估維度

接下來就是關于如何評估推薦系統的好壞,業內普遍認為,推薦系統的評估涉及兩大范疇的維度:準確度(Accuracy)和可用性(Usefulness)。其中,準確度表示推薦系統預測用戶行為的能力,主要根據離線實驗的方式來評估;可用性更多反映的是用戶的主觀體驗,常見的評估指標包括多樣性(Diversity)、新穎性(Novelty)、驚喜度(Serendipity)、信任度(Trust)及實時性(Utility)等。

1. 多樣性(Diversity)

多樣性是指每條推薦信息的兩兩不相似程度,如果推薦結果過于單一,勢必會讓用戶失去不斷瀏覽的興趣,而單純的增加多樣性并不算難,挑戰主要在于如何增加推薦信息多樣化的同時,又可以保證結果符合用戶的「口味」;

想給用戶做推薦?先收下這份「推薦系統」評估指南

△?@nate_dumlao from unsplash.com

2. 新穎性(Novelty)

新穎性是指推薦結果中出現的用戶以往沒看到的信息,提升新穎性最常用的辦法是根據平均流行度來推薦,把流行度較低的信息提供給用戶,會增加其新穎性感知,但是,一味提升新穎性也未必會增加用戶滿意度,同樣需要在確保精準性的前提下進行;

3. 驚喜度(Serendipity)

之所以會把驚喜度作為一個指標,納入推薦系統評估的體系中,是為了衡量推薦系統解決如下問題的能力:用戶面對之前他們已經遇到的推薦結果,他們變得越來越厭煩,推薦系統需要提供讓用戶感到既新奇又有吸引力的信息。

「驚喜」與「新穎」在中文語境中有些相似,但在此處并不相同,筆者通過以下示例來做說明:比如,你平時會用網易云音樂來聽歌,比較喜歡周杰倫、林俊杰這類R&B歌手,幾乎聽遍了他們專輯中的所有歌曲,如果系統給你推薦了《夏天的風》這首歌,而且你之前沒聽過,但是當你看了這首歌的封面,發現是周杰倫創作的,充其量也就會感覺還比較新穎,但未必會有驚喜的感覺;如果系統給你推薦了一首從創作、演唱到曲風完全不同于以往聽過的R&B的歌曲,但你聽完之后發現很喜歡,那這時候你就不只覺得新穎,更會有一種驚喜的感覺。

想給用戶做推薦?先收下這份「推薦系統」評估指南

△?@jmuniz from unsplash.com

4. 信任度(Trust)

信任度也是衡量推薦系統好壞的重要維度,顧名思義,信任度指的就是用戶對推薦系統的信任程度,信任度高的推薦系統更易引導用戶產生交互行為,影響信任度的不只包括推薦的內容,也包括推薦的樣式,目前提升信任度的方式主要包括增加推薦系統的可解釋性(Explanation,即推薦理由),或者引入社交網絡信息(熟人推薦易提升信任度)。

想給用戶做推薦?先收下這份「推薦系統」評估指南

微信「看一看」展示的部分信息,即外露了社交關系相關的推薦理由

5. 實時性(Utility)

該指標主要指,當用戶與推薦系統發生交互行為后,推薦信息列表是否及時的發生變化,如果用戶產生若干信息檢索行為后,系統推薦的信息依然不變,顯然該推薦系統未能實時學習用戶的需求偏好,尤其對于信息具有較強時效性的產品,該指標顯得更為重要,比如新聞資訊類、部分生活服務類平臺。

推薦系統評估案例

下面就以筆者近期接到的一個需求為例,說明推薦系統體驗評估的操作方法。

1. 需求背景

58同城平臺上,提供了包括招聘、房產、二手車、本地服務等多種生活服務類信息,每類信息都有相應的個性化推薦系統,雖然推薦系統在不斷優化,但更多的是針對算法層面的提升,而推薦系統在用戶主觀體驗方面的研究尚屬空白,因此需要通過專項調研了解推薦系統現狀及優化方向。

2. 評估方法選擇

在做推薦系統評估時,以往多會采用一種叫做「Case by Case」的方式,即讓用戶針對推薦結果逐條進行「Yes or No」的評價,這種評估方式的優點是:評估是實時性的,指向明確,顆粒度較細;但缺點也很明顯,樣本選擇不具有代表性,缺乏統計學意義,而且評價過于簡單,僅能反應用戶主觀準確性。因此,為了能使評估結果有更好的代表性,包括更全面的評估維度,我們選擇采用定量問卷的方式。

3. 評估業務選擇

在正式開始實施評估前,還需要明確一個問題:是針對58全業務進行評估,還是針對不同業務線分別評估?由于58各業務獨立性較強,且用戶多會進入對應業務的專屬頻道進行查找,因此,我們與需求方溝通后,決定針對不同業務線單獨評估,并且決定先以租房業務線為試點進行,跑通后再復用至其他業務線。

4. 評估場景選擇

即使僅針對單一業務線來進行評估,推薦系統的落地場景仍不止一處,如何選擇具體的評估場景,可以依據該場景的曝光量及用戶狀態來選擇,針對58租房業務線,推薦系統主要會在App首頁Feed流、租房頻道首頁Feed流、信息列表頁及房源詳情頁底部推薦4處呈現給用戶,但首頁Feed流中會混雜其他業務信息,較難僅針對租房進行評估,進入信息列表頁的用戶多屬目的性較強的用戶,并非推薦系統目標用戶,因此,本次需要評估的頁面場景確定為租房頻道首頁Feed流(如下圖)。

想給用戶做推薦?先收下這份「推薦系統」評估指南

58租房推薦評估入口,選擇了以Banner的方式常駐于租房首頁Feed中

5. 評估結果

通過以上評估方案,我們可以獲取到不同時間段內,不同用戶對租房推薦系統在精準性、多樣性、新穎性、驚喜度、信任度以及實時性方面的主觀滿意度數據,利用這些原始數據,我們建立一套推薦系統體驗監測日更報表(如下圖),可以在BI看板中實時瀏覽,便于相關方及時了解當前推薦系統的短板及異常情況。此外,當數值出現異常時,還可以抽取出低分用戶進行專項調研,挖掘用戶體驗不佳的原因,從而及時反饋給推薦團隊進行優化。

想給用戶做推薦?先收下這份「推薦系統」評估指南

△?以上僅列出部分BI看板數據指標

反思

通過本次調研,雖然邁出了推薦系統體驗評估的第一步,但依然存在不足之處:

1. 評估顆粒度較粗

本次評估是針對推薦系統整體條目來進行的,雖然在評估維度上劃分了若干子維度,但由于推薦信息展示規則的復雜性,很難定位出具體哪些條目存在問題,即使量化了用戶的主觀感受,也是一種籠統性的診斷,對于較明顯的缺陷(例如缺乏推薦理由)尚可探查,但對于涉及算法層面的調優,指導意義則相對較弱;

2. 用戶回憶門檻高

用戶在填答評估問卷時,需要回憶推薦列表中曾經出現過的信息條目,但不同用戶的瀏覽習慣差異較大,有些用戶會逐條仔細瀏覽,有些用戶會跳躍式的瀏覽,這種干擾因素較難在線上進行控制,結果是用戶填答問卷時,可能會出現對之前瀏覽過的信息無法回憶的情況,進而會影響到最終的評估結果。針對該問題,可考慮選擇實時性更高的填答方式,例如,在用戶進入評估頁面后,為用戶實時呈現真實算法展示的信息條目,也可以確保用戶會逐條閱讀推薦信息并進行評估。

進入淘寶首頁推薦系統調研頁面后,用戶會進入一個評估問卷中,但評估的條目會根據用戶的喜好來個性化呈現,用戶直接針對不同條目進行評估即可,無需回憶

以上便是筆者近期關于推薦系統評估的若干實踐與反思,希望能給對該主題感興趣的朋友們帶來一些啟發。

參考文獻

  • [1] 王國霞,劉賀平.個性化推薦系統綜述[J]. 計算機工程與應用,2012,48(7):66-76.
  • [2] Paul Resnick, Hal R. Varian. Recommender Systems[J]. Communications of the ACM, 1997,40(3): 56-58.
  • [3] 項亮. 推薦系統實踐[M]. 北京:人民郵電出版社, 2012.

歡迎關注「58UXD」的微信公眾號:

想給用戶做推薦?先收下這份「推薦系統」評估指南

收藏 16
點贊 2

復制本文鏈接 文章為作者獨立觀點不代表優設網立場,未經允許不得轉載。