







收稿日期:2022-05-27;修回日期:2022-07-18
作者簡(jiǎn)介:姜征和(1998-),男(通信作者),山東威海人,碩士研究生,主要研究方向?yàn)閳D神經(jīng)網(wǎng)絡(luò)和推薦系統(tǒng)(837256246@qq.com);陳學(xué)剛(1970-),男,山東泰安人,教授,博士,主要研究方向?yàn)榻M合優(yōu)化、算法設(shè)計(jì)與分析和圖神經(jīng)網(wǎng)絡(luò).
摘 要:
異質(zhì)信息網(wǎng)絡(luò)(HIN)包含豐富的網(wǎng)絡(luò)結(jié)構(gòu)和語(yǔ)義信息使其常見(jiàn)于推薦系統(tǒng)中。然而,當(dāng)前推薦系統(tǒng)的研究工作主要是基于元路徑提供的間接信息進(jìn)行推薦,而未充分利用直接交互信息。為了充分利用這些信息,提出一種融合注意力機(jī)制和異質(zhì)信息網(wǎng)絡(luò)元路徑的三元交互模型(AMMRec)。在異質(zhì)信息網(wǎng)絡(luò)中使用隱式反饋矩陣構(gòu)造用戶(hù)相似度矩陣和項(xiàng)目相似度矩陣,運(yùn)用異質(zhì)信息網(wǎng)絡(luò)的表示學(xué)習(xí)方法獲得對(duì)應(yīng)的特征向量嵌入,通過(guò)注意力機(jī)制對(duì)其進(jìn)行修正;設(shè)計(jì)注意力神經(jīng)網(wǎng)絡(luò),將不同元路徑的表示向量進(jìn)行融合;拼接用戶(hù)嵌入、元路徑嵌入和項(xiàng)目嵌入,通過(guò)全連接神經(jīng)網(wǎng)絡(luò)生成推薦結(jié)果。在真實(shí)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,AMMRec的推薦精度最高提升了9.5%。此外,AMMRec對(duì)推薦結(jié)果具有良好的可解釋性。
關(guān)鍵詞:異質(zhì)信息網(wǎng)絡(luò);元路徑;注意力機(jī)制;推薦算法
中圖分類(lèi)號(hào):TP183"" 文獻(xiàn)標(biāo)志碼:A""" 文章編號(hào):1001-3695(2022)12-009-3587-05
doi:" 10.19734/j.issn.1001-3695.2022.05.0248
Recommendation systems based on attention mechanism and
meta-paths of heterogeneous information network
Jiang Zhenghe, Chen Xuegang
(Institute of Mathematical amp; Physical Sciences, North China Electric Power University, Beijing 102206, China)
Abstract:
Because heterogeneous information network(HIN) contains rich network structure and semantic information, re-commendation systems often use HIN for recommendation. However, the current researches of recommender systems is mainly based on indirect information provided by meta-paths for recommendation, but these researches don’t make full use of direct interactive information. To make full use of this information, this paper proposed a ternary interaction model(AMMRec) that incorporated attention mechanisms and heterogeneous information network meta-paths. This method firstly used the implicit feedback matrix to construct user similarity matrix and item similarity matrix and used the representation learning method of the HIN to obtain the corresponding feature vector embeddings in HIN. Then it used the the attention mechanism to modify the embeddings and designed attention neural network to fuse representation vectors of different meta-paths. Finally it concatenated user embeddings and meta-path embeddings and item embeddings, and generated recommendation results through fully connected neural network. The experimental results on real datasets show that AMMRec improves the recommendation accuracy by up to 9.5%. In addition, AMMRec has good interpretability for the recommendation results.
Key words:heterogeneous information network; meta path; attentional mechanism; recommendation algorithm
0 引言
在當(dāng)下信息爆炸的時(shí)代,有效信息淹沒(méi)于大量的無(wú)關(guān)信息中,這種現(xiàn)象稱(chēng)為信息過(guò)載[1],這極大地降低了人們獲取有用信息的效率。推薦系統(tǒng)如今在各種在線平臺(tái)發(fā)揮著至關(guān)重要的作用,可以有效地緩解信息過(guò)載現(xiàn)象,因此被廣泛應(yīng)用于電子商務(wù)的生產(chǎn)推薦和服務(wù)推薦等各個(gè)領(lǐng)域。
推薦系統(tǒng)的方法和模型經(jīng)歷了許多發(fā)展階段,從最初的基于內(nèi)容的協(xié)同過(guò)濾推薦[2],到現(xiàn)在流行的針對(duì)屬性[3]、上下文[4]、知識(shí)圖[5,6]等的輔助信息推薦。近年,基于輔助信息推薦的研究主要集中于因子分解機(jī)(FM[7])、Wideamp;Deep[8]和DeepFM[9]。其中FM通常被用來(lái)建模二階特征交互作用并學(xué)習(xí)特征之間的成對(duì)關(guān)系,其支持的神經(jīng)網(wǎng)絡(luò)(FNN [10])和基于乘積的神經(jīng)網(wǎng)絡(luò)(PNN[11])用全連接神經(jīng)網(wǎng)絡(luò)來(lái)建模高階特征交互。Wideamp;Deep分別使用線性模型和深度模型學(xué)習(xí)單詞和高階特征交互作用。DeepFM 用FM模型代替了Wideamp;Deep的線性模型,取得了更好的性能。雖然這些算法在推薦領(lǐng)域取得了很好的效果,但它們大多只利用了基礎(chǔ)的輔助信息,并未充分利用節(jié)點(diǎn)間的交互信息,從而導(dǎo)致推薦性能難以滿足用戶(hù)期許。
因圖神經(jīng)網(wǎng)絡(luò)(GNN)可以高效挖掘用戶(hù)與項(xiàng)目之間的交互來(lái)生成高質(zhì)量的特征嵌入,已廣泛應(yīng)用于推薦系統(tǒng)[12,13]、鏈接預(yù)測(cè) [14,15]和相似性搜索[16]等任務(wù)中。GNN使用給定圖的傅里葉變換在譜域中執(zhí)行卷積[17,18],或者通過(guò)將節(jié)點(diǎn)特征傳遞給鄰居來(lái)直接在圖上執(zhí)行卷積[19,20]。目前GNN主要面向于僅有一種類(lèi)型的節(jié)點(diǎn)和邊的同構(gòu)圖。然而實(shí)際問(wèn)題抽象后的圖通常具有多種類(lèi)型的節(jié)點(diǎn)和邊,此種圖被稱(chēng)為異質(zhì)信息網(wǎng)絡(luò)(HIN)[21]。
如何有效地從HIN中提取信息并用于推薦是基于HIN的推薦的關(guān)鍵問(wèn)題。基于元圖的方法[22]是通過(guò)計(jì)算HIN的元圖(也稱(chēng)為元結(jié)構(gòu))上的節(jié)點(diǎn)相似度進(jìn)行推薦。基于元路徑的方法[23,24]則是從HIN的路徑中提取輔助特征進(jìn)行推薦。元路徑是一種連接HIN中節(jié)點(diǎn)對(duì)的關(guān)系序列,可以充分提取結(jié)構(gòu)特征來(lái)捕獲相關(guān)語(yǔ)義信息來(lái)進(jìn)行推薦。例如,在電影推薦場(chǎng)景中,“user-movie-user-movie”的元路徑表示將有共同觀影記錄的某個(gè)用戶(hù)喜歡的電影推薦給該用戶(hù)。現(xiàn)有基于元路徑的推薦方法主要有:利用HIN上基于路徑的語(yǔ)義相關(guān)性作為用于推薦直接特征[25,26],對(duì)基于路徑的相似性執(zhí)行一些變換。例如,對(duì)基于路徑的相似性矩陣進(jìn)行分解以學(xué)習(xí)有效的變換特征,用于學(xué)習(xí)推薦系統(tǒng)中的用戶(hù)與項(xiàng)目嵌入[26,27]。Hu等人[13]提出了基于元路徑的上下文的協(xié)同注意力推薦模型 MCRec。但MCRec只通過(guò)元路徑學(xué)習(xí)了間接交互的信息,并沒(méi)有充分利用節(jié)點(diǎn)之間的直接交互信息。
近年來(lái)結(jié)合深度學(xué)習(xí)的推薦算法越來(lái)越多。劉志鑫等人[28]提出了MMGRec模型通過(guò)圖注意力網(wǎng)絡(luò)學(xué)習(xí)節(jié)點(diǎn)的嵌入特征進(jìn)行推薦;劉浩翰等人[29]提出通過(guò)循環(huán)神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)用戶(hù)長(zhǎng)短期興趣關(guān)聯(lián)進(jìn)行推薦;楊丹陽(yáng)等人[30]提出基于深度學(xué)習(xí)和淺因子模型的NN_LF模型,融合卷積神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)序列特征以及淺因子模型學(xué)習(xí)用戶(hù)特定特征進(jìn)行推薦。但現(xiàn)有基于HIN中的推薦系統(tǒng)存在以下問(wèn)題:如何利用低階信息獲取用戶(hù)與項(xiàng)目之間的語(yǔ)義級(jí)交互特征;如何融合直接信息與間接信息來(lái)增強(qiáng)推薦系統(tǒng)的性能;如何更好地從元路徑中提取信息用于輔助推薦。
為解決上述問(wèn)題,本文提出了基于注意力機(jī)制和異質(zhì)信息網(wǎng)絡(luò)元路徑的推薦模型(AMMRec),主要貢獻(xiàn)如下:
a)提出了融合注意力機(jī)制和異質(zhì)信息網(wǎng)絡(luò)元路徑的推薦模型,通過(guò)注意力神經(jīng)網(wǎng)絡(luò)融合直接與間接信息,增強(qiáng)用戶(hù)和項(xiàng)目等節(jié)點(diǎn)特征向量的表示能力,從而提升模型的推薦性能。
b)基于注意力機(jī)制修正的用戶(hù)與項(xiàng)目的特征向量,設(shè)計(jì)注意力神經(jīng)網(wǎng)絡(luò),將不同元路徑的表示向量進(jìn)行融合,進(jìn)而進(jìn)一步融合用戶(hù)、元路徑和項(xiàng)目的特征向量,共同拼接構(gòu)成三元交互模型,從而使模型具有更好的可解釋性。
c)使用MovieLens和Last_FM兩個(gè)實(shí)際的數(shù)據(jù)集與對(duì)比模型進(jìn)行了大量的實(shí)驗(yàn),結(jié)果表明AMMRec模型的精確度有大幅提升。
1 相關(guān)定義和問(wèn)題描述
本章首先介紹一些異質(zhì)信息網(wǎng)絡(luò)的相關(guān)定義,然后給出針對(duì)異質(zhì)信息網(wǎng)絡(luò)元路徑的推薦問(wèn)題的形式化描述。
定義1 異質(zhì)信息網(wǎng)絡(luò)[21]。給定一個(gè)有向網(wǎng)絡(luò)圖G=(V,E),V是所有實(shí)體節(jié)點(diǎn)的集合,E是所有關(guān)系邊的集合,且存在節(jié)點(diǎn)類(lèi)型的映射函數(shù)φ:V→A和邊類(lèi)型的映射函數(shù)ψ:E→R,對(duì)于每個(gè)節(jié)點(diǎn)v∈V屬于一種對(duì)象類(lèi)型φ(v)∈A,每條邊e∈E屬于一種關(guān)系類(lèi)型ψ(e)∈R,那么這種網(wǎng)絡(luò)類(lèi)型就是信息網(wǎng)絡(luò)。當(dāng)對(duì)象類(lèi)型的種類(lèi)|A|gt;1或者關(guān)系類(lèi)型的種類(lèi)|R|gt;1時(shí)稱(chēng)為異質(zhì)信息網(wǎng)絡(luò)。圖1給出了一個(gè)基于HIN的音樂(lè)推薦實(shí)例,可以看出,HIN包含了多種類(lèi)型的實(shí)體,實(shí)體之間由不同類(lèi)型的關(guān)系連接。
定義2 元路徑[21]。一個(gè)元路徑P被定義為A1→R1A2→R2…→RlAl+1,簡(jiǎn)寫(xiě)為A1A2…Al+1,其中Ai∈A,Rj∈R。它描述了對(duì)象A1和Al+1之間的復(fù)合關(guān)系R1R2…RL。元路徑P下存在多個(gè)特定的路徑,稱(chēng)為路徑實(shí)例,由p表示。
定義3 基于元路徑的上下文[4]。給定兩個(gè)節(jié)點(diǎn),基于元路徑的上下文定義為:HIN上兩個(gè)節(jié)點(diǎn)間的元路徑下路徑實(shí)例的集合。例如,在Last_FM數(shù)據(jù)集中,用戶(hù)u1和藝術(shù)家a9可以經(jīng)由多個(gè)元路徑連接,構(gòu)成交互〈u1、a9〉的上下文的元路徑,例如:u1-a54-t127-a9(UATA)和u1-a54-u998-a9(UAUA)。不同的元路徑可以傳達(dá)不同的交互語(yǔ)義,例如,元路徑UATA下的路徑實(shí)例u1-a54-t127-a9表達(dá)用戶(hù)u1喜歡與藝術(shù)家a54標(biāo)簽相同的藝術(shù)家a9,而元路徑UAUA下的路徑實(shí)例u1-a54-u998-a9表示和用戶(hù)u1有相同愛(ài)好的用戶(hù)u998還喜歡藝術(shù)家a9,這些基于元路徑的上下文通過(guò)聚合不同的元路徑來(lái)揭示不同的交互語(yǔ)義信息。
現(xiàn)有基于HIN的推薦工作大多集中在評(píng)分預(yù)測(cè)任務(wù)上,即通過(guò)用戶(hù)對(duì)現(xiàn)有項(xiàng)目的評(píng)分來(lái)預(yù)測(cè)對(duì)新項(xiàng)目的絕對(duì)偏好分?jǐn)?shù)[27]。而在實(shí)踐中不直接表現(xiàn)用戶(hù)喜好的隱式反饋更容易獲得,因此top-n推薦任務(wù)更為常見(jiàn)。
問(wèn)題描述:基于異質(zhì)信息網(wǎng)絡(luò)的top-n推薦:給定一個(gè)異質(zhì)信息網(wǎng)絡(luò)G=(V,E)和用戶(hù)隱式反饋矩陣R,對(duì)于每個(gè)用戶(hù)u∈V,推薦一個(gè)其可能感興趣的項(xiàng)目排序列表。
2 基于注意力機(jī)制和異質(zhì)信息網(wǎng)絡(luò)元路徑的推薦模型
AMMRec流程如下:運(yùn)用異質(zhì)信息網(wǎng)絡(luò)的表示學(xué)習(xí)方法獲得對(duì)應(yīng)節(jié)點(diǎn)(user, artist)的特征向量嵌入,使用隱式反饋矩陣構(gòu)造用戶(hù)相似度矩陣和項(xiàng)目相似度矩陣,使用查找層(look up layer)獲得對(duì)應(yīng)節(jié)點(diǎn)(xu,ya)及鄰居節(jié)點(diǎn)(xu-knn, ya-knn)的嵌入;通過(guò)卷積神經(jīng)網(wǎng)絡(luò)的卷積層(CNN)和池化層(pooling)分別對(duì)鄰居節(jié)點(diǎn)以及元路徑(UATA和UUA)下路徑實(shí)例的嵌入進(jìn)行信息聚合,通過(guò)歸一化函數(shù)(softmax)將聚合后的鄰居節(jié)點(diǎn)的特征向量歸一化后對(duì)節(jié)點(diǎn)的原始嵌入進(jìn)行修正;運(yùn)用路徑注意力機(jī)制(path-attention)融合多種元路徑下的路徑實(shí)例的嵌入(m1,m2),并使用聚合后的元路徑(cu→a)通過(guò)用戶(hù)注意力機(jī)制(user-attention)和項(xiàng)目注意力機(jī)制(artist-attention)分別對(duì)節(jié)點(diǎn)嵌入(u,a)進(jìn)行修正;拼接(concatenate)用戶(hù)嵌入(u)、元路徑嵌入(cu→a)和項(xiàng)目嵌入(a)并輸入全連接神經(jīng)網(wǎng)絡(luò)(MLP)中生成推薦結(jié)果(ru,a)。整體框架如圖2所示。
2.1 節(jié)點(diǎn)與路徑實(shí)例的嵌入
傳統(tǒng)的表示用戶(hù)和項(xiàng)目的方法主要是利用矩陣分解[31]技術(shù)來(lái)獲取用戶(hù)和項(xiàng)目在HIN中的表示。受文獻(xiàn)[32] 的啟發(fā),本文模型使用HIN2Vec學(xué)習(xí)異質(zhì)圖中每個(gè)節(jié)點(diǎn)的特征嵌入,xu和yi是學(xué)習(xí)到的用戶(hù)u和項(xiàng)目i的特征向量嵌入。
獲得節(jié)點(diǎn)嵌入之后需要研究如何基于元路徑獲得高質(zhì)量的路徑實(shí)例,進(jìn)而學(xué)習(xí)基于元路徑上下文的有效表示。現(xiàn)有HIN的嵌入模型主要是基于元路徑引導(dǎo)的隨機(jī)游走策略來(lái)生成路徑實(shí)例,以相同的轉(zhuǎn)移概率在節(jié)點(diǎn)上進(jìn)行游走。然而這種簡(jiǎn)單的隨機(jī)游走策略生成的路徑實(shí)例通常質(zhì)量較低,因此,本文通過(guò)定義不同節(jié)點(diǎn)間的相似度來(lái)調(diào)整節(jié)點(diǎn)隨機(jī)游走的概率。即在每一步,節(jié)點(diǎn)都應(yīng)該以更大的概率游走到與當(dāng)前節(jié)點(diǎn)相似度更高的節(jié)點(diǎn)上去。
本文通過(guò)如下方法來(lái)定義相似度,其基本思想是利用HIN2Vec的嵌入方式,在未給定元路徑的情況下,對(duì)所有的有交互記錄的節(jié)點(diǎn)學(xué)習(xí)特征向量,然后計(jì)算節(jié)點(diǎn)之間向量的余弦相似度來(lái)確定節(jié)點(diǎn)游走的優(yōu)先級(jí)分?jǐn)?shù)。這樣的優(yōu)先級(jí)分?jǐn)?shù)表示了節(jié)點(diǎn)間的關(guān)聯(lián)程度,通過(guò)計(jì)算給定元路徑下每個(gè)路徑實(shí)例的節(jié)點(diǎn)對(duì)間的相似度的平均值進(jìn)行排序,從而獲得每個(gè)元路徑下不同的用戶(hù)和項(xiàng)目對(duì)之間相似度最高的k個(gè)路徑實(shí)例。
每個(gè)路徑實(shí)例本質(zhì)上是一系列實(shí)體節(jié)點(diǎn),本文通過(guò)卷積神經(jīng)網(wǎng)絡(luò)將這些路徑實(shí)例嵌入為低維特征向量。對(duì)一個(gè)路徑實(shí)例v1m-v2m-…-vnm,這一過(guò)程的描述如下:
vm=CNN([v1m,v2m,…,vnm]T,θ)(1)
CNN表示卷積神經(jīng)網(wǎng)絡(luò)模型,輸入的參數(shù)[v1m,v2m,…,vnm]T表示表示一個(gè)由向量v1m到vnm組成的矩陣,θ表示CNN的參數(shù),向量vim∈Euclid ExtraaBpd×1(1≤i≤n)為路徑實(shí)例中每個(gè)節(jié)點(diǎn)的d維嵌入。
每個(gè)元路徑至多有k個(gè)路徑實(shí)例,因此本文通過(guò)池化操作來(lái)生成元路徑的嵌入,設(shè)元路徑P下獲得的路徑實(shí)例嵌入為v1,v2,…,vk,則元路徑的嵌入可以通過(guò)式(2)計(jì)算。
hp=mean_pooling(v1,v2,…,vk)(2)
式(2)通過(guò)對(duì)k個(gè)路徑實(shí)例進(jìn)行平均池化操作,來(lái)獲得元路徑的特征向量嵌入。
2.2 基于注意力機(jī)制獲得元路徑的嵌入
利用上述公式獲得單一的元路徑嵌入后,傳統(tǒng)的聚合方法是給不同的元路徑相同的權(quán)重后進(jìn)行求和,即簡(jiǎn)單的平均池化:
cu→i=1|P|∑pv∈Phpv(3)
其中:cu→i是用戶(hù)u和項(xiàng)目i之間的元路徑的嵌入;hpv是單個(gè)元路徑的嵌入;P是考慮的元路徑的集合;|P|為元路徑的數(shù)量。在這種聚合方法中,每個(gè)元路徑的權(quán)重都相同。但在實(shí)際的推薦場(chǎng)景,不同用戶(hù)對(duì)不同元路徑的偏好不同,所以不同的元路徑在每個(gè)用戶(hù)的推薦場(chǎng)景中的貢獻(xiàn)度也不同,所以對(duì)元路徑的權(quán)重分配不該是簡(jiǎn)單的平均求和。受注意力機(jī)制在自然語(yǔ)言處理方面的最新進(jìn)展的啟發(fā)[33],本文通過(guò)一種融合的注意力機(jī)制來(lái)實(shí)現(xiàn)這一目標(biāo)。由于不同的元路徑在同一組用戶(hù)和項(xiàng)目之間有不同的語(yǔ)義,且不同的用戶(hù)之間對(duì)元路徑的偏好也不同,所以本文對(duì)每組用戶(hù)和項(xiàng)目都學(xué)習(xí)不同的元路徑的權(quán)重,給定用戶(hù)的嵌入向量xu,項(xiàng)目的嵌入向量yi,則對(duì)于用戶(hù)u和項(xiàng)目i之間的第k條元路徑的嵌入權(quán)重的計(jì)算公式為
α(1)u,i,k=σ(W(1)uxu+W(1)pkhpk+W(1)iyi+b(1))(4)
α(2)u,i,k=σ(W(2)α(1)u,i,k+b(2))(5)
其中:W(1)u、W(1)pk和W(1)i為第一層的權(quán)重矩陣;b(1)為第一層的偏置向量;W(2)和b(2)分別為第二層的權(quán)重矩陣和偏置向量;σ為激活函數(shù),本文采用LeakyReLU函數(shù)。之后通過(guò)softmax函數(shù)對(duì)求得的權(quán)重進(jìn)行歸一化,得到每個(gè)的元路徑的注意力分?jǐn)?shù)。
αu,i,k=exp(α(2)u,i,k)∑p∈Pexp(α(2)u,i,p)(6)
元路徑的注意力分?jǐn)?shù)即為該元路徑對(duì)推薦模型的重要程度,獲得不同元路徑的注意力分?jǐn)?shù)后,就可以得到用戶(hù)和項(xiàng)目之間聚合的元路徑的嵌入。
cu→i=∑k∈Pαu,i,k·hk(7)
其中:hk是式(2)獲得的單個(gè)元路徑的嵌入;αu,i,k為其對(duì)應(yīng)的注意力分?jǐn)?shù)。
2.3 基于注意力機(jī)制修正用戶(hù)和項(xiàng)目的嵌入
在實(shí)際的推薦問(wèn)題中,每個(gè)用戶(hù)都會(huì)受到家人、朋友或同事的喜好影響,因此對(duì)某個(gè)特定用戶(hù)的推薦也會(huì)受到和其偏好相近的用戶(hù)的影響。每個(gè)項(xiàng)目的特征也應(yīng)該和與這個(gè)項(xiàng)目相似度高的項(xiàng)目存在某些關(guān)聯(lián),所以本文通過(guò)尋找與用戶(hù)最相近的L個(gè)用戶(hù),通過(guò)這些用戶(hù)的特征修正用戶(hù)的原始特征嵌入,同樣,對(duì)每個(gè)項(xiàng)目用與其最相近的L個(gè)項(xiàng)目來(lái)修正。用戶(hù)uk最相近的L個(gè)用戶(hù)表示為uk1,uk2,…,ukL,項(xiàng)目ij最相近的L個(gè)項(xiàng)目表示為ij1,ij2,…,ijL,具體操作如下:
αup=CNN([uk1,uk2,…,ukL]T,θ)(8)
βiq=CNN([ij1,ij2,…,ijL]T,θ)(9)
以式(8)為例,其中,CNN表示卷積神經(jīng)網(wǎng)絡(luò),輸入?yún)?shù)為[uk1,uk2,…,ukL]T表示一個(gè)由向量uk1,uk2,…,ukL組成的矩陣的轉(zhuǎn)置,ukl∈Euclid ExtraaBpd×1,d為特征向量的嵌入維度,θ為卷積神經(jīng)網(wǎng)絡(luò)的參數(shù)。本文采用兩層卷積層和一層池化層來(lái)聚合鄰居特征,CNN的輸出為含有用戶(hù)特征信息的d維向量αup=[αup1,αup2,…,αupd]T。將輸出通過(guò)softmax函數(shù)進(jìn)行歸一化修正。
upj=exp(αupj)∑m∈dexp(αupm)(10)
iqk=exp(αiqk)∑m∈dexp(αiqm)(11)
然后,用式(10)(11)得到的用戶(hù)和項(xiàng)目的修正向量up=[up1,up2,…,upd]T和iq=[iq1,iq2,…,iqd]T來(lái)修正用戶(hù)和項(xiàng)目的原始嵌入。
u=u⊙xu(12)
i=i⊙yi(13)
除了用戶(hù)的個(gè)人偏好和項(xiàng)目的相似關(guān)系,連接用戶(hù)和項(xiàng)目的元路徑也會(huì)影響它們的嵌入表示,給定用戶(hù)和項(xiàng)目之間的元路徑cu→i,通過(guò)單層神經(jīng)網(wǎng)絡(luò)來(lái)計(jì)算注意力向量 βu和 βi。
βu=σ(Wuu+W(1)u→icu→i+bu)(14)
βi=σ(Wii+W(2)u→icu→i+bi)(15)
其中:Wu、Wi、W(1)u→i、W(2)u→i為神經(jīng)網(wǎng)絡(luò)的權(quán)重矩陣;bu和bi為偏置向量;σ為L(zhǎng)eakyReLU激活函數(shù),最后通過(guò)注意力向量 βu和βi來(lái)計(jì)算用戶(hù)和項(xiàng)目的最終嵌入。
xu=u⊙βu(16)
yi=i⊙βi(17)
2.4 基于注意力機(jī)制和HIN元路徑的預(yù)測(cè)
至此,本文獲得了修正后的用戶(hù)u的嵌入xu、項(xiàng)目i的嵌入 yi和〈u,i〉之間元路徑的嵌入cu→i,將上述三個(gè)向量拼接,并輸入全連接神經(jīng)網(wǎng)絡(luò)中生成預(yù)測(cè)結(jié)果。
ru→i=MLP(xu⊕cu→i⊕yi)(18)
傳統(tǒng)的推薦任務(wù)中通常采用均方損失函數(shù),但本文模型只能得到隱式的反饋,受文獻(xiàn)[33]啟發(fā),本文的損失函數(shù)表示為
L=-log ru,i-Ej~Pneg[log(1-ru,j)](19)
其中:第一項(xiàng)模擬觀察到的相互作用;第二項(xiàng)模擬從噪聲分布中得到的負(fù)反饋,在本文中負(fù)采樣分布pneg設(shè)置為均勻分布。
3 實(shí)驗(yàn)設(shè)計(jì)與分析
3.1 實(shí)驗(yàn)設(shè)計(jì)
3.1.1 數(shù)據(jù)集
本文采用MovieLens電影數(shù)據(jù)集(https://grouplens.org/datasets/movielens)和Last_FM音樂(lè)數(shù)據(jù)集(https://www.last.fm)兩個(gè)被廣泛使用的數(shù)據(jù)集。MovieLens數(shù)據(jù)集包含用戶(hù)、電影以及用戶(hù)對(duì)電影的評(píng)分;Last_FM數(shù)據(jù)集包含用戶(hù)、藝術(shù)家和用戶(hù)收聽(tīng)藝術(shù)家歌曲的次數(shù)。數(shù)據(jù)集的詳細(xì)信息如表1所示。
3.1.2 評(píng)價(jià)指標(biāo)
為了評(píng)估推薦模型的性能,本文將數(shù)據(jù)集中用戶(hù)和項(xiàng)目的交互記錄隨機(jī)分為訓(xùn)練集和測(cè)試集,80%作為訓(xùn)練集,20%作為測(cè)試集。由于在測(cè)試的時(shí)候?qū)λ械挠脩?hù)進(jìn)行訓(xùn)練是很耗時(shí)的,所以對(duì)測(cè)試集中的每個(gè)正樣本都隨機(jī)抽取50個(gè)與目標(biāo)用戶(hù)沒(méi)有交互記錄的項(xiàng)目作為負(fù)樣本。然后,將包含正樣本和負(fù)樣本的列表進(jìn)行排序。本實(shí)驗(yàn)使用top-k精確率(Pre@k),top-k召回率(recall@k)和歸一化折損累積增益(NDGG@k)作為模型的評(píng)價(jià)指標(biāo)。最終的結(jié)果為所有用戶(hù)結(jié)果的平均值。
3.1.3 對(duì)比方法
為了證明模型的有效性,本實(shí)驗(yàn)考慮了兩類(lèi)具有代表性的推薦方法。一類(lèi)是只考慮隱式反饋的基于協(xié)同過(guò)濾的方法,如BPR和MF;另一類(lèi)是基于異質(zhì)信息網(wǎng)絡(luò)的方法,如MMGRec、UIDRec、HeteRS、FMGrank和MCRec。
對(duì)比方法介紹如下:a)BPR[34]是基于矩陣分解的排序算法,通過(guò)成對(duì)排序損失最小化來(lái)優(yōu)化矩陣分解;b)MF[31]是標(biāo)準(zhǔn)的矩陣分解算法;c)MMGRec[28]是一種基于層次粒化和圖注意力機(jī)制的推薦算法;d)UIDRec[30]是一種基于LSTM和注意力機(jī)制建模用戶(hù)興趣漂移的推薦模型;e)HeteRS[35]是一種基于異質(zhì)信息網(wǎng)絡(luò)的排名算法,它使用多變量馬爾可夫鏈來(lái)建模用戶(hù)喜好;f)FMGrank[27]是一種基于異質(zhì)信息網(wǎng)絡(luò)的評(píng)級(jí)預(yù)測(cè)模型,采用成對(duì)排序損失最小化作為優(yōu)化目標(biāo);g)MCRec[13]是采用協(xié)同注意力機(jī)制的推薦模型,通過(guò)用戶(hù)、項(xiàng)目和元路徑相互修正進(jìn)行推薦排序。
3.1.4 參數(shù)設(shè)置
對(duì)兩個(gè)數(shù)據(jù)集選取的元路徑如表2所示,因過(guò)長(zhǎng)的元路徑可能會(huì)引入噪聲信息[22],本文對(duì)不同的用戶(hù)和項(xiàng)目選取的元路徑步長(zhǎng)不超過(guò)4。路徑實(shí)例數(shù)至多為5,在本文模型中,采用正態(tài)分布隨機(jī)初始化模型參數(shù),利用Adam優(yōu)化器對(duì)模型進(jìn)行優(yōu)化,batch_size設(shè)置為256,epoch設(shè)置為30,用戶(hù)和項(xiàng)目的嵌入維度為64維,正負(fù)樣本采樣比例為1∶4,模型預(yù)測(cè)的MLP隱藏層數(shù)設(shè)置為3層,每層神經(jīng)元的個(gè)數(shù)分別為[256,128,64]。
3.2 結(jié)果與參數(shù)分析
3.2.1 實(shí)驗(yàn)結(jié)果
AMMRec模型與對(duì)比模型在兩個(gè)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果比較如表3所示,可以看出,本文模型在MovieLens和Last_FM數(shù)據(jù)集上的三個(gè)評(píng)價(jià)指標(biāo)均明顯優(yōu)于基線模型。結(jié)果表明,AMMRec模型可以有效提升推薦精度,因此得出以下結(jié)論:
基于注意力機(jī)制和異質(zhì)信息網(wǎng)絡(luò)元路徑的推薦模型在精確率、召回率以及歸一化折損累積增益指標(biāo)上較基線模型均有顯著提升,證明本文模型可以有效地融合多種異質(zhì)信息來(lái)進(jìn)行推薦;
與同樣使用元路徑提取異質(zhì)信息來(lái)進(jìn)行推薦的MCRec模型相比,AMMRec在上述數(shù)據(jù)集的評(píng)價(jià)指標(biāo)均優(yōu)于MCRec,這表明本文模型中融合的注意力神經(jīng)網(wǎng)絡(luò)模型可以更有效地提取特征向量之間的潛在特征,能更充分地利用向量之間的交互關(guān)系,得到更精確的推薦結(jié)果。
3.2.2 參數(shù)分析
1)不同元路徑對(duì)模型的影響
為了分析不同元路徑對(duì)AMMRec的影響,現(xiàn)將不同元路徑逐個(gè)合并到模型中,通過(guò)對(duì)比評(píng)價(jià)指標(biāo)的變化來(lái)驗(yàn)證不同的元路徑對(duì)模型推薦結(jié)果的影響。結(jié)果如圖3所示,可以看出模型的推薦性能整體上隨著元路徑的加入而提高,同時(shí)不同的元路徑對(duì)模型的性能提升的比重也不同,這也和之前的發(fā)現(xiàn)相吻合,即少量的高質(zhì)量的元路徑能對(duì)模型的性能作出較大提升[23]。因此,本文可以通過(guò)對(duì)元路徑的選擇來(lái)控制模型的復(fù)雜度,提升推薦的效率。
(a)精確率和召回率
(b)歸一化折損累積增益
圖3 逐個(gè)添加元路徑對(duì)實(shí)驗(yàn)結(jié)果的影響
Fig. 3 Effect of gradually adding meta-paths on experimental results
2)不同元路徑的注意力權(quán)重
在AMMRec中,元路徑在用戶(hù)與項(xiàng)目的交互中發(fā)揮了重要作用,在不同的用戶(hù)和項(xiàng)目中,元路徑的權(quán)重也不同。本文以Last_FM數(shù)據(jù)集為例,從中任選一個(gè)用戶(hù)項(xiàng)目對(duì)〈u547,a8117〉,其交互中的元路徑注意力分布如圖4所示。
可以發(fā)現(xiàn)在這次交互中元路徑UATA發(fā)揮了重要的作用。通過(guò)查閱數(shù)據(jù)集可發(fā)現(xiàn),a8117的標(biāo)簽中包含了u547最喜歡的部分標(biāo)簽,如tag192、tag193、tag247等。因此以標(biāo)簽為導(dǎo)向的元路徑在這次交互中占據(jù)比重較大。本模型中不同的用戶(hù)和項(xiàng)目可以產(chǎn)生不同的元路徑注意力權(quán)重分布,使推薦結(jié)果具有良好的可解釋性。
3)負(fù)樣本個(gè)數(shù)和隱藏層層數(shù)對(duì)預(yù)測(cè)結(jié)果的影響
AMMRec模型包含了一些需要調(diào)整的重要參數(shù),此處主要考察式(18)中的MLP中隱藏層的層數(shù)和式(19)的負(fù)采樣中負(fù)樣本的個(gè)數(shù)這兩個(gè)超參數(shù)對(duì)結(jié)果的影響。對(duì)負(fù)樣本個(gè)數(shù),本文分別從1取到5,對(duì)于隱藏層層數(shù),本文分別從1取到4,通過(guò)評(píng)價(jià)指標(biāo)的變化來(lái)判斷這兩個(gè)超參數(shù)對(duì)預(yù)測(cè)結(jié)果的影響。
總體而言AMMRec對(duì)負(fù)樣本個(gè)數(shù)變化較為敏感,對(duì)隱藏層的層數(shù)變化不敏感。如圖5、6所示,在負(fù)樣本數(shù)量為4、隱藏層層數(shù)為3時(shí),本文模型取得最好的結(jié)果。
4 結(jié)束語(yǔ)
本文提出了基于注意力機(jī)制和異質(zhì)信息網(wǎng)絡(luò)元路徑的AMMRec推薦模型,充分地利用了異構(gòu)信息網(wǎng)絡(luò)中的輔助信息進(jìn)行推薦。AMMRec首先利用HIN2Vec模型獲得用戶(hù)與項(xiàng)目的原始嵌入;然后基于卷積神經(jīng)網(wǎng)絡(luò)模型獲得元路徑的低維嵌入;之后通過(guò)融合的注意力機(jī)制將元路徑的嵌入和用戶(hù)、項(xiàng)目的嵌入相互修正;最后將用戶(hù)、元路徑和項(xiàng)目的嵌入拼接并輸入神經(jīng)網(wǎng)絡(luò)完成推薦預(yù)測(cè)。在兩個(gè)實(shí)際數(shù)據(jù)集上與兩類(lèi)主流算法進(jìn)行對(duì)比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果顯示,AMMRec的推薦精度最高提升了9.5%,證明了此模型的有效性。另外本文模型通過(guò)用戶(hù)和項(xiàng)目的嵌入來(lái)學(xué)習(xí)不同元路徑的權(quán)重使得其具有良好的可解釋性。
但AMMRec的元路徑是手動(dòng)選取的,今后可以考慮如何找到一種有效的方法來(lái)自動(dòng)完成元路徑的選取,或者進(jìn)一步利用元圖等HIN中更復(fù)雜的結(jié)構(gòu)模式來(lái)進(jìn)行推薦。
參考文獻(xiàn):
[1]Jacoby J. Perspectives on information overload[J]. Journal of Consumer Research,1984,10(4): 432-435.
[2]Zhang Jing,Peng Qinke,Sun Shiquan,et al. Collaborative filtering recommendation algorithm based on user preference derived from item domain features[J]. Physica A: Statistical Mechanics and Its Applications,2014,396(2): 66-76.
[3]Dong Jiali,Li Xiaoyong,F(xiàn)ang Binxing. A recommendation system based on multi-attribute[C]// Proc of the 9th International Conference on Service Science. Piscataway,NJ: IEEE Press,2016: 165-169.
[4]Hu Binbin,Shi Chuan,Zhao Xin,et al. Leveraging meta-path based context for top-n recommendation with a neural co-attention model[C]// Proc of the 24th ACM SIGKDD International Conference on Knowledge Discovery amp; Data Mining. New York: ACM Press,2018: 1531-1540.
[5]Sun Rui,Cao Xuezhi,Zhao Yan,et al. Multi-modal knowledge graphs for recommender systems[C]// Proc of the 29th ACM International Conference on Information amp; Knowledge Management. New York: ACM Press,2020: 1405-1414.
[6]Wang Hongwei,Zhang Fuzheng,Wang Jialin,et al. RippleNet: propagating user preferences on the knowledge graph for recommender systems[C]// Proc of the 27th ACM International Conference on Information and Knowledge Management.New York:ACM Press,2018:417-426.
[7]Rendle S. Factorization machines[C]// Proc of IEEE International Conference on Data Mining.Piscataway,NJ:IEEE Press,2010:995-1000.
[8]Cheng H T,Koc L,Harmsen J,et al. Wide amp; deep learning for recommender systems[C]// Proc of the 1st Workshop on Deep Learning for Recommender Systems. New York: ACM Press,2016: 7-10.
[9]Guo Huifeng,Tang Ruiming,Ye Yunming,et al. DeepFM: a factorization-machine based neural network for CTR prediction [EB/OL]. (2017-03-13). https://arxiv. org/abs/1703. 04247.
[10]Zhang Weinan,Du Tianming,Wang Jun. Deep learning over multi-field categorical data[C]// Proc of European Conference on Information Retrieval. Berlin: Springer,2016: 45-57.
[11]Qu Yanru,Cai Han,Ren Kan,et al. Product-based neural networks for user response prediction[C]// Proc of the 16th International Conference on Data Mining. 2016: 1149-1154.
[12]Shi Chuan,Hu Binbin,Zhao Xin,et al. Heterogeneous information network embedding for recommendation[J]. IEEE Trans on Know-ledge and Data Engineering,2018,31(2): 357-370.
[13]Hu Binbin,Shi Chuan,Zhao Xin,et al. Leveraging meta-path based context for top-n recommendation with a neural co-attention model[C]// Proc of the 24th ACM SIGKDD International Conference on Knowledge Discovery amp; Data Mining. New York: ACM Press,2018: 1531-1540.
[14]Peng Jiajie,Wang Yuxian,Guan Jiaojiao,et al. An end-to-end heterogeneous graph representation learning-based framework for drug-target interaction prediction[J/OL]. Brief Bioinform,2021. https://doi.org/10.1093/bib/bbaa430.
[15]Mo Xiaoyu,Huang Zhiyu,Xing Yang,et al. Multi-agent trajectory prediction with heterogeneous edge-enhanced graph attention network [J]. IEEE Trans on Intelligent Transportation Systems,2022,23(7): 9554-9567.
[16]Shang Jingbo,Qu Meng,Liu Jialu,et al. Meta-path guided embedding for similarity search in large-scale heterogeneous information networks [EB/OL]. (2016-10-31). https://arxiv. org/abs/1610. 09769.
[17]Bruna J,Zaremba W,Szlam A,et al. Spectral networks and locally connected networks on graphs[EB/OL]. (2013-12-21). https://arxiv. org/abs/1312. 6203.
[18]Kipf T N,Welling M. Semi-supervised classification with graph con-volutional networks[EB/OL]. (2016-09-09). https://arxiv. org/abs/1609. 02907.
[19]Velikovic' P,Cucurull G,Casanova A,et al. GAT-graph attention networks[EB/OL].(2017-10-30).https://arxiv.org/abs/1710.10903.
[20]Hamilton W,Ying Z,Leskovec J. Inductive representation learning on large graphs [EB/OL]. (2017-07-22). https://arxiv.org/abs/1706.02216.
[21]石川,王睿嘉,王嘯. 異質(zhì)信息網(wǎng)絡(luò)分析與應(yīng)用綜述[J]. 軟件學(xué)報(bào),2022,33(2): 598-621. (Shi Chuan,Wang Ruijia,Wang Xiao. Survey on heterogeneous information networks analysis and applications[J]. Journal of Software,2022,33(2): 598-621.)
[22]Shi Chuan,Zhang Zhiqiang,Ji Yugang,et al. SemRec: a personalized semantic recommendation method based on weighted heterogeneous information networks[J]. World Wide Web-Internet amp; Web Information Systems,2019,22(1): 153-184.
[23]Chen Hongxu,Li Yicong,Sun Xiangguo,et al. Temporal meta-path guided explainable recommendation[C]// Proc of the 14th ACM International Conference on Web Search and Data Mining. New York: ACM Press,2021: 1056-1064.
[24]Liang Xingxing,Ma Yang,Cheng Guangquan,et al. Meta-path-based heterogeneous graph neural networks in academic network[J]. International Journal of Machine Learning and Cybernetics,2022,13(6): 1553-1569.
[25]Feng Wei,Wang Jianyong. Incorporating heterogeneous information for personalized tag recommendation in social tagging systems[C]// Proc of the 18th ACM SIGKDD International Conference on Knowledge Disco-very and Data Mining. New York: ACM Press,2012: 1276-1284.
[26]Yu Xiao,Ren Xiang,Sun Yizhou,et al. Personalized entity recommendation: a heterogeneous information network approach[C]// Proc of the 7th ACM International Conference on Web Search and Data Mining. New York: ACM Press,2014: 283-292.
[27]Zhao Huan,Yao Quanming,Li Jiada,et al. Meta-graph based recommendation fusion over heterogeneous information networks [C]// Proc of the 23rd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York: ACM Press,2017: 635-644.
[28]劉志鑫,張澤華,張杰. 基于多層次多視角的圖注意top-n推薦方法 [J]. 計(jì)算機(jī)科學(xué),2021,48(4): 104-110. (Liu Zhixin,Zhang Zehua,Zhang Jie. Top-n recommendation method for graph attention based on multi-level and multi-view [J]. Computer Science,2021,48(4): 104-110.)
[29]劉浩翰,馬曉璐,賀懷清. 融合用戶(hù)興趣漂移的top-n推薦算法 [J]. 中國(guó)民航大學(xué)學(xué)報(bào),2021,39(3): 56-61. (Liu Haohan,Mao Xiaolu,He Huaiqing. Top-n recommendation algorithm based on user’s interest drift[J]. Journal of Civil Aviation University of China,2021,39(3): 56-61.)
[30]楊丹陽(yáng),孫英娟,李婉樺,等. 基于深度學(xué)習(xí)的top-n順序推薦[J]. 長(zhǎng)春師范大學(xué)學(xué)報(bào),2021,40(8): 32-36. (Yang Danyang,Sun Yingjuan,Li Wanhua,et al. Top-n sequential recommendation based on deep learning[J]. Journal of Changchun Normal University,2021,40(8): 32-36.)
[31]Koren Y,Bell R,Volinsky C. Matrix factorization techniques for recommender systems[J]. Computer,2009,42(8): 30-37.
[32]Fu Taoyang,Lee W C,Lei Zhen. HIN2Vec: explore meta-paths in heterogeneous information networks for representation learning[C]// Proc of ACM on Conference on Information and Knowledge Management. New York: ACM Press,2017: 1797-1806.
[33]He Xiangnan,Liao Lizi,Zhang Hanwang,et al. Neural collaborative filtering[C]// Proc of the 26th International Conference on World Wide Web. New York: ACM Press,2017: 173-182.
[34]Rendle S,F(xiàn)reudenthaler C,Gantner Z,et al. BPR: Bayesian perso-nalized ranking from implicit feedback[EB/OL]. (2012-05-09). https://arxiv. org/abs/1205. 2618.
[35]Pham T,Li Xutao,Gao Cong,et al. A general recommendation model for heterogeneous networks[J]. IEEE Trans on Knowledge and Data Engineering,2016,28(12): 3140-3153.
[36]Mnih V,Heess N,Graves A. Recurrent models of visual attention[C]// Proc of the 27th International Conference on Neural Information Processing Systems. New York: ACM Press,2014: 2204-2212.