張曉明 梁正光 姚昌瑀 李肇星
隨著互聯(lián)網(wǎng)的迅速發(fā)展,網(wǎng)絡信息資源呈現(xiàn)爆炸式增長,龐大的信息量導致用戶難以高效發(fā)現(xiàn)所需的有用信息.因此,為用戶提供個性化推薦功能的推薦系統(tǒng)在當今社會變得愈發(fā)重要[1].傳統(tǒng)的推薦方法包括基于內(nèi)容的推薦、基于協(xié)同過濾的推薦、混合推薦等.基于協(xié)同過濾的推薦是目前主流的推薦方法,其基于用戶歷史交互信息,能適應用戶行為的變化,因此得到廣泛的發(fā)展和應用.然而真實世界中稀疏的歷史交互信息使基于協(xié)同過濾模型的推薦在現(xiàn)實中性能受限.因此,如何有效緩解數(shù)據(jù)稀疏性成為現(xiàn)階段研究熱點之一.
受海量信息中豐富的多媒體資源啟發(fā),學者們提出多模態(tài)推薦方法.通過提取物品的多模態(tài)特征,并將多模態(tài)特征引入推薦系統(tǒng)中,可緩解數(shù)據(jù)稀疏問題.一部分多模態(tài)推薦方法利用多模態(tài)特征的語義信息豐富物品表示.VBPR(Visual Bayesian Persona-lized Ranking)[2]將物品ID嵌入與視覺特征融合,豐富物品表示.DeepStyle[3]從視覺表示中提取物品類別,用于學習物品的特征和用戶偏好.隨著圖神經(jīng)網(wǎng)絡的廣泛應用,NGCF(Neural Graph Collaborative Filtering)[4]和LightGCN(Light Graph Convolution Net-work)[5]基于用戶的歷史交互信息構建用戶-物品二部圖,并使用圖卷積神經(jīng)網(wǎng)絡學習拓撲結構,提升推薦性能.
同樣,一些多模態(tài)推薦方法也結合圖神經(jīng)網(wǎng)絡學習用戶-物品二部圖,優(yōu)化用戶和物品表示.MMGCN(Multimodal Graph Convolution Network)[6]構建特定模態(tài)的用戶物品圖,通過圖卷積學習用戶表示和物品表示,并融合各種模態(tài)下的表示.GRCN(Graph-Refined Convolutional Network)[7]利用多模態(tài)特征更新用戶-物品二部圖的邊權重,減輕邊上的噪音.
上述推薦方法都基于協(xié)同過濾范式,聚焦于構建更好的用戶-物品圖和聚合策略,通過高階關系發(fā)現(xiàn)用戶-用戶和物品-物品的關聯(lián).另一類多模態(tài)推薦方法通過挖掘潛在結構以完善拓撲結構信息.DualGNN(Dual Graph Neural Network)[8]顯式建模用戶對不同模態(tài)的注意力,并構建用戶-用戶圖,捕獲相似用戶的偏好.LATTICE(Latent Structure Mining Method for Multimodal Recommendation)[9]利用物品的多模態(tài)特征構建物品-物品圖,挖掘物品之間的潛在結構,但物品-物品圖的更新需要很大的時間成本.為此,FREEDOM(Freezing and Denoising Multimo-dal Model for Recommendation)[10]使用凍結的物品-物品圖,并通過實驗驗證凍結的物品-物品圖能提供更好的潛在結構,同時還設計圖剪枝技術,獲得較優(yōu)的推薦性能.
另一種緩解數(shù)據(jù)稀疏的辦法是使用對比學習.SGL(Self-Supervised Graph Learning)[11]對二部圖的邊、節(jié)點進行刪除等操作,生成新的視圖,以此提升學習質量.SimGCL(Simple Graph Contrastive Lear-ning Method)[12]加入隨機噪聲以生成視圖,探究對比學習起作用的原因.NCL(Neighborhood-Enriched Contrastive Learning)[13]使用鄰域豐富的對比學習,將潛在鄰居合并到對比對中.KGCL(Knowledge Gra-ph Contrastive Learning Framework)[14]還將對比學習引入知識圖譜輔助的推薦系統(tǒng)中,利用對比學習減少知識圖譜中的噪聲,提高推薦性能.HCCF(Hyper-graph Contrastive Collaborative Filtering)[15]利用超圖對推薦數(shù)據(jù)建模,對比不同的超圖結構.SLMRec(Self-Supervised Learning-Guided Multimedia Reco-mmendation)[16]使用3種數(shù)據(jù)增強方法,揭示數(shù)據(jù)中的多模態(tài)模式,進行對比學習.MGCN(Multiview Graph Convolutional Network)[17]也使用對比學習,最大化多模態(tài)特征和行為特征之間的互信息.對比學習通過引入新視圖等方式對數(shù)據(jù)進行增強,提高用戶表示和物品表示的質量和推薦系統(tǒng)的性能.
盡管多模態(tài)推薦現(xiàn)已得到廣泛研究,但普遍僅聚焦于多模態(tài)特征的語義信息或潛在結構挖掘,缺乏對兩者之間關聯(lián)的充分利用.因此,本文提出融合潛在結構與語義信息的多模態(tài)推薦方法(Multimodal Recommendation Method Integrating Latent Structures and Semantic Information, MISS).根據(jù)物品的多模態(tài)特征、用戶歷史交互構建物品-物品圖、用戶-用戶圖,揭示潛在結構.使用歷史交互,生成用戶-物品二部圖,學習用戶行為.之后采用圖卷積技術,學習各圖的拓撲結構,將用戶和物品ID嵌入物品-物品和用戶-用戶同構圖上執(zhí)行圖卷積,挖掘潛在結構.通過潛在結構融合,將得到的表示進一步在用戶-物品二部圖上執(zhí)行圖卷積,學習用戶的歷史行為,使物品表示和用戶表示能結合潛在結構與二部圖結構.為了融合多模態(tài)特征提供的潛在結構和語義信息,設計對比學習機制,使學習潛在結構的物品表示與其不同模態(tài)下的特征對齊.最后,在3個公開數(shù)據(jù)集上驗證MISS在提高推薦性能上的有效性.
本文提出融合潛在結構與語義信息的多模態(tài)推薦方法(MISS),整體結構如圖1所示.MISS主要包括如下部分.
圖1 MISS整體框架
1)潛在結構學習.通過數(shù)據(jù)挖掘,發(fā)現(xiàn)并學習其中的潛在結構.
2)歷史交互學習.構建用戶-物品二部圖,學習用戶的歷史行為.
3)潛在結構與語義信息融合.使用對比學習,融合潛在結構與語義信息.
多模態(tài)推薦旨在綜合利用文本、視覺等多模態(tài)信息,挖掘用戶偏好,為其推薦物品.在本文中,設U為用戶集合,I為物品集合,M為用戶數(shù)量,N為物品數(shù)量,每位用戶u∈U根據(jù)用戶歷史交互矩陣
Y∈RM×N={yui|u∈U,i∈I}
1.2.1 潛在關聯(lián)挖掘
為了從多模態(tài)特征中挖掘物品之間的潛在關聯(lián),本文基于物品的多模態(tài)特征,計算在不同模態(tài)下物品間的相似度,構建模態(tài)m下的物品-物品圖
本文使用物品的文本特征和視覺特征,構建文本T和視覺V模態(tài)下的物品-物品圖GT和GV.之后為了構建多模態(tài)物品-物品圖
根據(jù)不同模態(tài)的重要性,加權求和得到圖GM的鄰接矩陣:
其中,αm為模態(tài)m的權重系數(shù),不同模態(tài)的權重和為1.
同樣,為了探索用戶間的潛在關聯(lián),根據(jù)用戶間共同交互的物品數(shù)計算用戶間的相似度,進而挖掘用戶間的潛在關聯(lián),并構建用戶-用戶圖
用于顯式揭示用戶-物品-用戶這種高階關系.
1.2.2 潛在結構學習
通過潛在關聯(lián)挖掘可發(fā)現(xiàn)物品間和用戶間的潛在關聯(lián).為了進一步利用這些潛在結構信息優(yōu)化用戶表示和物品表示,本文使用圖神經(jīng)網(wǎng)絡學習這些潛在結構信息.將物品和用戶嵌入基于不同潛在結構進行圖卷積,利用挖掘的潛在結構對用戶表示和物品表示執(zhí)行消息的傳遞與聚合操作,使圖中節(jié)點能利用不同的潛在關聯(lián)更新自身的信息,得到信息更全面的用戶表示和物品表示.
其中,Z∈{T,V,M},NZ(i)為物品i在物品-物品圖GZ中的鄰居節(jié)點.
其中Luu為圖卷積的層數(shù).
通過圖卷積操作,可得到學習潛在結構的用戶表示和物品表示.為了更好地融合這些結構信息,設計潛在結構融合機制,聚合這些表示.對于物品表示,根據(jù)不同模態(tài)的權重系數(shù)將物品表示進行加權求和,融合后得到物品表示:
(1)
對于用戶表示,考慮用戶間的潛在結構學習與之后學習歷史交互使用的數(shù)據(jù)同為用戶歷史交互記錄,為了緩解多輪的消息傳遞和聚合過程中梯度減小的問題,對用戶的潛在結構融合采用殘差機制,在傳播時更容易保持梯度,有利于提高用戶表示的質量.最終得到融合之后的用戶表示:
(2)
其中ND(u)和ND(i)分別為用戶u和物品i在圖GD上的鄰居節(jié)點.
最后通過READOUT函數(shù),得到最終的用戶表示和物品表示:
其中Lui為在用戶-物品圖上執(zhí)行圖卷積的層數(shù).READOUT函數(shù)可采用加和、拼接和平均等函數(shù),本文使用平均函數(shù).
多模態(tài)特征中的語義信息是指物品從不同感官(如文本、視覺等)提取的能表達語義含義的特征,這些特征有助于豐富用戶和物品的向量表示.融合不同模態(tài)下表現(xiàn)的語義信息,可使推薦系統(tǒng)進一步理解物品的各種屬性.本文使用物品的文本特征和視覺特征,包含物品在不同模態(tài)下獲得的關于物品的高層次語義內(nèi)容,每個模態(tài)的特征都提供獨特的信息視角.例如:文本特征提供關于物品的文本描述,而視覺模態(tài)提供有關物品外觀、形狀、顏色等方面的視覺信息.
(3)
其中,Wm∈Rdm×d為多層感知機中的線性變換矩陣,bm∈Rd為偏置項.
其中,s(·,·)表示計算兩個向量之間的相似度,本文使用余弦相似度,τ為對比損失的溫度系數(shù).
最后將不同模態(tài)的對比損失根據(jù)權重加和,得到總的對比損失:
(4)
本文通過用戶表示和物品表示計算內(nèi)積,得到用戶u對物品i的偏好分數(shù):
采用BPR(Bayesian Personalized Ranking)損失函數(shù)[19],該函數(shù)鼓勵正對的用戶-物品對的偏好得分高于其負對的得分,并構建三元組集合T,每個三元組(u,i,j)滿足yui=1并且yuj=0.BPR具體定義如下:
(5)
其中σ(·)為Sigmoid激活函數(shù).結合對比損失和BPR損失,得到最終的損失函數(shù):
L=Lbpr+λLssl,
(6)
其中λ為對比損失的權重系數(shù).
算法1MISS訓練過程
輸入多模態(tài)數(shù)據(jù),用戶行為數(shù)據(jù)
輸出MISS
預處理構建用戶-用戶圖、物品-物品圖、
用戶-物品圖
初始化隨機初始化用戶和物品嵌入等模型參數(shù)
Forepoch= 1 toN
在用戶-物品二部圖執(zhí)行圖卷積操作,得到hi
由式(4)計算對比損失Lssl
由式(5)計算BPR損失Lbpr
由式(6)計算總損失L
應用梯度下降更新模型參數(shù)
End for
本文在Amazon的Baby;Sports and Outdoors(簡記為Sports);Clothing, Shoes, and Jewelry(簡記為Clothing)這3個公開數(shù)據(jù)集[20]上進行實驗.歷史交互數(shù)據(jù)通過篩選過濾,確保每位用戶至少有5條交互記錄.3個數(shù)據(jù)集的統(tǒng)計情況如表1所示.對于多模態(tài)數(shù)據(jù),文本和視覺的多模態(tài)特征使用公開并廣泛使用的版本[9],均通過預訓練模型提取得到,文本特征為384維,視覺特征為4 096維.
表1 實驗數(shù)據(jù)集統(tǒng)計
為了便于算法性能對比分析,本文將數(shù)據(jù)集按照8∶1∶1的比例劃分為訓練集、驗證集和測試集,并使用廣泛采用的評價指標——召回率(Recall)和NDCG(Normalized Discounted Cumulative Gain)評價推薦性能,簡記為R@K和N@K.嵌入維度d設為64維,使用文獻[21]中方法初始化用戶和物品的ID嵌入.在模型優(yōu)化上,設置批次大小為2 048,并使用Adam(Adaptive Moment Estimation)優(yōu)化器[22]優(yōu)化模型參數(shù),最大迭代次數(shù)設為1 000,在連續(xù)20次無性能提升時提前停止.為了保證公平性,所有模型在MMRec(Simplifying Multimodal Recommenda-tion)框架[23]上實現(xiàn),并在NVIDIA RTX A5000顯卡上進行實驗.
為了驗證MISS的有效性,本文選擇如下推薦方法進行對比.
1)協(xié)同過濾模型.
(1)LightGCN[5].去除圖卷積中的特征變換和非線性激活,提高計算效率和性能.
(2)BPR[19].設計BPR損失,優(yōu)化矩陣分解模式下的用戶表示和物品表示.
2)多模態(tài)推薦模型.
(1)VBPR[2].在BPR的基礎上,融合視覺特征與物品嵌入,豐富物品特征語義.
(2)MMGCN[6].利用圖卷積得到不同模態(tài)的用戶表示和物品表示,融合后得到最終的表示.
(3)GRCN[7].利用多模態(tài)特征對用戶-物品二部圖進行剪枝,減少二部圖中的噪聲.
(4)DualGNN[8].從用戶-物品圖中提取用戶-用戶圖,增強用戶表示.
(5)LATTICE[9].從多模態(tài)特征中學習物品之間的潛在結構,挖掘物品之間的關聯(lián).
(6)FREEDOM[10].凍結來自多模態(tài)特征的物品-物品圖,并采用圖剪枝實現(xiàn)最佳性能.
(7)SLMRec[16].在多模態(tài)推薦中使用自監(jiān)督學習方式,并提出3種數(shù)據(jù)增強的方式.
各對比方法在K=10,20時的性能如表2所示,表中黑體數(shù)字表示最優(yōu)值,斜體數(shù)字表示次優(yōu)值.
表2 各方法在3個數(shù)據(jù)集上的性能對比
由表2可見,MISS的性能優(yōu)于對比方法.與現(xiàn)有模型相比,MISS學習潛在結構和二部圖結構,有效融合各圖的結構信息,并利用對比學習機制,將物品表示與其多模態(tài)特征對齊,從而融合多模態(tài)中的潛在結構和原始語義,進一步提高推薦性能.
為了驗證MISS中各組件的有效性,單獨移除各組件以評估不同組件的貢獻,從而得到MISS的3種變體.
1)MISSii.移除物品-物品圖潛在結構學習的MISS.
2)MISSuu.移除用戶-用戶圖潛在結構學習的MISS.
3)MISScl.移除對比學習機制的MISS.
3種變體和MISS在3個數(shù)據(jù)集上的性能對比如圖2所示.
(a)R@20
由圖2可看出,物品-物品圖的潛在結構學習在3個數(shù)據(jù)集上均為貢獻度最大的組件,在用戶和物品數(shù)量更多的數(shù)據(jù)集Sports、Clothing上,用戶-用戶圖的潛在結構學習和對比學習貢獻度相似.在不同數(shù)據(jù)集和指標下,MISS始終優(yōu)于其它變體,這表明每個組件對于性能的提升都是有益的,也表明融合潛在結構和語義信息的有效性.
為了探究不同模態(tài)的貢獻,本文對比使用多模態(tài)時和使用單一模態(tài)時性能,并將僅使用文本特征的MISS稱為MISST,僅使用視覺特征的MISS稱為MISSV.使用多模態(tài)的MISS與使用單一模態(tài)的MISST和MISSV的性能對比如圖3所示.由圖可看出,使用多模態(tài)的MISS在性能上始終優(yōu)于使用單模態(tài)的MISST和MISSV,這表明結合多種模態(tài)更有利于推薦性能的提升.此外,文本之間相似的置信度往往高于視覺之間相似的置信度,正如圖中觀察到的,僅使用文本特征時比僅使用視覺特征時具有更優(yōu)的推薦性能.
(a)R@20
本文中不同模態(tài)的權重和為1,為了研究不同視覺權重對模型性能的影響,將視覺權重αv的取值范圍設為0至1,并以0.1作為步長,此時文本權重為1-αv.MISS在3個數(shù)據(jù)集上不同視覺權重αv下的推薦性能對比如圖4所示.
(a)R@20 (b)N@20
從圖4可看出,在αv≤0.3時,MISS在數(shù)據(jù)集上取得最佳性能,之后隨著αv取值增大,模型性能呈下降趨勢.
此外,本文還研究模型在學習率和對比損失權重上的敏感性,設置學習率
lr=1e-1,1e-2,1e-3,1e-4,
對比學習損失權重系數(shù)
λ=0.1,0.2,0.3,0.4,0.5.
在Baby、Sports數(shù)據(jù)集上,不同學習率和對比損失權重組合下的MISS性能對比如表3和表4所示.由表可發(fā)現(xiàn):MISS對lr的變化更敏感,并且在lr=1e-3時性能最佳;MISS對λ不太敏感,但選取恰當?shù)摩藢δP托阅苋允怯幸娴?
表3 Baby數(shù)據(jù)集上不同學習率和對比損失權重組合下的MISS性能對比
表4 Sports數(shù)據(jù)集上不同學習率和對比損失權重組合下的MISS性能對比
為了進一步探究MISS性能提高的原因,本文分別將LightGCN和MISS生成的用戶最佳表示和物品最佳表示進行可視化(隨機抽樣2 000位用戶和2 000個物品).
采用單位圓可視化方法[24],首先使用t-SNE(t-Distributed Stochastic Neighbor Embedding)[25]將用戶表示和物品表示分別映射為二維空間中的單位向量,再使用高斯核密度估計計算用戶特征和物品特征的分布情況,并可視化不同角度的密度.LightGCN和MISS的用戶表示和物品表示在單位圓上的分布情況如圖5和圖6所示.
(a)用戶特征分布 (b)物品特征分布
(a)用戶特征分布 (b)物品特征分布
對比圖5和圖6可看出,LightGCN學到的表示呈現(xiàn)局部的高度聚集,而MISS學到的特征分布更均勻,可更全面考慮各種用戶興趣和物品特征,提高推薦準確率.同時均勻的用戶表示和物品表示分布可促使模型考慮更廣泛的用戶興趣和物品特征,從而提高推薦系統(tǒng)的多樣性.實驗表明融合多模態(tài)結構和語義信息對于提高模特推薦性能是有效的.
本文提出融合潛在結構與語義信息的多模態(tài)推薦方法(MISS),融合多模態(tài)特征提供的潛在結構和語義信息,有效增強用戶表示和物品表示.MISS通過圖卷積方法學習多模態(tài)特征的潛在結構和用戶-物品二部圖結構,使用戶表示和物品表示能互補捕捉不同圖上的結構信息.設計對比學習,將多模式語義信息與學習結構信息的物品表示進行對齊,確保物品表示能對齊來自多模式特征的原始語義,從而有效實現(xiàn)多模態(tài)中潛在結構與語義信息的融合.最后,在3個數(shù)據(jù)集上進行的廣泛實驗驗證MISS的有效性.此外,MISS組件可方便替換,并且可方便地將其它模態(tài)特征引入模型中,具有較強的拓展性.今后將繼續(xù)探索潛在關聯(lián)挖掘方法,以及語義信息和潛在結構的融合方法,提高對多模態(tài)信息的挖掘能力,增強對推薦場景中模態(tài)多樣化的適應能力.