Metapath-guided Heterogeneous Graph Neural Network for Intent Recommendation 個人總結
寫在前面:爲方便閱讀,儘量使用中文總結,對於翻譯無把握或專有詞彙,在中文後附上原文字段.
另,CSDN對markdown 導入、latex支持還有進步空間啊,最完整的體驗勞請移步GitHub拉下來再用Typora打開?(無恥引流開始了):my github
0. 原作信息
@inproceedings{fan2019metapath, title={Metapath-guided Heterogeneous Graph Neural Network for Intent Recommendation}, author={Fan, Shaohua and Zhu, Junxiong and Han, Xiaotian and Shi, Chuan and Hu, Linmei and Ma, Biyu and Li, Yongliang}, booktitle={Proceedings of the 25th ACM SIGKDD International Conference on Knowledge Discovery \& Data Mining}, pages={2478--2486}, year={2019} }
1. Contributions 本文貢獻
-
提出基於詞嵌入的預處理(propose a uniform term embedding mechanism);
-
爲意圖推薦任務,設計基於異構圖上metapath的模型MEIRec( design a metapath-guided heterogeneous Graph Neural Network to learn the embeddings of objects);
-
線下、線上實驗都證明了模型的有效性。
2. Backgrounds 背景信息
2.1 意圖推薦 (e-commerce intent recommendation)
例子:
-
輸入數據類型:
-
特徵數據 attribute data
-
交互數據 interaction data
-
-
與傳統推薦系統的區別:
-
加入交互數據(點擊等)
-
不需要用戶輸入字段(基於字段輸入的聯想推薦如,輸入“小米”,系統給出“小米10Pro”等)
-
以圖的結構建模:
注意,此HIN的邊上無特徵,只是不同關係的劃分。
總的來說,意圖推薦任務可使用更多類別的數據,同時要求更加個性化的推薦。
2.2 Metapath相關定義
-
Metapath定義:簡單理解,在異構圖中不同類型節點遍歷的一條路徑,如(User-Item-Query)
-
Metapath-guided Neighbors: 以上圖爲例,對於Metapath UIQ 上節點,它的鄰居爲:
3. MEIRec Model 建模
3.1 Overview 概覽
任務:輸入(User, Item, Query) 的圖結構數據;輸出User最可能的Query(意圖推薦)
3.2 Uniform Term Embedding
實質(what):預處理。將原始輸入處理爲合理的特徵向量作爲網絡的輸入。
-
面對問題(why):輸入的Query或Item作爲一個整體特徵👉大量高維、稀疏特徵,參數過多不利於學習。
-
解決方案(how):分詞降維 + Embedding提取特徵
-
例子:輸入Query“LV Hand Bags",分詞後得到terms{'LV','Hand','Bag'}
-
分詞使用阿里內部工具
-
Embedding:聚合每個term的embedding得到原始輸入的embedding
-
-
3.3 Metapath-guided HeGNN
-
基於對任務的理解,先驗的定義MetaPath。
-
-
本層任務:聚合metapath上鄰居節點的信息。
本文針對兩種Metapath:QIU、IUQ建模,即本層最後輸出的分別是,
接下來以User Modeling爲例,說明如何產生。
以圖中上方的藍框爲例,對於用戶在Metapath上有一階鄰居,二階鄰居。
-
收集其對應鄰居的embedding信息,
在論文中試驗後,表示性能最好
-
再收集其對應鄰居的embedding信息,
因用戶查詢或點擊商品是線性時間上發生的, 此處使用LSTM
-
最後聚合得到真正的
3.4 Optimization Objective 優化對象
-
將graph embedding、static features連接後輸入MLP做預測
-
損失函數設計
4. Experiment
數據集:10天的淘寶內部數據,億級節點數,千萬級邊數。
分別嘗試使用1天、3天、5天的數據量 訓練、測試
線下測試結果:
-
較baseline(GBDT+MP/DW)提升:2.1%~4.3%
-
和無使用異構信息的模型對比,證明引入異構信息是work的
-
模型伸縮性好,可用於大規模數據集
-
對於不同類型的鄰居,應比對、選擇合適的aggregation function,如模型中由先驗分析+實驗驗證,對 選擇了LSTM
-
模型性能、訓練時長和鄰居數量有關,前期呈正相關。
線上AB測試:比現有GBDT在各項指標小有增幅。
-1. One more thing
對於個人建模的思考:
-
淘寶數據:
-
沒有使用邊上特徵
-
Intuitively,淘寶的圖更稠密,每個用戶都有一定的歷史數據積累,相對交易支付數據等沒那麼稀疏
-
圖結構抽象很清晰,有效的分爲{user, item, query}三部
-
-
metapath的選取在此作中基於對業務的瞭解,先驗知識。