大廠項(xiàng)目實(shí)踐案例——美團(tuán)推薦系統(tǒng)“新穎性”建設(shè)思考
現(xiàn)在,越來(lái)越多平臺(tái)逐漸意識(shí)到了“新穎性”指標(biāo)對(duì)于推薦系統(tǒng)的重要性,那么,什么是新穎性?現(xiàn)有的平臺(tái)又是如何實(shí)現(xiàn)推薦系統(tǒng)新穎性的?本篇文章里,作者結(jié)合實(shí)際案例進(jìn)行了思考,一起來(lái)看。
今天想來(lái)聊聊在推薦系統(tǒng)場(chǎng)域看似“離經(jīng)叛道”的優(yōu)化方向——新穎性novelty,無(wú)論是從電商平臺(tái)推薦、短視頻流媒體推薦等新穎性都是在不斷發(fā)展和持續(xù)建設(shè)的方向。但是這看上去和Arthur介紹的“相關(guān)性”和“信息分發(fā)效率”有些許背道而馳,所以我把其稱之為看上去有些離經(jīng)叛道的方向。
那么什么是新穎性、為什么要做新穎性,以及大廠(以美團(tuán)舉例)都是如何實(shí)現(xiàn)推薦系統(tǒng)新穎性的,以上的三連問便是我們今天希望與大家分享的話題方向。
PS:本文是對(duì)《美團(tuán)推薦系統(tǒng)新穎性建設(shè)》的參考和解讀,感興趣可閱讀原文。
一、新穎性誕生的背景和難點(diǎn)
1. 新穎性誕生背景
背景:伴隨推薦系統(tǒng)的各種召回策略、排序策略的發(fā)展,策略產(chǎn)品經(jīng)理、算法工程師為了滿足公司廣告收入Cost、推薦系統(tǒng)物料CTR/CVR極致業(yè)務(wù)的發(fā)展,這種過(guò)多的關(guān)注商業(yè)效率指標(biāo)而忽視了對(duì)于用戶新穎性的體驗(yàn),長(zhǎng)此以往給用戶帶來(lái)體驗(yàn)的“信息繭房”問題。
這其實(shí)也是早期UserCF、ItemCF協(xié)同過(guò)濾算法的明顯弊端問題,過(guò)多的依賴于用戶過(guò)去行為交互行為來(lái)建立相似性,給用戶推薦內(nèi)容,造成了推薦內(nèi)容的繭房效應(yīng),不僅缺少對(duì)用戶、物體特征的考究,更加加重了推薦內(nèi)容的馬太效應(yīng)。使得用戶的瀏覽體驗(yàn)越來(lái)越差,反噬帶來(lái)用戶下拉深度曝光的坑位數(shù)降低,用戶在APP停留時(shí)長(zhǎng)也下降。
因此越來(lái)越多的平臺(tái)開始意識(shí)到了“新穎性”指標(biāo)對(duì)于推薦系統(tǒng)的重要性,同時(shí)新穎性也成為了推薦策略/推薦廣告策略產(chǎn)品的重要考核指標(biāo)之一。
圖1.1拼多多信息流推薦商品集中問題
如上圖所示,因?yàn)樽髡咴谄炊喽鄡H僅只是點(diǎn)擊了金字塔原理的書籍,就瘋狂推薦該書籍。從心理角度來(lái)說(shuō),給人一股推薦“過(guò)猶不及”的感覺,滿屏“金字塔原理”,且不論背后是因?yàn)閷?duì)點(diǎn)擊行為特征的特征屬性給予權(quán)重過(guò)高還是書籍投放廣告主都比較舍得出價(jià)。
但是從體驗(yàn)角度出發(fā),畢竟推薦不同于搜索,非query詞觸發(fā)相關(guān)性召回和影響排序,這樣的推薦結(jié)果確實(shí)缺少了一些客戶吸引逛下去的欲望和未知的“驚喜”。
2. 美團(tuán)平臺(tái)做新穎性的難點(diǎn)與挑戰(zhàn)
不同于電商平臺(tái)物料item的豐富性(候選池高達(dá)幾十億),在召回通道和候選集中可以分發(fā)的內(nèi)容非常多,往往可以通過(guò)海選過(guò)濾Filter環(huán)節(jié)過(guò)濾購(gòu)買過(guò)、重排序環(huán)節(jié)過(guò)濾相同類目、圖片的商品也不會(huì)嚴(yán)重影響推薦系統(tǒng)的相關(guān)性。
但在外賣場(chǎng)景下,候選商家少(受到LBS場(chǎng)景的約束,商家就幾百上千,過(guò)濾物料完就沒了)、用戶復(fù)購(gòu)/下單頻次高(不希望一天或者幾天都吃一樣的外賣,有著口味替換的心理訴求),決定了“直接過(guò)濾用戶看過(guò)、下單過(guò)”的策略既不現(xiàn)實(shí)、也不合理。
所以針對(duì)場(chǎng)景的特殊性,怎么去直接定義和量化新穎性,優(yōu)化目標(biāo)怎么設(shè)計(jì),怎么平衡交易效率的問題,都是新穎性需要考慮的重要點(diǎn)。
二、如何定義新穎性與新穎性評(píng)估指標(biāo)
1. 定義新穎性Novelty
推薦系統(tǒng)業(yè)界給出的新穎性相關(guān)的定義包括新穎性(Novelty)和驚喜度(Serendipity)。
- 新穎性(Novelty):更多的是衡量給用戶推薦沒有見過(guò)的物品Item(不適用于外賣場(chǎng)景,LBS物料太少)
- 驚喜度(Serendipity):衡量的是推薦和用戶歷史興趣不相似,但是卻很滿意的推薦。
對(duì)于美團(tuán)外賣的的場(chǎng)景,用戶比較方案的場(chǎng)景在于一直給用戶推薦相同的商家,沒有機(jī)會(huì)看到更多沒見過(guò)但是適合自己的口味,所以定義指標(biāo)也需要和對(duì)應(yīng)的平臺(tái)業(yè)務(wù)場(chǎng)景匹配,新穎性和驚喜度可能適合京東、淘寶這樣的電商APP,但是綜合考慮外賣平臺(tái)候選商家少、復(fù)購(gòu)頻次高的特性,結(jié)合客戶調(diào)研結(jié)果。新穎商家,應(yīng)該滿足“最近一段時(shí)間沒見過(guò)、沒吃過(guò),但是愿意買單的要求”。
所以美團(tuán)的產(chǎn)品給出的新穎商家定義為:用戶在外賣全局最近7天沒有見過(guò)、或者30天沒有點(diǎn)擊、或者90天沒有完單的商家。
2. 新穎性評(píng)估指標(biāo)
前面也提到了“科學(xué)的線上A/B實(shí)驗(yàn)就是評(píng)估策略產(chǎn)品功能策略的尺度標(biāo)注”,那么上線了新穎性的功能策略就需要有客觀的評(píng)估指標(biāo),即通過(guò)什么商業(yè)業(yè)務(wù)指標(biāo)來(lái)評(píng)估新穎性的策略產(chǎn)出是有價(jià)值的。基于美團(tuán)平臺(tái)的特殊業(yè)務(wù)性,策略產(chǎn)品與算法制定了如下幾個(gè)業(yè)務(wù)指標(biāo)作為新穎性的評(píng)估:
1)客觀指標(biāo):
- 曝光新穎性@Top N:用戶在首頁(yè)Feed列表前N位看到的新穎商家占比,實(shí)際N取值為10。核心實(shí)驗(yàn)觀察指標(biāo)。
- 完單新穎性:點(diǎn)擊→完單商家中新穎商家的占比曝光商家,作為輔助觀測(cè)指標(biāo)。
- UV_RPM:即千人曝光GMV,作為核心約束指標(biāo),要求列表UV_RPM不降或微降。
2)主觀體驗(yàn)評(píng)估(用戶體驗(yàn)問卷):
- 新穎好評(píng)率:用戶對(duì)推薦新穎性由低到高打分1-5分,表示>=4分用戶的占比所有評(píng)價(jià)用戶。
- 新穎性case率:問卷中主動(dòng)反饋新穎體驗(yàn)Bad Case的比例。
三、首頁(yè)信息流Feeds新穎性商家推薦設(shè)計(jì)方案
1. 整體方案框架設(shè)計(jì)
美團(tuán)策略產(chǎn)品與算法團(tuán)隊(duì)為了保證每個(gè)階段都對(duì)新穎性進(jìn)行優(yōu)化主要做到了以下幾個(gè)部分:
- 召回階段:召回?cái)U(kuò)充新穎性供給端
- 精排階段:建模目標(biāo)在于優(yōu)化模型的泛化性
- 混排階段:混排新穎性商家個(gè)性化排序和浮動(dòng)插卡
- 前端展示:借助動(dòng)態(tài)交互推薦的方式進(jìn)行體驗(yàn)升級(jí)
2. 召回鏈路新穎供給
主要問題還是模型泛化性不足,高估有交互的“商家”,從而推薦很多“復(fù)購(gòu)”商家。策略的中心需要優(yōu)化Embedding來(lái)提升旁路召回多樣性。
在主路召回:雙塔模型當(dāng)中引入了商家side-information,通過(guò)商家側(cè)頂層Embedding表征做聚類分析。
因?yàn)橥ㄟ^(guò)Case分析會(huì)發(fā)現(xiàn)商家側(cè)頂層Embedding表征空間向量有商家品類聚類效果(上圖中的左邊所示)和跨地域相似商家能力(深圳的豬腳飯到遵義的豬腳飯)。所以美團(tuán)用雙塔模型的商家Embedding替換原來(lái)基于Word2Vec實(shí)現(xiàn)商家Embedding。利用雙塔商家Embedding向量,新增一路I2I新穎商家召回以提升新穎商家供給。
旁路召回:引入GCN旁路召回類型,利用GCN網(wǎng)絡(luò)挖掘用戶、商家之間的高階關(guān)聯(lián)性改善長(zhǎng)尾推薦問題。嘗試性建?!坝脩?商家”關(guān)系的U2I召回和建?!癚uery—商家”關(guān)系的I2I召回。
引入了用戶行為構(gòu)圖、新穎性構(gòu)圖兩部分以平衡效率、新穎性,損失函數(shù)如公式1(r表示完單、點(diǎn)擊、新穎性任務(wù))所示。包含了點(diǎn)擊、下單兩個(gè)主任務(wù),新穎性構(gòu)圖為解決引入新穎上下導(dǎo)致模型噪聲問題,對(duì)完單、點(diǎn)擊新穎商家做了加權(quán)采樣處理。把新穎性采樣子圖作為輔助任務(wù)融入到了兩個(gè)主任務(wù)的訓(xùn)練當(dāng)中,構(gòu)建高效用戶-商家表示關(guān)系的同時(shí),具備了發(fā)現(xiàn)新穎性的能力。
最后,線上實(shí)驗(yàn)發(fā)現(xiàn),I2I旁路召回Embedding向量表征優(yōu)化帶來(lái)了線上1%左右的曝光新穎性收益。而后續(xù)的I2I新穎商家召回、GCN召回的方案,其新穎性收益都不足0.5%,分析和外賣的LBS供給較少導(dǎo)致召回側(cè)收益空間相對(duì)較低有關(guān)。
3. 精排模型泛化能力提升
美團(tuán)首頁(yè)推薦信息流的排序優(yōu)化目標(biāo)以UV_CXR為主。新穎性商家長(zhǎng)期的行為樣本稀缺就導(dǎo)致在預(yù)估模型被低估。因此考慮從模型特征、損失、結(jié)構(gòu)方面進(jìn)行優(yōu)化。核心舉措就是引入泛化特征、優(yōu)化模型損失兩個(gè)方面。
1)泛化特征-正負(fù)反饋
在模型當(dāng)中去考慮引入負(fù)反饋特征方便捕捉“負(fù)反饋模式”;其次通過(guò)行為數(shù)據(jù)來(lái)捕捉用戶長(zhǎng)信、復(fù)購(gòu)意圖等多個(gè)興趣周期變化。
以商家品類ID做Query,從行為檢索出相同品類商家,再進(jìn)行興趣建模。結(jié)合外賣LBS、就餐特點(diǎn)設(shè)計(jì)Distance(即用戶和商家舉例小于KM)、Mealtime(早中晚餐)和Tag_id三種路徑檢索,從用戶歷史行為檢索出和當(dāng)前訪問最相關(guān)的行為,精確刻畫當(dāng)下偏好。
2)新穎商家預(yù)估糾偏
糾偏算是我們策略文章當(dāng)中的老朋友了,之前的文章也有描述通過(guò)【保序回歸】對(duì)點(diǎn)擊率糾偏的案例。雖然訓(xùn)練得到的DNN模型的準(zhǔn)確率比較接近,但是對(duì)于特定新穎性樣本,必然存在預(yù)估明顯偏低估的問題。因此在設(shè)計(jì)新優(yōu)化目標(biāo)的時(shí)候,保證預(yù)估準(zhǔn)確率不變,是的模型達(dá)到局部最優(yōu)偏向新穎性商家預(yù)估分比較高的狀態(tài),這樣可以在不損失UV_RPM的前提下提高新穎商家曝光。
在現(xiàn)有交叉熵?fù)p失下,結(jié)合商家在曝光、點(diǎn)擊、下單的行為差異引入公式2損失糾偏,在UV_RPM持平的情況下,新穎性+1.95%。
4. 混排個(gè)性化排序和動(dòng)態(tài)插卡
1)新穎意圖預(yù)估
構(gòu)建新穎性預(yù)估模型,模型網(wǎng)絡(luò)抽象多行為特征交叉信息,預(yù)估當(dāng)前場(chǎng)景即時(shí)性意圖,滿足不同用戶下新穎商家瀏覽消費(fèi)需求。
模型思路:首先,Lable采用的是用戶當(dāng)前請(qǐng)求下是否點(diǎn)擊新穎商家,驗(yàn)證“曝光新穎性”指標(biāo)合理性。其次,模型特征上除了用戶統(tǒng)計(jì)特征、上下文場(chǎng)景,引入完單新穎商家占比、新穎商家曝光點(diǎn)擊等額圖特征,損失函數(shù)交叉熵?fù)p失。最后,兼顧性能,使用了簡(jiǎn)單MLP網(wǎng)絡(luò)線上服務(wù)來(lái)降低耗時(shí),線上UV_RPM持平,用戶曝光新穎性+2.28%。
2)新穎商家個(gè)性化排序
核心思想:通過(guò)ES算法針對(duì)pCTR、pCXR等效率指標(biāo)建設(shè)個(gè)性化超參,擾動(dòng)神經(jīng)網(wǎng)絡(luò)參數(shù),收集用戶反饋計(jì)算Reward去確定模型參數(shù)更新的方向和比例,輸出排序參數(shù)用用對(duì)應(yīng)的請(qǐng)求,實(shí)現(xiàn)個(gè)性化排序策略。a * cxr + b* 新穎商家曝光占比,既提升新穎商家曝光占比指標(biāo),又能盡可能減少對(duì)列表UV_RPM的順勢(shì)。
首先,引入優(yōu)勢(shì)函數(shù)V(s, a) = Q(s, a) – V(s),原本的動(dòng)作狀態(tài)價(jià)值Q(s, a)的基礎(chǔ)上,減去Batch內(nèi)Reward的均值,使模型學(xué)習(xí)到動(dòng)作相較于平均而言帶來(lái)的優(yōu)勢(shì)V(s, a),進(jìn)一步為解決Batch內(nèi)均值無(wú)法消除人群狀態(tài)價(jià)值偏差的問題。
其次,通過(guò)決策樹模型也篩選出新穎度相關(guān)的一些用戶場(chǎng)景特征、新穎性特征、歷史行為特征等等。
最后,選擇有經(jīng)驗(yàn)但是結(jié)構(gòu)簡(jiǎn)單的MLP網(wǎng)絡(luò),使得ES模型決策Action變得逐步穩(wěn)定。
3)新穎商家動(dòng)態(tài)插卡
在模型選擇上,選擇了強(qiáng)化學(xué)習(xí)方案,一方面基于監(jiān)督學(xué)習(xí)的ML算法可以通過(guò)你和用戶歷史數(shù)據(jù)來(lái)預(yù)估效果,但是缺點(diǎn)也是無(wú)法捕捉客戶嘗新、復(fù)購(gòu)意圖;另一方面,監(jiān)督學(xué)習(xí)基于貪心策略給出單次結(jié)果最優(yōu),無(wú)法關(guān)注長(zhǎng)期收益變化。而結(jié)合不同狀態(tài)決策不同動(dòng)作,建模累計(jì)收益,有效推進(jìn)E&E,建設(shè)動(dòng)態(tài)插卡。
簡(jiǎn)化建模問題:在UV_RPM、流量占比、用戶體驗(yàn)的約束下,通過(guò)決策哪些位置放入新穎商家,以最大化用戶新穎性。其中效率約束表示插卡前后列表GMV降幅不高于P,流量約束表示整體新穎商家曝光占比,不高于某個(gè)閾值以避免極端問題。
其次,引入多臂老虎機(jī)(MAB)問題,所有插入新穎性商家的位置,都希望列表RPM期望最大,所以基于這個(gè)目標(biāo)去對(duì)新商家E&E,最小化列表?yè)p失。
在這里美團(tuán)選擇了Thompson方案:利用Beta你和用戶在每個(gè)位置的新穎、費(fèi)新穎商家的完單期望值,對(duì)用戶RPM的收益最大方式,來(lái)決定當(dāng)前位置是否插入新商家。Thompson采樣通過(guò)Beta分布維護(hù)當(dāng)前位置新穎+非新穎商家完單期望值。
結(jié)合歷史數(shù)據(jù)擬合用戶偏好,期望值下的新穎+非新穎商家完單Beta期分布,新穎商家更大期望在當(dāng)前位置插入新穎商家,同時(shí)躲避賭博機(jī)的思想根據(jù)用戶反饋擬合位置的偏好。
同時(shí)為了解決Thompson泛化不足的問題,通過(guò)D3QN模型決策當(dāng)前用戶可插入新穎位置,輸出N維的Multi-hot vector,State考慮用戶和商家的歷史特征、列表信息,獎(jiǎng)勵(lì)函數(shù)考慮完單金額、曝光新穎等用戶體驗(yàn)。最終線上UV_RPM跌幅不超過(guò)0.5%的情況下,新穎度增加8%。
5. 交互推薦優(yōu)化選購(gòu)體驗(yàn)
交互式推薦是一種實(shí)時(shí)推薦產(chǎn)品模塊,主要利用用戶的實(shí)時(shí)行為、以實(shí)時(shí)互動(dòng)的方式進(jìn)行推薦:用戶從首頁(yè)Feed進(jìn)入商家詳情頁(yè)并退出之后,動(dòng)態(tài)地插入新的內(nèi)容到推薦列表中。優(yōu)勢(shì)在于能夠?qū)崟r(shí)感知用戶行為并判斷用戶意圖,進(jìn)而動(dòng)態(tài)插卡反饋,增強(qiáng)用戶交互體驗(yàn)、新穎感受。在不損失UV_RPM基礎(chǔ)上進(jìn)一步提升用戶新穎性+1.20%。
本文由 @策略產(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ù)。
感興趣策略產(chǎn)品相關(guān)知識(shí)可以關(guān)注作者主業(yè)