多任務多場景問題解決方案與實踐

1 多任務多場景問題概述

1.1 背景介紹

面向 C 端用戶提供服務的應用,特別是業務範圍廣、規模大的,普遍存在多任務多場景問題,多任務,也稱多目標,是綜合衡量用戶體驗的多個指標,如搜推算法場景中常見的點擊率、轉化率、收藏率等;多場景,用戶可以在多個場景內表達不同興趣,產生多種不同的行爲模式,如激發興趣的推薦 Feed 流場景,滿足需求的搜索場景等。多任務多場景給算法系統的優化帶來了諸多挑戰。

多場景:不同場景的用戶行爲以及物料供給可能存在差異,如果每個場景都訓練一個單獨的模型,成本會比較高,且後續迭代效率堪憂,同時會暴露信息繭房的問題,多個場景的數據信息很難互通;而如果考慮多個場景統一建模,又可能因爲多個場景的用戶行爲以及流量分佈等無法對齊,導致統一模型無法對多個場景數據學習充分,進而造成場景之間的蹺蹺板現象(即某場景因流量或樣本的優勢,主導模型效果,導致其他場景效果受影響),同樣的問題也可能發生在多任務之間。

多任務:不同任務 / 目標之間同樣存在樣本空間的差異,比如 CTR 和 CVR,兩個目標之間存在依賴性,而且通常 CVR 任務的稀疏性要強於 CTR 任務。類似的數據不平衡問題,容易導致排序模型在訓練與線上推理階段的樣本空間不一致問題,從而影響模型效果。

1.2 多任務問題解決方案

從 Shared-Bottom 到 MMoE[1],再到 PLE[2] 算法,是解決多任務 / 目標問題的重要演進路徑之一。

Shared-Bottom 是多個目標共享底層網絡,每個任務在共享網絡之上構建獨立的網絡結構,其優點是淺層參數共享,能夠起到任務之間的補充學習,對有相關性的多目標學習較友好,當多個目標之間沒有相關性時,可能會影響模型結果。MoE[3] 爲解決這個問題,提出了利用一組專家網絡和一個門控網絡對共享網絡的輸出加權組合的思路,一定程度上緩解了不相關任務聯合學習效果不佳的問題,MMoE 則是在 MoE 的基礎上,豐富了門控網絡的應用,不同任務對專家網絡的輸出進行不同的權重組合。共享網絡 + 獨立網絡的研究思路目前已經演進出了 PLE 這樣複雜的網絡結構(如下圖所示),一方面利用共享網絡提取多任務間的共性,另一方面利用獨立網絡捕捉任務間的各向異性,在實踐中取得了不錯的效果。

多任務的另外一條支線是以阿里的 ESMM[4] 算法爲代表的,適用於存在條件關係的多個目標之間的學習算法,比如電商場景經典的點擊率和轉化率的多目標學習,該算法同時解決了訓練和線上推理階段樣本空間不一致的問題,論文提及在實踐應用中取得了可觀的準確率提升。

1.3 多場景問題解決方案

LHUC(Learning Hidden Unit Contributions)[5] 是最初應用在語音識別領域,後又遷移到搜推等算法場景的模型。以推薦系統爲例,精排階段的模型多采用深度神經網絡,根據輸入特徵,通過隱向量表達個性化,然而在多場景的情況下,尤其是當特徵工程刻畫不夠豐富時,不同場景的不同用戶,有可能出現相同 / 相似的向量表示,從而導致模型的輸出相同 / 相近,帶來一定程度的模型坍塌。借鑑語音識別領域,爲每個 speaker 單獨調整 dense 參數可以帶來效果上的提升,推薦系統可以爲不同場景和用戶構建個性化網絡,並以動態權重的形式作用於模型,從而提升模型的表達能力。

基於動態權重的思路同樣衍生出了不少經典算法結構,如快手的 PEPNet[6],阿里的 M2M[7]、AdaSparse[8]、STAR[9] 等。

解決多任務多場景問題的算法模型多種多樣,但大多數都可以歸結爲不同的 Gating 技術的應用方式,利用門控網絡進行信息的篩選或重組。

2 業界解決方案簡述

多任務多場景問題聯合建模的業界案例也有不少,本節節選部分代表算法進行簡述。

快手 PEPNET(Parameter and Embedding Personalized Network)

PEPNet 藉助 GateNU 的門控網絡,表達個性化信息,並分別作用於 EPNet 和 PPNet,EPNet 和 PPNet 分別爲表徵個性化網絡和參數個性化網絡,分別利用門控網絡處理後的場景信息調整底層 embedding ,得到結合場景 / 任務的 embedding 向量,從而解決多場景特徵對齊 / 多任務間相互依賴的問題。

百度 MTMS(Multi-Task and Multi-Scene)[10]

快手的 PEPNet,其網絡結構採用共享底層的思路,而百度的 MTMS 則屬於拆分多塔的思路。

MTMS 基於 ESMM 的思路,在 embedding 更新,以及模型訓練方式上做了改進,損失函數也有所不同。

底部 embedding 層,ESMM 採用多任務共享 embedding 的方式,而 MTMS 爲不同場景不同任務構建了獨立的 embedding;

模型訓練階段,與 ESMM 直接端到端的訓練不同,MTMS 採用兩階段訓練方式,第一階段爲學習表示階段,多個場景、多個任務構造各自獨立的 embedding,分別訓練,直到收斂;第二階段爲 fine-tune 階段,將第一階段得到的多個任務的 embedding 進行拼接,上層疊加 MLP(更新時只更新上層 MLP 的參數)學習不同場景的不同目標;

損失函數,與 ESMM 將 CVR 作爲中間變量不同,MTMS 相對傳統,直接建模 CTR 和 CVR,同時輔助 CTCVR 損失,具體如下:

美團 HiNet(Hierarchical Information Extration Network)[11]

美團針對多場景多任務的推薦問題,在 MMoE 的基礎上,採用分層抽取信息的思路,爲模型增加跨場景傳遞信息的能力,同時保留場景和任務的特定特徵。

HiNet 主要包含以下兩個模塊:

場景抽取模塊,用於獲取場景的表徵,具體又包括了場景共享專家網絡,場景獨有專家網絡,以及場景敏感的注意力網絡 (SAN),分別刻畫場景共享信息,場景獨有信息,以及場景間的關聯信息;

任務抽取模塊,複用 MMoE 的網絡結構,多個專家網絡通過門控網絡重新組合成不同的 embedding,輸入不同的任務預測網絡。

3 轉轉的多業務多場景問題及解決實踐

3.1 問題與解決方案

轉轉自大力發展有保障的官方驗服務以來,從手機 3C 類產品,向其他數碼、電腦辦公,以及家電等多品類滲透,賣場的服務種類隨之多元化,同時以搜索、推薦爲基本能力,發散出組貨、幫選、尖貨等多種類型的業務場景,除了多場景、多任務問題之外,還伴隨着多業務的問題,即不同的業務有不同的運營方式,對應不同的物料庫,且不同種類的物料需要關注的重點也不同。下圖是節選的轉轉多個不同場景(對應存在多種業務,多個目標)的展示圖:

本節介紹多場景多任務,疊加多業務問題下,轉轉搜索系統的解決方案。

同 MTMS 算法思路相同,轉轉的搜索系統,對多任務 / 目標問題(主要包括 CTR 和 CVR)的求解也是傳統的單獨直接建模的思路。但是對多場景問題的求解,跟 MTMS 構建單獨 embedding,拆分多個獨立塔的方式有所差異,考慮到轉轉的多場景之間存在明顯的數據不平衡問題,可能會導致小場景的塔在 fine-tune 階段無法訓練充分。此外,除了多場景,轉轉還面臨多業務的問題,不同的業務背後對應不同特性的物料,若底層採用統一預訓練好的 embedding 表示,不同物料的獨有特徵可能無法充分表達。

針對轉轉的多場景多業務問題,採用 EPNET + 特徵級動態權重的網絡結構刻畫場景信息,網絡結構如下圖所示:

整個模型結構可以分成兩大模塊:表徵生成模塊與目標預測模塊,與百度 MTMS 的兩階段學習方式相仿,卻有本質上的區別,本文的模型是端到端學習的,其中表徵生成部分是多業務多場景,以及物料、用戶和 query 信息的集中表達;目標預測部分,即利用生成的表徵做 ctr(或其他任務)的預測。

表徵生成部分主要包括以下工作:

(1)場景信息通過場景對應的商品所在類目集合描述;

(2)用戶、query 與物料(包含常規特徵與獨有特徵)特徵均包含在 SparseFeatures 與 DenseFeatures 中;

(3)DomainNet 對所有特徵做處理,輸出特徵權重,作用在除場景特徵外的其他特徵上,最終集成爲全局的向量表徵。

上層的任務預測模塊複用經典的 DCN(Deep & Cross Network)[12] 結構。

該模型的上線,在轉轉搜索場景帶來了全品類點擊率 6%+,以及支付轉化率 2%+ 的提升,尤其是流量相對較小的品類上,相對漲幅超過了全品類,由此可見該模型對多業務問題的解決效果。

3.2 未來規劃

多業務多場景模型在轉轉搜索場的成功實踐,爲後續在其他目標(如 CVR)、其他算法場(如推薦系統)上的推廣應用奠定了信心與基礎,這也是未來工作的一部分。

與此同時需要注意到,該模型在兼容新增場景或物料庫新增獨有特徵時並不友好,需要解決冷啓動的問題,這可能成爲限制模型全站推廣應用的瓶頸,後續也會繼續沿着該思路進行深耕和優化。


關於作者

李光明,算法工程師,參與轉轉搜索算法、推薦算法、用戶畫像等系統的算法體系建設,在 GNN、小樣本學習、對比學習、NLP 等相關領域有實踐經驗,微信號:gmlldgm,歡迎建設性交流。

參考資料

[1]

MMoE: Modeling_Task_Relationships_in_Multi-task_Learning_with_Multi-gate_Mixture-of-Experts

[2]

PLE: Progressive_Layered_Extraction(PLE):A_Novel_Multi-task_Learning(MTL)Model_for_Personalized_Recommendations

[3]

MoE: Adaptive_Mixtures_of_Local_Experts

[4]

ESMM: _Entire_Space_Multi-Task_Model:An_Effective_Approach_for_Estimating_Post-Click_Conversion_Rate

[5]

LHUC: Learning_Hidden_Unit_Contribution_for_Unsupervised_Speaker_Adaptation_of_Neural_Network_Acoustic_Models

[6]

PEPNet: Parameter_and_Embedding_Personalized_Network_for_Infusing_with_Personalized_Prior_Information

[7]

M2M: A_Multi-Scenario_Multi-Task_Meta_Learning_Approach_for_Advertiser_Modeling

[8]

AdaSparse: Learning_Adaptively_Sparse_Structures_for_Multi-Domain_Click-Through_Rate_Prediction

[9]

STAR: _One_Model_to_Serve_All:Star_Topology_Adaptive_Recommender_for_Multi-Domain_CTR_Prediction

[10]

MTMS: Multi-Task_and_Multi-Scene_Unified_Ranking_Model_for_Online_Advertising

[11]

HiNet: Novel_Multi-Scenario&Multi-Task_Learning_with_Hierarchical_Information_Extration

[12]

DCN: Deep&Cross_Network_for_Ad_Click_Predictions

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/mA0X1GyQw0kTvCyA0zBBwA