王光 尹凱
收稿日期:2023-06-07;修回日期:2023-08-04? 基金項(xiàng)目:國家自然科學(xué)基金資助項(xiàng)目(62173171)
作者簡介:王光(1979—),男,山東鄒城人,副教授,碩導(dǎo),碩士,主要研究方向?yàn)閳D神經(jīng)網(wǎng)絡(luò)、推薦系統(tǒng);尹凱(1997—),男(通信作者),河南洛陽人,碩士研究生,主要研究方向?yàn)閳D神經(jīng)網(wǎng)絡(luò)、推薦系統(tǒng)(1424195159@qq.com).
摘? 要:為了緩解推薦系統(tǒng)中不同用戶社交空間與興趣空間的內(nèi)在信息差異和忽視高階鄰居的問題,提出了一種融合用戶社交關(guān)系的自適應(yīng)圖卷積推薦算法(adaptive graph convolutional recommendation algorithm integrating user social relationships,AGCRSR)。首先,模型在嵌入層使用映射矩陣將初始特征向量轉(zhuǎn)換為自適應(yīng)嵌入;其次,引入注意力機(jī)制聚合不同方面的用戶嵌入,通過圖卷積網(wǎng)絡(luò)來線性學(xué)習(xí)用戶和項(xiàng)目的潛在表示;最后,通過自適應(yīng)模塊聚合用戶表示并利用內(nèi)積函數(shù)預(yù)測用戶對(duì)項(xiàng)目的最終推薦結(jié)果。在數(shù)據(jù)集LastFM和Ciao上與其他基線算法進(jìn)行了對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明AGCRSR的推薦效果較其他算法有顯著提升。
關(guān)鍵詞:圖卷積神經(jīng)網(wǎng)絡(luò);注意力機(jī)制;社交關(guān)系;推薦系統(tǒng)
中圖分類號(hào):TP301.6??? 文獻(xiàn)標(biāo)志碼:A
文章編號(hào):1001-3695(2024)02-024-0482-06
doi:10.19734/j.issn.1001-3695.2023.06.0249
Adaptive graph convolutional recommendation algorithm
integrating user social relationships
Wang Guang,Yin Kai
(School of Software,Liaoning Technical University,Huludao Liaoning 125105,China)
Abstract:In order to alleviate the inherent information differences between different user social spaces and interest spaces in recommendation systems and the problem of ignoring high-order neighbors,this paper proposed AGCRSR.Firstly,the algorithm used a mapping matrix in the embedding layer to convert the initial feature vectors into adaptive embedding.Secondly,it introduced an attention mechanism to aggregate different aspects of user embeddings,and used a graph convolutional network to li-nearly learn the potential representations of users and items.Finally,it used the adaptive module to aggregate user representations and predict the final recommendation results of users for the project using the inner product function.This paper conducted comparative experiments on the LastFM and Ciao datasets and compared with other baseline algorithms.The experimental results show that the recommendation performance of the AGCRSR is significantly improved compared to other algorithms.
Key words:graph convolutional neural network;attention mechanism;social relationships;recommendation system
0? 引言
近年來,隨著無線網(wǎng)絡(luò)技術(shù)的快速發(fā)展,互聯(lián)網(wǎng)中可用信息的增長速度變得越來越快[1~3]。推薦系統(tǒng)通過預(yù)測用戶對(duì)物品的興趣偏好,幫助人們緩解信息過載的問題,并提供個(gè)性化的推薦服務(wù)[4~7]。傳統(tǒng)的推薦系統(tǒng)主要依靠用戶和物品的交互信息,學(xué)習(xí)用戶和物品的低維潛在表示,然而當(dāng)數(shù)據(jù)稀缺時(shí),傳統(tǒng)方法的表示能力將受到限制。協(xié)同過濾推薦算法是一種常用的方法,它通過對(duì)用戶和物品的交互記錄建模來預(yù)測用戶對(duì)物品的興趣偏好。在過去的發(fā)展中,協(xié)同過濾從早期的矩陣分解發(fā)展到基于神經(jīng)網(wǎng)絡(luò)的方法,以及現(xiàn)在的基于圖神經(jīng)網(wǎng)絡(luò)的方法,這些方法仍然存在著數(shù)據(jù)稀疏和冷啟動(dòng)這兩個(gè)重要問題。研究[8~10]表明,用戶的社交網(wǎng)絡(luò)關(guān)系對(duì)于預(yù)測用戶的興趣偏好具有重要的影響,因此,引入社交信息作為輔助來增強(qiáng)推薦系統(tǒng)的推薦能力并解決數(shù)據(jù)稀疏和冷啟動(dòng)問題成為一個(gè)研究的焦點(diǎn)。通常會(huì)對(duì)用戶-項(xiàng)目的交互信息和社交關(guān)系信息進(jìn)行建模,分別構(gòu)成用戶項(xiàng)目交互圖和社交網(wǎng)絡(luò)圖。推薦系統(tǒng)利用社交信息改進(jìn)的方法一般有兩種:a)將用戶項(xiàng)目交互圖和社交圖整合成一個(gè)異構(gòu)圖,并統(tǒng)一學(xué)習(xí)圖中每個(gè)節(jié)點(diǎn)的表示,這種方法可以充分利用用戶之間的社交關(guān)系,通過在異構(gòu)圖上進(jìn)行信息傳遞和聚合來學(xué)習(xí)更豐富的用戶和物品表示;b)將用戶在用戶項(xiàng)目交互圖和社交網(wǎng)絡(luò)圖中的信息分別進(jìn)行建模,利用圖神經(jīng)網(wǎng)絡(luò)對(duì)用戶項(xiàng)目交互圖和社交網(wǎng)絡(luò)圖進(jìn)行學(xué)習(xí),得到每個(gè)圖中用戶節(jié)點(diǎn)的表示向量,然后將這兩個(gè)表示向量進(jìn)行合并形成一個(gè)綜合的用戶表示,通過這種方式可以綜合考慮用戶在交互行為和社交關(guān)系方面的信息,提高推薦系統(tǒng)的性能。
推薦系統(tǒng)中社交推薦的研究也變得越來越多,早期的基于因子分解的模型[11,12]將社交關(guān)系視為共現(xiàn)矩陣,并將其與用戶物品交互矩陣共同分解;后來,基于正則化的方法[13,14]通過一個(gè)關(guān)于社會(huì)關(guān)系的圖拉普拉斯項(xiàng)來細(xì)化用戶嵌入學(xué)習(xí);文獻(xiàn)[15,16]表明,利用社交影響力傳播是提高個(gè)性化推薦的一種非常有效的策略。雖然這些方法都是有效的,但是仍然有兩個(gè)局限性:
a)忽視了用戶興趣圖中高階鄰居的重要性,最后導(dǎo)致嵌入的結(jié)果很不理想。如圖1所示,用戶u2與項(xiàng)目i1之間雖然沒有交互,但向好友u3推薦了項(xiàng)目i1,因?yàn)楹糜製1與項(xiàng)目i1有過交互。類似地,這種傳遞性由此形成了一條傳播鏈:u1→u2→u3→u4。另外對(duì)于不喜歡社交的用戶u5,由于用戶u5、u2在用戶興趣圖上有相同的偏好項(xiàng)目i2、i3,可以推斷出用戶u5和u2有相似的興趣偏好。所以,即使用戶u5與項(xiàng)目i4沒有交互,它對(duì)學(xué)習(xí)u5的嵌入仍然非常有幫助。因?yàn)榇嬖谥鴥蓷l興趣傳播路徑,即i4→u2→i2→u5和 i4→u2→i3→u5。
b)忽視了不同用戶之間社交影響空間和用戶興趣空間的內(nèi)在信息差異,如用戶u7在這兩個(gè)空間中具有相同數(shù)量的行為記錄,而用戶u4在社交影響空間中只有一個(gè)連接。但是在同一個(gè)語義空間內(nèi)對(duì)這兩種類型的行為數(shù)據(jù)建模顯然是不合理的。
為了解決上述存在的問題,本文提出一種融合用戶社交關(guān)系的自適應(yīng)圖卷積推薦算法AGCRSR。首先,將基于輕量級(jí)圖卷積網(wǎng)絡(luò)的表示傳播機(jī)制,同時(shí)應(yīng)用于用戶-項(xiàng)目交互圖和社交網(wǎng)絡(luò)圖。其次,引入注意力機(jī)制來嵌入聚合不同方面用戶在推薦中的重要程度,以此更好地推斷用戶對(duì)物品的偏好。然后,設(shè)計(jì)了一種特定的門控機(jī)制,用于自適應(yīng)調(diào)節(jié)不同用戶在社交關(guān)系影響下對(duì)項(xiàng)目偏好的重要性。本文主要方法包括如下幾個(gè)步驟:a)為了解決不同用戶之間社交影響空間和用戶興趣空間的內(nèi)在信息差異,在嵌入層使用兩個(gè)投影矩陣,抵消兩個(gè)行為空間的信息差異;b)為了解決用戶冷啟動(dòng)和用戶興趣圖中忽視高階鄰居的問題,通過注意力機(jī)制來聚合不同方面對(duì)用戶的重要性,增強(qiáng)交互空間的用戶嵌入,再將社交信息與用戶項(xiàng)目信息的在圖卷積模塊進(jìn)行嵌入傳播聚合。將本文算法與其他五個(gè)基線模型進(jìn)行對(duì)比研究,并利用兩個(gè)真實(shí)數(shù)據(jù)集的定量分析驗(yàn)證了算法的有效性。
1? 相關(guān)工作
1.1? 圖神經(jīng)網(wǎng)絡(luò)推薦
圖神經(jīng)網(wǎng)絡(luò)(graph neural network,GNN)是近年來在深度學(xué)習(xí)領(lǐng)域取得重大突破的一種神經(jīng)網(wǎng)絡(luò)架構(gòu),它能夠有效地利用圖結(jié)構(gòu)數(shù)據(jù)中節(jié)點(diǎn)和邊的信息,提取有意義的特征表示,進(jìn)而改善推薦的準(zhǔn)確性和個(gè)性化程度。推薦系統(tǒng)中用戶與項(xiàng)目的交互可以抽象為異構(gòu)圖,在與圖神經(jīng)網(wǎng)絡(luò)的結(jié)合中取得了良好的效果。文獻(xiàn)[17]提出了一種用于社交推薦的神經(jīng)網(wǎng)絡(luò)模型,該模型通過圖結(jié)構(gòu)聚合鄰域特征,學(xué)習(xí)用戶和物品的特征表示。文獻(xiàn)[18]提出使用GraphSAGE[19]框架來學(xué)習(xí)項(xiàng)目圖上帶有屬性的項(xiàng)目嵌入。該算法對(duì)高階鄰居中固定大小的節(jié)點(diǎn)進(jìn)行采樣,然后使用聚合器對(duì)采樣的節(jié)點(diǎn)進(jìn)行聚合,以學(xué)習(xí)中心節(jié)點(diǎn)的嵌入表示。隨后NGCF[20]算法利用GNN模型對(duì)用戶-物品交互圖進(jìn)行顯式建模。然而研究表明,在GCN中的某些組成部分對(duì)于推薦問題是冗余的,甚至可能對(duì)推薦準(zhǔn)確度產(chǎn)生負(fù)面影響。為了解決這個(gè)問題,研究人員提出了輕量級(jí)GCN模型(LightGCN)[21],它基于GCN但去除了線性變換和非線性激活這兩個(gè)操作。與傳統(tǒng)的GCN相比,輕量級(jí)GCN在常用的幾個(gè)指標(biāo)上表現(xiàn)更優(yōu)秀。文獻(xiàn)[22]利用圖的傳播特性,提出了一種基于圖卷積神經(jīng)網(wǎng)絡(luò)的社交推薦模型SocialGCN。該模型引入了GCN,目的是利用GCN來模擬用戶偏好在社交網(wǎng)絡(luò)中的擴(kuò)散過程,從而更好地學(xué)習(xí)特征表示。這些工作證明了在推薦系統(tǒng)中使用GNN框架學(xué)習(xí)嵌入的有效性。
1.2? 社交推薦
推薦系統(tǒng)提高準(zhǔn)確度通常會(huì)引入附加信息,社交推薦正是利用了用戶之間的社交關(guān)系來緩解傳統(tǒng)協(xié)同過濾中的數(shù)據(jù)稀疏和冷啟動(dòng)問題。引入社交關(guān)系的推薦方法分為基于社交矩陣分解(MF)的方法和基于圖神經(jīng)網(wǎng)絡(luò)(GNN)的方法。目前的社交矩陣分解方法是通過聯(lián)合分解評(píng)價(jià)矩陣和社交關(guān)系矩陣,或者通過正則化約束用戶和物品的嵌入與社交關(guān)系。SocialMF[23]在用戶興趣和他的朋友的平均加權(quán)興趣中添加正則化來減小差異。SoRec[24]通過共享用戶嵌入來共同分解評(píng)價(jià)矩陣和社交關(guān)系矩陣。HGMF[25]引入了一種分層群矩陣分解(HGMF)技術(shù)來學(xué)習(xí)社交網(wǎng)絡(luò)中的用戶群體特征并進(jìn)行推薦。GNN則是直接從圖中進(jìn)行節(jié)點(diǎn)嵌入。Fan等人[26]提出了GraphRec通過融合一階社交關(guān)系和項(xiàng)目一階鄰居來學(xué)習(xí)用戶表示進(jìn)行推薦。DiffNet[15]和DiffNet++[27]對(duì)社交影響和興趣擴(kuò)散在一個(gè)統(tǒng)一的框架內(nèi)進(jìn)行建模,以增強(qiáng)社交推薦。然而,這些方法更多地關(guān)注第一階鄰居,忽視了高階社交關(guān)系的影響。
2? 模型設(shè)計(jì)
2.1? 問題定義
定義1? 用戶和項(xiàng)目集合 基于圖的社交推薦問題中,設(shè)U、I分別表示N個(gè)用戶的集合|U|=N和M個(gè)項(xiàng)目的集合|I|=M。
定義2? 用戶項(xiàng)目圖。設(shè)用戶項(xiàng)目交互圖表示為GI,定義為{(u,yui,i|u∈U,i∈I)},其中U和I分別表示用戶集和項(xiàng)目集。邊yui>0表示用戶和項(xiàng)目之間有交互,yui=0表示它們之間沒有交互。Euclid Math OneNApIu表示用戶項(xiàng)目交互圖中與用戶有交互的項(xiàng)目集合,Euclid Math OneNApIi表示與項(xiàng)目有交互的用戶集合。
定義3? 用戶社交圖。設(shè)用戶社交圖表示為GS,定義為{(ui,sij,uj)|ui,uj∈U},其中邊sij=1表示用戶ui和uj具有社交聯(lián)系,而sij=0表示兩者之間沒有社交聯(lián)系。符號(hào)Euclid Math OneNAp? su表示用戶u在社交圖中互動(dòng)或關(guān)注的所有用戶。
定義4? 輸入和輸出。輸入為用戶項(xiàng)目圖為GI和社交圖GS,輸出預(yù)測用戶u和項(xiàng)目i連接的邊yui的值作為推薦的排名分?jǐn)?shù)。
2.2? 總體框架
本文設(shè)計(jì)了融合用戶社交關(guān)系的自適應(yīng)圖卷積推薦算法模型。該模型總體架構(gòu)如圖2所示,主要由三個(gè)部分組成:a)嵌入層,從用戶標(biāo)識(shí)符初始化用戶和項(xiàng)目的嵌入;b)傳播層,傳播社交圖和用戶-項(xiàng)目交互圖中的嵌入;c)預(yù)測層,根據(jù)由傳播層中的嵌入傳播過程獲得用戶和項(xiàng)目的最終表示,預(yù)測連接兩個(gè)節(jié)點(diǎn)的任意邊的值。
2.3? 嵌入層
圖嵌入使用向量e(0)u∈Euclid Math TwoRApd(e(0)i∈Euclid Math TwoRApd)來表示用戶u(項(xiàng)目i)的編碼。其中d是一個(gè)預(yù)先設(shè)定的參數(shù),表示嵌入的大小。嵌入使用用戶和項(xiàng)目的側(cè)面特征進(jìn)行初始化,也可以按照概率分布進(jìn)行初始化。初始化之后,嵌入層在推薦模型的訓(xùn)練過程中進(jìn)行迭代優(yōu)化。N個(gè)用戶的嵌入表示為一個(gè)矩陣E(0)U∈Euclid Math TwoRApN×d,其中用戶u的嵌入e(0)u是E(0)U的u行轉(zhuǎn)置。類似地,M個(gè)項(xiàng)目的嵌入表示為一個(gè)矩陣E(0)I∈Euclid Math TwoRApM×d,其中項(xiàng)目i的內(nèi)嵌e(0)i是E(0)I的i行轉(zhuǎn)置。HOSR[16]直接將所有用戶和項(xiàng)目的初始特征作為輸入向量:
qu=ETUeu
pu=ETIei
區(qū)別于HOSR中忽視了不同用戶之間社交影響空間和用戶興趣空間的內(nèi)在信息差異,AGCRSR模型在嵌入層使用兩個(gè)映射矩陣WI,WS∈Euclid Math TwoRApD×D將每個(gè)用戶的嵌入轉(zhuǎn)換為兩個(gè)自適應(yīng)嵌入。
qu=WIETUeu(1)
pu=WSETUeu(2)
2.4? 傳播層
通過嵌入層生成的用戶和項(xiàng)目的嵌入,對(duì)用戶-項(xiàng)目交互圖和社交圖上的用戶和項(xiàng)目的低維潛在特征進(jìn)行輕量卷積運(yùn)算。輕卷積操作通過去除線性變換和非線性激活操作,簡化了傳統(tǒng)的GCN其中,上標(biāo) “(K)”是一個(gè)層索引,表示嵌入是第K傳播層的輸出;上標(biāo)“(0)”表示嵌入層的輸出。在第k傳播層(k=1)中,取第k傳播層(第0傳播層為嵌入層)的嵌入值,輸出更新之后的嵌入。用戶嵌入和項(xiàng)目嵌入的更新過程中,對(duì)于用戶u,通過用戶項(xiàng)目交互圖和社交圖來更新第(k-1)層(記為e(k-1)u)輸出的用戶嵌入。對(duì)用戶u在用戶項(xiàng)目交互圖和社交圖中分別生成兩個(gè)嵌入,記為q(k)u和p(k)u。
q(k)u=∑i∈Euclid Math OneNApIu1Euclid Math OneNAp? IuEuclid Math OneNAp? Iie(k-1)i(3)
p(k)u=∑v∈Euclid Math OneNAp? Su1Euclid Math OneNAp? SuEuclid Math OneNAp? Sve(k-1)u(4)
其中:Euclid Math OneNAp? Su為用戶u在社交圖中的鄰域集合;Euclid Math OneNAp? Iu表示用戶項(xiàng)目交互圖中用戶u的鄰域集合。式(3)(4)通過聚合用戶相鄰節(jié)點(diǎn)在兩個(gè)圖中的嵌入來更新用戶u的嵌入。
αu,k=wT2·σ(w1(p(k)u⊙q(k)u)+b1)(5)
式(5)中用戶嵌入聚合提取與項(xiàng)目推薦相關(guān)的有效層面,用于在交互空間學(xué)習(xí)增強(qiáng)用戶嵌入。具體來說,通過引入注意力機(jī)制來聚合不同方面對(duì)用戶u的重要性,其中,αu,k為u在第k層的注意力分?jǐn)?shù),p(k)u是u在社交網(wǎng)絡(luò)中的第k個(gè)嵌入面;⊙表示哈達(dá)瑪積,將q(k)u和p(k)u的哈達(dá)瑪積輸入到注意力網(wǎng)絡(luò)中,該網(wǎng)絡(luò)根據(jù)用戶對(duì)項(xiàng)目的自身利益來區(qū)分有效方面。隨后,使用softmax函數(shù)對(duì)K個(gè)層面的注意力得分進(jìn)行歸一化。
αu,k=exp(αu,k)∑Kk′=1 exp (αu,k)? k∈{1,…,K}(6)
通過這種方式,注意力分?jǐn)?shù)能夠表明哪些方面的用戶對(duì)項(xiàng)目興趣是有用的信息。在αu,k的基礎(chǔ)上,將用戶嵌入集中起來,給出:
eu=qu+∑Kk=1αu,k·pu(7)
其中:eu是增強(qiáng)交互空間的用戶嵌入,它既包含u對(duì)項(xiàng)目的自身偏好,也包含相關(guān)的社交影響??傊?,通過提煉社交關(guān)系中與項(xiàng)目推薦相關(guān)的有效方面,從而更好地預(yù)測用戶對(duì)項(xiàng)目的偏好。對(duì)于第k-1層輸出項(xiàng)目i的嵌入e(k-1)u,在用戶項(xiàng)目交互圖中傳播如下:
e(k)i=∑u∈Euclid Math OneNAp? Iu1Euclid Math OneNAp? IiEuclid Math OneNAp? Iue(k-1)u(8)
其中:Euclid Math OneNAp? Iu和Euclid Math OneNAp? Ii分別表示用戶項(xiàng)目交互圖中用戶u的鄰域集合和項(xiàng)目i的鄰域集合。
2.5? 預(yù)測層
通過K層傳播之后得到用戶u與物品的嵌入,分別為{e(0)u,…,e(K)u}和{e(0)i,…,e(K)i}。在此基礎(chǔ)上,將K層的輸出相加,得到用戶和項(xiàng)目的最終嵌入表示:
eu=∑Kk=0αke(k)u(9)
ei=∑Kk=0αke(k)i(10)
通過設(shè)計(jì)一種自適應(yīng)融合機(jī)制,以確定社交影響在給定用戶最終表示中的貢獻(xiàn)比例。設(shè)計(jì)出的結(jié)構(gòu)公式計(jì)算如下:
gu=σ(w1Geu+w2Gpu)(11)
e*u=gu⊙pu+(1-gu)⊙eu(12)
其中:⊙表示兩個(gè)向量的元素積;σ(·)為sigmoid函數(shù);W1,W2 ∈Euclid Math TwoRApD×D為可學(xué)習(xí)權(quán)矩陣。通過這樣做,高階關(guān)系和社交關(guān)系被編碼到最終的用戶嵌入中。然后,對(duì)于用戶商品偏好采用內(nèi)積交互函數(shù),來預(yù)測目標(biāo)用戶u訪問候選項(xiàng)目i的可能性。用戶u在項(xiàng)目i上的排名得分計(jì)算為
ui=e*uTei(13)
模型訓(xùn)練的損失函數(shù)如下:
Euclid Math OneLApBPR=∑(u,i)∈Euclid Math OneNApIu∪(u,j)Euclid Math OneNApIu-ln σ(ui-uj)+λ‖E(0)‖22(14)
其中:表示用戶u在用戶-項(xiàng)目交互圖中的鄰域集合;E(0)為嵌入層輸出。
3? 實(shí)驗(yàn)及分析
3.1? 數(shù)據(jù)集
為了評(píng)估模型的性能,實(shí)驗(yàn)選取了兩個(gè)不同大小和稀疏度的真實(shí)數(shù)據(jù)集LastFM[28]和Ciao[29]。其中LastFM是一個(gè)音樂分享的個(gè)性化網(wǎng)站,用戶可以對(duì)不同的歌手標(biāo)記標(biāo)簽,同時(shí)用戶之間可以相互關(guān)注構(gòu)建社交關(guān)系,LastFM數(shù)據(jù)集包含1 892個(gè)用戶和用戶之間的社交聯(lián)系,以及用戶與歌手之間的交互。Ciao是一個(gè)著名的歐洲消費(fèi)點(diǎn)評(píng)網(wǎng)站,其中用戶可以對(duì)項(xiàng)目進(jìn)行打分,打分為1~5分,同時(shí)可以與其他用戶建立社交聯(lián)系,Ciao數(shù)據(jù)集包含7 375個(gè)用戶對(duì)商品的評(píng)分以及用戶之間的朋友關(guān)系。表1給出兩個(gè)數(shù)據(jù)集的具體統(tǒng)計(jì)信息。
3.2? 基線模型
為了驗(yàn)證AGCRSR模型的有效性,本文將其與以下五種基線模型進(jìn)行比較驗(yàn)證。
a)SBPR[30],基于MF的整合了BPR[31]的社會(huì)推薦模型。
b)DiffNet,基于圖的社交推薦模型,它直接從用戶項(xiàng)目交互圖和社交圖中提取用戶表示的向量和,從而生成最終的用戶表示。
c)NGCF,基于GCN的模型,它平滑了用戶項(xiàng)目交互圖中每個(gè)用戶或項(xiàng)目的表示。
d)LightGCN,基于NGCF的模型,去掉了其中的線性變換和非線性激活這兩個(gè)操作。
e)SocialLGN[32],設(shè)計(jì)了一個(gè)圖融合模塊來融合嵌入向量,實(shí)現(xiàn)LightGCN在社交圖和用戶項(xiàng)目圖上的同時(shí)傳播。
3.3? 評(píng)價(jià)指標(biāo)
在實(shí)驗(yàn)中,使用三個(gè)廣泛使用的指標(biāo)precision、recall和normalized折現(xiàn)累積增益(NDCG)來評(píng)估提出的AGCRSR模型和上述五個(gè)基準(zhǔn)模型排名前n的推薦性能。精度和召回率的表示為
precision=TPTP+FP(15)
recall=TPTP+FN(16)
其中:TP、FP、FN分別表示真陽性、假陽性和假陰性推薦項(xiàng)目的數(shù)量。推薦項(xiàng)目的真陽性和假陽性是交互推薦的結(jié)果。假陰性是非交互推薦的結(jié)果。NDCG表示為
NDCG@N=r(1)+∑ki=2r(i)log2i∑|REL|i=1r(i)log2(i+1)(17)
其中:r(i)為相關(guān)性得分。r(i)=1表示推薦的商品與用戶有交互;r(i)=0表示沒有交互作用。|REL|表示前n個(gè)推薦項(xiàng)目的總和,這些項(xiàng)目按照相關(guān)分?jǐn)?shù)降序排序。
對(duì)于這三個(gè)指標(biāo),值越大表示推薦性能越好。由于用戶-項(xiàng)目交互記錄的稀疏性,對(duì)于每個(gè)用戶,重復(fù)和隨機(jī)抽樣一個(gè)未評(píng)級(jí)的物品作為負(fù)樣本,然后,將負(fù)樣本與訓(xùn)練過程中與用戶交互的項(xiàng)目結(jié)合起來。為了實(shí)現(xiàn)無偏的評(píng)估,對(duì)所有項(xiàng)目進(jìn)行排序,而不是只對(duì)抽樣項(xiàng)目進(jìn)行排序。對(duì)于特定模型在兩個(gè)數(shù)據(jù)集上進(jìn)行的每個(gè)實(shí)驗(yàn)重復(fù)五次,并計(jì)算平均結(jié)果進(jìn)行比較。
3.4? 實(shí)驗(yàn)設(shè)置
本文使用Python語言基于PyTorch框架實(shí)現(xiàn),實(shí)驗(yàn)環(huán)境配置為Intel i7 11800H,GPU RTX 3060,內(nèi)存為16 GB,操作系統(tǒng)為Windows 11。對(duì)每個(gè)數(shù)據(jù)集隨機(jī)選取80%的交互歷史數(shù)據(jù)作為訓(xùn)練集,剩下的20%作為測試集。為了對(duì)超參數(shù)進(jìn)行無偏調(diào)優(yōu),避免過擬合,隨機(jī)選取訓(xùn)練集中的10%交互數(shù)據(jù)作為驗(yàn)證集??紤]到冷啟動(dòng)問題是大多數(shù)推薦系統(tǒng)中的一個(gè)重要問題,因此又設(shè)計(jì)了受冷啟動(dòng)問題影響模型推薦性能的實(shí)驗(yàn)。冷啟動(dòng)對(duì)應(yīng)的為僅與少量項(xiàng)目進(jìn)行交互的用戶生成的推薦結(jié)果。將測試集中所有交互少于20次的用戶作為冷啟動(dòng)用戶,在此基礎(chǔ)上,建立了一個(gè)單獨(dú)的冷啟動(dòng)測試集,測試集中只包括已識(shí)別的冷啟動(dòng)用戶。經(jīng)過對(duì)測試數(shù)據(jù)集的統(tǒng)計(jì)分析得出,LastFM中存在的用戶數(shù)量為24,交互數(shù)量為209、Ciao中存在的用戶數(shù)量為 4 133,交互數(shù)量為43 312。實(shí)驗(yàn)參數(shù)遵循文獻(xiàn)[21],設(shè)置嵌入維度的數(shù)量為64個(gè),每次訓(xùn)練批的大小設(shè)置為固定的1 024個(gè)。設(shè)置使用學(xué)習(xí)率為1e-3的Adam[33]來優(yōu)化模型參數(shù)。使用均值為0,標(biāo)準(zhǔn)差為0.01的高斯分布初始化E(0)。在{1e-6,1e-5,1e-4,1e-3,1e-2}中通過實(shí)驗(yàn)將正則化系數(shù)λ設(shè)為1e-4,第K傳播層輸出的權(quán)值αK設(shè)為1/(k-1)。在本實(shí)驗(yàn)中,設(shè)置傳播層數(shù)K為3。
3.5? 實(shí)驗(yàn)結(jié)果分析
3.5.1? 對(duì)比實(shí)驗(yàn)
將本文模型與基準(zhǔn)模型分別在兩個(gè)相同的數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),原始實(shí)驗(yàn)結(jié)果如表2、3所示。冷啟動(dòng)實(shí)驗(yàn)結(jié)果如表4、5所示。從結(jié)果可以看出基于MF的模型SBPR在原數(shù)據(jù)集和冷啟動(dòng)數(shù)據(jù)集上的推薦性能不如基于GNN的模型NGCF,說明了在推薦算法中使用神經(jīng)網(wǎng)絡(luò)可以提高推薦性能。從LightGCN和NGCF的結(jié)果比較中可以看出,雖然這兩種算法都是基于GNN的模型,但LightGCN的性能優(yōu)于NGCF,說明在推薦中非線性激活和線性變換是冗余的,這兩種操作會(huì)對(duì)推薦的性能產(chǎn)生負(fù)面影響。從SocialLGN和LightGCN的實(shí)驗(yàn)結(jié)果對(duì)比中可以看出引入社交圖的SocialLGN的性能優(yōu)于只有用戶-項(xiàng)目圖的LightGCN,說明社交信息作為輔助信息可以提高推薦的性能。實(shí)驗(yàn)結(jié)果顯示,AGCRSR與基線模型性能最好的SocialLGN對(duì)比各項(xiàng)指標(biāo)都有提升。在數(shù)據(jù)集LastFM、Ciao上AGCRSR對(duì)比SocialLGN在precision@10分別提高了1.67%、1.44%;在recall@10分別提高了1.57%、0.69%;在NDCG@10分別提高了1.40%、0.68%。證明了AGCRSR在緩解用戶社交空間和用戶興趣空間的內(nèi)在信息差異和忽視高階鄰居的問題上有一定幫助。在LastFM冷啟動(dòng)數(shù)據(jù)集上,在recall@10和recall@20指標(biāo)上分別提高了19.14%、6.38%;在Ciao冷啟動(dòng)數(shù)據(jù)集上對(duì)比SocialLGN的NDCG@10和NDCG@20指標(biāo)分別提高了0.61%、0.76%,證明了AGCRSR在緩解推薦中的冷啟動(dòng)問題上也有一定作用。
3.5.2? 消融實(shí)驗(yàn)
消融實(shí)驗(yàn)如圖3、4所示對(duì)模型中的注意力權(quán)重模塊和自適應(yīng)模塊進(jìn)行評(píng)估,其中變體模型AGCRSR-Qz為刪除注意力權(quán)重模塊構(gòu)建、AGCRSR-Sy為刪除自適應(yīng)模塊構(gòu)建。從圖中可以發(fā)現(xiàn),與其他變體模型相比,AGCRSR始終保持最佳推薦性能,說明所有組件都是必要的。
3.6? 超參數(shù)學(xué)習(xí)
1)傳播層數(shù)的影響
模型的傳播層數(shù)扮演著重要的角色,因?yàn)樗鼪Q定了圖的傳播深度,所以選擇合適的層數(shù)對(duì)于模型有著重要的影響,在實(shí)驗(yàn)中將正則化系數(shù)固定為1e-4,通過調(diào)整傳播層數(shù)值從1到6,實(shí)驗(yàn)結(jié)果如圖5、6所示。當(dāng)傳播層數(shù)為3時(shí),推薦性能總體效果達(dá)到最佳;當(dāng)大于5時(shí),系統(tǒng)性能略有下降。結(jié)果表明,層數(shù)過大會(huì)導(dǎo)致過平滑效應(yīng),從而導(dǎo)致推薦性能下降。
2)正則化系數(shù)的影響
正則化系數(shù)是正則化方法中的一個(gè)重要參數(shù),用于平衡正則化項(xiàng)和損失函數(shù)之間的權(quán)衡關(guān)系,正則化系數(shù)可以在模型訓(xùn)練時(shí)控制模型的復(fù)雜度,防止過擬合。在實(shí)驗(yàn)中設(shè)置傳播層數(shù)為3,通過調(diào)整得到最優(yōu)的正則化系數(shù)大小,結(jié)果如圖7、8所示。λ的值從0到1e-5,λ值的增加對(duì)模型的性能改善并不敏感[21],說明模型不容易出現(xiàn)過擬合。當(dāng)正則化系數(shù)為1e-4時(shí),模型在數(shù)據(jù)集LastFM和Ciao上達(dá)到最佳的性能。當(dāng)λ值在LsstFM數(shù)據(jù)集大于1e-4,在Ciao數(shù)據(jù)集大于1e-3時(shí),模型性能急劇下降。結(jié)果表明,過度正則化則會(huì)對(duì)推薦效果產(chǎn)生負(fù)面的影響。
4? 結(jié)束語
本文提出一種融合用戶社交關(guān)系的自適應(yīng)圖卷積推薦算法AGCRSR。首先,通過嵌入層對(duì)用戶和項(xiàng)目初始化,并利用兩個(gè)映射矩陣將初始特征向量轉(zhuǎn)換為自適應(yīng)嵌入,對(duì)于緩解不同用戶社交空間與用戶興趣空間的差異具有一定作用;其次,該算法使用注意力機(jī)制學(xué)習(xí)用戶的權(quán)重得分來增強(qiáng)交互空間的用戶嵌入,實(shí)現(xiàn)了用戶對(duì)項(xiàng)目的興趣偏好,同時(shí)包含了社交關(guān)系的影響,然后利用輕量級(jí)圖卷積網(wǎng)絡(luò)在用戶-項(xiàng)目圖和社交圖中傳播用戶表示;最后,通過自適應(yīng)融合機(jī)制將高階關(guān)系和社交關(guān)系編碼到最終的用戶表示,緩解了忽視高階鄰居的問題。在數(shù)據(jù)集LastFM和Ciao上與其他基線模型進(jìn)行了對(duì)比實(shí)驗(yàn),結(jié)果表明AGCRSR在各項(xiàng)指標(biāo)上均有提升,在緩解冷啟動(dòng)問題上,算法的表現(xiàn)也優(yōu)于對(duì)比的基準(zhǔn)模型,證明了該算法的有效性。 時(shí)間上下文已經(jīng)被認(rèn)為是建模動(dòng)態(tài)用戶偏好的一種重要信息,這種動(dòng)態(tài)用戶偏好通常隨時(shí)間演變,在今后的研究中,希望通過在用戶嵌入學(xué)習(xí)過程中引入時(shí)間上下文信息來對(duì)AGCRSR模型進(jìn)行動(dòng)態(tài)推薦。
參考文獻(xiàn):
[1]Korzun D,Voronin A,Shegelman I.Semantic data mining based on ranking in internet-enabled information systems[M]//Fuzzy Systems and Data Mining V.Amsterdam:IOS Press,2019:237-242.
[2]Iqbal R,Doctor F,More B,et al.Big data analytics:Computational intelligence techniques and application areas[J].Technological Forecasting and Social Change,2020,153(4):119253.
[3]Iqbal R,Doctor F,More B,et al.Big data analytics and computational intelligence for cyber-physical systems:recent trends and state of the art applications[J].Future Generation Computer Systems,2020,105(4):766-778.
[4]Yao Lina,Wang Xianzhi,Sheng Quan Z,et al.Recommendations on the Internet of Things:requirements,challenges,and directions[J].IEEE Internet Computing,2019,23(3):46-54.
[5]Duan Sijing,Zhang Deyu,Wang Yanbo,et al.JointRec:a deep-learning-based joint cloud video recommendation framework for mobile IoT[J].IEEE Internet of Things Journal,2019,7(3):1655-1666.
[6]Hu Hexuan,Jiang Zhaowei, Zhao Yunfeng,et al.Network representation learning-enhanced multisource information fusion model for POI recommendation in smart city[J].IEEE Internet of Things Journal,2020,8(12):9539-9548.
[7]李征,黃雪原,袁科.基于位置社交網(wǎng)絡(luò)的興趣點(diǎn)推薦研究[J].計(jì)算機(jī)應(yīng)用研究,2022,39(11):3211-3219.(Li Zheng,Huang Xueyuan,Yuan Ke.Survey of research on point-of-interest recommendation methods based on location-based social networks[J].Application Research of Computers,2022,39(11):3211-3219.)
[8]Sharma K,Lee Y C,Nambi S,et al.A survey of graph neural networks for social recommender systems[EB/OL].(2022-12-12).https://arxiv.org/pdf/2212.04481.pdf.
[9]朱金俠,孟祥福,邢長征,等.融合社交關(guān)系的輕量級(jí)圖卷積協(xié)同過濾推薦方法[J].智能系統(tǒng)學(xué)報(bào),2022,17(4):788-797.(Zhu Jinxia,Meng Xiangfu,Xing Changzheng,et al.Light graph convolutional collaborative filtering recommendation approach incorporating social relationships[J].CAAI Trans on Intelligent Systems,2022,17(4):788-797.)
[10]余皚欣,馮秀芳,孫靜宇.結(jié)合物品相似性的社交信任推薦算法[J].計(jì)算機(jī)科學(xué),2022,49(5):144-151.(Yu Aixin,F(xiàn)eng Xiufang,Sun Jingyu.Social trust recommendation algorithm combining item similarity[J].Computer Science,2022,49(5):144-151.)
[11]Yang Bo,Lei Yu,Liu Jiming,et al.Social collaborative filtering by trust[J].IEEE Trans on Pattern Analysis and Machine Intelligence,2017,39(8):1633-1647.
[12]Guo Guibing,Zhang Jie,Yorke-Smith N.TrustSVD:collaborative filtering with both the explicit and implicit influence of user trust and of item ratings[C]//Proc of the 29th AAAI Conference on Artificial Intelligence.Palo Alto,CA:AAAI Press,2015:123-129
[13]Wang Xiang,He Xiangnan,Nie Liqiang,et al.Item silk road:recommending items from information domains to social users[C]//Proc of the 40th International ACM SIGIR Conference on Research and Deve-lopment in Information Retrieval.New York:ACM Press,2017:185-194.
[14]Zhu Tianyu,Liu Guannan,Chen Guoqing.Social collaborative mutual learning for item recommendation[J].ACM Trans on Knowledge Discovery from Data,2020,14(4):article No.43.
[15]Wu Lei,Sun Peijie,F(xiàn)u Yanjie,et al.A neural influence diffusion mo-del for social recommendation[C]//Proc of the 42nd International ACM SIGIR Conference on Research and Development in Information Retrieval.New York:ACM Press,2019:235-244.
[16]Liu Yang,Chen Liang,He Xiangnan, et al.Modelling high-order social relations for item recommendation[J].IEEE Trans on Know-ledge and Data Engineering,2022,34(9):4385-4397.
[17]Fan Wenqi,Ma Yao,Li Qing,et al.Graph neural networks for social recommendation[C]//Proc of World Wide Web Conference.New York:ACM Press,2019:417-426.
[18]Ying R,He Ruining,Chen Kaifeng,et al.Graph convolutional neural networks for Web-scale recommender systems[C]//Proc of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining.New York:ACM Press,2018:974-983.
[19]Hamilton W,Ying R,Leskovec J.Inductive representation learning on large graphs[C]//Proc of the 31st International Conference on Neural Information Processing Systems.Red Hook,NY:Curran Associates Inc,2017:1024-1034.
[20]Wang Xiang,He Xiangnan,Wang Meng,et al.Neural graph collaborative filtering[C]//Proc of the 42nd International ACM SIGIR Conference on Research and Development in Information Retrieval.New York:ACM Press,2019:165-174.
[21]He Xiangnan,Deng Kuan,Wang Xiang,et al.LightGCN:simplifying and powering graph convolution network for recommendation[C]//Proc of the 43rd International ACM SIGIR Conference on Research and Development in Information Retrieval.New York:ACM Press,2020:639-648.
[22]Wu Le,Sun Peijie,Hong Richang,et al.SocialGCN:an efficient graph convolutional network based model for social recommendation[EB/OL].(2018-11-07).https://arxiv.org/pdf/1811.02815.pdf.
[23]Jamali M,Ester M.A matrix factorization technique with trust propagation for recommendation in social networks[C]//Proc of the 4th ACM Conference on Recommender Systems.New York:ACM Press,2010:135-142.
[24]Ma Hao,Yang Haixuan,Lyu M R,et al.SoRec:social recommendation using probabilistic matrix factorization[C]//Proc of the 17th ACM Conference on Information and Knowledge Management.New York:ACM Press,2008:931-940.
[25]Wang Xin,Pan Weike,Xu Congfu.HGMF:hierarchical group matrix factorization for collaborative recommendation[C]//Proc of the 23rd ACM International Conference on Information and Knowledge Management.New York:ACM Press,2014:769-778.
[26]Fan Wenqi,Ma Yao,Li Qing,et al.Graph neural networks for social recommendation[C]//Proc of World Wide Web Conference.New York:ACM Press,2019:417-426.
[27]Wu Le,Li Junwei,Sun Peijie,et al.DiffNet++:a neural influence and interest diffusion network for social recommendation[J].IEEE Trans on Knowledge and Data Engineering,2022,34(10):4753-4766.
[28]Chaney A J B,Blei D M,Eliassi-Rad T.A probabilistic model for using social networks in personalized item recommendation[C]//Proc of the 9th ACM Conference on Recommender Systems.New York:ACM Press,2015:43-50.
[29]Tang Jiliang,Gao Huiji,Liu Huan.mTrust:discerning multi-faceted trust in a connected world[C]//Proc of the 4th ACM International Conference on Web Search and Data Mining.New York:ACM Press,2012:93-102.
[30]Zhao Tong,McAuley J,King I.Leveraging social connections to improve personalized ranking for collaborative filtering[C]//Proc of the 23rd ACM International Conference on Information and Knowledge Management.New York:ACM Press,2014:261-270.
[31]Steffen R,Christoph F,Zeno G,et al.BPR:Bayesian personalized ranking from implicit feedback[C]//Proc of the 25th Conference on Uncertainty in Artificial Intelligence.Arlington,VA:AUAI Press,2009:452-461.
[32]Liao Jie,Zhou Wei,Luo Fengji,et al.SocialLGN:light graph convolution network for social recommendation[J].Information Sciences,2022,589(4):595-607.
[33]Kingma D P,Ba J A.Adam:a method for stochastic optimization[EB/OL].(2014-12-22).https://arxiv.org/pdf/1412.6980v9.pdf.