當前位置:編程學習大全網 - 源碼下載 - 推薦系統論文閱讀(二十)-阿裏媽媽基於用戶長序列歷史行為的推薦SIM

推薦系統論文閱讀(二十)-阿裏媽媽基於用戶長序列歷史行為的推薦SIM

論文:

論文題目:《Search-based User Interest Modeling with Lifelong Sequential Behavior Data for Click-Through Rate Prediction》

地址: https://arxiv.org/pdf/2006.05639.pdf

這是阿裏媽媽發表在2020SIGIR上面的又壹篇佳作,讓我們來閱讀壹下這篇論文吧。

在CTR/CVR預估領域中,用戶歷史行為對CTR/CVR預估的建模是很有指導意義的,用戶的歷史行為序列中潛藏著用戶豐富的”興趣點“,用戶的每壹次行為都是某個方面興趣的壹種反應。比如我喜歡各種口紅產品、喜歡洗面奶、但是又對某個牌子不是特別感興趣,基於這些興趣的驅動,我可能瀏覽、點擊過很多相關領域的內容或商品,那這些歷史行為是否對我未來行為的預測有幫助呢,答案是肯定的。正是基於上述這種主觀的行為模式,我們才需要對用戶的歷史行為進行建模,用戶行為隊列越長,包含的用戶興趣也就越豐富,但是同樣也會帶來更大的挑戰,其實用戶的興趣是發散的多元的,如何從發散多元的用戶興趣中找到真正對當前任務有幫助的興趣是十分重要的。

在介紹這篇論文之前建議先去看壹下阿裏的另壹篇論文MIMN,也是基於用戶長序列進行CTR預估的論文,但是MIMN存在著幾個問題,壹個是因為,當用戶行為序列的長度進壹步增加(例如,增加10倍或比十倍更多)時,MIMN無法精確捕獲給定特定候選項的用戶興趣。另壹個是因為,MIMN不能很好的解決延時和存儲這兩個瓶頸上的棘手問題,也就是說部署到線上到時候如何才能做到延時跟其他輕量模型相近。

在淘寶中,用戶的瀏覽序列長度可能達到上千甚至上萬個,怎麽高效且有效的利用這種長序列信息呢?阿裏媽媽提出了SIM模型來進壹步從用戶豐富的長期歷史行為隊列中挖掘用戶有價值的興趣點,並且提供壹種長行為序列線上服務化的可行性方案,接下來就來看看這篇論文吧。

模型總覽:

SIM分為兩個階段,這兩個階段都有自己的核心部分,文章中將長序列用戶行為特征的建模分為了兩個模塊,即Genral Search Unit(GSU)和Exact Search Unit(ESU),這兩部分就是兩個階段的核心模塊了。先簡單的介紹下這兩個模塊的作用吧。GSU如圖所示,簡單理解就是從幾百上千的用戶長序列中挑選出TopK個跟候選Item最相似的K個Item,類比與推薦系統中的召回模塊,先降低長序列物品的長度,在進行後續任務。另壹個是ESU,這個模塊的作用是對剛剛GSU抽取出來對K個物品進行序列建模,得到壹個能代表用戶長序列興趣對向量,並利用這個向量進行後面對排序。

GSU的主要任務是從長度為T的序列中抽取出K個跟候選item相似的item,GSU有兩種方式來選取TopK個物品,分別是hard-search 和soft-search。前面也提到了GSU類比於推薦系統中的召回階段,而在多路召回中,壹般也有基於Embedding的召回和基於策略規則的召回,其中hard-search就是基於規則的召回,soft-search就是基於Embedding的召回,下面來詳細講壹下這兩種方法。

這種方法比較直觀而且實施起來比較簡單,就是我們從候選行為序列中按照給定規則篩選出與當前目標任務相關的候選集,舉個例子,我在淘寶上歷史瀏覽過很不同種類的商品(比如電子產品、口紅、男鞋等等),當候選廣告是iphone12時,hard-search方法會從我歷史行為隊列中篩選出電子產品相關的行為進行建模,用於PCTR預估,而口紅、男鞋大概率就不會對這次預估產生影響,通過上面這個例子大家應該能明白這種基於規則和策略的思路。論文中指出hard-search方法使用的是商品類別作為篩選的標準。

這種方法是基於Embedding的抽取方式,從上面的模型圖的左側可以看到整個soft-search的結構。這個部分也是壹個子模型,模型的輸入是候選Item和長序列,目標是CTR預估,用這種方式來學習候選Item和長序列Item的embedding信息。有了Embedding後,就可以將候選廣告embedding和歷史行為中的embedding算壹個內積相似度,利用近似最近鄰檢索方法(論文中用的是ALSH)來得到topK相關的候選行為序列。

在這個子model中,DNN的輸入是候選item? 和Ur的concat,其中Ur:

註意,如果用戶行為增長到壹定程度,則不可能將整個用戶行為直接輸入模型。 在這種情況下,可以從長序列用戶行為中隨機采樣子序列集,這些行為仍需遵循原始序列的相同分布。

這種方法的缺點就是計算開銷比較大,不如基於規則的hard-search方便,優點就是效果應該會更好壹些。但是論文中也提到了兩種方法在效果上的差異不是特別的大,所以最後基於性能和效果的折中,采用了hard-search這種比較簡單的方式。

從模型整體上來看,這部分主要是利用從GSU抽取出來的K個Item得到壹個能代表用戶長期興趣的向量,並配合其他特征送的DNN裏面做整體的CTR預估任務。

論文中對這K個來自GSU對item是用self-attention進行序列建模的:

其中 為:

concat中第壹個是原始的embedding,第二個是關於時間的embedding。

根據self-attention的方式,我們又得到了壹個向量h(K)。

這裏,第二個子model也進行了ctr預估,特征是模型圖上面畫出來 input,還有個dien,dien前面的文章以及介紹過了,就不再贅述。

最後的loss是:

其中α和β是控制損耗權重的超參數。 在我們的實驗中,如果GSU使用軟搜索模型,則將α和β都設置為1。具有硬搜索模型的GSU是非參數的,並且α設置為0。

廣告推薦系統對線上的計算耗時要求還是比較嚴格的,因為要保證用戶最基本的用戶體驗。隨著用戶行為序列的進壹步增長,采用傳統的方式直接對長序列用戶行為進行計算耗時和內存占用會增長的特別快,所以需要有針對性的對線上系統進行壹定的升級和改造。文章提到在hard-search和soft-search的選擇中,是基於大量的離線實驗結果最終決定采用hard-search這種方便快捷有效的方式,同時信息損失也在可以接受的範圍內。

壹般的線上部署的系統架構圖是這樣:

為了讓SIM能更好的給用戶帶來低延時的體驗,阿裏構建了SIM的Online Seving結構:

可以看到對於用戶的行為序列,論文采用的是對每個用戶采用的是兩層索引的結構:key-key-value,第壹個key是user_id,第二個key是category ids,value是用戶行為序列中屬於對應類別的item。用這種方式可以很快的通過這個索引樹找到屬於統壹category的物品。

線上A/B Test實驗效果:

用戶的歷史行為對於整個CTR/CVR預估任務越來越重要了,如果不考慮時間和存儲,那麽把所有的序列輸入到模型中作為長期興趣關鍵點是可以精確的定位出用戶的長期興趣的,但是由於性能的原因就不得不考慮用特殊的方法對這個長序列進行壹次篩選,篩選的K個物品都是跟候選Item相似的物品,能做到裁剪的效果還不會帶來CTR預估的損失。在進行篩選過程中還分為了兩種方法,但是為了部署到線上,就要考慮性能最好的hard-search方式進行TopK篩選任務,這種方式跟Embedding篩選的效果是差不多的,但是速度比Embedding快,所以采用這種方式。

未來應該還會有更多針對序列推薦的論文,單純的對長序列階段還帶來壹定的興趣偏差,所以如何有效挖掘用戶更豐富行為特征背後的商業價值是需要好好思考的。

  • 上一篇:圖片處理-opencv-10.圖像銳化與邊緣檢測
  • 下一篇:鏈夎懀鐨勫?嬫?х恫鍚嶅棊锛?
  • copyright 2024編程學習大全網