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