柴文光 張振杰
(廣東工業(yè)大學(xué)計(jì)算機(jī)學(xué)院 廣東 廣州 510000)
隨著網(wǎng)絡(luò)信息的爆炸增長(zhǎng),人們能非常方便地獲取到大量的在線訊息,例如電影、新聞和商品等。在線平臺(tái)面臨的一個(gè)關(guān)鍵問(wèn)題是用戶如何在琳瑯滿目的物品中挑選出自己喜愛(ài)的物品,推薦系統(tǒng)應(yīng)運(yùn)而生。傳統(tǒng)推薦系統(tǒng)使用的算法是協(xié)同過(guò)濾算法,該算法充分挖掘用戶的歷史交互記錄,通過(guò)學(xué)習(xí)得到用戶和物品的嵌入表示,然后通過(guò)內(nèi)積、神經(jīng)網(wǎng)絡(luò)等方法對(duì)用戶與物品之間的交互進(jìn)行建模,最終得到用戶對(duì)某個(gè)物品的喜愛(ài)程度。然而,基于協(xié)同過(guò)濾的方法存在用戶與物品的交互矩陣的稀疏性和冷啟動(dòng)問(wèn)題,當(dāng)用戶僅有少量的交互記錄時(shí)協(xié)同過(guò)濾算法無(wú)法為用戶提供推薦功能。為了解決這兩個(gè)限制,將知識(shí)圖譜(例如社交網(wǎng)絡(luò))的輔助信息[18-19]應(yīng)用到推薦系統(tǒng)中往往能獲得更高質(zhì)量的推薦,并且目前獲得了廣泛的應(yīng)用。
知識(shí)圖譜是一個(gè)有向的異質(zhì)圖,圖中的節(jié)點(diǎn)對(duì)應(yīng)多種類(lèi)型的實(shí)體(例如某場(chǎng)電影或某位導(dǎo)演),圖上的邊對(duì)應(yīng)多種不同類(lèi)型的關(guān)系,通過(guò)這些關(guān)系可以挖掘出用戶感興趣的物品,而且節(jié)點(diǎn)之間的邊關(guān)系給推薦結(jié)果提供了一定解釋性。由于每對(duì)節(jié)點(diǎn)之間的連接關(guān)系蘊(yùn)含著巨大的語(yǔ)義信息,運(yùn)用GNN、GCN、TransE等方法挖掘知識(shí)圖譜的豐富語(yǔ)義信息能有效地找出實(shí)體之間潛在的關(guān)系,極大地提升推薦系統(tǒng)的性能。Yu等[2]提出用一個(gè)異質(zhì)信息網(wǎng)絡(luò)表示知識(shí)圖譜,使用基于元路徑的方法學(xué)習(xí)得到圖譜中節(jié)點(diǎn)和邊的嵌入表示。Wang等[1]提出將實(shí)體和邊關(guān)系映射到低維的嵌入表示,但是只挖掘了粗略的語(yǔ)義信息。Harper等[4]受到圖卷積神經(jīng)網(wǎng)絡(luò)的啟發(fā),提出了基于知識(shí)圖譜的卷積神經(jīng)網(wǎng)絡(luò)(KGCN)。KGCN的核心思想是在學(xué)習(xí)知識(shí)圖譜中實(shí)體的嵌入表示時(shí),聚合了實(shí)體兩跳以內(nèi)的鄰居節(jié)點(diǎn)的嵌入表示。在聚合的過(guò)程中,根據(jù)每位用戶的興趣賦予鄰居節(jié)點(diǎn)的權(quán)重,但忽略了用戶的具體興趣。
盡管知識(shí)圖譜具有很多的優(yōu)點(diǎn),但是將知識(shí)圖譜應(yīng)用到推薦系統(tǒng)具有很大的挑戰(zhàn)性。本文提出了一個(gè)新穎的推薦算法,使用圖卷積神經(jīng)網(wǎng)絡(luò)(GCN)聚合知識(shí)圖譜中豐富的結(jié)構(gòu)信息和語(yǔ)義信息,每一次的聚合迭代過(guò)程都引入了注意力機(jī)制,依據(jù)用戶對(duì)圖譜中每個(gè)節(jié)點(diǎn)的具體興趣賦予特定的權(quán)重。提出的算法還包括應(yīng)用深度神經(jīng)網(wǎng)絡(luò)(DNN)對(duì)學(xué)習(xí)得到的用戶和物品的嵌入表示建立模型,以挖掘兩者嵌入表示之間潛在的語(yǔ)義信息。本文在MovieLens-20M(movie)和Last.FM(music)兩個(gè)公共數(shù)據(jù)集上開(kāi)展實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明我們的算法優(yōu)于其他主流的推薦算法。
本文的主要貢獻(xiàn)有:提出了一個(gè)新穎的推薦算法框架,該框架結(jié)合GCN和Attention機(jī)制挖掘知識(shí)圖譜豐富的結(jié)構(gòu)和語(yǔ)義信息。應(yīng)用DNN對(duì)學(xué)習(xí)得到的用戶和物品的嵌入表示建立模型,重新編碼用戶的嵌入表示,生成特定于某樣物品的用戶偏好。
本文在MovieLens-20M和Last.FM兩個(gè)公共數(shù)據(jù)集上開(kāi)展實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果證明了算法的有效性。
關(guān)于圖神經(jīng)網(wǎng)絡(luò)(GNN)的研究表明沿著圖拓?fù)浣Y(jié)構(gòu)的路徑傳播節(jié)點(diǎn)嵌入表示可以在多跳鄰居內(nèi)提取有用的信息,豐富節(jié)點(diǎn)的嵌入表示。首先Kipf等[21]提出圖卷積神經(jīng)網(wǎng)絡(luò)(GCN)聚合圖拓?fù)浣Y(jié)構(gòu)相鄰節(jié)點(diǎn)的信息,但每次聚合過(guò)程是在全圖的拓?fù)浣Y(jié)構(gòu)上聚合信息,這導(dǎo)致了計(jì)算復(fù)雜度極其龐大。潘承瑞等[8]提出融合知識(shí)圖譜的圖卷積神經(jīng)網(wǎng)絡(luò)(KGCN)迭代地聚合兩跳節(jié)點(diǎn)內(nèi)的節(jié)點(diǎn)相似性信息,并根據(jù)用戶的興趣在聚合過(guò)程賦予鄰居節(jié)點(diǎn)特定的權(quán)重。雖然KGCN大大降低了算法的時(shí)間復(fù)雜度,但是該方法的注意力機(jī)制忽略了用戶的具體興趣,例如,它將所有導(dǎo)演都籠統(tǒng)地歸類(lèi)為同一類(lèi),用戶可能喜愛(ài)某位導(dǎo)演,不喜歡另一位導(dǎo)演。
He等[11]提出輕量級(jí)的圖卷積神經(jīng)網(wǎng)絡(luò)(LightGCN),該方法使用簡(jiǎn)單的加權(quán)聚合函數(shù)捕捉鄰居節(jié)點(diǎn)的信息,聚合函數(shù)不使用對(duì)于協(xié)同過(guò)濾算法來(lái)說(shuō)是比較冗余的特征轉(zhuǎn)換和非線性激活,而且沒(méi)有引入注意力機(jī)制,而是使用節(jié)點(diǎn)的度計(jì)算加權(quán)求和的權(quán)重。由于LightGCN是在全圖的鄰接矩陣上進(jìn)行圖卷積運(yùn)算,而本文的方法是在局部拓?fù)浣Y(jié)果上進(jìn)行卷積運(yùn)算,因而我們的方法更容易應(yīng)用到大型的推薦系統(tǒng)中。
Sun等[23]提出基于鄰居交互的圖卷積神經(jīng)網(wǎng)絡(luò)(NIA-GCN),該方法在聚合兩跳內(nèi)鄰居節(jié)點(diǎn)信息時(shí),在所有同一跳節(jié)點(diǎn)上同時(shí)使用平均求和函數(shù)和兩兩同一跳節(jié)點(diǎn)逐元素相乘的聚合函數(shù)。本文也在局部拓?fù)浣Y(jié)構(gòu)內(nèi)聚合兩跳節(jié)點(diǎn)的信息,但引入了注意力機(jī)制,賦予用戶感興趣的物品更高的權(quán)重。
Wang等[22]提出圖解纏層(Graph Disentangling layer)來(lái)聚合節(jié)點(diǎn)的鄰居信息,在聚合鄰居信息的步驟中引入了注意力機(jī)制。圖解纏層用一個(gè)可學(xué)習(xí)的數(shù)值表示節(jié)點(diǎn)之間的連接權(quán)重,該權(quán)重反映了中心節(jié)點(diǎn)對(duì)鄰居節(jié)點(diǎn)的重要程度。訓(xùn)練過(guò)程基于連接權(quán)重線性聚合鄰居節(jié)點(diǎn)的信息,并且迭代地更新連接權(quán)重和節(jié)點(diǎn)的嵌入表示,最后使用內(nèi)積函數(shù)得到用戶對(duì)物品的預(yù)測(cè)評(píng)分。本文使用線性聚合函數(shù)捕捉鄰居節(jié)點(diǎn)豐富的語(yǔ)義信息,但是我們使用中心節(jié)點(diǎn)與鄰居節(jié)點(diǎn)之間的內(nèi)積函數(shù)來(lái)表示連接權(quán)重,以減少模型的參數(shù)量,降低過(guò)擬合的風(fēng)險(xiǎn)。同時(shí),本文不直接使用內(nèi)積函數(shù)計(jì)算預(yù)測(cè)評(píng)分,而是提出對(duì)用戶和物品的嵌入表示進(jìn)行建模來(lái)獲取預(yù)測(cè)評(píng)分,首先使用深度神經(jīng)網(wǎng)絡(luò)重新編碼用戶嵌入表示,重新編碼后的嵌入向量描述了用戶特定于該物品的偏好,然后將重新編碼后的用戶嵌入表示與物品嵌入表示作內(nèi)積。
本文所做的工作是,給定用戶與物品的交互矩陣Y和知識(shí)圖譜G,預(yù)測(cè)用戶u對(duì)從未交互過(guò)的物品v的潛在興趣。
本文提出圖注意力卷積神經(jīng)網(wǎng)絡(luò)的方法來(lái)捕捉知識(shí)圖譜相鄰節(jié)點(diǎn)之間的相似性信息,我們的方法不僅計(jì)算量較小,還考慮了用戶的具體興趣。對(duì)于圖譜上每個(gè)物品節(jié)點(diǎn)v∈V,我們通過(guò)基于圖注意力卷積神經(jīng)網(wǎng)絡(luò)的方法聚合知識(shí)圖譜上鄰居實(shí)體(e∈ε,e?V)的信息,而且對(duì)于每個(gè)鄰居實(shí)體,再次使用圖注意力卷積神經(jīng)網(wǎng)絡(luò)捕捉鄰居節(jié)點(diǎn)的信息。我們使用N(v)表示節(jié)點(diǎn)v的鄰居節(jié)點(diǎn),rvi,vj表示每隊(duì)鄰居節(jié)點(diǎn)之間的邊關(guān)系。圖注意力卷積神經(jīng)網(wǎng)絡(luò)使用的注意力函數(shù)g表示為:Rd×Rd→R(例如,內(nèi)積),該函數(shù)計(jì)算用戶u(u∈U)對(duì)知識(shí)圖譜中實(shí)體e(e∈ε)的喜愛(ài)程度(見(jiàn)圖1的②號(hào)圈所示):
圖1 知識(shí)圖譜節(jié)點(diǎn)信息聚合的示意圖
(1)
(2)
(3)
v∈V和e∈ε都對(duì)應(yīng)知識(shí)圖譜中的實(shí)體,用戶-實(shí)體分?jǐn)?shù)是特定于某個(gè)用戶的歸一化權(quán)重,這組權(quán)重反映了用戶專(zhuān)屬的、具體的偏好。
在真實(shí)的知識(shí)圖譜中,所有節(jié)點(diǎn)的鄰居節(jié)點(diǎn)數(shù)量是不相同的,為了計(jì)算方便,在對(duì)鄰居節(jié)點(diǎn)進(jìn)行隨機(jī)采樣時(shí)[20],我們采集固定數(shù)量的鄰居節(jié)點(diǎn)。在本文實(shí)驗(yàn),由于我們不僅對(duì)物品節(jié)點(diǎn)v∈V做鄰居節(jié)點(diǎn)信息聚合,還對(duì)節(jié)點(diǎn)v的鄰居節(jié)點(diǎn)做信息聚合,在后者的信息聚合過(guò)程中,注意力函數(shù)g將會(huì)對(duì)用戶u和物品e(e∈V,V?ε)做內(nèi)積,這也反映了用戶對(duì)某個(gè)物品的感興趣程度。
(4)
算法1是以上步驟的偽代碼實(shí)現(xiàn)。
算法1圖注意力卷積神經(jīng)網(wǎng)絡(luò)算法
輸出:融合鄰居節(jié)點(diǎn)信息的物品嵌入表示Inew。
For (u,v) inY:
Node=[[v]]
Foriin range(H):
Node.append(M(Node[-1]))
Foriin range(H):
Forkin range(H-i):
對(duì)于Node[k]中的每個(gè)節(jié)點(diǎn)v:
Returnvnew
本文新穎地提出對(duì)知識(shí)圖譜學(xué)習(xí)得到的用戶和物品的嵌入表示進(jìn)行建模,使用深度神經(jīng)網(wǎng)絡(luò)重新編碼用戶嵌入表示,重新編碼后的嵌入向量描述了用戶特定于該物品的偏好。圖2是重新編碼用戶嵌入表示的示意圖。
圖2 重新編碼用戶嵌入表示的示意圖
對(duì)于學(xué)習(xí)得到的用戶和物品的嵌入,物品嵌入表示與用戶嵌入表示進(jìn)行級(jí)聯(lián)運(yùn)算:
vconcat=concat(vnew,u)
(5)
新的嵌入表示vconcat輸入到三層的DNN后,得到重新編碼后的用戶嵌入表示:
unew=f(w2·g(w1·vconcat+b1)+b2)
(6)
式中:w1、b1、w2、b2分別屬于輸入層到隱藏層,隱藏層到輸出層的權(quán)重矩陣和偏置項(xiàng),unew是重新編碼后的用戶嵌入表示,f、g是兩個(gè)激活函數(shù),分別是線性函數(shù)和ReLU函數(shù)。
最后,重新編碼后的用戶嵌入表示unew和經(jīng)過(guò)信息聚合的物品嵌入表示vnew輸入到函數(shù)f:Rd×Rd→R,得到用戶對(duì)物品的交互概率,即感興趣程度:
(7)
式中:函數(shù)f是內(nèi)積函數(shù)。
模型的損失函數(shù)由兩部分組成,分別為交叉熵預(yù)測(cè)損失和L2正則化項(xiàng):
(8)
θ是模型參數(shù),包括聚合函數(shù)agg的權(quán)重和偏置,用戶的嵌入表示和知識(shí)圖譜中所有節(jié)點(diǎn)的嵌入表示,以及深度神經(jīng)網(wǎng)絡(luò)的模型參數(shù)。Lbase是二分類(lèi)問(wèn)題的叉熵?fù)p失函數(shù):
(9)
我們?cè)谝韵聝蓚€(gè)公共數(shù)據(jù)集上開(kāi)展實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表示本方法的性能超過(guò)KGCN、KGNN-LS等主流方法。
MovieLens-20M[4]:該數(shù)據(jù)集是在電影推薦中廣泛使用的基線數(shù)據(jù)集,描述了電影推薦服務(wù)MovieLens的5星評(píng)級(jí)和用戶評(píng)分記錄。包含138 159名用戶對(duì)16 954場(chǎng)電影的13 501 622條評(píng)分?jǐn)?shù)據(jù)(評(píng)分從1到5),所有用戶都評(píng)價(jià)了至少20部電影。依據(jù)該數(shù)據(jù)集構(gòu)建的知識(shí)圖譜包含102 569個(gè)節(jié)點(diǎn),32條不同類(lèi)型的邊,以及499 474條三元組數(shù)據(jù)。知識(shí)圖譜中包括了不同類(lèi)型的節(jié)點(diǎn),有的節(jié)點(diǎn)表示某場(chǎng)電影,有的節(jié)點(diǎn)表示某位導(dǎo)演等。
Last.FM:該數(shù)據(jù)集包括Last.FM在線音樂(lè)平臺(tái)兩千多個(gè)用戶的收聽(tīng)數(shù)據(jù),包含1 872名用戶對(duì)3 846首音樂(lè)的42 346條交互數(shù)據(jù)。依據(jù)該數(shù)據(jù)集構(gòu)建的知識(shí)圖譜包含9 366個(gè)異質(zhì)節(jié)點(diǎn),60條不同類(lèi)型的邊,以及15 518條三元組數(shù)據(jù)。
由于以上MovieLens-20M公共數(shù)據(jù)集的交互記錄是用戶與物品的顯式評(píng)分?jǐn)?shù)據(jù),需要將其轉(zhuǎn)化隱式的交互,我們將評(píng)分大于閾值(設(shè)置為4)的交互數(shù)據(jù)歸類(lèi)為正例樣本,反之劃分為負(fù)例樣本,然后將所有交互數(shù)據(jù)的60%劃分為訓(xùn)練集,20%劃分為驗(yàn)證集,20%劃分為測(cè)試集。
表1 數(shù)據(jù)集統(tǒng)計(jì)
本文在點(diǎn)擊率預(yù)測(cè)(CTR prediction)的實(shí)驗(yàn)場(chǎng)景下,使用AUC和F1評(píng)估指標(biāo)預(yù)測(cè)模型的好壞。實(shí)驗(yàn)的軟件環(huán)境為Windows 10操作系統(tǒng)、Python 3.5、TensorFlow 1.5.0和NumPy 1.16.0,硬件環(huán)境為i7-5500U,內(nèi)存4 GB。
本文將模型訓(xùn)練輪數(shù)設(shè)置為10輪,知識(shí)圖譜鄰居信息聚合中隨機(jī)選擇的鄰居節(jié)點(diǎn)數(shù)量為6個(gè),用戶和知識(shí)圖譜實(shí)體的嵌入表示維度為16(電影數(shù)據(jù)集設(shè)置為32),每批訓(xùn)練樣本的數(shù)量為128(電影數(shù)據(jù)集設(shè)置為65 536),L2正則化超參數(shù)為1×10-4,學(xué)習(xí)率設(shè)置為5×10-4,重新編碼用戶嵌入表示的DNN的三層模型分別為16、64、16(電影數(shù)據(jù)集設(shè)置為64、64、64)。
(1) CKE[5]:該模型通過(guò)將知識(shí)圖譜、紋理信息和視覺(jué)信息融合到協(xié)同過(guò)濾模型,獲得物品的嵌入表示向量,本文僅考慮融合知識(shí)圖譜輔助信息的CKE模型。
(2) PER[2]:將知識(shí)圖譜看作一個(gè)異質(zhì)的信息網(wǎng)絡(luò),通過(guò)基于元路徑的方法獲得用戶與物品之間的交互的嵌入表示。
(3) RippleNet[7]:用戶的愛(ài)好在知識(shí)圖譜多跳節(jié)點(diǎn)的范圍內(nèi)傳播,基于嵌入表示的方法獲得圖譜節(jié)點(diǎn)的嵌入表示,基于元路徑的方法豐富用戶的嵌入表示。
(4) KGCN[8]:基于圖卷積神經(jīng)網(wǎng)絡(luò)的方法,在知識(shí)圖譜上聚合鄰居節(jié)點(diǎn)的信息,來(lái)豐富每個(gè)節(jié)點(diǎn)的嵌入表示,以獲得更好的推薦。
(5) KGNN-LS[21]:在KGCN的基礎(chǔ)上,使用標(biāo)簽平滑的方法平滑知識(shí)圖譜節(jié)點(diǎn)的標(biāo)簽,通過(guò)學(xué)習(xí)得到圖譜節(jié)點(diǎn)的嵌入表示。
(6) LightGCN[11]:該方法提出一個(gè)去掉對(duì)于協(xié)同過(guò)濾算法來(lái)說(shuō)是冗余的特征轉(zhuǎn)換和非線性激活函數(shù)的輕量級(jí)圖卷積神經(jīng)網(wǎng)絡(luò),為防止節(jié)點(diǎn)特征的過(guò)度平滑,節(jié)點(diǎn)的最終嵌入表示由各層學(xué)習(xí)到的嵌入表示線性組合得到。
本文在MovieLens-20M和Last.FM數(shù)據(jù)集上,將我們的模型與以上幾種模型做性能比較。我們?cè)邳c(diǎn)擊率預(yù)測(cè)推薦情景下,使用AUC和F1兩個(gè)評(píng)估指標(biāo)評(píng)價(jià)模型,表2是實(shí)驗(yàn)結(jié)果。
表2 點(diǎn)擊率預(yù)測(cè)的實(shí)驗(yàn)結(jié)果
我們提出的方法和以上6種基準(zhǔn)模型相比,在兩個(gè)公共數(shù)據(jù)集的4個(gè)評(píng)價(jià)指標(biāo)均排在第一位,AUC和F1 Score比KGNN-LS模型分別提高了0.2%、0.4%、0.4%和1.5%,其中F1 Score評(píng)價(jià)指標(biāo)優(yōu)于目前最新的基于圖神經(jīng)網(wǎng)絡(luò)的方法(LightGCN),由于LightGCN是在全圖的拓?fù)浣Y(jié)構(gòu)上進(jìn)行卷積運(yùn)算,該方法在現(xiàn)有硬件設(shè)施下無(wú)法擴(kuò)展到MovieLens-20M這個(gè)比較龐大的數(shù)據(jù)集上開(kāi)展實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果證明本文提出的方法甚至優(yōu)于KGCN、KGNN-LS這兩個(gè)主流方法。
本文模型的性能全面優(yōu)于以上方法的原因是:(1) 結(jié)合知識(shí)圖譜輔助信息,利用圖卷積網(wǎng)絡(luò),迭代地聚合知識(shí)圖譜中鄰居節(jié)點(diǎn)的信息,挖掘潛在的節(jié)點(diǎn)之間的相似性;(2) 引入了注意力機(jī)制,在聚合鄰居節(jié)點(diǎn)信息的過(guò)程中,根據(jù)用戶對(duì)知識(shí)圖譜中各個(gè)節(jié)點(diǎn)的具體興趣賦予不同的權(quán)重進(jìn)行信息聚合;(3) 本文使用一個(gè)DNN網(wǎng)絡(luò)結(jié)構(gòu)對(duì)用戶嵌入表示重新編碼,先通過(guò)將用戶嵌入表示和物品嵌入表示連接起來(lái),輸入DNN,再利用重新編碼后的用戶嵌入表示與物品嵌入表示做內(nèi)積。而KGCN和KGNN-LS這兩個(gè)方法中的注意力機(jī)制是用戶嵌入表示和圖譜中邊關(guān)系的嵌入表示作內(nèi)積的,該注意力機(jī)制忽略了用戶的具體偏好,不利于性能的提升,以觀看電影為例,用戶會(huì)喜愛(ài)某部電影的原因一般是喜歡電影的某位主角、導(dǎo)演或者某種類(lèi)型,其原因是具體的、多種多樣的,而不能籠統(tǒng)地認(rèn)為用戶偏愛(ài)主角或者導(dǎo)演這一抽象的概念。因此,我們的方法能獲得比其他方法都大的性能提升。
表3展示了使用DNN對(duì)用戶的嵌入表示重新編碼,然后使用內(nèi)積運(yùn)算計(jì)算用戶對(duì)物品的感興趣程度的優(yōu)越性。
表3 用戶嵌入表示重新編碼的性能對(duì)比
重新編碼用戶嵌入表示可以獲得較大的性能提升,AUC和F1兩個(gè)評(píng)價(jià)指標(biāo)在Last.FM數(shù)據(jù)集上分別提升了1.8%和2.8%。本文認(rèn)為能獲得較大性能提升的原因有:(1) DNN網(wǎng)絡(luò)結(jié)構(gòu)學(xué)習(xí)的內(nèi)容是用戶特定于某個(gè)物品的感興趣程度,首先在已知用戶嵌入表示的基礎(chǔ)上(即了解用戶的偏好),結(jié)合物品的嵌入表示,最后輸出特定于該物品的用戶偏好;(2) 用戶嵌入表示與物品嵌入表示之間存在豐富的語(yǔ)義信息,如何對(duì)嵌入表示進(jìn)行有效地建模以生成高質(zhì)量的推薦是一個(gè)重大問(wèn)題。
同時(shí),我們還對(duì)聚合鄰居節(jié)點(diǎn)信息時(shí)選擇的鄰居節(jié)點(diǎn)數(shù)量進(jìn)行分析,表4是不同的鄰居節(jié)點(diǎn)數(shù)量下的模型性能比較。結(jié)果表明鄰居節(jié)點(diǎn)數(shù)量選擇6時(shí)模型性能最佳,這是因?yàn)楫?dāng)鄰居節(jié)點(diǎn)數(shù)量較小時(shí),沒(méi)有充分挖掘相鄰節(jié)點(diǎn)的信息,當(dāng)數(shù)量較大時(shí),鄰居信息可能會(huì)混入噪聲。
表4 不同的鄰居節(jié)點(diǎn)數(shù)量下的AUC和F1評(píng)價(jià)指標(biāo)
本文將知識(shí)圖譜的輔助信息結(jié)合到推薦任務(wù)中,通過(guò)基于圖卷積神經(jīng)網(wǎng)絡(luò)的方法迭代地聚合圖譜中每個(gè)節(jié)點(diǎn)兩跳以內(nèi)的鄰居節(jié)點(diǎn)信息,還在聚合鄰居信息的過(guò)程中應(yīng)用了注意力機(jī)制,根據(jù)用戶的具體偏好賦予鄰居節(jié)點(diǎn)不同的權(quán)重,使每個(gè)節(jié)點(diǎn)都獲得豐富的鄰居語(yǔ)義。此外,本文還對(duì)知識(shí)圖譜學(xué)習(xí)得到的用戶和物品的嵌入表示進(jìn)行建模,通過(guò)深度神經(jīng)網(wǎng)絡(luò)重新編碼用戶嵌入表示,重新編碼后的嵌入向量描述了用戶特定于該物品的特征。我們提出的方法在MovieLens-1M和Last.FM兩個(gè)數(shù)據(jù)集上都取得了較好的效果。