天天看點

政策産品經理幹貨系列之推薦系統離線評估方法與名額介紹

作者:人人都是産品經理
不同的評估方法存在不同的優缺點,是以在進行推薦評估時,要詳細了解其名額,選擇合适的評估方法。本篇文章将分享推薦系統離線評估方法,幫助政策産品經理高效地完成工作。希望能對你有所幫助。
政策産品經理幹貨系列之推薦系統離線評估方法與名額介紹

今天想就所有政策産品比較關注的推薦系統評估方法展開系列文章介紹,給大家從頭到尾講清楚推薦系統的評估度量衡,同時也是幫助大家明确作為政策如何基于不同的場景确認優化的标的方向。

本系列将基于離線評估、Replay方法、interleaving方法以及線上AB測試的視角來給大家從頭到尾講清楚政策産品對于推薦系統評估體系的搭建,各種評估方式的優缺點及其應用場景,讓每一位政策産品對于評估效果的選擇了然于心;歡迎大家對于本文進行讨論。

一、推薦系統的評估體系

核心要點:一個成熟的推薦系統評估體系應該綜合考慮評估的效率和正确性,利用較少的資源位,快速篩選出效果更好的模型。

對于一個公司來說,最公正和合理的評估方法及時進行線上測試,評估模型是否能夠更好達成公司或者團隊的商業目标。

但是光使用線上A/B的測試方法要占用寶貴且有限的線上流量字眼,并且可能會對使用者體驗造成傷害。

是以,正是由于線上測試的種種限制,“離線測試”才成了政策産品退而其其次的選擇。離線測試可以利用近乎無限的計算資源,快速得到評估結構,進而實作模型的快速疊代化。

是以,并不是一種單一的評估體系即可滿足所有的評價場景和标準,作為政策産品,應該深刻的知曉和運用每一種評估方法去做到評測效率和正确性的平衡。

1. 推薦系統評估體系概述

政策産品經理幹貨系列之推薦系統離線評估方法與名額介紹

從上圖可以看出,線上上A/B測試(最接近線上真實環境)和傳統的離線評估(評測的效率最高)之間,還有Replay和Interleaving等測試方法。

  • Replay方法是用來最大程度在離線狀态下模拟線上環境的過程。
  • Interleaving方法則可以建立快速的線上測試環境。

這種多層級的評估測試方法共同構成了完整的推薦系統評估體系,做到評測實作計算效率和線上真實性回報的平衡。

2. 應用場景

1)評估效率适用場景

可以看的出來離線評估需要快速驗證模型的思想和提升效率,是以存在更多篩選的模型和驗證改正思想的時候。

由于數量巨大,“評估效率”就成為了最為關鍵的考慮因素,線上回報的“真實性”就沒有那麼苛刻和高要求,這時候就應該選擇效率更高的離線評估法則。

2)線上真實性回報适用場景

候選模型被一層層篩選出來之後,接近正式上線接單,評估方法對于是否能夠真實回報線上環境更加重要。

在模型正式上線前就需要做最接近真實産品體驗的A/B測試做模型評估,産生最具說服力的——業務商業名額,才能進行模型上線,完成模型疊代優化過程。

二、離線評估的方法

  • 定位:在推薦系統評估當中,離線評估往往被當做是最常用也是最基本的評估方法。其核心是指在模型部署線上上環境之前,在離線的環境進行評估。
  • 優點:1)由于不用部署到生産環境當中,離線評估就沒有線上部署的工程風險,也不用浪費線上流量的資源;2)測試時間短、同時可以進行多種并行測試,能夠利用豐富線下資源等優點。
  • 能力要求:對于政策産品充分掌握離線評估的要點,需要掌握兩個方面的知識:一是離線評估的方法有哪些;二是離線評估的名額有哪些。

離線評估的基本原理大家比較熟悉,主要是在離線環境當中,講資料集分為“訓練集”和“測試集”,用“訓練集”來訓練模型,用“測試集”來評估模型。

根據資料集劃分方式不同,離線評估的方法可以分為Hold out檢驗、交叉檢驗和自助法。

1. Hold-out留出法

Holdout檢驗是基礎的離線評估方法,其将原始的樣本集合随機劃分成訓練集和測試集。

對于一個推薦模型來說,可以把樣本按照90%-10%的比例随機劃分成兩個部分,90%用來做模型的訓練集,10%用來做模型的評估測試集。

政策産品經理幹貨系列之推薦系統離線評估方法與名額介紹

Holdout檢驗的方法會存在一定的缺點,也就是在驗證集上計算出的評估名額與訓練集和測試集的劃分有直接的幹系,如果進行少量的Holdout檢驗,則得到的結論會存在比較大的随機性。

是以,為了消除随機性影響,“交叉檢驗”法被提出。

2. 交叉檢驗法

1)K-fold交叉驗證法

把全部樣本劃分成K個大小相等的樣本子集(K取決于樣本集合總數,一般行業實驗取10),依次周遊K個子集,每次會把目前的子集作為驗證集,其餘所有子集當做是訓練集,進行模型的訓練和評估。

最後把K次評估的名額的平均值作為最終的評估名額,這個在之前機器學習的章節有提到過。

政策産品經理幹貨系列之推薦系統離線評估方法與名額介紹

2)留一驗證法

和K-fold交叉驗證的思想比較類似,每次就留1個樣本作為驗證集,其餘所有樣本作為測試集。

樣本總數n,依次周遊n個樣本,進行n次驗證,再将評估的名額進行平均求得最終名額。缺點就是樣本多的情況下,驗證的計算和時間成本很大。

事實上,留1驗證是留p驗證的一種特例。留p驗證就是指代n個樣本集合中每次留p個樣本來做驗證集。

政策産品經理幹貨系列之推薦系統離線評估方法與名額介紹

3. 自助法Bootstrap

前面提到的關于Hold-out留存法,或者是交叉檢驗法都需要劃分測試集和訓練集進行模型評估。然而當樣本規模比較小的時候,劃分驗證集會進一步讓訓練集減小,最終影響模型訓練的效果。

是以誕生了自助法(Bootstrap)自助采樣的檢驗方法:對于總數是n的樣本集合來進行n次有放回的随機抽樣,得到大小為n的訓練集。

在n次采樣的過程中,有的樣本被重複采樣,有的樣本沒有被抽樣過,把這些沒有被抽樣的樣本作為驗證集合進行模型驗證,這就是自助法驗證過程。

三、離線評估的名額

要客觀評估一個推薦模型的好壞,那麼就需要有一個客觀的度量衡名額來進行評估,并且需要多個角度的名額來評估推薦系統,從不同的視角來得到多個次元的結論。

以下是推薦系統在離線評估當中使用的比較多的名額,其實在之前介紹推薦系統排序子產品的時候就有給大家概述性介紹,從混淆矩陣的視角出發說明準确率(Accuracy)、召回率(recall)和精确率(Precision),這裡我們再詳細介紹一下。

政策産品經理幹貨系列之推薦系統離線評估方法與名額介紹

混淆矩陣說明

我們通過舉例的方式讓大家更加容易了解,首先,我們來了解混線矩陣當中的幾個概念,用推薦系統舉例友善大家了解。

  • TP(True Positive)在混淆矩陣中的意思就是模型預測item被點選并且實際也被點選。
  • FN(False Negetive)在混淆矩陣中的意思就是模型預測item不會被點選但是實際被點選。
  • FP(False Positive)在混淆矩陣中的意思就是模型預測item會被點選但是實際不被點選。
  • TN(True Negtive)在混淆矩陣的位置就是預測不被點選實際也是曝光未點選的結果。

1. 準确率(Accuracy)

準确率代表分類正确的樣本占據總樣本的個數比例,也就是:

其中分母代表總樣本數量,分子代表的是無論是預測會被點選還是不被點選,預測結果和實際結果保持一緻的的樣本數量。

準确率是分類任務當中比較直覺的評價名額,雖然有比較強的可解釋性,但是也存在明顯缺陷。就是當不同分類的樣本不均勻的時候,占比大的類别往往就成為了影響預估準确率的主要因素。

如果負樣本占比是99%(即100個曝光後的樣本都是未點選),那麼把所有的樣本去預測成負樣本都可以獲得99%的準确率。

如果把推薦問題當做是一個點選率預估方式的分類問題,在標明門檻值進行正負樣本區分的前提下,可以用準确率評估推薦模型。

而在實際場景當中更多是利用推薦模型得到一個推薦序列,是以更多用精确率和召回率名額來衡量好壞。

2. 召回率(Recall)與精确率(Precision)

召回率代表分類正确的正樣本數占比所有真正的正樣本數的比例,也就是:

考察的是推薦系統模型當中在做分類任務時候把所有實際為正樣本預測成正樣本的能力,更多考察的就是對正樣本的覆寫情況。

精确率是分類正确的正樣本數量占比分類器判定成正樣本的樣本個數比例,也就是:

代表着推薦系統模型在做分類任務中分類預測正向樣本的精準程度。

精确率和召回率是沖突統一的兩個名額:即為了提高精确率,分類器需要盡量在“更優把握的時候”才把預測樣本預測為正樣本,但是往往會因為過于保守的預估而漏掉很多“沒有把握”的正樣本,導緻召回率變低。

是以為了綜合的反映精确率和召回率的結果,可以采用F1-score,F1-score代表的是精确率和準确率的調和平均值。

其定義如下所示:

政策産品經理幹貨系列之推薦系統離線評估方法與名額介紹

3. 均方根誤差 RMSE & 絕對百分比誤差 MAPE

均方根誤差(Root Mean Square Error,RMSE)經常被用來衡量回歸模型的好壞。

使用點選率預估模型建構推薦系統的時候,推薦系統預測的其實是樣本為正樣本的機率,就可以用RMSE來評估。

定義如下:

其中yi表示第i個樣本點的真實值,而括号内的後者代表的是第i個點的預測值,n表示的是樣本點的個數。一般情況下RMSE能夠很友好的反映出預測值和真實值的偏離程度。

但是也存在一個明顯的缺點,就是如果個别點的偏離程度非常大(俗稱離群點),即使離群點非常的少,也會使得RMSE名額變得比較差。

是以為了解決這個問題,提出了魯棒性更強的平均絕對百分比誤差MAPE(Mean Absolute Percent Mape)。

MAPE的定義公式如下所示:

相比較RMSE,MAPE把每個點的誤差做了歸一化處理,降低了個别的離群點帶來的絕對誤差影響。

4. 對數損失函數LogLoss

對數損失函數LogLoss也經常在二分類問題用于離線評估使用的指數,LogLoss定義如下:

其中,yi為輸入執行個體xi的真實類别,pi為預測輸入執行個體xi是正樣本的機率,N為樣本總數。

其實LogLoss就是邏輯回歸的損失函數,大量深度學習模型的輸出層正是邏輯回歸或者是softmax,是以采用LogLoss作為評估名額可以非常直覺的反映模型的損失函數變化。

非常适用于觀察模型收斂情況的評估名額。

四、關于離線評估方法與名額介紹

本篇主要是針對日常政策産品工作中推薦系統離線的常用評估方法和評估名額做了詳盡的介紹。

離線評估是推薦系統評估效率最快的一種方式,但是其缺點也較為明顯,即無法準确的回報模型政策變更對于線上産生的影響效果,以及和業務場景結合的名額效果展現,這些都是離線評估方法的缺點。

但同時線上評估方法會存在諸多評估效率的問題。是以推薦系統政策産品需要明曉什麼場景下應當選擇使用什麼類型的評估方法,來達到準确真實性和效率的平衡。

關于離線評估方法和對應的名額文章也介紹了對應的優勢和缺點,複雜的推薦系統需要綜合不同的名額來進行全貌了解。

希望本篇文章能夠給大家引入對于推薦系統評估的方法論建議,有幫助還辛苦大家點贊、評論以及收藏三連。

本文由 @政策産品Arthur 原創釋出于人人都是産品經理,未經許可,禁止轉載

題圖來自 Unsplash,基于 CC0 協定

該文觀點僅代表作者本人,人人都是産品經理平台僅提供資訊存儲空間服務。

繼續閱讀