陳征,宋軒,杜先瑞,張鐘勤
(1.中國傳媒大學 協(xié)同創(chuàng)新中心互聯(lián)網(wǎng)研究院,北京 100024;2.中國傳媒大學 信息化處,北京 100024;3.中國傳媒大學 協(xié)同創(chuàng)新中心大數(shù)據(jù)中心,北京 100024)
隨著互聯(lián)網(wǎng)技術(shù)逐步更新發(fā)展,信息資源呈現(xiàn)高速增長的趨勢,并出現(xiàn)了“信息過載”的問題。用戶很難直接從海量信息中快速的獲取自己所需要的信息。而推薦系統(tǒng)可以根據(jù)用戶的歷史交互數(shù)據(jù),更清楚的了解用戶的興趣偏好,為用戶推薦可能喜歡的物品,因此通常使用推薦算法來解決“信息過載”的問題,各種推薦方法[2-5,7-8]的研究成為計算機科學領(lǐng)域的研究重點之一。在推薦系統(tǒng)的研究過程中,由于數(shù)據(jù)多樣性的發(fā)展,圖計算成為一個非常重要的研究方向,其中圖神經(jīng)網(wǎng)絡(luò)(Graph Neural Network,GNN)[1]被有效使用于圖的表征學習中。與傳統(tǒng)的圖學習相比,圖神經(jīng)網(wǎng)絡(luò)不僅既能學習圖網(wǎng)絡(luò)的拓撲結(jié)構(gòu),也能聚合鄰居的特征信息,從而能夠有效的學習到圖網(wǎng)絡(luò)中的各種結(jié)構(gòu),為后續(xù)的推薦工作起到關(guān)鍵作用。原有的推薦學習算法[2]主要基于用戶與物品交互進行學習,對用戶-物品的連接關(guān)系進行建模,難以捕獲節(jié)點之間更復雜的關(guān)系。而傳統(tǒng)的圖學習一般針對圖拓撲進行工作,也較少考慮節(jié)點間或節(jié)點的各種特征信息。
與原有的推薦方法相比,圖神經(jīng)網(wǎng)絡(luò)推薦方法不僅能學習圖網(wǎng)絡(luò)的拓撲結(jié)構(gòu),也能聚合鄰居節(jié)點的各種相鄰關(guān)系,從而能夠更有效的學習到圖網(wǎng)絡(luò)中的信息,為后續(xù)的推薦工作起到關(guān)鍵作用。Monti等人[3]使用圖神經(jīng)網(wǎng)絡(luò)來提取用戶和物品的網(wǎng)絡(luò)表征,然后結(jié)合遞歸神經(jīng)網(wǎng)絡(luò)進行消息傳遞過程。Berg 等人[4]提出了一種圖自動編碼框架,通過在用戶-物品圖上傳遞消息聚合的形式,生成用戶和物品的潛在特征。Hartford等人[5]考慮了兩個及多個不同的對象集合之間的關(guān)系預測問題,并向深度模型中引入了一個權(quán)重綁定方案。這些模型通常僅使用了用戶-物品的單圖交互信息,忽略了現(xiàn)實存在更多更豐富的多圖信息,如物品間的交互信息和物品側(cè)信息等。通常用戶與物品之間的交互不僅僅有評分信息,還有更多如用戶曾瀏覽過、購買過的其他物品與物品之間的交互信息。
針對以上問題,本文提出了一種基于多圖神經(jīng)網(wǎng)絡(luò)的個性化推薦模型,該模型利用了圖神經(jīng)網(wǎng)絡(luò)能夠更有效的挖掘圖數(shù)據(jù)的深層信息的特性,將輸入的用戶評分信息與物品側(cè)信息轉(zhuǎn)變成多個圖(包括用戶-物品圖、物品-信息圖等)進行有效特征提取。該模型使用圖神經(jīng)網(wǎng)絡(luò)經(jīng)過節(jié)點上的信息傳遞和信息聚合,有效的對用戶偏好信息進行建模,同時引入注意力網(wǎng)絡(luò),最后得到評分預測。
本文模型由以下部分組成:用戶特征建模,物品特征建模和評分預測。用戶特征提取部分使用用戶-物品圖來對用戶的偏好特征進行建模,通過用戶對物品的交互可以有效提取用戶的偏好;物品特征建模使用物品-用戶圖和物品-信息圖,通過物品的交互用戶以及物品的輔助信息來建模物品特征;評分預測將用戶特征和物品特征聚合,并進行評分預測。整體模型框架如圖1所示。下面將詳細介紹每個模塊。
圖1 模型框架
由于用戶-物品圖中不僅包含用戶、物品之間的交互信息,而且還包含用戶對物品的評分信息。因此使用圖神經(jīng)網(wǎng)絡(luò)同時捕獲用戶-物品圖中的交互信息和評分信息,以便學習用戶的特征向量U (user item factor),它通過用戶-物品圖中的交互信息以及用戶對物品的評分來對用戶特征向量進行建模。函數(shù)的數(shù)學表示為:
U=σ(W·Accumi(pij,?j∈I(i))+b)
(1)
其中I(i)是與用戶ui(或用戶-物品圖中的ui的鄰居)有交互的物品的集合,pij是表示ui與項目vj之間的評分感知交互的表示向量,σ表示非線性激活函數(shù)(即校正線性單元),W和b是神經(jīng)網(wǎng)絡(luò)的權(quán)值和偏差。一個常用的聚集函數(shù)Accumi()是取(pij,?j∈I(i))中向量的元素平均值的平均算子。該基于平均值的聚合器為局部譜卷積的線性近似。我們通過給每個評分分配權(quán)重允許交互對用戶的特征向量做出不同的貢獻,同時使用Softmax函數(shù)對上述權(quán)重進行歸一化,得到最終權(quán)重值,該值可解釋為評分對用戶ui的項目空間用戶特征向量的貢獻量。
在物品特征建模部門,使用圖神經(jīng)網(wǎng)絡(luò)同時捕獲物品-用戶圖中的交互信息和物品-信息圖中的交互信息,對項目vj進行項目建模,以此學習項目的特征向量,記為Ι。
第一,項目與用戶-項目圖相關(guān)聯(lián),其中包含交互和用戶的評分。因此,需要聯(lián)合捕獲用戶-項目圖中的交互和評分,進一步構(gòu)建項目特征向量。第二,項目與項目-側(cè)信息圖相關(guān)聯(lián),其中包含跟此項目有關(guān)的豐富的側(cè)信息。
第一步,我們通過用戶聚合來學習項目空間項目的特征向量IU。對于每個項目vj,我們需要從與vj交互的用戶集合中聚集信息,表示為U(j)。即使對于同一個項目,不同的用戶也會有的不同的評分。這些來自不同用戶的評分有助于對項目特征向量進行建模。對于帶有評分的從ui到vj的交互,我們引入了一種評分感知交互用戶表示qij,它是由用戶嵌入和評分嵌入通過MLP獲得的然后,為了構(gòu)建項目特征向量Ι,我們還提出了對項目vj在U(j)中用戶的評分感知交互表示進行聚合。用戶聚合函數(shù)為Accumu(),這是聚合(qij,?i∈U(j))中的用戶可感知評分的交互表示,由此有,
IU=σ(W·Accumu(qij,?i∈U(j))+b)
(2)
第二步,我們使用同樣的方法對側(cè)信息進行聚合,以此來學習側(cè)信息空間項目的特征向量II。對于每個項目vj,我們從與vj有關(guān)的側(cè)信息集合中聚合信息,表示為M(m)。同時將與項目vj有關(guān)的側(cè)信息的交互表示為tjm,這是由項目嵌入與側(cè)信息嵌入通過MLP獲得的,由此有,
II=σ(W·Accumm(tjm,?m∈M(j))+b)
(3)
學習項目特征向量。為了更好地學習項目特征向量,需要將用戶空間項目特征向量和側(cè)信息空間項目特征向量結(jié)合起來考慮,因為側(cè)信息圖和用戶-項目圖從不同的角度提供用戶信息。我們建議通過一個標準的MLP將這兩個特征向量結(jié)合到最終的項目特征向量中,其中用戶空間項目特征向量IU和側(cè)信息空間項目特征向量II在進入MLP之前連接在一起。形式上,項目特征向量Ι定義為,
d1=[IU⊕II]
(4)
d2=σ(W2·d1+b2)
(5)
……
I=σ(Wl·dl-1+bl)
(6)
在用戶特征建模部分獲得用戶的特征向量U。在物品特征建模部分獲得物品的特征向量Ι。通過將用戶和項目的特征向量(即U和Ι)進行串聯(lián),然后將其輸入MLP可最終進行評分預測。
為了驗證本文提出的模型性能,將在真實數(shù)據(jù)集上對融合注意力機制的圖神經(jīng)網(wǎng)絡(luò)推薦模型MGNR和一些常用的推薦模型進行對比實驗并分析。
實驗使用了3個不同的公開數(shù)據(jù)集來評估MGNR,分別是來自亞馬遜的Toys、Office數(shù)據(jù)集和Douban數(shù)據(jù)集。其中亞馬遜的數(shù)據(jù)集來源自文獻[6]。這幾個數(shù)據(jù)集的評分都是[1,2,3,4,5]。各數(shù)據(jù)集統(tǒng)計信息如表1所示。
表1 數(shù)據(jù)集統(tǒng)計
為了評價推薦算法的質(zhì)量,采用了常用的預測精度指標均方根誤差(RMSE)。RMSE值越小,預測精度越高。RMSE的公式如下:
(7)
本文在以上3個數(shù)據(jù)集上進行了多組實驗,本模型的嵌入層大小取值為8,16,32,64,128。批處理大小分別取值32,64,128,512。同時在使用dropout機制來防止過擬合,參數(shù)分別取0,0.1,0.3,0.5,0.8,1.0。我們將測試訓練比設(shè)置為0.8/0.2。其他模型為原始模型參數(shù)。
本文選取一下幾種常用的推薦算法與我們的模型進行對比:
PMF[2]:概率矩陣分解模型,其僅利用用戶物品評分矩陣,通過高斯分布對用戶和物品的特征向量進行建模;
GCMC[4]:一種圖自編碼器框架,從鏈路預測的角度解決推薦系統(tǒng)中的評分預測問題;
Factorized_EAE[5]:通過預測兩個或多個不同對象集元素之間的關(guān)系來完成矩陣補全的工作;
MGNR:本文基于多圖神經(jīng)網(wǎng)絡(luò)的推薦模型,利用了評分與物品等多圖信息改進預測;
3.5.1 算法對比和分析
從表2中可以看出我們的模型MGNR在3個數(shù)據(jù)及上的表現(xiàn)都是最好的,其次是Factorized_EAE和GCMC,最后是PMF。雖然都是矩陣補全,但是Factorized_EAE比GCMC多了多種不同對象集元素之間的關(guān)系,所以Factorized_EAE比GCMC的效果要好;而GCMC利用圖自編碼器,效果又比PMF的矩陣分解要好。而我們的模型利用圖神經(jīng)網(wǎng)絡(luò),能夠有效捕獲多圖深層的用戶和項目信息來進行用戶偏好的建模,因此效果最好。
表2 實驗結(jié)果對比
3.5.2 參數(shù)影響性分析
在神經(jīng)網(wǎng)絡(luò)的模型中,嵌入層的大小是模型中重要的超參數(shù)之一。這里,我們將比較本模型在不同嵌入大小下的性能,由于參數(shù)將經(jīng)過較多測試,故選取相對較小的Douban數(shù)據(jù)集。而神經(jīng)網(wǎng)絡(luò)中,批處理大小也是一個重要參數(shù),即一次訓練所選取的樣本數(shù)。這里需要與迭代次數(shù)區(qū)分開來,迭代次數(shù)指的是一個完整數(shù)據(jù)集的訓練次數(shù),而批處理大小是指在一個迭代里每次訓練選取的樣本數(shù)。對于大數(shù)據(jù)集而言,選取合適的批處理大小尤為重要,這將影響到模型的運行效率。
從圖2可以看出隨著嵌入層大小d的增大,模型的訓練效果也明顯變好,這是由于嵌入維度越多,對于節(jié)點的特征描述就越詳細,相應(yīng)的模型精度就越好。但是嵌入層大小也不是越多越好,可以看到當嵌入層大小為128時,指標與64相比反而升高了。這說明使用大量的嵌入層具有強大的表示能力。然而,如果嵌入的長度過大,模型的復雜性將顯著增加。因此,我們需要找到合適的嵌入層長度,以平衡性能和復雜性之間的關(guān)系。本文選取的最佳嵌入大小為64。
圖2 嵌入層大小的影響
從圖3可以看出隨著批處理大小的增大,訓練用時在不斷減小,但是模型效果并不是隨著批處理大小的增大而逐漸變好。當批處理大小為32時,RMSE是最大的且用時也是最長;當批處理大小為64時,RMSE值是最小的。當批處理大小為512時,用時是最少的,但RMSE表現(xiàn)不佳。因此,考慮預測最優(yōu)時應(yīng)選取批處理大小為64。如考慮預測與用時均衡時,應(yīng)選取128作為批處理大小的值,因為當批處理大小為128時預測效果與64十分接近,但用時較少。
圖3 批處理大小的影響
用戶的歷史評分信息與物品的側(cè)信息對于推薦系統(tǒng)來說都是起決定因素的,但是由于傳統(tǒng)模型對于這些圖信息的信息挖掘不夠充分。因此本文提出了一種基于多圖神經(jīng)網(wǎng)絡(luò)的個性化推薦算法MGNR,采用了圖神經(jīng)網(wǎng)絡(luò)來對如用戶物品圖等多個圖數(shù)據(jù)進行挖掘建模,以此提升推薦效果。相比于傳統(tǒng)的推薦模型,該模型能更好的從多種信息中提取用戶和物品特征。在3個公開數(shù)據(jù)集上的實驗結(jié)果表明,我們的模型具有更好的性能效果。由于本文提出的模型基于圖神經(jīng)網(wǎng)絡(luò),而圖神經(jīng)網(wǎng)絡(luò)方法也帶來了更高的計算復雜度,在未來的工作中,我們將嘗試在不降低準確度的同時,對模型進行效率上的優(yōu)化;同時也將繼續(xù)嘗試將更多的信息融入到模型中來,以實現(xiàn)模型的優(yōu)化。