天天看點

AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化

作者:阿裡媽媽技術

▐ 摘要

CTR(Click-through rate)預估一直是推薦/廣告領域重要技術之一。近年來,通過統一模型來服務多個場景的預估模組化已被證明是一種有效的手段。目前多場景預估技術面臨的挑戰主要來自兩方面:1)跨場景泛化能力:尤其對稀疏場景;2)計算複雜度:線上計算和存儲資源有限情況下如何實作多場景模型建構。

針對這兩個挑戰,本文提出AdaSparse,一種通過自适應學習稀疏網絡的方法來實作多場景CTR預估模組化。該方法為每個場景學習一個子網絡結構,在計算成本增加有限的條件下,自适應平衡場景間的共性和特性,提升了模型跨場景的泛化能力。我們設計了一個輔助網絡來衡量主網絡每一層神經元對每個場景的重要度,并通過網絡裁剪技術對不重要/備援的神經元進行裁剪,最終為每個場景生成一個專屬的子網絡進行預估。此外,我們提供了一種靈活的稀疏正則方法來更好的控制網絡稀疏程度,使模型在應用上更具有靈活性。

AdaSparse已在阿裡媽媽外投廣告系統上線,支撐了多個投放業務的CTR預估,整體取得了CTR+4.63%,CPC-3.82%的效果(CPC:點選成本,越低越好) 。該工作核心部分已收錄于 CIKM2022,本文将對該方法的背景及實作進行詳細介紹,歡迎閱讀交流。

論 文:AdaSparse: Learning Adaptively Sparse Structures for Multi-Domain Click-Through Rate Prediction

下 載:https://dl.acm.org/doi/abs/10.1145/3511808.3557541

1. 背景

傳統的CTR預估模型往往是單場景的,即假設訓練樣本服從同一分布。但在工業應用中,這是個很強的假設。一方面,現實中往往面臨多個業務需要同時預估的工作。例如在阿裡媽媽外投平台,存在多個業務方如天貓/餓了麼/螞蟻等同時進行廣告投放,各業務的投放資料分布往往不同。如圖1(a)所示,不同的業務方(如B5/B2)其使用者和CTR效果差異較大,若合在一起訓練模型可能被B1和B5兩個業務主導,進而導緻其他業務效果較差。另一方面,除了不同的業務可以場景劃分依據,相同業務下某些特征也可以作為場景劃分依據,例如“不同的廣告位,使用者行為差異較大”、“相同業務不同使用者畫像,使用者行為差異也可能較大”。

如圖1(b)所示,不同廣告位下使用者和CTR分布也有類似的差異現象。為此,我們這裡定義一種“廣義”的多場景:目标行為差異較大的特征,都可以作為一種多場景劃分的依據。這也促使我們不斷探索多場景預估技術,以通過捕捉使用者在不同場景下的不同偏好來提升模型整體的效果。

AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化

圖1:(a)基于業務的場景劃分;(b) 更廣義的場景劃分;(c)多場景預估技術範式

圖1(c)顯示了多場景預估模組化的抽象範式,主要面臨兩個挑戰:1)跨場景泛化能力,為了獲得更好的效果,模型需要具備模組化場景共性知識和捕捉場景個性知識的能力,同時還需要在稀疏場景有一定的泛化能力。2)計算成本可控,實作多場景預估技術往往需要更多參數,但在工業級應用中,計算資源有限,模型需要兼顧效率和效果。是以,我們需要尋找一種多場景預估技術:統一的模型,具備優異的場景遷移能力,且線上性能可控。

近年來湧現了不少多場景預估工作,通過對特征或網絡做一些先驗設計讓場景相關特征在預估中發揮更大的作用。如圖2所示,我們挑選了其中幾個具代表性的工作,基于場景相關特征作用點的不同,歸納出了一條優化路線:場景相關特征作用從底層embedding到上層bias,再到模型核心參數,再到網絡結構。其複雜度越來越高,作用力也越來越強。具體地,如圖2所示,SAML[12]最開始對底層特征embedding做兩套,一套用于場景共享,一套是場景特有;SAR-NET[13]則對模型中間層的表征做場景共性和特性的平衡操作。這類方法對場景資訊的使用是偏底層的,但随着網絡層數增加,加之與其他特征的互相作用,最終場景特征對預估産生多少影響是無法确定的。

是以,為了讓場景相關特征發揮更大作用,出現了兩個方向的思路:a) 資訊離目标越近可能作用越強:将場景相關特征也作用在網絡上層,誕生如BiasNet,PPNET的工作;b) 直接作用于網絡中的核心參數上,如參數矩陣、Normlization的參數等。在實際應用中,有時會将兩個方向的方法做結合,比如STAR[5],既有上層Bias也有核心參數上做場景共性和特性的平衡。這些方法一定程度上解決了場景共性和特性的平衡,但針對稀疏場景的解決可能不足,尤其通過特征劃分的廣義場景很容易達到成千上萬量級,稀疏場景會較多。于是後面出現了一些基于核心參數場景自适應生成的方法(如M2M[11]、APG[8]),我們的方法主要聚焦這一類,并作用于網絡結構。

圖2(右)展示了多場景自适應參數生成方法的常見模組化範式,這類方法通過設計輔助網絡以場景相關特征作為輸入,輸出場景相關的參數作用于主模型。這類方法容易實作跨場景知識的遷移,同時因對主網絡每一層都有作用,場景相關特征對預估的影響也較強,随之而來的挑戰是參數爆炸問題,這給模型收斂和存儲都帶來了困難。是以,我們需要尋找一種方法既可以保持準确度,又能減少參數量。

AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化

圖2:多場景預估模型技術演進及多場景自适應參數生成模組化方法

我們借鑒了網絡壓縮的技術來實作上述目标。網絡壓縮技術包括網絡裁剪、矩陣低秩分解、知識蒸餾等方法,我們主要采用網絡裁剪技術(Network Pruning)[3,4,10]。網絡裁剪技術認為神經網絡中參數往往是備援的,從原大模型中能夠找到一個準确度不弱于原模型的子網絡,通過合理的裁剪便可以得到這個子網絡。AdaSparse則是将網絡裁剪技術和多場景參數生成技術結合,為每個場景尋找一個子網絡,各子網絡重疊和不重疊部分可視為學習場景的共性和特性。

為兼顧參數量和效果,AdaSparse将裁剪粒度定為神經元級,為此我們提供了一種場景相關的神經元級的權重因子方法:輔助網絡以場景相關特征做輸入,為主網絡每一層神經元輸出權重因子來衡量該神經元在該場景中的重要度。通過裁剪備援/不重要的神經元,最終為每個場景學習到一個專屬的子網絡。由于神經元的數量遠遠小于模型參數(連接配接邊),AdaSparse確定了較低的計算複雜度。

2. AdaSparse

AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化

2.1 模型概覽

AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化
AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化
AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化

基于權重因子的不同生成方式,我們進一步細分為三種方法,分别是二值法(Bianarization)、縮放法(Scaling)、二者混合(Fusion)的方法,後續我們将詳細介紹這三種方法。此外,AdaSparse對于每一層的常數項走單獨的場景BiasNet來生成,因為不想限制常量bias的取值範圍。同時,為了加速收斂,Pruner子產品梯度反向傳播時停止對場景相關特征的更新,即場景相關特征的參數更新還是來源于主網絡。

AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化

圖3:AdaSparse模組化流程圖

2.2 場景自适應Pruner

AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化
AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化
AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化
AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化
  • 縮放法(Scaling)。該方法動機為相同的特征對不同的場景有不同的作用,我們希望作用越大的資訊權重越大。Scaling方法不做神經元裁剪,而是用一種“軟裁剪”方式讓備援/噪音資訊對預估結果影響較小。這裡我們設定超參對權重幅度進行限制。
  • 混合法(Fusion)為上述二種方法的優勢結合。

值得注意的是,這裡用到的門檻值函數其是一種符号函數,符号函數的特點是在斷點處不可導,其他地方導數為0,這個不适合模型反向傳播做梯度更新。事實上,對于符号函數求導問題業界解決也比較成熟,這裡推薦三種方法:a) stop gradient方法(我們線上用的該方法):前向傳播正常計算,反向傳播把這個函數屏蔽掉,保證權重正常求導;

AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化
AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化

圖4:三種權重因子實作方法

2.3 稀疏度正則

AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化

3. 實驗及效果

AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化

3.1 離線實驗

從表1(左)可知,“廣義”多場景模組化可以有效提升預估結果。由于公開資料集偏少,可以看到DCNv2效果整體弱于DNN,并且實驗中發現模型不易收斂,可以嘗試減少參數量。得益于場景相關特征對預估的增強和場景的備援/噪音資訊裁剪,AdaSparse取得了不錯的結果。表1(右)的消融實驗也可以看到,将場景的備援/噪音資訊進行個性化裁剪或權重縮放,都能取正向效果,并且二者融合有一定的效果疊加。

AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化

表1:離線實驗

3.2 進一步分析

AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化

b) 對稀疏場景的泛化: 我們對場景按照曝光數進行等頻分桶(5個),桶BIN1代表頭部場景,其訓練樣本較豐富,BIN5代表長尾場景,其樣本較稀疏。圖5(b)顯示所有的方法在頭部domain上提效都更顯著,但在長尾domains上AdaSparse有一定的優勢,顯示了AdaSparse對稀疏場景有不錯的泛化能力。

c) 場景數與效果: 我們通過逐漸增加場景劃分的特征,看場景數與模型效果的關系,如圖5(c)顯示效果随着domain數量增加呈現先增加後降低的現象。該實驗說明并非場景劃分越多越好,需要一定經驗來來設定合理的場景劃分。

d) 稀疏度與效果: 圖5(d)顯示了不同稀疏度控制下效果的變化,可以看到效果随着稀疏度增加先提升後減少。注意到稀疏度為[0.35,0.4]時效果和Base DNN差不多,這也間接證明模型确實有備援資訊,裁剪備援資訊有潛在的提效空間。

AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化

圖5:進一步分析

3.3 線上實驗

AdaSparse: 自适應稀疏網絡的多場景CTR預估模組化

4.總結與展望

本文分享的多場景CTR預估技術AdaSparse,其結合網絡裁剪技術為每個場景自适應學習一個子網絡來進行CTR預估,方法簡單輕量級,也取得了不錯的線上效果。在實踐中,我們進一步發現輔助網絡傾向于被大場景主導,未來我們将進一步探索更有效的緩解場景稀疏的問題,同時小場景對大場景的輔助也是值得探索的方向。

5. Reference

[1] Paul Covington, Jay Adams, and Emre Sargin. 2016. Deep neural networks for youtube recommendations. In Proceedings of the 10th ACM conference on recommender systems. 191–198.

[2] Ruining He and Julian McAuley. 2016. Ups and downs: Modeling the visual evolution of fashion trends with one-class collaborative filtering. In proceedings of the 25th international conference on world wide web. 507–517.

[3] Zhuang Liu, Jianguo Li, Zhiqiang Shen, Gao Huang, Shoumeng Yan, and Changshui Zhang. 2017. Learning efficient convolutional networks through network slimming. In Proceedings of the IEEE international conference on computer vision. 2736–2744.

[4] Jian-Hao Luo and Jianxin Wu. 2020. Autopruner: An end-to-end trainable filter pruning method for efficient deep model inference. Pattern Recognition 107 (2020), 107461.

[5] Xiang-Rong Sheng, Liqin Zhao, Guorui Zhou, Xinyao Ding, Binding Dai, Qiang Luo, Siran Yang, Jingshan Lv, Chi Zhang, Hongbo Deng, et al. 2021. One Model to Serve All: Star Topology Adaptive Recommender for Multi-Domain CTR Prediction. In Proceedings of the 30th ACM International Conference on Information & Knowledge Management. 4104–4113.

[6] RuoxiWang, Rakesh Shivanna, Derek Cheng, Sagar Jain, Dong Lin, Lichan Hong, and Ed Chi. 2021. DCN V2: Improved deep & cross network and practical lessons for web-scale learning to rank systems. In Proceedings of the Web Conference 2021. 1785–1797.

[7] Penghui Wei, Weimin Zhang, Zixuan Xu, Shaoguo Liu, Kuang-chih Lee, and Bo Zheng. 2021. AutoHERI: Automated Hierarchical Representation Integration for Post-Click Conversion Rate Estimation. In Proceedings of the 30th ACM International Conference on Information & Knowledge Management. 3528–3532.

[8] Bencheng Yan, Pengjie Wang, Kai Zhang, Feng Li, Jian Xu, and Bo Zheng. 2022. APG: Adaptive Parameter Generation Network for Click-Through Rate Prediction. arXiv preprint arXiv:2203.16218 (2022).

[9] Runsheng Yu, Yu Gong, Xu He, Bo An, Yu Zhu, Qingwen Liu, and Wenwu Ou. 2020. Personalized adaptive meta learning for cold-start user preference prediction. arXiv preprint arXiv:2012.11842 (2020). [10] Michael Zhu and Suyog Gupta. 2017. To prune, or not to prune: exploring the efficacy of pruning for model compression. arXiv preprint arXiv:1710.01878 (2017).

[11] Qianqian Zhang, Xinru Liao, Quan Liu, Jian Xu, and Bo Zheng. 2022. Leaving No One Behind: A Multi-Scenario Multi-Task Meta Learning Approach for Advertiser Modeling. arXiv preprint arXiv:2201.06814 (2022).

[12] Yuting Chen, Yanshi Wang, Yabo Ni, An-Xiang Zeng, and Lanfen Lin. 2020. Scenario-aware and Mutual-based approach for Multi-scenario Recommendation in E-Commerce. In 2020 International Conference on Data Mining Workshops (ICDMW). IEEE, 127–135.

[13] Qijie Shen, Wanjie Tao, Jing Zhang, Hong Wen, Zulong Chen, and Quan Lu. 2021. SAR-Net: A Scenario-Aware Ranking Network for Personalized Fair Recommendation in Hundreds of Travel Scenarios. In Proceedings of the 30th ACM International Conference on Information & Knowledge Management. 4094–4103.

[14] Christos Louizos, Max Welling, and Diederik P Kingma. 2017. Learning sparse neural networks through _0 regularization. arXiv preprint arXiv:1712.01312 (2017)

繼續閱讀