王 磊 熊于寧 李云鵬 劉媛媛
(西南財經(jīng)大學(xué)經(jīng)濟(jì)信息工程學(xué)院 成都 610074)
協(xié)同過濾(collaborative filtering,CF)是推薦系統(tǒng)中的主要方法之一[1].根據(jù)是否采用了機(jī)器學(xué)習(xí)模型,它可以分為:基于內(nèi)存的協(xié)同過濾[2-3]和基于模型的協(xié)同過濾[4-9].相比于前者存在的依賴于相似度函數(shù)、內(nèi)存占用度高、難以發(fā)現(xiàn)實體之間的非線性和隱含聯(lián)系等不足,基于模型的方法利用矩陣隱空間分解[4-5]、Markov鏈[6]、深度神經(jīng)網(wǎng)絡(luò)[7-8]等模型學(xué)習(xí)實體的嵌入表示,能夠從實體交互操作及輔助信息中更有效地捕獲實體間的復(fù)雜聯(lián)系,是目前研究最廣泛的推薦方法.
近幾年,圖卷積神經(jīng)網(wǎng)絡(luò)(graph convolutional neural network,GCN)的研究逐漸興起[9-14],由于具有在圖結(jié)構(gòu)上學(xué)習(xí)嵌入表示的強(qiáng)大能力,它成為當(dāng)前推薦系統(tǒng)中最熱門的研究方法[10-11,15-18].GCN利用譜圖理論定義了圖卷積操作,在拓?fù)鋱D上傳播和聚合鄰居節(jié)點的消息,具有同時利用實體特征和圖結(jié)構(gòu)特征學(xué)習(xí)實體嵌入表示的優(yōu)勢.實質(zhì)上,它是將傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)[17]優(yōu)良的特征學(xué)習(xí)和表示能力擴(kuò)展到非規(guī)則的圖數(shù)據(jù)上.
推薦場景中的實體及其交互關(guān)系可以很自然地用拓?fù)鋱D表示,因而非常適于采用GCN模型實現(xiàn)基于圖的推薦任務(wù).近3年來,一些基于圖卷積神經(jīng)網(wǎng)絡(luò)的推薦模型相繼被提出.例如,Berg等人[10]使用GCN作為編碼器在圖自編碼框架下實現(xiàn)了GCMC(graph convolutional matrix completion)推薦模型,它利用單個圖卷積層在“用戶-項目”二分圖上聚合1階鄰居的協(xié)同信號,實現(xiàn)了端到端的評分預(yù)測.Wang等人[15]提出了一種NGCF(neural graph collaborative filtering)模型,它利用GCN的消息傳遞機(jī)制堆疊多個圖卷積層,實現(xiàn)了二分圖上高階鄰居的協(xié)同信號隱式傳遞,最后合并所有層的節(jié)點嵌入進(jìn)行推薦,一定程度彌補(bǔ)了GCMC模型只能利用1階協(xié)同信號的弱點.此外,一些學(xué)者從提升圖卷積操作效率[16-17]、利用注意力機(jī)制[19-20]、引入輔助信息[21]、提高擴(kuò)展性[11,22]、克服冷啟動[23]等方面改進(jìn)了基于GCN的推薦模型.這些研究均表明:得益于強(qiáng)大的特征表示學(xué)習(xí)能力,基于GCN的推薦模型能夠更好地在實體交互圖上捕獲隱含、非線性的協(xié)同信號,通常獲得了比傳統(tǒng)協(xié)同推薦模型更優(yōu)的準(zhǔn)確率.
盡管圖卷積神經(jīng)網(wǎng)絡(luò)已被公認(rèn)在推薦任務(wù)中具有顯著優(yōu)勢,但已提出的基于GCN的推薦模型通常忽視了2個方面的問題,尚需進(jìn)一步完善.
1)大多數(shù)模型的圖卷積層沒有充分利用高階鄰居的協(xié)同信號.例如,GCMC只利用了1階鄰居的信號更新節(jié)點嵌入.而文獻(xiàn)[24]的研究表明高階鄰居的協(xié)同信號同樣對學(xué)習(xí)節(jié)點嵌入非常重要.此后的多個模型在GCN框架下堆疊多個圖卷積層隱含地傳遞高階協(xié)同信號[15-16,18,23],但在他們的圖卷積層內(nèi)部仍然只用1階鄰居更新節(jié)點嵌入.該方式不僅很難控制聚合高階信號時的強(qiáng)度,而且容易受到噪聲的影響(詳見1.3節(jié)的分析).2019年提出的GraphRec模型直接利用社交關(guān)系聚合了好友的協(xié)同信號[20],但該方法并沒有利用項目的高階信號且需要額外的輔助信息.
2)現(xiàn)有模型的圖卷積層在傳播和聚合協(xié)同信號時很少重視用戶的不同觀點對推薦結(jié)果的影響.在推薦場景中,評分代表了用戶的觀點.例如,若用戶對項目v1和v2分別給予的評分為2和5,則顯然他對v2表達(dá)了更“喜歡”的觀點,或者該項目更符合用戶的偏好.然而,現(xiàn)有的大多數(shù)模型在聚合1階協(xié)同信號時忽略了用戶觀點的差異[15-19,23].我們注意到,GCMC和文獻(xiàn)[25]提出的模型試圖在不同評分等級上分別聚合協(xié)同信號,但是他們的方法在合并多個等級的信號時仍然沒有考慮用戶觀點的差別.
針對上述不足,本文以推薦系統(tǒng)中的評分預(yù)測任務(wù)為對象,研究利用2階鄰居的協(xié)同信號和用戶觀點來提升圖卷積神經(jīng)網(wǎng)絡(luò)在學(xué)習(xí)節(jié)點嵌入時的準(zhǔn)確性,進(jìn)而提出一種增強(qiáng)的基于圖卷積神經(jīng)網(wǎng)絡(luò)的協(xié)同過濾推薦模型——EGCN-CF(enhanced graph convolutional neural network based collaborative filtering recommendation model).
本文的主要貢獻(xiàn)有3個方面:
1)提出一種直接從鄰接矩陣計算2階協(xié)同信號及其強(qiáng)度的方法,用于更新圖卷積層的節(jié)點嵌入;
2)給出一種簡便方法將用戶觀點融合入1階協(xié)同信號聚合過程,以便利用用戶偏好更準(zhǔn)確地學(xué)習(xí)節(jié)點的嵌入表示;
3)結(jié)合1)2)方法,提出了一種增強(qiáng)的基于圖卷積神經(jīng)網(wǎng)絡(luò)的協(xié)同推薦模型,并在多個推薦數(shù)據(jù)集上驗證了其性能優(yōu)勢.
在推薦場景中,假設(shè)已知稀疏的評分矩陣R∈m×n,它的少量非0元素ru,v∈{1,2,…,T}代表用戶u對項目v的評分結(jié)果,共有T個等級;矩陣Xu∈m×du和Xv∈n×dv分別表示用戶和項目的實體特征,其中,m和n分別是用戶集和項目集的規(guī)模,du和dv分別是用戶特征向量和項目特征向量的維度.評分預(yù)測的目標(biāo)是:建立預(yù)測模型對大量尚未評分的項目給予準(zhǔn)確地評分,進(jìn)而實現(xiàn)項目推薦.
基于圖卷積神經(jīng)網(wǎng)絡(luò)的推薦模型利用消息傳遞的思想在二分圖上傳播和聚合協(xié)同信號,學(xué)習(xí)節(jié)點的嵌入表示并用于推薦預(yù)測[10,15-16,18,26].它們的模型結(jié)構(gòu)通常由3個部分構(gòu)成:輸入層、圖卷積層和預(yù)測層.
e0=Enc(x,Θin),
(1)
2)圖卷積層.又稱為“嵌入傳播層”,它利用二分圖的結(jié)構(gòu)特征在圖上傳播和聚合鄰居節(jié)點的協(xié)同信號,實現(xiàn)節(jié)點的嵌入更新.其主要操作包括:協(xié)同信號構(gòu)造和節(jié)點嵌入更新.
以用戶u對項目v的一次評分為例,該操作反映了用戶對項目的一定程度的偏好.因此,可以將此次操作傳播的1階協(xié)同信號構(gòu)造為
su←v=f(eu,ev,pu,v,Θf),
(2)
嵌入更新操作在二分圖上匯集所有1階鄰居的協(xié)同信號,用于更新用戶u的嵌入表示:
(3)
其中,聚合函數(shù)g(·)可以采用均值、最大池化、LSTM網(wǎng)絡(luò)等方式實現(xiàn)[13,18].
類似地,當(dāng)項目v獲得用戶u的評分,表明項目的品質(zhì)與用戶偏好一定程度的相符.因此,可以利用用戶的協(xié)同信號對項目實體的嵌入進(jìn)行更新,即
sv←u=f(ev,eu,pu,v,Θf),
(4)
(5)
這樣,圖卷積層利用1階協(xié)同信號在二分圖上實現(xiàn)了實體節(jié)點的嵌入表示的一次更新.
(6)
其中,預(yù)測函數(shù)h(·)通常采用雙線性解碼函數(shù)[10,25]或多層感知機(jī)網(wǎng)絡(luò)[5,20]實現(xiàn);Θh代表其參數(shù)集合.
一方面,如1.2節(jié)所述,圖卷積層采用的協(xié)同信號聚合式(3)(5)中,只使用了來自直接交互的1階鄰居和自身的協(xié)同信號,忽略了卷積層內(nèi)的高階信號.然而,根據(jù)協(xié)同過濾的基本思想[1],用戶行為或偏好還受到與之相似的其他用戶的影響,他們在二分圖上可視為相似的高階鄰居.因此,在圖卷積層聚合高階信號是非常有益的.近期,文獻(xiàn)[27]也利用隨機(jī)游走模型指出了高階信號對于優(yōu)化節(jié)點嵌入的價值.
一些基于GCN的推薦模型雖然通過堆疊多個圖卷積層隱含地傳播了高階協(xié)同信號[15-16,18,23],但這種方式難以控制高階信號的強(qiáng)度,容易受到噪聲的干擾.例如,假設(shè)在二分圖上存在一條連通路徑u0→v1→u2→v3→u4,其中,用戶u4由于偶然原因評分了項目v3,盡管它與目標(biāo)用戶u0的偏好并不相似,但這次評分操作仍將導(dǎo)致u4的協(xié)同信號隱含地沿著堆疊的4個圖卷積層逆向傳遞到u0,而不是被視為噪聲信號受到抑制或消除.
另一方面,在圖卷積層的聚合式(3)(5)中,所有的1階鄰居信號被同等對待,沒有考慮用戶觀點(即評分值)的差別.顯然,高評分項目的品味比低評分項目更能夠反映用戶的偏好[20,28],應(yīng)該在信號聚合操作中起到更大的作用.
本節(jié)將針對基于GCN的推薦模型存在的如1.3節(jié)所述的缺陷,提出一種端到端的EGCN-CF模型.它通過在圖卷積層內(nèi)引入2階協(xié)同信號和用戶觀點,更有效地利用協(xié)同信號學(xué)習(xí)節(jié)點的嵌入表示,最后利用多層的感知機(jī)網(wǎng)絡(luò)(multi-layer perceptron,MLP)實現(xiàn)對未知評分的預(yù)測.其基本結(jié)構(gòu)如圖1所示,包括輸入層、增強(qiáng)的圖卷積層和預(yù)測層3個部分.
EGCN-CF模型的輸入層負(fù)責(zé)對用戶或項目的實體特征進(jìn)行編碼,生成的低維嵌入向量作為圖卷積層的輸入.它采用的編碼函數(shù)為
(7)
值得注意的是,式(7)采用了直接對用戶或項目的原始實體特征進(jìn)行編碼的方法,獲得它們的初始嵌入向量.相比于NGCF等模型采用的基于節(jié)點序號的獨熱編碼方法[15-16],該方法可以將語義更豐富的實體特征或輔助信息編碼后輸入到圖卷積層,更有利于準(zhǔn)確地學(xué)習(xí)節(jié)點的嵌入表示;并且,由于只需要優(yōu)化編碼矩陣,使得模型的優(yōu)化參數(shù)更少.實驗部分將具體描述對實體特征進(jìn)行編碼的細(xì)節(jié).
同NGCF模型類似,本文模型通過堆疊L個圖卷積層實現(xiàn)節(jié)點嵌入表示的逐層精化.但我們針對現(xiàn)有模型的圖卷積層的缺陷,通過融合2階協(xié)同信號和用戶觀點進(jìn)行了增強(qiáng).本節(jié)以第l∈{1,2,…,L}圖卷積層為例介紹其主要操作.
2.2.1 構(gòu)造的2階協(xié)同信號
如1.3節(jié)的討論,在圖卷積層中聚合高階協(xié)同信號有益于節(jié)點嵌入表示的學(xué)習(xí).但是,本文模型只使用了所有高階鄰居中的2階鄰居的協(xié)同信號,主要原因有2點:1)根據(jù)Xu等人[27]的研究,連通路徑上高階鄰居的協(xié)同信號的強(qiáng)度隨著階數(shù)增加而迅速衰減,并且噪聲信號容易在路徑上積累,實際上該論斷也一定程度解釋了許多基于GCN的模型只堆疊了3或4個圖卷積層的原因[15-16];2)2階鄰居是與目標(biāo)用戶(項目)有共同交互項目(用戶)的同質(zhì)實體,按照三元閉包理論的解釋[29],2階鄰居相對于更高階鄰居而言,它們與目標(biāo)實體的偏好更為相似,并且,與目標(biāo)實體共同的交互實體越多,相似度越高.此外,第3節(jié)的實驗結(jié)果也驗證了增加同質(zhì)的4階鄰居的協(xié)同信號不能明顯提高推薦模型的性能.
(8)
(9)
令El-1∈(m+n)×h是第l-1層所有嵌入向量組成的矩陣;Sl(2)∈(m+n)×h表示第l層所有節(jié)點匯集的2階協(xié)同信號矩陣,其行向量由或構(gòu)成.根據(jù)譜圖理論知識[31],可以整理出2階協(xié)同信號矩陣Sl(2)的簡潔形式:
(10)
(11)
2.2.2 帶用戶觀點的1階協(xié)同信號
用戶對項目的評分不僅說明他們之間存在交互關(guān)系,更重要的是評分具體表達(dá)了用戶的觀點.例如,在電影推薦中,用5分、3分、1分表達(dá)了用戶的“非常喜歡”“一般喜歡”“不喜歡”3種不同的觀點.根據(jù)文獻(xiàn)[28]的解釋,獲得了正向觀點的高評分項目更能反映用戶的真實偏好.因此,在匯聚1階協(xié)同信號時融入用戶觀點,能夠更準(zhǔn)確地學(xué)習(xí)用戶嵌入.
我們借鑒GCN的消息傳遞機(jī)制,給出一種帶用戶觀點的1階協(xié)同信號構(gòu)造方法.它把匯聚到用戶ui的1階協(xié)同信號定義為
(12)
顯然,高評分項目的觀點系數(shù)取較大值,其傳遞的協(xié)同信號更多,反之亦然.因此,這種帶觀點的方式更合理地聚合了1階協(xié)同信號.
同樣,我們根據(jù)譜圖理論整理出帶觀點的1階協(xié)同信號的簡潔矩陣形式,即
(13)
2.2.3 節(jié)點的嵌入更新
我們匯集1階、2階協(xié)同信號以及節(jié)點前一層的嵌入,對第l層的節(jié)點嵌入向量進(jìn)行更新,如
(14)
此后,EGCN-CF模型可以堆疊L個圖卷積層,按照式(14)實現(xiàn)嵌入表示的逐層精化,也即,依次獲得E1,E2,…,EL.
(15)
其中,W3∈2h×d′,W4∈d′×1是待學(xué)習(xí)的MLP權(quán)重矩陣;d′是MLP第1層(隱層)神經(jīng)元的數(shù)量.
需要指出的是,相比于一些文獻(xiàn)采用的線性預(yù)測模型[10,15-16,18],本文采用非線性的MLP模型具有對節(jié)點嵌入向量之間復(fù)雜關(guān)系的更強(qiáng)的擬合能力,更適用于評分預(yù)測問題.
EGCN-CF模型是一種端到端的推薦模型.為了訓(xùn)練其模型參數(shù),我們給出一種基于均方誤差的優(yōu)化目標(biāo)函數(shù):
(16)
此外,在模型訓(xùn)練時還借鑒文獻(xiàn)[15]采用的節(jié)點dropout技術(shù)防止過擬合,其dropout率為η.
最后,我們采用Adam梯度下降優(yōu)化器對式(16)進(jìn)行優(yōu)化[32],并采用小批量(minibatch)技術(shù)提高模型訓(xùn)練效率.
在EGCN-CF模型的圖卷積層中,顯式地增加了對同質(zhì)的2階鄰居的協(xié)同信號的聚合.從理論上講,它可以聚合更高階的協(xié)同信號.例如,在二分圖上同時聚合2階和4階的同質(zhì)協(xié)同信號時,只需簡單地將式(11)替換為式(17)即可:
(17)
另外,在文獻(xiàn)[20]的推薦模型中,將社交網(wǎng)絡(luò)中好友的協(xié)同信號聚合到圖卷積層.社交好友相當(dāng)于二分圖上具有高相似性的同質(zhì)高階鄰居,聚合其協(xié)同信號顯然有利于學(xué)習(xí)用戶節(jié)點的嵌入表示.與之相比,本文模型通過矩陣運算對2階鄰居及其信號強(qiáng)度進(jìn)行了合理的計算,無需額外的輔助信息.并且,當(dāng)數(shù)據(jù)集中存在關(guān)于同質(zhì)節(jié)點關(guān)系的輔助信息時,比如,社交關(guān)系矩陣Qu∈m×m,項目相似性矩陣Qv∈n×n,通過修改式(11)很容易把它們?nèi)谌氡疚哪P?,?/p>
(18)
其中,α是融合參數(shù).
最后,EGCN-CF的3層結(jié)構(gòu)與文獻(xiàn)[15]的NGCF模型有相似之處,但它們在輸入層、2階協(xié)同信號利用、用戶觀點結(jié)合、預(yù)測層設(shè)計等方面具有顯著差異.
為了驗證提出的EGCN-CF推薦模型在評分預(yù)測任務(wù)上的性能,我們在5個通用的推薦數(shù)據(jù)集上進(jìn)行了實驗,并將它與主流的推薦模型進(jìn)行性能對比.
表1概括了實驗用數(shù)據(jù)集的情況.其中,F(xiàn)lixster和Douban直接使用文獻(xiàn)[33]提供的預(yù)處理后的數(shù)據(jù)集;ML-100K,ML-1M,ML-10 M是來自于Movie-Lens網(wǎng)站的不同規(guī)模的電影推薦數(shù)據(jù)集(1)https://grouplens.org/datasets/movielens/.
在預(yù)處理階段,我們在二分圖上直接利用輔助信息和圖結(jié)構(gòu)特征對用戶和項目的原始實體特征進(jìn)行編碼.對于Flixster和Douban數(shù)據(jù)集,實體特征由3個部分連接獲得:節(jié)點度F1、評分特征F2、鄰接關(guān)系特征F3.其中,評分特征F2統(tǒng)計了用戶(或項目)給予(或獲得)的不同等級評分的比例,鄰接關(guān)系特征F3體現(xiàn)了同質(zhì)節(jié)點之間的鄰接關(guān)系,本文將其設(shè)置為用Node2vec模型[34]在用戶或項目鄰接矩陣上生成的256維向量.對于MovieLens數(shù)據(jù)集,項目的實體特征由節(jié)點度F1、評分特征F2、語義特征F3三部分組成.其中,語義特征F3采用文獻(xiàn)[28]中的實驗方法,對電影類別、名稱、發(fā)行年編碼獲得,用戶的實體特征由節(jié)點度F1、評分特征F2、人口統(tǒng)計特征F3、交互項目的平均語義特征F4四部分組成.其中,人口統(tǒng)計特征F3是由年齡、性別、職業(yè)編碼的23維向量.表1最后2列給出了編碼后的用戶和項目的實體特征維度.
Table 1 Statistics of Experimental Datasets表1 實驗數(shù)據(jù)集統(tǒng)計
實驗中,我們選取4種主流推薦模型作為對比算法,包括:NeuCF[5],GCMC[10],GraphRec[20],NGCF[15].其中,NeuCF是近幾年提出的基于矩陣分解的協(xié)同推薦模型,它采用深度神經(jīng)網(wǎng)絡(luò)代替嵌入向量的內(nèi)積運算,實驗中我們采用式(16)替換其原優(yōu)化目標(biāo),使之能夠適用于評分預(yù)測任務(wù).其他3種模型都是目前主流的基于GCN的協(xié)同過濾推薦模型,其中,對于GraphRec模型,我們采用用戶的2階鄰居模擬其在MovieLens數(shù)據(jù)集上的社交關(guān)系;對于NGCF模型,我們也采用式(16)代替其原有的成對BPR(Bayesian personalized ranking)損失目標(biāo)函數(shù),以便進(jìn)行評分預(yù)測.
我們用Tensorflow實現(xiàn)了本文的EGCN-CF模型,其主要參數(shù)配置為:節(jié)點嵌入維度h=64,圖卷積層的數(shù)量L=3,正則系數(shù)λ通過交叉驗證的方法在{0.01,0.05,0.1,0.5,1,5,10}范圍內(nèi)選取,MLP的隱層參數(shù)d′=16;訓(xùn)練時Adam優(yōu)化器的學(xué)習(xí)速率設(shè)置為10-3,最大迭代次數(shù)為1 000次,每批訓(xùn)練數(shù)據(jù)規(guī)模設(shè)置為1 024,節(jié)點dropout概率η=0.3.對比算法的參數(shù)基本按照原文設(shè)置.
另外,將數(shù)據(jù)集按0.8,0.1,0.1的比例劃分為訓(xùn)練集、驗證集和測試集.在驗證集上實現(xiàn)模型參數(shù)的選取,并采用均方根誤差(root mean square error,RMSE)指標(biāo)在測試集上評價各模型的預(yù)測誤差.
我們在各數(shù)據(jù)集上比較EGCN-CF模型與對比算法的性能,它們在測試集上預(yù)測時的均方根誤差如表2所示.這里,除GCMC的結(jié)果來自于文獻(xiàn)[10]外,其他結(jié)果都是3次重復(fù)實驗的平均值.
Table 2 Comparison of Prediction Errors (RMSE)of Different Recommendation Models表2 比較不同推薦模型的預(yù)測誤差(RMSE)
觀察表2的實驗結(jié)果,可以得出4個結(jié)論:
1)基于圖卷積神經(jīng)網(wǎng)絡(luò)的4種推薦模型的預(yù)測誤差明顯優(yōu)于基于矩陣分解的NeuCF模型.這說明受益于在拓?fù)鋱D上融合了節(jié)點的實體特征和圖結(jié)構(gòu)特征,前者能夠更加準(zhǔn)確地學(xué)習(xí)節(jié)點的嵌入表示,從而獲得更好的預(yù)測結(jié)果.
2)GCMC模型由于采用1個圖卷積層,只能聚合1階鄰居的協(xié)同信號,對節(jié)點嵌入的學(xué)習(xí)能力不足,因而它在4種基于GCN的推薦模型中表現(xiàn)最差,特別是在非常稀疏的Flixster數(shù)據(jù)集上.
3)GraphRec和NGCF模型都利用了高階協(xié)同信號,均取得了優(yōu)于GCMC的預(yù)測結(jié)果.不同的是,GraphRec直接聚合社交好友的協(xié)同信號,他們相當(dāng)于二分圖中的相似的高階鄰居;NGCF則通過堆疊多個圖卷積層隱式地傳播和聚合高階協(xié)同信號.這說明了聚合高階協(xié)同信號有助于提高推薦模型的性能.
4)本文的EGCN-CF模型在絕大部分?jǐn)?shù)據(jù)集上均取得了最低的預(yù)測誤差,僅僅在Douban數(shù)據(jù)集上稍微高于GraphRec模型.并且,我們通過采用“A/B測試”進(jìn)行顯著性檢驗,發(fā)現(xiàn)本文的EGCN-CF模型的實驗結(jié)果在大多數(shù)情況下以95%置信度顯著優(yōu)于其他模型(僅在3種情況下無明顯優(yōu)勢,包括:在Douban,ML-1M數(shù)據(jù)集上與GraphRec比較、在ML-1M數(shù)據(jù)集上與NGCF比較).本文模型的優(yōu)異性能可以歸結(jié)于它在圖卷積層中增加了對更高階協(xié)同信號的利用和將用戶觀點引入信號聚合過程.與之相比,GraphRec只是從社交關(guān)系中直接獲取了用戶的高階協(xié)同信號,并未考慮項目的高階信號;NGCF模型并未在圖卷積層內(nèi)部顯式地利用高階協(xié)同信號,也未考慮用戶觀點的影響.
Table 3 Comparison of Prediction Errors (RMSE)of Different Variant Models表3 比較不同變體模型的預(yù)測誤差(RMSE)
觀察表3的實驗結(jié)果,可以發(fā)現(xiàn):
1)盡管EGCN-CF-a4模型增加了4階協(xié)同信號,但其取得的預(yù)測誤差與基本模型相當(dāng).這說明由于更高階的協(xié)同信號強(qiáng)度較弱且可能帶有噪聲,無助于明顯提高推薦模型的性能,這也是本文模型在圖卷積層中只增加同質(zhì)的2階協(xié)同信號的原因.
2)去掉用戶觀點的EGCN-CF-do模型在各數(shù)據(jù)集的預(yù)測誤差相比于基本模型均有一定程度的增大.這說明結(jié)合用戶觀點有利于提高推薦模型的性能.
3)去掉2階協(xié)同信號的EGCN-CF-oo模型在各數(shù)據(jù)集上表現(xiàn)最差.例如,F(xiàn)lixster數(shù)據(jù)集上的誤差相比基本模型增大了2.1%.這表明在圖卷積層中增加2階協(xié)同信號有利于提升評分預(yù)測的準(zhǔn)確率.
4)采用線性預(yù)測層的EGCN-CF-1模型也取得了較低的預(yù)測誤差,稍差于標(biāo)準(zhǔn)模型.這表明:一方面圖卷積層已經(jīng)能夠?qū)W習(xí)獲得準(zhǔn)確的節(jié)點嵌入表示,即使利用簡單的線性預(yù)測方法也能獲得較好的準(zhǔn)確率;另一方面,采用非線性的預(yù)測層能進(jìn)一步提高模型的預(yù)測準(zhǔn)確率.
考慮到NGCF和EGCN-CF都堆疊了多個圖卷積層,實現(xiàn)對節(jié)點嵌入的逐層精化.我們通過實驗考察2種模型取不同數(shù)量的圖卷積層時的預(yù)測誤差情況.出于篇幅原因,我們只給出在Flixster和ML-100K數(shù)據(jù)集上的對比結(jié)果,如圖2、圖3所示:
Fig.2 Effect of graph convolutional layer numbers on Flixster圖2 在Flixster數(shù)據(jù)集上圖卷積層數(shù)量的影響
Fig.3 Effect of graph convolutional layer numbers on ML-100K圖3 在ML-100K數(shù)據(jù)集上圖卷積層數(shù)量的影響
分析圖2,3中的結(jié)果,可以觀察到:
1)2種模型的預(yù)測誤差均明顯受到圖卷積層數(shù)量的影響,在2個數(shù)據(jù)集上呈現(xiàn)相似的變化趨勢:預(yù)測誤差先是隨著層數(shù)增加而明顯降低,但在3層以后,不再明顯降低并出現(xiàn)小幅增加的現(xiàn)象.這說明堆疊過多的圖卷積層容易產(chǎn)生過擬合問題.因此,本文模型的最大層數(shù)設(shè)置為3.
2)在各種情況下,本文模型的預(yù)測誤差均明顯優(yōu)于NGCF.特別是當(dāng)圖卷積層的數(shù)量較少時,其優(yōu)勢更加明顯.該現(xiàn)象得益于EGCN-CF采用的增強(qiáng)圖卷積層的優(yōu)勢,它通過在層內(nèi)聚合2階協(xié)同信號和融入用戶觀點,更合理地聚合了協(xié)同信號,提高了節(jié)點嵌入學(xué)習(xí)的準(zhǔn)確性,因而在圖卷積層較少的情況下也能獲得優(yōu)異的預(yù)測準(zhǔn)確率.
本文以推薦系統(tǒng)中的評分預(yù)測問題為對象,提出一種端到端的、基于增強(qiáng)圖卷積神經(jīng)網(wǎng)絡(luò)的協(xié)同推薦模型.它通過增加2階協(xié)同信號和融入用戶觀點,得到一種增強(qiáng)的圖卷積層,并堆疊多個層次更合理地捕獲二分圖上的協(xié)同信號,提高對節(jié)點嵌入學(xué)習(xí)的準(zhǔn)確性,最后利用非線性MLP網(wǎng)絡(luò)實現(xiàn)評分預(yù)測.在多個推薦數(shù)據(jù)集上的實驗結(jié)果表明,本文模型的預(yù)測準(zhǔn)確率優(yōu)于現(xiàn)有的推薦模型.
本文模型在運行時需要存儲二分圖的鄰接矩陣,在超大規(guī)模圖上可能遭遇存儲瓶頸.在未來的研究工作中,我們將研究借鑒文獻(xiàn)[11]的基于隨機(jī)游走的節(jié)點采樣技術(shù),對本文模型進(jìn)行改進(jìn),使其能夠適應(yīng)超大規(guī)模的推薦應(yīng)用.