(十九)【AAAI2021】Knowledge-Enhanced Hierarchical Graph Transformer Network for Multi-Behavior Recommend
題目: Knowledge-Enhanced Hierarchical Graph Transformer Network for Multi-Behavior Recommendation
論文鏈接:
代碼鏈接:https://github.com/akaxlh/KHGT
論文
-
時間戳放入到關系中,可以參考這篇《Heterogeneous graph transformer》 WWW 2020
和《Attention is all you need》 -
多行為的論文
《Graph-enhanced multi-task learning of multi-level transition dynamics for session-based recommendation》 2021 AAAI
《 Graph neural networks for social recommendation》
《Walkranker: A unified pairwise ranking model with multiple relations for item recommendation》《Knowledge-aware graph neural networks with label smoothness regularization for recommender systems》 KDD 2019
《Kgat: Knowledge graph attention network for recommendation》KDD 2019
《Multiplex behavioral relation learning for recommendation via memory augmented transformer
network》 SIGIR 2020 -
GNN RS:
《Knowledge-aware coupled graph neural network for social recommendation》AAAI 2021
《Neural graph collaborative filtering》2017 WWW
《Inductive representation learning on large graphs》2017 NIPS -
其它
《 Heterogeneous graph transformer》
想法
- 看題目就可以明白這里的主體是多行為(包括瀏覽,添加購物車等),所以這種框架就叫做多行為框架; 可是我的想法是,這里我們給它把這些行為也記錄下來放到KG中來學習不就可以了嗎
- 還有動態依賴關系? 添加時間模型? 如何處理多種行為的相互依賴關系!
- 本文是基于多行為圖而建立的方法
創新
創新之處就是難點解決的方法!!
(1)time-aware 上下文考慮到了用戶交互的動態特征。 方法就是用了正弦函數來計算上下文特征,信息在圖上傳播時,實體的embedding = 原實體 + 添加了time-aware的實體(4.1)
(2)multi-behavior graph transformer network和多行為相互注意編碼器既能獲得獨特的行為編碼又能考慮行為之間的依賴性(4.2);
摘要
難點:
現在都是基于單一類型的user-item交互來計算用戶的的偏好(比如交互矩陣中把所有的行為都歸納為1), 然鵝,multi-type 用戶交互行為(如瀏覽、添加購物車等)沒有被區別對待! 要解決這個問題,需要考慮三個問題: (1)多種類型的用戶交互行為的相互依賴關系 使得提取用戶特有的交互方式很困難(2)將KG-aware的item關系納入多行為推薦框架中(3)multi-typed 用戶交互的動態特征。
方法:
KHGT框架,用來探索users和items在推薦系統中多種類型的交互模式。該框架建立在基于圖的神經網絡架構上,具體的該框架有兩個任務: (1)捕獲每種行為的語義(2)明確區分哪些類型的user-item交互在輔助目標行為的預測任務中更為重要。 除此之外,我們用時空編碼策略來整合多模態注意力層,使學習能夠反映user-item和item-item的多重合作關系的嵌入,以及潛在的交互動力學。
數據集:三個真實世界的數據集
2. introduction
詳解——難點: (1) 多種類型的行為依賴的意思是: 特定類型的行為模式以一種復雜的方式相互交織,并因用戶而異,就像購買和添加購物車是相同的或者是用戶的負面評價和正面反饋是排斥的; 我們需要編碼這種user-item的異構關系! 以分層的方式捕獲復雜的內在跨類型行為依賴。 (2)KG有用(3)需要時間模型來更好地處理user-item交互的動態結構依賴關系。
過去的方法: 這些方法都是以相對獨立和局部的方式考慮多類型的交互不能捕捉高階的多重的users和items的關系。 而且怎么充分利用KG和動態的user-item沒有被考慮!
詳解——具體的方法: 提出了multi-behavior graph transformer networks進行遞歸的嵌入傳播(GCN,都知道的,遞歸傳播),以一種attentive aggregation 策略來捕獲users和items的高階行為的異構性; 為了解決行為動態性,我們則引入了time-aware 上下文; 為了編碼特定類型行為表示之間的相互依賴關系,提出了一種多行為相互注意編碼器,以成對的方式學習不同類型行為的依賴結構。最后,引入門控聚合層來區分特定類型關系嵌入對最終推薦的貢獻。
- 我們提出了一個框架KHGT,該框架在KG-aware多行為協作圖中實現高階關系的學習。
- 在KHGT的multi-behavior modeling 范式下聯合集成user和item之間的協作相似性:第一階段,求type-specific user-item interactive patterns in a time-aware 環境中,第二階段,利用注意力融合網絡編碼cross-type behavior hierarchical dependencies
3. Preliminaries
U ,I個用戶和 V,J個items
User-Item Multi-Behavior Interaction Graph.Gu=(U,V,Eu)G_u=(U,V,E_u)Gu?=(U,V,Eu?): 和原來的知識圖相比,邊變成了multi-typed的K種異構關系。 在EuE_uEu?,每條邊ei,jke_{i,j}^kei,jk?表明了在類型k下,用戶uiu_iui?對item vjv_jvj?
Knowledge-aware Item-Item Relation GraphGv=(V,Ev)G_v = (V,E_v)Gv?=(V,Ev?):包含了items的邊信息,考慮items的外部知識,描述跨items的多重依賴關系。 在GvG_vGv?中,邊ej,j′re_{j,j'}^rej,j′r?,表明兩個實體相連以及meta-relation,這里,R\mathrm{R}R表示可以從不同方面產生的一組關系,比如vjv_jvj?和vj′v_j'vj′?屬于同類別,相同的位置,或在相同的行為類型kkk和與相同的用戶交互。
Task Formulation:
輸入:上面的兩個圖
輸出: 基于kkk的目標行為類型,推斷用戶uiu_iui?和item vjv_jvj?的看不見的交互的概率yi,jy_{i,j}yi,j?
4. Methodology
自己的強制理解!
端對端的KHGT
下面是每一塊的詳解:
4.1 Attentive Heterogeneous Message Aggregation
在這個組件中,我們的目標是在一個統一的圖結構神經網絡中共同捕獲 multi-behavior user-item interactive patterns 和 item-item dependencies。
User-Item Multi-behavior Interaction Graph圖中,深藍線表示頁面瀏覽(page viewPV)、深橙色購物車(Cart)、淺橙色最喜歡(Fav)、淺藍色購買(Buy)。每條邊ei,jke_{i,j}^kei,jk?表明了在類型k下,用戶uiu_iui?對item vjv_jvj?的交互。 在圖中,統一稱用戶為uiu_iui?,物品item為vjv_jvj?!中間的一圈表示是和用戶i有關的多個items的交互!
4.1.1 Multi-Behavior Interactive Pattern Encoding.
該模塊旨在從users和他們交互的items之間的multi-behavior patterns中聚合異構信號。 為此,我們開發了一種增強全局行為上下文的消息傳遞范式下的自適應多行為自注意網絡,該網絡有三個模塊: 由時間上下文編碼、信息傳播和聚合。
Temporal Information Encoding(給聯系嵌入時間戳)
為了在時間感知場景中捕捉不同類型的user-item交互之間的影響,我們開發了一個temporal context encoding方案。具體而言,給定user uiu_iui?和item vjv_jvj?在kkk行為下的聯系Ti,jkT_{i,j}^kTi,jk?,我們將它們相應的交互時間戳ti,jkt_{i,j}^kti,jk?映射到時間縫隙為 τ(ti,jk)\tau (t_{i,j}^k)τ(ti,jk?),然后利用正弦函數進行嵌入Ti,jk∈R2d\mathrm {T}_{i,j}^k \in \mathbb{R}^{2d}Ti,jk?∈R2d生成(這是上面聯系的表示),這是由Transformer中的位置嵌入框架驅動的(可以參考這篇Heterogeneous graph transformer):
其中時間信息嵌入中的元素索引(偶數和奇數位置索引)分別表示為(2l)和(2l+1),ddd是維數。
之后呢,為了增強時間上下文的encoding的可調能力,我們在關系表示Ti,jk\mathrm {T}_{i,j}^kTi,jk?上添加一個映射層,也就是Tˉi,jk=T?Wk\bar{\mathrm{T}}_{i,j}^k = \mathrm{T} \cdot \mathrm{W}_kTˉi,jk?=T?Wk? Wk∈R2d×d\mathrm{W}_k \in \mathbb{R}^{2d \times d}Wk?∈R2d×d,下面的k表示kkk-type的交互。
Information Propagation Phase(也就是用各個source更新每個實體的過程)
在multi-behavior user-item 交互圖GuG_uGu?上,我們在source nodes(多個)和target node(單個)之間執行time-aware的信息傳播,multi-hop跳,共H跳! 用下面的圖注意力機制:
mi?jk和mj?ikm_{i\longleftarrow j}^k和m_{j\longleftarrow i}^kmi?jk?和mj?ik?表明從item vjv_jvj?到user uiu_iui?和從user uiu_iui? 到item vjv_jvj?傳播消息。 pj\mathrm{p}_jpj?表明了item embedding ej\mathrm{e}_jej?和相應的時間上下文表示Tˉi,jk\bar{\mathrm{T}}_{i,j}^kTˉi,jk?的元素相加,也就是pj=ej⊕Tˉi,jk\mathrm{p}_j = \mathrm{e}_j \oplus \bar{\mathrm{T}}_{i,j}^kpj?=ej?⊕Tˉi,jk?。 相同的操作被應用在從user side上得到信息:pi=ei⊕Tˉi,jk\mathrm{p}_i = \mathrm{e}_i \oplus \bar{\mathrm{T}}_{i,j}^kpi?=ei?⊕Tˉi,jk?。Vkh∈RhH×d\mathrm{V}_k^h\in\mathbb{R}^{\frac{h}{H} \times d}Vkh?∈RHh?×d是關于第kkk種行為類型的hhh-head投影矩陣。wi,j,khw_{i,j,k}^hwi,j,kh?, wi,i,khw_{i,i,k}^hwi,i,kh?分別表示了在構造信息pj\mathrm{p}_jpj?和pi\mathrm{p}_ipi?上的學習到的注意力傳播權重。
- wi,j,khw_{i,j,k}^hwi,j,kh?, wi,i,khw_{i,i,k}^hwi,i,kh?:
也就是k中類型下的,i對j的第h跳的權重:
其中維度要根據H跳的不同而變化! 防止內存需求過大! 其中Qkh,Kkh,Vkh\mathrm {Q}_k^h, \mathrm {K}_k^h,\mathrm {V}_k^hQkh?,Kkh?,Vkh?一般是由h跳中所有的實體組成的!這樣我們通過Qp和Kp的點擊來計算從i到j的相似度,從而確定權重的大小
其中N是鄰居實體的數量,而且是一個超參數。 如果∣Luk∣≥N\left | L_u^k \right | \ge N∣∣?Luk?∣∣?≥N,那么就該隨機從中選N個;相反,則需要全部設置為Null(也就是zero vectors)。
在本文中,N就是M
- Qkh,Kkh,Vkh\mathrm {Q}_k^h, \mathrm {K}_k^h,\mathrm {V}_k^hQkh?,Kkh?,Vkh?:
方式上同樣是添加映射函數! 這里的M是H跳中實體的限制數量。
要在消息傳遞過程中跨不同行為類型合并全局上下文,我們就要在多通道參數學習框架中學習基于注意力的變換矩陣Qkh,Kkh,Vkh\mathrm {Q}_k^h, \mathrm {K}_k^h,\mathrm {V}_k^hQkh?,Kkh?,Vkh?,具體來說,我們設計了一個由M個參數通道組成的基本轉換范式。 也就是Qˉkh,Kˉkh,Vˉkh(m=1,...M)\bar{\mathrm {Q}}_k^h, \bar{\mathrm {K}}_k^h,\bar{\mathrm {V}}_k^h(m=1,...M)Qˉ?kh?,Kˉkh?,Vˉkh?(m=1,...M)。他們對應于MMM個潛在的映射子空間(添加權重),這也反應了跨不同類型的通用行為上下文的不同方面。 形式上,type-specific的轉換過程是通過gating mechanism執行的:
Information Aggregation Phase(散出去了后再聚過來)
基于構造的傳播消息mi?jk和mj?ikm_{i\longleftarrow j}^k和m_{j\longleftarrow i}^kmi?jk?和mj?ik?,我們通過求和操作對相鄰信息進行聚合:
4.1.2 Information Aggregation for Item-side Relations
item-item圖中也是上面相似的做法!所以 我們通過注意聚合來融合來自item-item相互依賴的異質信號:
4.2 Behavior Hierarchical Dependency Modeling(可以理解上面的只是單純的用GCN初始化,這里才是添加行為類型)
在我們的多行為推薦場景中,不同類型的用戶行為以一種復雜和分層的方式相互交互。為了應對這一挑戰,出現了兩個問題:(一)我們如何有效地保持不同類型行為之間的相互關系;(二)如何促進不同類型特定行為表現之間的協作來增強最終的表示。
4.2.1 Type-wise Behavior Mutual Relation Encoder
我們的相互的關系encoder是基于按比例縮小的dot-product注意力更新的,通過學習成對的type-wise的相關性分數λk,k′i,h\lambda _{k,k'}^{i,h}λk,k′i,h?,這個可以被表示為:
4.2.2 Cross-Type Behavioral Pattern Fusion
接下來,我們建議通過研究個體在預測用戶交互的目標類型中的重要性,從而融合學習到的type-specific behavior representations,我們使用gated fusion mechanism來進行結論性的表示Φj\Phi_jΦj?:
上面的ηjk和ξjr\eta _j^k和\xi _j^rηjk?和ξjr?是kkk-th類型的user-item交互表示q~ik\tilde{q}_i^kq~?ik?和r類型的item-item 關系表示q~jr\tilde{q}_j^rq~?jr?的重要性分數。 它們可以通過下面來得到:
4.3 High-order Multi-Behavior Pattern Propagation.
基于已定義的信息傳播和聚合函數,我們在圖神經網絡中捕獲了多行為上下文(用戶-物品交互圖GuG_uGu?)下的高階協作關系。從第(l)層到第(l+ 1)層的更新過程為(Φj(l)∈Rd\mathbf{\Phi} _j^{(l)} \in \mathbb{R}^dΦj(l)?∈Rd):
Propagate(·)是信息傳播函數,它從user-item交互(在EuE_uEu?)和item-item依賴(在EvE_vEv?)中提取有用的特性。Aggregate(·)表示信息融合函數。最后的嵌入經過不同順序的表示總結為:Φj=Φj(1)⊕...⊕Φj(L)\Phi _j = \Phi _j^{(1)} \oplus ... \oplus \Phi _j^{(L )}Φj?=Φj(1)?⊕...⊕Φj(L)?
4.4 The Learning Phase of KHGT
在為user和item生成結論性表示Φi\Phi _iΦi?和Φj\Phi _jΦj?之后,用戶i和item j的在目標行為下交互概率可以被推斷為Pri,j=z?×(Φi⊙Φj)P_{r_{i,j}} = \mathrm{z}^{\top } \times \left(\mathbf{\Phi}_{i} \odot \mathbf{\Phi}_{j}\right)Pri,j??=z?×(Φi?⊙Φj?)。 為了進行模型優化,我們的目標是最小化以下邊際成對損失函數:
實際上,我們會為每個用戶隨機S積極的items vp1,vp2,…,vpsv_{p_{1}}, v_{p_{2}}, \ldots, v_{p_{s}}vp1??,vp2??,…,vps??和S個消極的items vn1,vn2,…,vnsv_{n_{1}}, v_{n_{2}}, \ldots, v_{n_{s}}vn1??,vn2??,…,vns??,除此之外,Θ\ThetaΘ表示了可訓練的參數的集合,λ\lambdaλ是為正則項的權重。
4.5 Sub-graph Sampling for Large-Scale Data
圖神經結構的一個關鍵挑戰是在full-batch模式下對整個圖進行信息聚合,這將消耗巨大的內存和計算成本。為了使KHGT具有處理大規模數據的能力,我們在graphGuG_uGu?和GvG_vGv?上開發了一種基于隨機游走的子圖采樣算法,并在采樣過程中根據GGG的鄰接矩陣中提取的節點相關性來維護一個權值向量。
4.6 Model Complexity Analysis.
我們的KHGTKHGTKHGT花費了O(K×(I+J)×d2)O(K× (I+J)×d^2)O(K×(I+J)×d2)來計算Q,K,L\mathbf{Q,K,L}Q,K,L變換,和O(∣E∣×d)O(|E| ×d)O(∣E∣×d)用于信息聚合。對于type-wise modeling,最重要的計算來自O(K×(I+J)×d2)O(K×(I+J)×d^2)O(K×(I+J)×d2)轉換。總的來說,我們的KHGT可以達到與GNN-based的多行為推薦方法相當的時間復雜度。此外,與最有效的GCN模型相比,KHGT的中間結果需要適度的額外內存。
5. Evaluation
本節回答了以下研究問題:
- RQ1:與各種最先進的推薦系統相比,KHGT的表現?
- RQ2:不同設計的模塊和捕獲的關系結構對模型性能的貢獻是什么?
- RQ3:在我們的異構聚合器中,KHGT如何與不同類型的行為集成工作?
- RQ4:與具有代表性的競爭對手相比,KHGT在不同的交互稀疏水平上的表現性?
- RQ5: KHGT如何執行不同的參數設置(例如,潛在維度和GNN深度)?
- RQ6:我們的KHGT的解釋能力在捕獲跨類型行為的相互依賴關系?
Experimental Settings
數據集:
評測指標: Normalized Discounted Cumulative Gain (NDCG@k)and Hit Ratio(HR@k)
Methods for Comparison.
傳統的矩陣分解方法:
- BiasMF
Autoencoder-based協同過濾:
AutoRec
CDAE
神經網絡增強協同過濾:
DMF
NCF
神經自回歸推薦方法:
NADE
CF-UIcA
圖神經網絡協同過濾:
ST-GCN
NGCF
多行為模式推薦。
NMTR
DIPN
NGCFMNGCF_MNGCFM?
MATN
MBGCN
Knowledge-aware推薦方法。
KGAT
Parameter Settings
Performance Validation (RQ1)
這種表現差異可以歸因于對多類型行為相互依賴關系的聯合探索和潛在的知識感知項目協作信號。
這說明聚合多重行為模式在設計的交互編碼功能中具有積極的作用。此外,基于gnn的神經網絡方法優于自編碼器和自回歸CF模型,表明在用戶-物品關系中探索高階協同信號的合理性。
Model Ablation Study (RQ2)
我們從五個角度考慮KHGT的不同模型變體,并分析其影響(如圖3所示):
Type-specific Behavioral Pattern Modeling.KHGT-GA.
Behavior Mutual Dependency Modeling.KHGT-MR
Cross-Type Behavioral Pattern Fusion.
Temporal Context Encoding.KHGT-Ti.
Incorporation of Item-Item Relations.KHGT-KG.
我們可以觀察到,我們開發的完整版本的khgt在所有情況下都取得了最好的性能。我們進一步總結了以下結論:(1)以顯式關注的方式建模特定類型的user-item交互模式比執行圖結構卷積更好。(2)基于相互關系學習的多行為推薦增強效果。(3)顯性判別對于類型特異性行為模式貢獻的必要性。(4)時間情境信息對行為動態捕捉的積極作用。(5)在我們的圖神經網絡中加入項目外部知識有助于更準確地編碼用戶的多維偏好。
Performance v.s. Multi-Behavior Integration (RQ3)
Influences of Interaction Sparsity Degrees (RQ4)
Hyperparameter Effect Investigation (RQ5)
Case Studies ofKHGT’s Explainability (RQ6)
總結
以上是生活随笔為你收集整理的(十九)【AAAI2021】Knowledge-Enhanced Hierarchical Graph Transformer Network for Multi-Behavior Recommend的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python安装requests库超时_
- 下一篇: 计算机网络划分的标准,计算机网络基础