推薦多任務 2023 最新進展:用戶生命周期視角下的多任務推薦模型 STAN

一、業務背景
本文工作是從業務出發提出的一項創新性工作,首先來介紹一下業務背景。

圖中所示是常見的 Shopee 雙列流 feed,用戶點擊一個直播后,會進入全屏沉浸流,產生消費時長,同時也可以點擊購買商品,產生消費下單。
該路徑下的用戶會經歷幾個階段:
- 新用戶階段,訂單與時長都較低。
- 后續在平臺進行閑逛,時長增加,訂單轉化仍較低,對于此部分用戶,不適合推薦雜亂的直播間,而更適合推薦優質商品的、能夠讓人沉浸的直播間,會讓用戶逛得更久。
- 對于平臺的忠誠用戶,其 CVR 轉化較高,但其目標明確,時長可能會相應減少,對于此部分用戶,適合推薦簡單易轉化的商品。

因此,不同用戶群體對不同任務指標的偏好相差較大,通過數據分析,我們發現 CTR、停留時長、CVR 任務的用戶群分布類似于冪律分布。對于不同階段的用戶,CTR、停留時長、CVR 等分布也不同,新用戶的 CTR、停留時長等分布較為靠后。因此,我們觀測到不同任務指標的偏好與用戶當前的狀態密切相關,且用戶狀態會隨時間而變。
二、關鍵問題

我們從數據分析中提煉出了如下的關鍵問題:現有方法中在多任務優化時,對所有用戶一視同仁,會導致優化蹺蹺板現象。因此問題核心是要準確追蹤用戶狀態,才能同時提高 CTR、時長和訂單指標。對此問題進行拆解,可以得到如下三個子問題:如何識別用戶狀態,如何追蹤用戶狀態信息以及如何結合用戶狀態優化多任務模型。
三、解決方案:STAN

針對以上問題,我們提出了 STAN 這一解決方案。STAN 網絡如上圖所示,分為幾個部分:右側是傳統的 MMoE 的模型結構,是 PLE 模型;左側是對用戶信息建模,用戶信息會反映在 loss 上,對 loss 進行調整。
1、霧里看花:如何識別用戶狀態?

首先,第一個問題是如何識別用戶狀態。我們使用了用戶特征抽取網絡建立特征間的交互關系,通過 Attention 網絡結構,針對特定任務生成含有用戶傾向信息的用戶表征。在此之上構建 loss,Label 為用戶是否點擊、購買等。這里沒有 Item 側信息,Label 的平均估計為用戶對 CTR、CVR、時長等的偏好。
2、撥云見日:如何準確追蹤用戶狀態?

通過對用戶每個目標的預估值,就能夠大概知道用戶處于哪個狀態,同時針對每個用戶,我們引入了用戶自適應的 Beta 分布對用戶傾向的預測值重采樣。Beta分布在用戶數據較少情況下置信度低,此時預估值較為不準確,需要引入重采樣校正方法校正產出預估值,從而降低極端數據影響。
3、登堂入室:如何結合用戶狀態,優化多任務模型?

最后是結合用戶狀態,優化多任務模型。多任務模型的優化部分會疊加本身多任務模型 loss 與用戶狀態 loss,同時訓練,同步迭代。
四、離線效果
1、離線效果:理解性實驗

首先,我們進行了理解性試驗,驗證離線效果。
如何驗證本文方法能否識別用戶狀態呢?我們對比了同一組用戶在不同模型的表征。如上圖所示,STAN 模型對于 Wander、Stick、Loyal 用戶分群下的表示比 PLE 區分度更大。該圖是對用戶 Emb 降維到二維空間構建的,PLE、STAN 模型用的用戶 Emb 是通過 userid 抽取得到的。
另一個問題是,本文方法能否準確追蹤用戶狀態?我們對比了同一組用戶在不同日期的狀態,如上圖右下角的圖中所示,五星表示用戶,Day 1 用戶處于 New 的狀態,Day 31 則變為 Wander 和 Stick 狀態,說明本方法能夠自適應地追蹤用戶狀態的變遷。
2、離線效果:Shopee Dataset

我們采用工業數據集對效果進行了驗證,為了方便對比,我們使用了三周的數據進行訓練,一周的數據進行測試。評估指標是 AUC,NDCG@1。在圖中的 PLE 模型中,我們添加了 stage 的標識,固定了 2 個 stage,任務準確率有一定提升。在增加自適應 stage 后,準確率有所提升,但模型波動較大。加入 Beta 重采樣后,準確率穩中有升,模型更加穩定。
3、離線效果:Public Dataset

我們在公開數據集:微信視頻號數據集上進行了驗證,其中有三個目標:點贊、點 up 主頭像、轉發,評估指標是 AUC,NDCG@5,其中 NDCG@5 是該數據集中的公開對比指標。從圖中可以看出,實驗效果與 Shopee 數據集表現類似。
五、工作價值

我們將此工作在線上進行了驗證,base 是 PLE 模型,實驗組增加了 STAN 模型。實驗效果 CTR+3.94%,staytime+3.05%,order+0.88%,每個指標都有所增長。其中 order 增長較小,是因為 Shopee 平臺上的 order 量還比較小,相應的用戶群也較小,因此提升稍弱一些。
本文的工作已被 Recsys’23 接收。
六、結論展望

總結來說,我們應當重視推薦系統中用戶的生命周期;在多任務學習中需要顯式建模用戶生命周期;同時我們需要立足于線上真實分布的數據,深挖技術突破點。
未來,我們會在每一層的推薦候選中結合用戶生命周期進行細粒度調整;同時也希望創新方法可以落地,業務也需要進行持續創新。




























