美團外賣推薦智能流量分發(fā)的實踐與探索

1. 引言
2. 問題與挑戰(zhàn)
3. 情境化智能流量分發(fā)
3.1 情境化長序列檢索
3.2 情境化多專家網(wǎng)絡(luò)
4. 總結(jié)和展望
1. 引言
美團外賣推薦服務(wù)了數(shù)億用戶,通過持續(xù)優(yōu)化用戶體驗和流量分發(fā)精準性,為用戶提供品質(zhì)生活,“幫大家吃得更好,生活更好”。對于“用戶”,大家可能會有不同的理解,通常的理解是用戶即是自然人。業(yè)界主要的推薦場景,如淘寶首頁猜你喜歡、抖音快手 Feeds 流推薦等大部分也是這么認為的,在這些電商、短視頻等業(yè)務(wù)中,用戶無論何時何地使用推薦服務(wù),他們的需求是大體統(tǒng)一的,商品、信息、視頻等供給也是一致的。
2. 問題與挑戰(zhàn)
面對以上這種三維模式,模型設(shè)計是非常棘手的。以往的模型設(shè)計,比如用戶興趣建模,或者樸素的多層神經(jīng)網(wǎng)絡(luò)無法應(yīng)對這些復(fù)雜的用戶、時間和地理環(huán)境糾纏在一起的情況。用戶興趣建模通常采用連續(xù)建模方法,通過注意力機制提取重要行為偏好信息。但是在用戶行為豐富的情況下,模型很難對所有行為進行學(xué)習(xí),并且在外賣場景只有一部分歷史行為與用戶的當次訪問高度相關(guān),連續(xù)的行為建模會削弱相關(guān)部分的信號。
此外,樸素的多層神經(jīng)網(wǎng)絡(luò)基于全部情境下的數(shù)據(jù)和標簽進行訓(xùn)練,只能學(xué)習(xí)到整體的數(shù)據(jù)分布表現(xiàn),在每個情境下很難達到最佳效果。針對這一問題,阿里 SIM4首先考慮了把行為中的重要相關(guān)信息搜索出來進行建模的方式,但他們所要解決的問題在于降低用戶超長序列建模的離在線資源消耗,并沒有在模型中引入情境特點;螞蟻 ASEM216、騰訊 CSRec17等通過模型自動化選擇不同場景專家網(wǎng)絡(luò)進行共享或獨立學(xué)習(xí)提升全場景或者多任務(wù)模型表現(xiàn),但是這些工作都只專注于單一維度情境,并沒有做更廣泛的拓展。
針對無限細分的用戶情境以及情境的不斷拓展和演化,為解決以上挑戰(zhàn),我們提出“情境細分+統(tǒng)一模型”(Segmented and Unified Model)的建模思路。情境細分針對用戶特定情境進行針對性建模提升推薦精準度,統(tǒng)一模型將多個相近用戶情境進行知識共享和遷移解決情境拓展和演化的問題。
具體來說,依據(jù) Cube 中的每個情境,可以從用戶歷史行為中檢索出與當次訪問最相關(guān)的行為,精確刻畫當前情境下的用戶偏好。此外,我們設(shè)計多個專家網(wǎng)絡(luò),讓各個專家專注于學(xué)習(xí)細分情境下的數(shù)據(jù)分布,然后基于用戶、城市、時段、是否周末等情境強相關(guān)特征來進行專家的挑選,不同情境可以學(xué)習(xí)到是否共享某個專家或者學(xué)習(xí)到與眾不同的專家選擇分布。對于新用戶或者行為不夠豐富的用戶,借鑒 Cube 的概念,可以考慮從 Cube 中檢索出近似情境,并根據(jù)近似情境檢索出的行為作為用戶在當前情境下的興趣補充,同時對于情境化專家網(wǎng)絡(luò),通過模型設(shè)計讓不同專家專注于自己情境的同時,針對本情境,利用其他情境知識進行知識遷移,這樣緩解了新用戶冷啟動問題以及可能存在的數(shù)據(jù)稀疏問題。
3. 情境化智能流量分發(fā)
該模型通過 Cube 檢索出特定細分情境下的用戶行為進行序列建模,并且通過專家網(wǎng)絡(luò)模型自動化對不同情境參數(shù)進行學(xué)習(xí),保持了模型統(tǒng)一,既能刻畫情境的獨特性,也能實現(xiàn)不同情境間的知識共享和遷移。具體的,在用戶行為序列建模上,首先仔細考慮了細粒度行為特征對于外賣商家推薦的重要作用,并以此為基礎(chǔ),根據(jù)時間、空間場景對用戶序列進行長序列多路情境檢索;對于專家網(wǎng)絡(luò)結(jié)構(gòu),則先針對不同入口情境建立基于 Attention 機制的多入口情境建模,隨后探索了情境化稠密 MMOE 和稀疏 MMOE 模型,發(fā)現(xiàn)在外賣場景中,專家網(wǎng)絡(luò)可以學(xué)習(xí)到不同情境、不同任務(wù)的差別,進而提升模型精度。
-
UV_RPM = 實付交易額(GMV)/曝光人數(shù)*1000 -
UV_CXR = 交易用戶數(shù)/曝光人數(shù) -
PV_CTR = 點擊次數(shù)/曝光次數(shù) -
曝光新穎性 = (A -(A∩B))/ A,該用戶當前 session 內(nèi)曝光的商家集合為 A,該用戶 7 天內(nèi)所有 session 中曝光過的商家集合為 B -
首購訂單占比 = 商家新用戶的訂單數(shù)/總訂單數(shù)
3.1 情境化長序列檢索
基于深度學(xué)習(xí)的方法在 CTR 預(yù)估任務(wù)中取得了巨大成功。早期,大多數(shù)工作使用深度神經(jīng)網(wǎng)絡(luò)來捕獲來自不同領(lǐng)域的特征之間的交互,以便工程師可以擺脫枯燥的特征工程工作。最近,我們稱之為用戶興趣模型的一系列工作,專注于從歷史行為中學(xué)習(xí)潛在用戶興趣的表示,使用不同的神經(jīng)網(wǎng)絡(luò)架構(gòu),如 CNN、RNN、Transformer 和 Capsule 等。DIN1強調(diào)用戶興趣是多樣的,并引入了注意力機制來捕捉用戶對不同目標商品的不同興趣。DIEN2指出,歷史行為之間的時間關(guān)系對于建模用戶的興趣漂移很重要,并設(shè)計了一個帶有輔助損失的 GRU 興趣提取層。
但是,對于美團外賣,基于以上連續(xù)建模的方法,難以從用戶歷史行為中提取出與用戶的當次訪問情境高度相關(guān)的有效信息。MIMN3表明在用戶興趣模型中考慮長期歷史行為序列可以顯著提高模型的性能。但是較長的用戶行為序列包含大量噪聲,同時極大地增加了在線服務(wù)系統(tǒng)的延遲和存儲負擔(dān)。針對上述問題,SIM4提出把行為中的重要相關(guān)信息搜索出來。具體來說,在拿到需要被預(yù)估的商品信息后,可以像信息檢索一樣,對用戶行為商品構(gòu)建一個快速查詢的索引。待預(yù)估商品的信息可以當做是一個 Query,從用戶的所有行為中,查詢與其相關(guān)的行為子序列。
3.1.1 細粒度行為特征
不同于電商中的商品推薦形式,美團外賣推薦是以商家為主體,用戶從進入商家到最終下單過程中具有更加豐富的細粒度行為,通過捕捉用戶在商家中的細粒度行為,可以精細感知到用戶差異化偏好,如注重品質(zhì)商家的用戶會更多查看商家/商品描述和評論,而折扣敏感度高的用戶則會查看折扣信息、領(lǐng)取優(yōu)惠券等。
工業(yè)實踐中,用戶行為序列特征往往包含商家/商品 ID、品類、價格等商家/商品表示特征,而在行為表示上除了用戶到商家的點擊之外,用戶通過什么頁面進入到商家點菜頁、用戶在商家點菜頁中的細粒度行為,同樣可以反映用戶的偏好。因此,可以對用戶從瀏覽商家到最終下單整個流程進行歸納分析,捕捉用戶最細膩的行為并納入模型,充分學(xué)習(xí)用戶在外賣場景中重要的、最細粒度的行為及其所代表的意圖偏好。
我們將用戶從瀏覽商家到成單商品的全流程抽取出 70 種不同的 Micro-Behavior,總結(jié)歸納出四大步驟:定位商家、考察商家、挑選商品、結(jié)算提單。在歸納不同意圖的 Micro-Behavior 時,綜合考慮了該意圖下 Micro-Behavior 的日均 PV、當日轉(zhuǎn)化率、行為跳轉(zhuǎn)路徑以及頁面展示信息,并剔除了日均 PV 覆蓋率小于 1%的 Micro-Behavior,將相同意圖的行為聚合到一起作為特征表示(比如評價 Tab 點擊、評價標簽點擊和用戶評價縮略圖點擊聚合成“查看評論”意圖表示),最終抽象出 12 種不同意圖的 Micro-Behavior,用來捕捉用戶更深層次、更細粒度的興趣?;谟脩?Micro-Behavior 提煉出從進入商家到最終下單流程如下圖 4 所示:
-
定位商家是指用戶進入商家的入口標識,它可以反映出用戶對該商家感興趣的原因;比如從搜索結(jié)果頁進入代表用戶是有較強的購買意愿,相比推薦結(jié)果頁進店用戶有更加清晰的意圖。 -
考察商家的行為則包括點擊了解商家詳情、查看商品評論和查看商家折扣,它可以幫助更好的理解用戶的關(guān)注點,學(xué)生群體可能更注重折扣,而家庭用戶可能更加關(guān)注商家質(zhì)量。 -
挑選商品意味著用戶對商家的滿意度達標了,其中,點擊商品和加購商品能夠體現(xiàn)出用戶對商家不同的感興趣程度。 -
結(jié)算提單則表示該商家能滿足用戶當前狀況下的需求,既包含了對商家的認可,也包含對商家中商品的滿意,收藏與分享更是表示出用戶對商家的高度欣賞。
分別在用戶實時(短周期行為)、歷史(長周期行為)商家序列中引入 Micro-Behavior 信息。如下表所示,離線實驗數(shù)據(jù)表明,引入的 Micro-Behavior 信息取得了比較明顯的提升。最終,細粒度行為特征在線取得了 UV_RPM+1.77%,PV_CTR+1.05%的收益。
-
商家序列輸入只有第一列商家信息時,Attention 權(quán)重主要由商家 ID、商家 Tag、商家名等信息決定,“一膳牛蹺腳牛肉”和“鴻鵠一品蹺腳牛肉”商家名、商家 Tag 都較為相似因而權(quán)重最大。 -
商家序列輸入在商家信息基礎(chǔ)上分別增加定位商家、考察商家、挑選商品的豐富行為后,根據(jù)右側(cè)相應(yīng)每個 Micro-Behavior 的 Attention 權(quán)重大小可以看到,定位商家這列中搜索進入商家權(quán)重最大,而列表頁進入(首頁 Feed 進入)權(quán)重相對較小,符合業(yè)務(wù)認知;考察商家這列行為中,查看折扣(折扣點擊)和查看評論(評論標簽點擊)表示用戶在篩選商家,其 Attention 權(quán)重遠大于了解商家(店鋪摘要下拉)等泛意圖點擊;挑選商品中的加購點擊(加購商品)、搜索商品(搜索商品點擊)行為能展現(xiàn)出用戶的成單意圖,由于該部分信息的豐富,候選商家排名提升至第 6 位。
3.1.2 長序列多路情境檢索
美團外賣上線至今,已經(jīng)積累了豐富的用戶行為數(shù)據(jù)。將如此豐富的行為信息引入到模型中,是近期工業(yè)界和學(xué)術(shù)界的熱門方向,我們在該方向上也進行了一系列探索。
最初,我們直接將近三年的點擊行為直接引入到模型中來,發(fā)現(xiàn)離線效果提升顯著,但是帶來的訓(xùn)練和推理的壓力不可承受。在此基礎(chǔ)上,借鑒了 SIM4,將候選商家的品類 ID 當作 Query,先從用戶的行為序列中檢索出相同品類的商家,再進行興趣建模,離線取得了不錯的收益。
具體的,嘗試過使用二級品類和葉子品類來分別做檢索,在檢索后根據(jù)分位點進行最大長度截斷的情況下,二級品類檢索出來的序列平均長度大約為 X,而葉子品類因為品類劃分過細,檢索出來的序列平均長度大幅減少。根據(jù)離線實驗評估,最終選擇了使用二級品類進行檢索,在離線取得了 CXR GAUC+0.30pp 的效果。對于檢索條件中,像二級品類和葉子品類這種泛化性與精確性之間的 trade off,我們目前正在進行更進一步的探索。
為了進一步提升模型的效果,考慮到用戶興趣建模從 DIN 發(fā)展到 SIM,都是根據(jù)候選商家、商品的屬性,從用戶的行為歷史中提取對該候選商家、商品的興趣,這在傳統(tǒng)電商場景下是行的通的,因為用戶對某一商家、商品的興趣基本不會隨著他所處位置、所處時段改變(用戶要買手機殼,不會因為他在家還是在公司有改變,也不會因為他的購物時段是在早上還是晚上而改變)。但是餐飲外賣相較于傳統(tǒng)電商,正如前面的問題與挑戰(zhàn)中提到的,其鮮明的 LBS 和餐飲文化特色構(gòu)成多種多樣的情境,用戶在不同的情境下對于不同的商家、商品的偏好是不一樣的,是會變化的。因此,除了建模品類偏好外,還要進一步建模用戶的地理位置偏好和時段偏好。
-
對于地理位置偏好的建模,嘗試了使用用戶當前所處地理位置的 geohash(一種地理位置編碼,詳見維基百科)/aor_id(蜂窩 ID)作為 Query 來檢索用戶歷史行為中相同 geohash/aor_id 的商家,也根據(jù)業(yè)務(wù)經(jīng)驗,直接從用戶的歷史行為中將到用戶當前請求位置的距離小于 C 公里的商家全部檢索出來,檢索后序列的平均長度如下表所示,根據(jù)離線實驗評估,最終選擇 distance<C km 檢索來建模用戶的地理位置偏好。公里數(shù) C 這個參數(shù)是根據(jù)業(yè)務(wù)經(jīng)驗統(tǒng)計得到的超參,考慮到不同的用戶對于距離的容忍度可能是不一樣的,如何對不同的用戶在不同的情境下對該超參進行調(diào)整,還在積極探索中。 對于時段偏好的建模嘗試了兩種檢索方式:從用戶的歷史行為中,將與當前請求的 meal_time(根據(jù)業(yè)務(wù)將一天劃分為早餐、午餐、下午茶、晚餐和夜宵)或 hour_of_day(行為小時時段)相同的商家檢索出來。meal_time 劃分的粒度更粗,檢索出來的商家更多,從下表中也可以看到其離線結(jié)果更好,成為了建模時段偏好的最終選擇。很明顯,meal_time 檢索和 hour_of_day 檢索也存在泛化性與精確性之間的 trade off 問題。

最終,在離線取得了 CTR GAUC+0.30pp,CXR GAUC+0.52pp 的收益,在線上取得了 UV_CXR+0.87%,UV_RPM+0.70%,PV_CTR+0.70%,首購訂單占比+1.29%的收益。可以注意到上述長序列的引入,不僅帶來了效率的提升,還帶來了新穎性的提升,分析發(fā)現(xiàn)通過建模用戶更長期的興趣,擴展了模型的視野,不再集中于用戶的短期興趣,能更好地滿足用戶口味“短聚集,長多樣”的特性。
在后續(xù)的數(shù)據(jù)探查中,基于樣本維度統(tǒng)計了二級品類 ID 檢索序列、meal_time 檢索序列和 distance<C km 檢索序列的重合度情況。從下表可以看到,三者各自檢索出的商家重合度確實非常的低,符合建模不同偏好的預(yù)期,也解釋了為何三個序列疊加后,效果還是有增長的原因。

然而,當前三路檢索合并的版本,雖然可以對用戶的品類偏好、地理位置偏好和時段偏好進行有效的建模,但還是存在兩個比較明顯的缺陷。首先,各路檢索序列中還是存在冗余信息,并且需要分別建模三個序列,帶來的性能壓力較大。其次,將情境割裂成一個個單獨的維度進行建模,無法建模他們之間的聯(lián)系,更真實準確的情況應(yīng)該是對用戶所處情境的不同維度進行統(tǒng)一建模。針對這兩個問題,我們正在情境 Cube 的概念下,開展通過一個序列統(tǒng)一建模用戶所處情境偏好的探索工作。
下文繼續(xù)介紹長序列工程優(yōu)化實踐。長序列模型會為線上服務(wù)帶來一系列工程挑戰(zhàn),序列長度變長極大增加了服務(wù)時數(shù)據(jù)傳輸成本與模型推理成本,需要針對這兩個方面做專門優(yōu)化。
-
數(shù)據(jù)傳輸優(yōu)化:重復(fù)檢索信息壓縮。以 tag_id 檢索為例,由于方案中采用的是較為粗的品類劃分,tag_id 本身數(shù)量是非常有限,一次請求 batch 內(nèi)候選商家所對應(yīng)的 tag_id 具有非常多的重復(fù)?;谝陨戏治觯谕徽埱髢?nèi)檢索時,只保留不重復(fù)的 tag_id 子序列特征,最終將整體傳輸數(shù)據(jù)壓縮為之前的 1/7 左右,優(yōu)化效果十分明顯。
-
模型推理優(yōu)化:
-
1)Embedding 從內(nèi)存轉(zhuǎn)移到 GPU 顯存存儲。在模型計算模塊,會根據(jù)模型輸入特征在 CPU 哈希表中查詢 Embedding,查詢優(yōu)化的核心是解決 CPU 哈希表查詢效率低的問題,查詢效率低主要是哈希沖突多,查詢線程少造成的。為從根本上解決以上問題,我們將 CPU 哈希表升級為 GPU 哈希表,將模型 Embedding 從內(nèi)存轉(zhuǎn)移到 GPU 顯存存儲,并直接在 GPU 上進行查詢操作。GPU 哈希表做了數(shù)據(jù)重排等優(yōu)化,大量降低了哈希沖突時的數(shù)據(jù)探測次數(shù),且利用 GPU 提供的更多線程,在發(fā)生哈希沖突時能夠做到更快查詢。壓測表明,通過以上優(yōu)化,可以利用更短的時間處理更多的查詢,查詢問題得到有效解決。 -
2)用戶序列計算圖折疊。長序列模塊的加入,給線上計算帶來了巨大壓力,因此考慮對線上計算圖進行優(yōu)化。由于一次請求中,在 Batch 內(nèi)部,用戶部分序列輸入都是一致的,原始計算圖對用戶序列做投影時,會產(chǎn)生大量重復(fù)冗余計算?;谶@一點,我們在請求模型服務(wù)時將用戶側(cè)序列的 id 查詢模塊以及投影計算在計算圖中進行折疊,如圖 8 所示,把用戶側(cè)特征 batch size 先縮小至 1,只計算一次,然后與候選商家計算 attention 時再進行展開,通過計算圖折疊,極大減小了線上序列部分帶來的巨大計算開銷。
3.2 情境化多專家網(wǎng)絡(luò)
大部分工業(yè)界的 CTR 預(yù)估模型遵循傳統(tǒng) Embedding&MLP 范式,將用戶興趣向量、商家/商品表征和其他特征作為輸入,通過樸素的多層神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)特征、樣本、標簽之間的關(guān)系。另有學(xué)術(shù)界一些熟知的工作如 PNN5、DeepFM6、xDeepFM7、DCN8等方法,都在努力建模特征間共現(xiàn)關(guān)系、特征的特異性、特征的層次結(jié)構(gòu)關(guān)系、樣本之間的關(guān)系等信息,并且在公開數(shù)據(jù)集和部分特定工業(yè)場景下取得顯著效果。而在 NLP 領(lǐng)域,2018 年 10 月,Google 發(fā)布 BERT9模型,刷新了 11 個 NLP 任務(wù)的最好水平,由此開啟了 NLP“大煉模型”時代,引爆了業(yè)界的研究熱潮。
專家混合(Mixture of Experts, MOE)模型被證明是通往容量更大、性能更強大的機器學(xué)習(xí)模型的有效途徑。MOE 是基于分而治之的原則建立的,其中問題空間在幾個神經(jīng)網(wǎng)絡(luò)專家之間劃分,由門控網(wǎng)絡(luò)進行監(jiān)督。在 MOE 基礎(chǔ)上,MMOE10提出一種新穎的多任務(wù)學(xué)習(xí)方法,在所有任務(wù)中共享專家子模型,使 MOE 結(jié)構(gòu)適應(yīng)多任務(wù)學(xué)習(xí),在 Google 的大規(guī)模內(nèi)容推薦系統(tǒng)取得顯著收益。
3.2.1 多入口情境建模
美團外賣涵蓋多個推薦入口,包括首頁 Feed(主要流量入口),以及美食“金剛”、甜點“金剛”、夜宵“金剛”、下午茶等子頻道。對于不同入口情境建模存在以下挑戰(zhàn):
-
各個推薦入口在流量大小、用戶行為豐富程度、商家曝光量存在明顯差異,多個小入口的數(shù)據(jù)量不足首頁 Feed 的 10%,導(dǎo)致樣本積累量有限,難以使用這些數(shù)據(jù)訓(xùn)練出高精度的模型。 -
用戶在各個入口下的行為存在互斥關(guān)系。例如,用戶不會在同一時刻在不同頻道同時下單,因此簡單地將每個入口看作一個任務(wù)作為學(xué)習(xí)目標的傳統(tǒng)多任務(wù)建模范式,難以取得較好的模型精度。 -
為滿足用戶的體驗,不同頻道會有相應(yīng)的品類規(guī)則、時段規(guī)則、以及特殊的業(yè)務(wù)扶持規(guī)則,這使得各頻道推薦入口間有不同程度的差異與共性。不同推薦入口在用戶與商家兩方面存在交集的同時,在用戶行為、商家分布等方面也存在不小差異,比如首頁 Feed 會包含全部商家品類,甜點飲品主要包含奶茶、咖啡、甜點等品類商家。因此,模型如何建模出各頻道間的共性與差異性,同時動態(tài)地建模各個頻道間的關(guān)系變得尤為重要。
-
為了使每個入口對應(yīng)的 Expert 可以充分建模私有的表達,在模型訓(xùn)練和推理時,對于入口 i 的樣本或請求,根據(jù)入口 ID 激活其對應(yīng) Expert Di,該 Expert 產(chǎn)生的輸出將 Xi 將直接輸入到任務(wù)對應(yīng)的 Tower 當中。 -
對于一個入口的樣本或請求,在保證該入口的 Expert 一定會被激活的情況下,以一定概率去激活其它入口的 Expert,并對這些 Expert 的輸出做 Pooling 抽取,從而有效地利用到其它入口的知識。很顯然,入口間的相似程度、同一樣本對不同入口知識的依賴程度都是不同的,為此增加了一個 Query-Key Attention 模塊去做動態(tài)概率激活。如圖 9 中 Domain Extract 模塊所示,對入口 i 的樣本或請求,將其自身的 Expert 的輸出 Xi 作為 Query,而將其在其它入口 Expert 的輸出作為 Key,Query 和 Key 間的相似性 Attention 得分即為對應(yīng) Expert 的激活概率,使用經(jīng)過 Softmax 歸一化后的激活概率對各個 Expert 的輸出做加權(quán)聚合得到表征 Xagg,該表征也將輸入給預(yù)估任務(wù)對應(yīng)的 Tower。
離線實驗上,我們采用全入口數(shù)據(jù)混合訓(xùn)練+入口 ID 特征的模型作為基線,嘗試了 Multi-Task(為各個入口分別設(shè)置一個預(yù)估任務(wù))、MMOE、STAR11等方法。由于用戶在外賣各入口的消費行為存在互斥關(guān)系,且小入口的行為樣本較為稀疏,因此直接采用多任務(wù)的方式效果較差,而引入 MMOE 會有一定的提升。與此同時,對比阿里的 STAR,該方法中各個入口擁有自己的獨立網(wǎng)絡(luò)參數(shù),但未能捕獲各個入口間的關(guān)系,在外賣推薦場景中提升有限。相比之下,AutoAdapt 在主入口和小的入口上都實現(xiàn)了較大的提升。

3.2.2 情境化稠密 MMOE
專家網(wǎng)絡(luò)是情境化建模的主要手段之一,模型可以根據(jù)不同情境自動選擇需要激活的參數(shù)參與推理達到整體更高的精度水平。我們發(fā)現(xiàn)在 Share-Bottom CTR/CXR 多目標結(jié)構(gòu)基礎(chǔ)上,引入 MMOE 結(jié)構(gòu)可以帶來顯著的離線 CTR/CXR AUC 收益(如下表所示),可以發(fā)現(xiàn)當 Experts 數(shù)量達到 64 時,CTR GAUC 和 CXR GAUC 分別有 0.3pp 與 0.4pp 左右的提升。
引入大數(shù)量級 Experts 的 MMOE 結(jié)構(gòu)可帶來較顯著的離線收益,但同時也會相應(yīng)帶來離線訓(xùn)練以及線上服務(wù)成本的增加,需要做效果與效率之間的權(quán)衡。我們在保持一定離線訓(xùn)練時長與在線 Latency 約束下,選擇了 4Experts MMOE 版本作為新的基線模型,并做詳細的探索,進行較為細致的優(yōu)化,包括:
-
引入殘差連接:受 Switch Transformer12啟發(fā),引入 embedding layer 與 Experts 輸出層之間的殘差連接,用來緩解梯度消失,離線 CXR GAUC+0.1pp。 -
MMOE 的 Gate 優(yōu)化:嘗試在 MMOE 的 Gate 的 embedding layer 中只輸入時段、城市等強情境特征(即基于情境來為每個任務(wù)選擇 Expert),并在實驗中發(fā)現(xiàn)相較于在 Gate 中使用所有特征,這種只用場景強相關(guān)特征來構(gòu)建 Gate 的方式反而會取得一定離線 GAUC 提升,離線 CXR GAUC+0.1pp。 -
非線形激活:多項 NLP 工作如 B Zoph13、Chen14等指出,采用非線形激活可以進一步提升大規(guī)模模型效果,我們利用 Gelu 替換 leaky relu 激活函數(shù),離線 CXR GAUC+0.11pp。
最終,情境化稠密 MMOE 在線取得了 UV_RPM+0.75%,PV_CTR+0.89%,曝光新穎性+1.51%的收益。
3.2.3 情境化稀疏 MMOE
在探索得到稠密 MMOE 最優(yōu)版本之后,我們開始對稀疏 MMOE 模型進行探索。借鑒 Google 提出的 Sparse Expert Model,如 Switch Transformer 等,我們采用 Top K MMOE 方法進行嘗試。其核心思想在于,每條樣本根據(jù) Gate 的計算結(jié)果,從所有 N 個 Experts 的輸出中只選取 K 個(K<<N)進行后續(xù)計算。下表實驗結(jié)果表明,采用 32Experts 對比 4Experts 在不同入口離線指標均有明顯提升,同時 Top K MMOE(32Experts 選 4)與 FLOPs 相同 MMOE 4Experts 相比在不同入口都具有明顯的優(yōu)勢,效果接近 MMOE 32experts。
4. 總結(jié)和展望
得益于 Cube 概念,我們可以持續(xù)探索更多情境,以及優(yōu)化該情境下的冷啟動問題。例如用戶處于異地時,可以通過比較情景 Cube 的相似性,找到近似情景下有較成熟行為的用戶,并將其興趣偏好及其行為遷移過來(實現(xiàn)中為每個情景建立一個活躍用戶池),達到緩解冷啟動階段用戶體驗差的問題。
5. 本文作者
6. 參考文獻
[3] Pi Q, Bian W, Zhou G, et al. Practice on long sequential user behavior modeling for click-through rate prediction. SIGKDD 2019.
[4] Pi Q, Zhou G, Zhang Y, et al. Search-based user interest modeling with lifelong sequential behavior data for click-through rate prediction. CIKM 2020.
[5] Qu Y, Cai H, Ren K, et al. Product-based neural networks for user response prediction. ICDM 2016.
[6] Guo H, Tang R, Ye Y, et al. DeepFM: a factorization-machine based neural network for CTR prediction. arXiv:1703.04247, 2017.
[7] Jianxun Lian, et al. xdeepfm: Combining explicit and implicit feature interactions for recommender systems. KDD 2018.
[8] Wang R, Shivanna R, Cheng D, et al. Dcn v2: Improved deep & cross network and practical lessons for web-scale learning to rank systems. WWW 2021.
[9] Devlin J, Chang M W, Lee K, et al. Bert: Pre-training of deep bidirectional transformers for language understanding. arXiv:1810.04805, 2018.
[10] Ma J, Zhao Z, Yi X, et al. Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-experts. KDD 2018.
[11] Sheng X R, Zhao L, Zhou G, et al. One model to serve all: Star topology adaptive recommender for multi-domain ctr prediction. CIKM 2021.
[12] Fedus W, Zoph B, Shazeer N. Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity. arXiv:2101.03961, 2021.
[13] Zoph B, Bello I, Kumar S, et al. Designing effective sparse expert models. arXiv 2202.08906, 2022.
[14] Chen Z, Deng H Wu Y, Gu Q. Towards Understanding Mixture of Experts in Deep Learning. arXiv:2208.02813, 2022.
[15] Zhou M, Ding Z, Tang J, et al. Micro behaviors: A new perspective in e-commerce recommender systems. WSDM 2018.
[16] Zou X, Hu Z, Zhao Y, et al. Automatic Expert Selection for Multi-Scenario and Multi-Task Search. SIGIR 2022.
推薦閱讀:
不是你需要中臺,而是一名合格的架構(gòu)師(附各大廠中臺建設(shè)PPT)
企業(yè)IT技術(shù)架構(gòu)規(guī)劃方案
論數(shù)字化轉(zhuǎn)型——轉(zhuǎn)什么,如何轉(zhuǎn)?
