策略產(chǎn)品經(jīng)理干貨系列之推薦系統(tǒng)離線(xiàn)評(píng)估方法與指標(biāo)介紹
不同的評(píng)估方法存在不同的優(yōu)缺點(diǎn),所以在進(jìn)行推薦評(píng)估時(shí),要詳細(xì)了解其指標(biāo),選擇合適的評(píng)估方法。本篇文章將分享推薦系統(tǒng)離線(xiàn)評(píng)估方法,幫助策略產(chǎn)品經(jīng)理高效地完成工作。希望能對(duì)你有所幫助。
今天想就所有策略產(chǎn)品比較關(guān)注的推薦系統(tǒng)評(píng)估方法展開(kāi)系列文章介紹,給大家從頭到尾講清楚推薦系統(tǒng)的評(píng)估度量衡,同時(shí)也是幫助大家明確作為策略如何基于不同的場(chǎng)景確認(rèn)優(yōu)化的標(biāo)的方向。
本系列將基于離線(xiàn)評(píng)估、Replay方法、interleaving方法以及線(xiàn)上AB測(cè)試的視角來(lái)給大家從頭到尾講清楚策略產(chǎn)品對(duì)于推薦系統(tǒng)評(píng)估體系的搭建,各種評(píng)估方式的優(yōu)缺點(diǎn)及其應(yīng)用場(chǎng)景,讓每一位策略產(chǎn)品對(duì)于評(píng)估效果的選擇了然于心;歡迎大家對(duì)于本文進(jìn)行討論。
一、推薦系統(tǒng)的評(píng)估體系
核心要點(diǎn):一個(gè)成熟的推薦系統(tǒng)評(píng)估體系應(yīng)該綜合考慮評(píng)估的效率和正確性,利用較少的資源位,快速篩選出效果更好的模型。
對(duì)于一個(gè)公司來(lái)說(shuō),最公正和合理的評(píng)估方法及時(shí)進(jìn)行線(xiàn)上測(cè)試,評(píng)估模型是否能夠更好達(dá)成公司或者團(tuán)隊(duì)的商業(yè)目標(biāo)。
但是光使用線(xiàn)上A/B的測(cè)試方法要占用寶貴且有限的線(xiàn)上流量字眼,并且可能會(huì)對(duì)用戶(hù)體驗(yàn)造成傷害。
所以,正是由于線(xiàn)上測(cè)試的種種限制,“離線(xiàn)測(cè)試”才成了策略產(chǎn)品退而其其次的選擇。離線(xiàn)測(cè)試可以利用近乎無(wú)限的計(jì)算資源,快速得到評(píng)估結(jié)構(gòu),從而實(shí)現(xiàn)模型的快速迭代化。
所以,并不是一種單一的評(píng)估體系即可滿(mǎn)足所有的評(píng)價(jià)場(chǎng)景和標(biāo)準(zhǔn),作為策略產(chǎn)品,應(yīng)該深刻的知曉和運(yùn)用每一種評(píng)估方法去做到評(píng)測(cè)效率和正確性的平衡。
1. 推薦系統(tǒng)評(píng)估體系概述
從上圖可以看出,在線(xiàn)上A/B測(cè)試(最接近線(xiàn)上真實(shí)環(huán)境)和傳統(tǒng)的離線(xiàn)評(píng)估(評(píng)測(cè)的效率最高)之間,還有Replay和Interleaving等測(cè)試方法。
- Replay方法是用來(lái)最大程度在離線(xiàn)狀態(tài)下模擬線(xiàn)上環(huán)境的過(guò)程。
- Interleaving方法則可以建立快速的線(xiàn)上測(cè)試環(huán)境。
這種多層級(jí)的評(píng)估測(cè)試方法共同構(gòu)成了完整的推薦系統(tǒng)評(píng)估體系,做到評(píng)測(cè)實(shí)現(xiàn)計(jì)算效率和線(xiàn)上真實(shí)性反饋的平衡。
2. 應(yīng)用場(chǎng)景
1)評(píng)估效率適用場(chǎng)景
可以看的出來(lái)離線(xiàn)評(píng)估需要快速驗(yàn)證模型的思想和提升效率,因此存在更多篩選的模型和驗(yàn)證改正思想的時(shí)候。
由于數(shù)量巨大,“評(píng)估效率”就成為了最為關(guān)鍵的考慮因素,線(xiàn)上反饋的“真實(shí)性”就沒(méi)有那么苛刻和高要求,這時(shí)候就應(yīng)該選擇效率更高的離線(xiàn)評(píng)估法則。
2)線(xiàn)上真實(shí)性反饋適用場(chǎng)景
候選模型被一層層篩選出來(lái)之后,接近正式上線(xiàn)接單,評(píng)估方法對(duì)于是否能夠真實(shí)反饋線(xiàn)上環(huán)境更加重要。
在模型正式上線(xiàn)前就需要做最接近真實(shí)產(chǎn)品體驗(yàn)的A/B測(cè)試做模型評(píng)估,產(chǎn)生最具說(shuō)服力的——業(yè)務(wù)商業(yè)指標(biāo),才能進(jìn)行模型上線(xiàn),完成模型迭代優(yōu)化過(guò)程。
二、離線(xiàn)評(píng)估的方法
- 定位:在推薦系統(tǒng)評(píng)估當(dāng)中,離線(xiàn)評(píng)估往往被當(dāng)做是最常用也是最基本的評(píng)估方法。其核心是指在模型部署在線(xiàn)上環(huán)境之前,在離線(xiàn)的環(huán)境進(jìn)行評(píng)估。
- 優(yōu)點(diǎn):1)由于不用部署到生產(chǎn)環(huán)境當(dāng)中,離線(xiàn)評(píng)估就沒(méi)有線(xiàn)上部署的工程風(fēng)險(xiǎn),也不用浪費(fèi)線(xiàn)上流量的資源;2)測(cè)試時(shí)間短、同時(shí)可以進(jìn)行多種并行測(cè)試,能夠利用豐富線(xiàn)下資源等優(yōu)點(diǎn)。
- 能力要求:對(duì)于策略產(chǎn)品充分掌握離線(xiàn)評(píng)估的要點(diǎn),需要掌握兩個(gè)方面的知識(shí):一是離線(xiàn)評(píng)估的方法有哪些;二是離線(xiàn)評(píng)估的指標(biāo)有哪些。
離線(xiàn)評(píng)估的基本原理大家比較熟悉,主要是在離線(xiàn)環(huán)境當(dāng)中,講數(shù)據(jù)集分為“訓(xùn)練集”和“測(cè)試集”,用“訓(xùn)練集”來(lái)訓(xùn)練模型,用“測(cè)試集”來(lái)評(píng)估模型。
根據(jù)數(shù)據(jù)集劃分方式不同,離線(xiàn)評(píng)估的方法可以分為Hold out檢驗(yàn)、交叉檢驗(yàn)和自助法。
1. Hold-out留出法
Holdout檢驗(yàn)是基礎(chǔ)的離線(xiàn)評(píng)估方法,其將原始的樣本集合隨機(jī)劃分成訓(xùn)練集和測(cè)試集。
對(duì)于一個(gè)推薦模型來(lái)說(shuō),可以把樣本按照90%-10%的比例隨機(jī)劃分成兩個(gè)部分,90%用來(lái)做模型的訓(xùn)練集,10%用來(lái)做模型的評(píng)估測(cè)試集。
Holdout檢驗(yàn)的方法會(huì)存在一定的缺點(diǎn),也就是在驗(yàn)證集上計(jì)算出的評(píng)估指標(biāo)與訓(xùn)練集和測(cè)試集的劃分有直接的干系,如果進(jìn)行少量的Holdout檢驗(yàn),則得到的結(jié)論會(huì)存在比較大的隨機(jī)性。
所以,為了消除隨機(jī)性影響,“交叉檢驗(yàn)”法被提出。
2. 交叉檢驗(yàn)法
1)K-fold交叉驗(yàn)證法
把全部樣本劃分成K個(gè)大小相等的樣本子集(K取決于樣本集合總數(shù),一般行業(yè)實(shí)驗(yàn)取10),依次遍歷K個(gè)子集,每次會(huì)把當(dāng)前的子集作為驗(yàn)證集,其余所有子集當(dāng)做是訓(xùn)練集,進(jìn)行模型的訓(xùn)練和評(píng)估。
最后把K次評(píng)估的指標(biāo)的平均值作為最終的評(píng)估指標(biāo),這個(gè)在之前機(jī)器學(xué)習(xí)的章節(jié)有提到過(guò)。
2)留一驗(yàn)證法
和K-fold交叉驗(yàn)證的思想比較類(lèi)似,每次就留1個(gè)樣本作為驗(yàn)證集,其余所有樣本作為測(cè)試集。
樣本總數(shù)n,依次遍歷n個(gè)樣本,進(jìn)行n次驗(yàn)證,再將評(píng)估的指標(biāo)進(jìn)行平均求得最終指標(biāo)。缺點(diǎn)就是樣本多的情況下,驗(yàn)證的計(jì)算和時(shí)間成本很大。
事實(shí)上,留1驗(yàn)證是留p驗(yàn)證的一種特例。留p驗(yàn)證就是指代n個(gè)樣本集合中每次留p個(gè)樣本來(lái)做驗(yàn)證集。
3. 自助法Bootstrap
前面提到的關(guān)于Hold-out留存法,或者是交叉檢驗(yàn)法都需要?jiǎng)澐譁y(cè)試集和訓(xùn)練集進(jìn)行模型評(píng)估。然而當(dāng)樣本規(guī)模比較小的時(shí)候,劃分驗(yàn)證集會(huì)進(jìn)一步讓訓(xùn)練集減小,最終影響模型訓(xùn)練的效果。
所以誕生了自助法(Bootstrap)自助采樣的檢驗(yàn)方法:對(duì)于總數(shù)是n的樣本集合來(lái)進(jìn)行n次有放回的隨機(jī)抽樣,得到大小為n的訓(xùn)練集。
在n次采樣的過(guò)程中,有的樣本被重復(fù)采樣,有的樣本沒(méi)有被抽樣過(guò),把這些沒(méi)有被抽樣的樣本作為驗(yàn)證集合進(jìn)行模型驗(yàn)證,這就是自助法驗(yàn)證過(guò)程。
三、離線(xiàn)評(píng)估的指標(biāo)
要客觀評(píng)估一個(gè)推薦模型的好壞,那么就需要有一個(gè)客觀的度量衡指標(biāo)來(lái)進(jìn)行評(píng)估,并且需要多個(gè)角度的指標(biāo)來(lái)評(píng)估推薦系統(tǒng),從不同的視角來(lái)得到多個(gè)維度的結(jié)論。
以下是推薦系統(tǒng)在離線(xiàn)評(píng)估當(dāng)中使用的比較多的指標(biāo),其實(shí)在之前介紹推薦系統(tǒng)排序模塊的時(shí)候就有給大家概述性介紹,從混淆矩陣的視角出發(fā)說(shuō)明準(zhǔn)確率(Accuracy)、召回率(recall)和精確率(Precision),這里我們?cè)僭敿?xì)介紹一下。
混淆矩陣說(shuō)明
我們通過(guò)舉例的方式讓大家更加容易理解,首先,我們來(lái)理解混線(xiàn)矩陣當(dāng)中的幾個(gè)概念,用推薦系統(tǒng)舉例方便大家理解。
- TP(True Positive)在混淆矩陣中的意思就是模型預(yù)測(cè)item被點(diǎn)擊并且實(shí)際也被點(diǎn)擊。
- FN(False Negetive)在混淆矩陣中的意思就是模型預(yù)測(cè)item不會(huì)被點(diǎn)擊但是實(shí)際被點(diǎn)擊。
- FP(False Positive)在混淆矩陣中的意思就是模型預(yù)測(cè)item會(huì)被點(diǎn)擊但是實(shí)際不被點(diǎn)擊。
- TN(True Negtive)在混淆矩陣的位置就是預(yù)測(cè)不被點(diǎn)擊實(shí)際也是曝光未點(diǎn)擊的結(jié)果。
1. 準(zhǔn)確率(Accuracy)
準(zhǔn)確率代表分類(lèi)正確的樣本占據(jù)總樣本的個(gè)數(shù)比例,也就是:
其中分母代表總樣本數(shù)量,分子代表的是無(wú)論是預(yù)測(cè)會(huì)被點(diǎn)擊還是不被點(diǎn)擊,預(yù)測(cè)結(jié)果和實(shí)際結(jié)果保持一致的的樣本數(shù)量。
準(zhǔn)確率是分類(lèi)任務(wù)當(dāng)中比較直觀的評(píng)價(jià)指標(biāo),雖然有比較強(qiáng)的可解釋性,但是也存在明顯缺陷。就是當(dāng)不同分類(lèi)的樣本不均勻的時(shí)候,占比大的類(lèi)別往往就成為了影響預(yù)估準(zhǔn)確率的主要因素。
如果負(fù)樣本占比是99%(即100個(gè)曝光后的樣本都是未點(diǎn)擊),那么把所有的樣本去預(yù)測(cè)成負(fù)樣本都可以獲得99%的準(zhǔn)確率。
如果把推薦問(wèn)題當(dāng)做是一個(gè)點(diǎn)擊率預(yù)估方式的分類(lèi)問(wèn)題,在選定閾值進(jìn)行正負(fù)樣本區(qū)分的前提下,可以用準(zhǔn)確率評(píng)估推薦模型。
而在實(shí)際場(chǎng)景當(dāng)中更多是利用推薦模型得到一個(gè)推薦序列,因此更多用精確率和召回率指標(biāo)來(lái)衡量好壞。
2. 召回率(Recall)與精確率(Precision)
召回率代表分類(lèi)正確的正樣本數(shù)占比所有真正的正樣本數(shù)的比例,也就是:
考察的是推薦系統(tǒng)模型當(dāng)中在做分類(lèi)任務(wù)時(shí)候把所有實(shí)際為正樣本預(yù)測(cè)成正樣本的能力,更多考察的就是對(duì)正樣本的覆蓋情況。
精確率是分類(lèi)正確的正樣本數(shù)量占比分類(lèi)器判定成正樣本的樣本個(gè)數(shù)比例,也就是:
代表著推薦系統(tǒng)模型在做分類(lèi)任務(wù)中分類(lèi)預(yù)測(cè)正向樣本的精準(zhǔn)程度。
精確率和召回率是矛盾統(tǒng)一的兩個(gè)指標(biāo):即為了提高精確率,分類(lèi)器需要盡量在“更優(yōu)把握的時(shí)候”才把預(yù)測(cè)樣本預(yù)測(cè)為正樣本,但是往往會(huì)因?yàn)檫^(guò)于保守的預(yù)估而漏掉很多“沒(méi)有把握”的正樣本,導(dǎo)致召回率變低。
所以為了綜合的反映精確率和召回率的結(jié)果,可以采用F1-score,F(xiàn)1-score代表的是精確率和準(zhǔn)確率的調(diào)和平均值。
其定義如下所示:
3. 均方根誤差 RMSE & 絕對(duì)百分比誤差 MAPE
均方根誤差(Root Mean Square Error,RMSE)經(jīng)常被用來(lái)衡量回歸模型的好壞。
使用點(diǎn)擊率預(yù)估模型構(gòu)建推薦系統(tǒng)的時(shí)候,推薦系統(tǒng)預(yù)測(cè)的其實(shí)是樣本為正樣本的概率,就可以用RMSE來(lái)評(píng)估。
定義如下:
其中yi表示第i個(gè)樣本點(diǎn)的真實(shí)值,而括號(hào)內(nèi)的后者代表的是第i個(gè)點(diǎn)的預(yù)測(cè)值,n表示的是樣本點(diǎn)的個(gè)數(shù)。一般情況下RMSE能夠很友好的反映出預(yù)測(cè)值和真實(shí)值的偏離程度。
但是也存在一個(gè)明顯的缺點(diǎn),就是如果個(gè)別點(diǎn)的偏離程度非常大(俗稱(chēng)離群點(diǎn)),即使離群點(diǎn)非常的少,也會(huì)使得RMSE指標(biāo)變得比較差。
所以為了解決這個(gè)問(wèn)題,提出了魯棒性更強(qiáng)的平均絕對(duì)百分比誤差MAPE(Mean Absolute Percent Mape)。
MAPE的定義公式如下所示:
相比較RMSE,MAPE把每個(gè)點(diǎn)的誤差做了歸一化處理,降低了個(gè)別的離群點(diǎn)帶來(lái)的絕對(duì)誤差影響。
4. 對(duì)數(shù)損失函數(shù)LogLoss
對(duì)數(shù)損失函數(shù)LogLoss也經(jīng)常在二分類(lèi)問(wèn)題用于離線(xiàn)評(píng)估使用的指數(shù),LogLoss定義如下:
其中,yi為輸入實(shí)例xi的真實(shí)類(lèi)別,pi為預(yù)測(cè)輸入實(shí)例xi是正樣本的概率,N為樣本總數(shù)。
其實(shí)LogLoss就是邏輯回歸的損失函數(shù),大量深度學(xué)習(xí)模型的輸出層正是邏輯回歸或者是softmax,因此采用LogLoss作為評(píng)估指標(biāo)可以非常直觀的反映模型的損失函數(shù)變化。
非常適用于觀察模型收斂情況的評(píng)估指標(biāo)。
四、關(guān)于離線(xiàn)評(píng)估方法與指標(biāo)介紹
本篇主要是針對(duì)日常策略產(chǎn)品工作中推薦系統(tǒng)離線(xiàn)的常用評(píng)估方法和評(píng)估指標(biāo)做了詳盡的介紹。
離線(xiàn)評(píng)估是推薦系統(tǒng)評(píng)估效率最快的一種方式,但是其缺點(diǎn)也較為明顯,即無(wú)法準(zhǔn)確的反饋模型策略變更對(duì)于線(xiàn)上產(chǎn)生的影響效果,以及和業(yè)務(wù)場(chǎng)景結(jié)合的指標(biāo)效果體現(xiàn),這些都是離線(xiàn)評(píng)估方法的缺點(diǎn)。
但同時(shí)線(xiàn)上評(píng)估方法會(huì)存在諸多評(píng)估效率的問(wèn)題。因此推薦系統(tǒng)策略產(chǎn)品需要明曉什么場(chǎng)景下應(yīng)當(dāng)選擇使用什么類(lèi)型的評(píng)估方法,來(lái)達(dá)到準(zhǔn)確真實(shí)性和效率的平衡。
關(guān)于離線(xiàn)評(píng)估方法和對(duì)應(yīng)的指標(biāo)文章也介紹了對(duì)應(yīng)的優(yōu)勢(shì)和缺點(diǎn),復(fù)雜的推薦系統(tǒng)需要綜合不同的指標(biāo)來(lái)進(jìn)行全貌了解。
希望本篇文章能夠給大家引入對(duì)于推薦系統(tǒng)評(píng)估的方法論建議,有幫助還辛苦大家點(diǎn)贊、評(píng)論以及收藏三連。
本文由 @策略產(chǎn)品Arthur 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載
題圖來(lái)自 Unsplash,基于 CC0 協(xié)議
該文觀點(diǎn)僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺(tái)僅提供信息存儲(chǔ)空間服務(wù)。
很經(jīng)典的評(píng)估方法,只不過(guò)這個(gè)描述里面例子太少了,也不夠巨像,這么寫(xiě)的話(huà),除了那些做推薦或者做策略的同學(xué),其他人恐怕都是一頭霧水
感興趣策略產(chǎn)品同學(xué)可以關(guān)注Arthur主頁(yè)
沒(méi)看懂,這個(gè)東西會(huì)用在什么地方嗎?
這個(gè)主要是推薦系統(tǒng)策略產(chǎn)品用于離線(xiàn)評(píng)估推薦模型離線(xiàn)效果的衡量方法,屬于垂直行業(yè)產(chǎn)品經(jīng)理的工作經(jīng)驗(yàn)文章分享。