天天看點

如何評估推薦系統的健康狀況?

推薦系統的常見名額

推薦系統的評價名額,要從解決實際問題的角度來思考。

好的推薦系統,不僅要保證自身系統的健壯度,好要滿足服務平台、使用者等多方面的需求。

使用者角度

更友善更快速的發現自己喜歡的産品

精準度

更多的為使用者主觀感受,評估的是推薦的物品是不是使用者喜歡的

驚喜度

推薦的物品讓使用者有心情跳動的驚喜感覺,比如發現多年前的記憶、耳目一新的内容、使用者聽過的但是不知名字的音樂,看過片段卻不知道名字的電影、知道功能卻不知道名字的商品

此類推薦和使用者興趣不一定相似,但是卻給使用者帶來意外之喜,超出使用者的預期

新穎性

推薦使用者沒有接觸過的東西,不一定是使用者最喜歡的,但可以提升使用者的探索欲望,進而獲得更完整的使用者興趣

多樣性

推薦的更多的品類,可以挖掘使用者潛在的興趣點,拓展使用者的興趣範圍來提升使用者的推薦體驗

平台角度

平台方為使用者提供物品或資訊。

不同平台的獲利方式不同,比如有的靠會員模式、有的通過商品、大部分則通過廣告

對多數平台來說商業目标是最重要的目标之一

内容滿意度

由于業務場景不同,内容滿意的名額也會随之變化,主要是通過使用者對産品的不同行為來衡量

  • 資訊
    • 閱讀-----閱讀時長----分享評論
  • 電商
    • 點選----浏覽-----收藏購物車----購買-----好評----複購
  • 短視訊
    • 播放----播放時長-----分享、點贊、評論-----關注 ------跟拍
  • 音樂
    • 播放-----播放時長-----分享、收藏、評論

場景轉化率

轉化率名額更為直覺,給用推薦内容,是希望使用者對推薦的内容有所行動,比如點選行為、點贊行為

pv點選率(點選量/pv)

粗略的衡量轉化效果,但如果少數使用者貢獻大量點選時,容易覆寫該名額的真實性

uv點選率(點選量/uv)

可記錄使用者在一個完整周期内的點選效果,不會因使用者重複浏覽某個内容而受影響

曝光點選率(點選量/曝光次數)

更适合長頁面、資訊流等需要上拉、下拉翻頁的産品,曝光次數随使用者刷屏次數增加而變大,真實記錄每一屏的轉化效果

uv轉化率(轉化次數/點選量)

衡量使用者轉化情況,使用者從一個場景轉化到另一個場景去,用來評估使用者的寬度

人均點選次數(點選量/點選uv數)

每個使用者的點選次數,可用來評價使用者的深度

推薦系統的離線評估

推薦系統自身的評估,推薦系統從接受資料到産生推薦結果,再根據推薦結果的影響重新修正自身。

推薦算法訓練–(離線評價)----模型上線----(線上評價)—推薦内容—(線上評價)------行為日志收集分析—>>疊代優化推薦算法

準确度

準确度評估主要是評估推薦算法模型的好壞,為選擇合适的模型提供決策支援。

資料劃分為訓練集、測試集;

使用訓練集學習訓練模型;

使用測試集來衡量誤差以及評估準确度;

根據推薦系統目的不同,準确度的衡量也不同:

分類問題

比如點選、不點選; 喜歡、不喜歡;

  • 精确度precision:推薦結果有多少是使用者喜歡的
  • 召回率recall:使用者喜歡的産品,有多少個是推薦系統推薦的

通常希望兩個名額都越大越好,但實際需平衡兩個名額都關系,是以長遠F-名額來作為平衡二者關系的計算方式

評分預測

對産品驚醒評分,電影評分

  • 均方根差RMSE
  • MAE 平均絕對誤差

用于描述與測評分與産品真實評分的差距

排序問題

分類、評分隻是把推薦産品曬出來,不包含展示順序,而如果要把使用者最可能消費的産品放在前面,則需要排序名額。

  • AUC,随機挑選一個正樣本,一個負樣本,正樣本排在負樣本前的機率

    當算法能更好的把證樣本排在前邊的時候,就是一個好的算法模型

  • MAP,推薦清單中和使用者相關的産品在推薦清單中的位置得分,越靠前分越大
  • MRR,按照跟使用者相關的産品的排名的倒數作為精确度
  • NDGC,推薦清單中每一個産品評分值的累加;同時考慮每個産品位置,最後進行歸一化,在同一标準上評價不同的推薦清單

覆寫率

推薦出的産品占總産品的比例

多樣性

使用者興趣不是一成不變的,統一使用者的興趣會受到時間段、心情、節日等多種因素影響。推薦時要盡量推薦更多的品類。

可通過對産品聚類,在推薦清單中插入不同類别産品類提高多樣性

時效性

不同産品的時效性不同,比如電商産品時效性不是很高,但新聞、資訊、短視訊之類的産品,就需要很高的時效性。

針對不同的産品,甚至産品下不同的類目,設定不同的時效性,也是提高推薦品質的途徑之一。

推薦系統的線上評估

線上評估分為兩個階段:使用者觸發推薦服務、使用者産生行為

觸發推薦服務

穩定性

系統穩定性對于使用者體驗至關重要,怎樣針對不同場景持續穩定的提供推薦服務,是推薦系統的最重要的名額之一,提升推薦效果也要在保證系統穩定的前提下去進行優化

高并發

當某個時間節點大量使用者通路,或使用者規模急速擴大時,系統能否扛住高并發的壓力,也是個很大的挑戰。

了解接口的高并發能力,做好充分的壓力測試

響應時間

衡量使用者能否及時得到推薦回報,response time 受多種因素影響,比如網絡情況、伺服器、資料庫等,可通過監控請求的時長,接口監控,資料監控,做好報警措施

産生行為

使用者産生行為,通過收集分析使用者的行為日志進行相關名額的評價

示例:

1、推薦的曝光點選轉化率

2、推薦的點選通路轉化率

3、推薦的通路購買轉化率

示例:

1、推薦曝光

2、點選 (曝光點選轉化率)

3、閱讀(點選閱讀轉化率)

4、分享(閱讀分享轉化率)

AB測試

線上評估通常會結合AB測試

什麼是AB測試

AB測試本質為對照實驗,來源于醫學的雙盲測試,通過給兩組病人不同的藥物,來确定藥物是否有效。

AB測試:将不同的算法/政策,在同一時間次元,分别在兩組或者多組 組成成分相同的使用者群體内容進行線上測試,分析各組使用者的行為名額,得到可以真正全流量上線的算法和政策

AB測試常見做法

核心:控制變量、分流測試、規則統一

控制變量

AB測試必須是單變量的,變量太多會産生幹擾,很難找到各個變量對結果的影響程度。

分流測試

AB測試作為對照試驗,自然要有 試驗組和對照組。通常會對使用者進行分流

  • 使用者ID
  • 裝置号
  • 浏覽器cookie
  • 約定生成的僞随機數,0,1大數定律

規則統一

在控制變量和分流測試的前提下,針對不同的流量,應制定相同的評價名額,才能得到準确的對比效果。

如何評估推薦系統的健康狀況?

繼續閱讀