高 巍,朱風(fēng)蘭,李大舟,周河曉,陳思思
(沈陽(yáng)化工大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,遼寧 沈陽(yáng) 110142)
在互聯(lián)網(wǎng)快速發(fā)展的時(shí)代,推薦系統(tǒng)的出現(xiàn)刺激了互聯(lián)網(wǎng)經(jīng)濟(jì)的爆炸增長(zhǎng)。由于數(shù)據(jù)的高度稀疏性,推薦系統(tǒng)中存在用戶冷啟動(dòng)和項(xiàng)目冷啟動(dòng)兩個(gè)嚴(yán)重問題。用戶冷啟動(dòng)主要解決了如何為新用戶提供個(gè)性化推薦的問題。當(dāng)新用戶進(jìn)入平臺(tái)時(shí),該平臺(tái)沒有行為數(shù)據(jù),因此無法基于其歷史行為進(jìn)行預(yù)測(cè),而導(dǎo)致不能提出個(gè)性化推薦。項(xiàng)目冷啟動(dòng)無法向有興趣的用戶推薦新啟動(dòng)的項(xiàng)目。解決用戶冷啟動(dòng)和項(xiàng)目冷啟動(dòng)問題成為了當(dāng)前研究領(lǐng)域的熱點(diǎn)。相關(guān)研究可以提高企業(yè)的收益率、平臺(tái)的留存率和用戶的使用舒適度。實(shí)現(xiàn)冷啟動(dòng)推薦對(duì)企業(yè)、用戶和平臺(tái)的發(fā)展具有重要意義。
推薦系統(tǒng)面臨著稀疏性和冷啟動(dòng)[1,2]問題。解決該問題的傳統(tǒng)方法是對(duì)矩陣分解[3,4]的目標(biāo)函數(shù)進(jìn)行正則化,但并沒有為電商提供良好的推薦結(jié)果。此外,在解決具有多模態(tài)、大規(guī)模、數(shù)據(jù)稀疏等復(fù)雜特征的冷啟動(dòng)問題工作中,利用輔助信息能夠比矩陣分解帶來更好的效果,例如上下文信息[5]、用戶和項(xiàng)目的關(guān)系[6,7]。推薦系統(tǒng)中的用戶信息和項(xiàng)目信息在本質(zhì)上具有圖結(jié)構(gòu)??梢詷?gòu)建同構(gòu)圖和異構(gòu)圖的圖神經(jīng)網(wǎng)絡(luò)體系結(jié)構(gòu)[8]便開始被應(yīng)用于推薦系統(tǒng)。
YING等[9]提出一種采用局部卷積的可伸縮的圖卷積算法,即PinSage算法,該算法解決了模型訓(xùn)練時(shí)間復(fù)雜度大的問題。ZHANG等[10]提出了一種層疊和重構(gòu)的圖卷積網(wǎng)絡(luò),即STAR-GCN結(jié)構(gòu),該結(jié)構(gòu)提高了推薦的效果。LEE等[11]提出了一種基于優(yōu)化的元學(xué)習(xí)MeLU算法,解決了圖卷積神經(jīng)網(wǎng)絡(luò)難以設(shè)置較深的層數(shù)學(xué)習(xí)節(jié)點(diǎn)表征形式的問題。LU等[12]提出了一種采用元學(xué)習(xí)支持集的MetaHIN算法,解決了元學(xué)習(xí)者在任務(wù)特定參數(shù)之前適應(yīng)全局參數(shù)的問題。吳等[13]提出了一種基于用戶與項(xiàng)目節(jié)點(diǎn)間關(guān)系的圖神經(jīng)網(wǎng)絡(luò)算法,提高了冷啟動(dòng)推薦的效果。
在用戶冷啟動(dòng)和項(xiàng)目冷啟動(dòng)推薦系統(tǒng)中,難點(diǎn)在于缺少用戶和項(xiàng)目的偏好信息即歷史交互。對(duì)于此難點(diǎn),可以使用用戶或項(xiàng)目的特征來表示屬性信息,但仍存在兩個(gè)問題。一是如何將屬性表示轉(zhuǎn)換為偏好表示,二是如何有效聚合鄰域中節(jié)點(diǎn)的不同模態(tài)屬性。由于推薦系統(tǒng)的大部分?jǐn)?shù)據(jù)本質(zhì)上有圖結(jié)構(gòu),并且圖神經(jīng)網(wǎng)絡(luò)技術(shù)在捕獲節(jié)點(diǎn)間的連接和圖數(shù)據(jù)的表示學(xué)習(xí)方面有強(qiáng)大的功能。此外,圖神經(jīng)網(wǎng)絡(luò)可以構(gòu)建同構(gòu)屬性圖,解決稀疏度高的問題。因此,本文提出了一種同構(gòu)屬性特點(diǎn)的圖神經(jīng)網(wǎng)絡(luò)的冷啟動(dòng)推薦模型,即信息圖神經(jīng)網(wǎng)絡(luò)(infographic neural network,IGNN)。IGNN模型結(jié)構(gòu)如圖1所示。
圖1 本文提出的IGNN模型結(jié)構(gòu)
IGNN模型由4部分組成:輸入層、屬性交互層、門控注意力層和預(yù)測(cè)層。輸入層對(duì)原始數(shù)據(jù)進(jìn)行獨(dú)熱編碼,構(gòu)造用戶間信息圖和項(xiàng)目間信息圖,兩圖均為同構(gòu)屬性圖,解決了屬性信息的表示問題;屬性交互層對(duì)圖中的節(jié)點(diǎn)進(jìn)行高階交互,并使用改進(jìn)的圖變分自編碼器重構(gòu)偏好嵌入,解決了如何將屬性表示轉(zhuǎn)換為偏好表示和偏好缺失問題;門控注意力層使用門控注意力聚合器,解決了聚合鄰域中節(jié)點(diǎn)不同模態(tài)的多屬性問題;預(yù)測(cè)層拼接用戶和項(xiàng)目的聚合表示并利用多層感知機(jī)(multilayer perceptron,MLP)解決過擬合、梯度彌散等問題,得到最終的評(píng)分分?jǐn)?shù)。
輸入層由圖1中用戶間信息圖和項(xiàng)目間信息圖兩個(gè)部分構(gòu)成。圖1中用戶間信息圖,圓圈表示用戶,連接線表示用戶與用戶之間的關(guān)系;項(xiàng)目間信息圖,圓圈表示項(xiàng)目,連接線表示項(xiàng)目與項(xiàng)目之間的關(guān)系。以用戶間信息圖為例,信息圖包含著屬性信息和結(jié)構(gòu)信息兩種信息,兩者分別描述了信息圖中節(jié)點(diǎn)的固有性質(zhì)和節(jié)點(diǎn)之間的關(guān)聯(lián)性質(zhì),這兩者對(duì)信息圖中節(jié)點(diǎn)和全圖的刻畫起著關(guān)鍵作用。項(xiàng)目間信息圖結(jié)構(gòu)特點(diǎn)、內(nèi)容與用戶信息圖相似。輸入層的輸入為原始數(shù)據(jù),輸出為用戶間信息圖和項(xiàng)目間信息圖。
(1)輸入層中對(duì)每個(gè)用戶和項(xiàng)目的屬性信息進(jìn)行獨(dú)熱編碼,并且不考慮之間的交互關(guān)系,將多個(gè)屬性的獨(dú)熱編碼簡(jiǎn)單的連接為一個(gè)長(zhǎng)向量,以構(gòu)成原始數(shù)據(jù)的每個(gè)用戶和每個(gè)項(xiàng)目的一組信息關(guān)聯(lián)。以用戶u為例,其原始數(shù)據(jù)分別為性別:男、年齡段:16歲~25歲、用戶等級(jí):4、注冊(cè)時(shí)間:2016年,即共有4個(gè)屬性。用戶屬性信息獨(dú)熱編碼中具有特征的位置標(biāo)記為1,沒有的標(biāo)記為0,而用戶屬性信息多熱編碼則是獨(dú)熱編碼的簡(jiǎn)單連接,圖2是用戶u的屬性信息編碼示例。項(xiàng)目屬性信息獨(dú)熱編碼和多熱編碼的原理與用戶編碼方法相似。
圖2 用戶u信息編碼
(2)對(duì)于用戶,若兩個(gè)用戶有相似的屬性信息,例性別、年齡等;對(duì)于項(xiàng)目,若兩個(gè)項(xiàng)目有相似的屬性信息,例品牌、型號(hào)等,則定義用戶與用戶之間、項(xiàng)目與項(xiàng)目之間有較高的屬性相似度。對(duì)于用戶,若兩個(gè)用戶有相似的行為記錄列表,則定義用戶與用戶之間有較高的偏好相似度;對(duì)于項(xiàng)目,若兩個(gè)項(xiàng)目有相似的記錄列表,則定義項(xiàng)目與項(xiàng)目之間有較高的偏好相似度。屬性相似度和偏好相似度都可以使用修正的余弦距離來測(cè)量。修正的余弦相似度在余弦相似度的基礎(chǔ)上,進(jìn)一步把所有評(píng)分都減去該評(píng)分所對(duì)應(yīng)的用戶的評(píng)分均值,結(jié)果越大,相似度越高。計(jì)算方法如式(1)所示
(1)
(2)
式中:att為屬性相似度,pre為偏好相似度。
(3)輸入層將與目標(biāo)節(jié)點(diǎn)具有top p%的總體相似度sim的所有節(jié)點(diǎn)都添加到候選池。在接下來的每輪訓(xùn)練中,根據(jù)相似度對(duì)節(jié)點(diǎn)的鄰居從候選池采樣,為保證鄰域多樣性使用年齡作為決定鄰居的主要因素,若沒有年齡,則選擇用戶等級(jí)作為主要因素進(jìn)行動(dòng)態(tài)圖構(gòu)建策略,一旦圖被構(gòu)造,將保持固定數(shù)量的鄰居。得到圖1中輸入層的用戶間信息圖和項(xiàng)目間信息圖。
屬性交互層由圖1的屬性交互和重構(gòu)偏好嵌入兩部分構(gòu)成。由于在構(gòu)造的用戶間信息圖和項(xiàng)目間信息圖中,每個(gè)節(jié)點(diǎn)都包含多熱屬性編碼和表示身份唯一的獨(dú)熱編碼,并且推薦系統(tǒng)中的用戶和項(xiàng)目數(shù)量眾多,導(dǎo)致節(jié)點(diǎn)的獨(dú)熱編碼表示維數(shù)較高,因此屬性交互層目標(biāo)是減少獨(dú)熱編碼的維數(shù),并學(xué)習(xí)多熱信息編碼表示的高階信息交互。以用戶u和項(xiàng)目i為例,定義用戶屬性為xu、用戶偏好為mu、項(xiàng)目屬性為yi和項(xiàng)目特征為ni。對(duì)于冷啟動(dòng)節(jié)點(diǎn)來說,由于新用戶和新項(xiàng)目沒有交互信息,因此用戶偏好和項(xiàng)目屬性不存在,所以需要對(duì)圖1中屬性交互層節(jié)點(diǎn)進(jìn)行重構(gòu)偏好嵌入。
(1)屬性交互
圖1中的屬性交互層首先將節(jié)點(diǎn)的獨(dú)熱編碼轉(zhuǎn)換為低維的密集向量并構(gòu)建查找表。查找表對(duì)應(yīng)于用戶的參數(shù)矩陣M和項(xiàng)目的參數(shù)矩陣N兩個(gè)參數(shù)矩陣。屬性交互層然后使用雙向交互池操作捕獲高階屬性間的交互,最后增加了線性組合操作。屬性交互層采用的雙向交互和線性組合操作定義如式(3)所示
(3)
式中:ai和aj是屬性編碼,vi和vj是屬性編碼中的第i類屬性和第j類屬性的嵌入向量,⊙表示按元素乘積。
在二階交互和線性組合之后分別使用一個(gè)全連接層,實(shí)現(xiàn)了對(duì)高階特征交互的學(xué)習(xí),fFC函數(shù)計(jì)算方法如式(4)所示
(4)
式中:Wfc,bfc和LeakyReLU分別是權(quán)重矩陣、偏置向量和激活函數(shù)。用戶u的屬性編碼au和項(xiàng)目i的屬性編碼ai分別被饋入fFC函數(shù),產(chǎn)生了用戶的屬性嵌入xu和項(xiàng)目的屬性嵌入yi,如式(5)所示
xu=fFC(au),yi=fFC(ai)
(5)
(2)重構(gòu)偏好嵌入
重構(gòu)偏好嵌入是圖1中的屬性交互層的第二部分。對(duì)于用戶冷啟動(dòng)和項(xiàng)目冷啟動(dòng)問題,則是由于新用戶和新項(xiàng)目缺少歷史交互引起的,即缺少偏好。針對(duì)上述問題,本文提出改進(jìn)的變分圖自編碼器(improved variational graph autoencoder,IVGAE)從用戶和項(xiàng)目的信息分布中重構(gòu)偏好,其結(jié)構(gòu)包含3個(gè)部分:①推斷模型;②生成模型;③近似模型。以用戶u為例,如圖3所示。
圖3 改進(jìn)的變分圖自編碼器(IVGAE)結(jié)構(gòu)
推斷模型又稱為編碼器,由圖卷積神經(jīng)網(wǎng)絡(luò)(graph convolutional network,GCN)[14]組成,由圖3的推斷模型部分看出,對(duì)于用戶u, 它以用戶屬性xu和參數(shù)矩陣M作為輸入,輸出embedding空間的變量Z。ReLU函數(shù)用于推斷模型,可以克服梯度消失并且加快訓(xùn)練速度,第一個(gè)隱藏層生成一個(gè)低維特征矩陣。GCN的計(jì)算方法如式(6)所示
(6)
第二個(gè)隱藏層生成μ和logσ2, 如式(7)所示
(7)
聯(lián)立第一個(gè)隱藏層和第二個(gè)隱藏層,可以得到編碼器的計(jì)算,如式(8)所示
(8)
下采樣以μ,logσ2的分布作為輸入,輸出embedding空間變量Z,如式(9)所示
Z=μ+σ×ε,ε~N(0,1)
(9)
生成模型又稱為解碼器,生成模型由embedding變量Z之間的內(nèi)積定義;由圖3的生成模型部分看出,解碼器的輸出是一個(gè)重構(gòu)的用戶屬性x′u, 計(jì)算過程如式(10)所示。引入生成模型的所有參數(shù),參數(shù)化為多層感知機(jī)。同理,項(xiàng)目i重構(gòu)的項(xiàng)目特征為y′i
x′u=sigmoid(ZZT)
(10)
從圖3的近似模型部分看出,屬性交互層將用戶重構(gòu)嵌入x′u約束為用戶偏好嵌入mu, 項(xiàng)目重構(gòu)嵌入y′i約束為項(xiàng)目特征嵌入ni。 綜上,可以得到mu~x′u和ni~y′i。
最后,本文將偏好嵌入和屬性嵌入融合到節(jié)點(diǎn)嵌入中,使每個(gè)節(jié)點(diǎn)既包含歷史偏好又包含其自身的信息,計(jì)算過程如式(11)所示。其中 [;] 表示向量級(jí)聯(lián)運(yùn)算,Wu和Wi分別為用戶u和項(xiàng)目i的權(quán)重矩陣,bu和bi分別為用戶u和項(xiàng)目i的偏置向量,mu是用戶u的偏好,ni是項(xiàng)目i的特征。項(xiàng)目在屬性交互層的操作過程和用戶相似。屬性交互層的輸出為用戶節(jié)點(diǎn)嵌入Pu和項(xiàng)目節(jié)點(diǎn)嵌入qi
Pu=Wu[mu;xu]+bu,qi=Wi[ni;yi]+bi
(11)
門控注意力層的目的是有效的聚集鄰域中不同模態(tài)的各種屬性,包括多頭注意力和學(xué)習(xí)門兩部分。
針對(duì)鄰域聚集問題,門控注意力層采用了鍵值注意力機(jī)制和點(diǎn)積注意力,計(jì)算一個(gè)附加軟門在0(低重要性)和1(高重要性)之間,賦予每個(gè)磁頭不同的重要性,結(jié)合多頭注意力聚合器,得到了本文設(shè)計(jì)的門控注意力網(wǎng)絡(luò)結(jié)構(gòu)[15]。門控注意力網(wǎng)絡(luò)結(jié)構(gòu)如圖4所示,以兩個(gè)用戶的中心節(jié)點(diǎn)的三頭門控注意力聚合器為例,不同的顏色代表不同的注意頭,在學(xué)習(xí)門中,深色的門代表較大的值。
圖4 門控注意力網(wǎng)絡(luò)結(jié)構(gòu)
本文給定一個(gè)用戶節(jié)點(diǎn)u, 其節(jié)點(diǎn)嵌入為Pu,Nu為節(jié)點(diǎn)u的相鄰節(jié)點(diǎn),ZNu={Zv|v∈Nu} 是相鄰節(jié)點(diǎn)中參考矢量的集合。用戶節(jié)點(diǎn)的鄰居聚合和節(jié)點(diǎn)更新過程包含以下3個(gè)步驟:
(12)
(13)
步驟2 圖4中的學(xué)習(xí)門以鄰居嵌入ZNu和步驟1得到的注意力權(quán)重作為輸入,進(jìn)行細(xì)粒度聚合操作。為了確保增加門不會(huì)引入太多的附加參數(shù),門控注意力層使用卷積網(wǎng)絡(luò)ψg, 該卷積網(wǎng)絡(luò)采用中心節(jié)點(diǎn)和相鄰節(jié)點(diǎn)的特征生成門值。計(jì)算過程如式(14)所示
(14)
本文結(jié)合了平均池和最大池來構(gòu)建卷積網(wǎng)絡(luò),如式(15)所示
(15)
式中:θm將相鄰特征映射到dm維向量,然后取元素方向的最大值,θg將連接的特征映射到最終的K門。
通過設(shè)置一個(gè)小的dm, 用于計(jì)算門的子網(wǎng)的計(jì)算開銷可以忽略不計(jì)。
綜合3個(gè)步驟可以得到門控注意力聚合器的公式,如式(16)所示
(16)
圖5 MLP的模型
本文將用戶u對(duì)項(xiàng)目i的預(yù)測(cè)評(píng)分計(jì)算如式(17)所示
(17)
本實(shí)驗(yàn)在Ubuntu18.02系統(tǒng)下進(jìn)行,使用Intel@i5-7200U作為計(jì)算單元,內(nèi)存為8 GB。模型使用Pytorch框架進(jìn)行搭建,版本為1.8.1?;赑ytorch框架進(jìn)行用戶和項(xiàng)目評(píng)分預(yù)測(cè)模型的搭建和訓(xùn)練,使用DGL庫(kù)來進(jìn)行圖神經(jīng)網(wǎng)絡(luò)的構(gòu)建。本文的實(shí)驗(yàn)環(huán)境配置見表1。
表1 實(shí)驗(yàn)環(huán)境配置
本文使用京東2016年2月至4月的高潛用戶購(gòu)買意向預(yù)測(cè)數(shù)據(jù)集來評(píng)估提出模型。京東數(shù)據(jù)集由103 525個(gè)用戶、17 181個(gè)商品、2 861 262條評(píng)分信息組成。數(shù)據(jù)集由5個(gè)文件組成,各個(gè)文件信息見表2。本文對(duì)數(shù)據(jù)進(jìn)行清洗,將用戶行為數(shù)據(jù)文件合并為一個(gè)文件JData_Action。
表2 數(shù)據(jù)集基本信息
本文采用了廣泛用于評(píng)分預(yù)測(cè)任務(wù)的3個(gè)評(píng)價(jià)指標(biāo):均方誤差(mean square error,MSE)、均方根誤差(root mean square error,RMSE)和平均絕對(duì)誤差(mean absolute error,MAE)。
(1)均方誤差(MSE)
均方誤差是線性回歸中最常用的損失函數(shù)。MSE可以評(píng)價(jià)數(shù)據(jù)的變化程度,MSE的值越小,說明預(yù)測(cè)模型描述實(shí)驗(yàn)數(shù)據(jù)具有更好的精確度。MSE的定義如式(18)所示
(18)
(2)均方根誤差(RMSE)
均方根誤差衡量的是預(yù)測(cè)值與真實(shí)值之間的偏差,并且對(duì)數(shù)據(jù)中的異常值較為敏感。RMSE的定義如式(19)所示
(19)
(3)平均絕對(duì)誤差(MAE)
平均絕對(duì)誤差是絕對(duì)誤差的平均值,它其實(shí)是更一般形式的誤差平均值。因?yàn)槿绻`差是[-1,0,1],平均值就是0,但這并不意味之系統(tǒng)不存在誤差,只是正負(fù)相互抵消了,因此要加上絕對(duì)值。MAE的定義如式(20)所示
(20)
本文提出的IGNN模型,按照經(jīng)驗(yàn)設(shè)置批次大小為128、LeakyReLU的斜率為0.01和初始學(xué)習(xí)率為0.0005。本文討論了模型計(jì)算結(jié)果中隱藏向量維數(shù)D和候選集閾值p在構(gòu)造用戶間信息圖和項(xiàng)目間信息圖過程中的最優(yōu)參數(shù)的設(shè)定問題。實(shí)驗(yàn)初始設(shè)置方式如下:隱藏向量維數(shù)D=40, 候選集閾值p=5。
在優(yōu)化隱藏向量維數(shù)D的過程中,實(shí)驗(yàn)通過更改不同維度的集合 {10,20,30,40,50} 來進(jìn)行討論。實(shí)驗(yàn)首先將候選集閾值p設(shè)置為5,然后改變隱藏向量維數(shù)D。 隱藏向量維數(shù)D的參數(shù)優(yōu)化調(diào)整結(jié)果如圖6所示。
圖6 隱藏向量維數(shù)D的參數(shù)優(yōu)化調(diào)整結(jié)果
從圖6可以看出,隨著隱藏向量維數(shù)的增加,性能呈總體上升趨勢(shì)。圖6(a)中用戶冷啟動(dòng)的MSE值隨隱藏向量維數(shù)的增加數(shù)值平穩(wěn)降低,性能呈上升趨勢(shì);項(xiàng)目冷啟動(dòng)的MSE值隨隱藏向量維數(shù)的增加先降低,在40維后降低,40維后又上升。圖6(b)中用戶冷啟動(dòng)的RMSE值隨隱藏向量維數(shù)的增加數(shù)值大幅度降低,在40維后數(shù)值迅速增加;項(xiàng)目冷啟動(dòng)的RMSE值隨隱藏向量維數(shù)的增加數(shù)值大幅度降低,在40維后數(shù)值緩慢增加。圖6(c)中用戶冷啟動(dòng)的MAE值隨隱藏向量維數(shù)的增加數(shù)值大幅度降低,在40維后數(shù)值緩慢增加;項(xiàng)目冷啟動(dòng)的MAE值隨隱藏向量維數(shù)的增加數(shù)值大幅度降低,在40維后數(shù)值緩慢增加。綜合兩個(gè)冷啟動(dòng)的比較,隱藏向量維數(shù)為40時(shí),IGNN模型的性能最好。這表明較大的維度可以捕獲用戶、項(xiàng)目及其各自信息的更多隱藏因素,從而產(chǎn)生了節(jié)點(diǎn)更好的表示能力。
在優(yōu)化候選集閾值p的過程中,實(shí)驗(yàn)從候選集的閾值 {1,5,10,15,20} 中進(jìn)行挑選。實(shí)驗(yàn)首先將隱藏向量維數(shù)D設(shè)置為40,然后改變候選集的閾值p。 候選集閾值p在構(gòu)造用戶間信息圖和項(xiàng)目間信息圖過程中的參數(shù)優(yōu)化調(diào)整結(jié)果如圖7所示。
圖7 候選集閾值p的參數(shù)優(yōu)化調(diào)整結(jié)果
從圖7中可以看出,在大多數(shù)情況下,p取值為5時(shí),在候選范圍內(nèi)取得最優(yōu)結(jié)果。圖7(a)中用戶冷啟動(dòng)的MSE值隨候選集閾值的增加數(shù)值先增加再下降,以此規(guī)律反復(fù);項(xiàng)目冷啟動(dòng)的MSE值隨候選集閾值的增加先降低后持續(xù)增加。圖7(b)中用戶冷啟動(dòng)的RMSE值隨候選集閾值的增加數(shù)值先增加,在第15個(gè)后開始下降;項(xiàng)目冷啟動(dòng)的RMSE值隨候選集閾值的增加先下降后持續(xù)增加。圖7(c)中用戶冷啟動(dòng)的MAE值隨候選集閾值的增加數(shù)值先降低,在第5個(gè)后開始增加;項(xiàng)目冷啟動(dòng)的MAE值隨候選集閾值的增加持續(xù)增加。當(dāng)從候選集采樣時(shí),被選擇概率與候選集大小無關(guān),因此排名靠前的樣本始終具有較高的被選擇概率。因此,p=5時(shí)被選為最優(yōu)設(shè)定。
在用戶冷啟動(dòng)過程中,訓(xùn)練集來自于JData_user文件中80%的用戶以及JData_Action文件中80%的行為數(shù)據(jù),測(cè)試集來自于JData_user文件剩余20%的用戶。在項(xiàng)目冷啟動(dòng)過程中,訓(xùn)練集來自于JData_Product文件中80%的項(xiàng)目以及JData_Action文件中80%的行為數(shù)據(jù),測(cè)試集來自于JData_Product文件剩余20%的項(xiàng)目。評(píng)價(jià)指標(biāo)采用均方誤差(MSE)、均方根誤差(RMSE)和平均絕對(duì)誤差(MAE),實(shí)驗(yàn)結(jié)果如圖8所示。從圖8中可以看出,隨著迭代次數(shù)的增加,IGNN模型的MSE值、RMSE值和MAE值總體趨于降低的趨勢(shì);在迭代40輪前,IGNN模型的3個(gè)評(píng)價(jià)指標(biāo)數(shù)值變化明顯,從40輪后,評(píng)價(jià)指標(biāo)趨于平緩和穩(wěn)定。
圖8 評(píng)價(jià)指標(biāo)MSE、RMSE和MAE隨訓(xùn)練次數(shù)的變化
從圖8(a)中可以看出,用戶冷啟動(dòng)在前40輪迭代MSE值呈明顯下降趨勢(shì),從40輪迭代后逐漸趨于穩(wěn)定,最優(yōu)MSE值為0.9612,橫軸為訓(xùn)練次數(shù),范圍為[0,60],縱軸為MSE值,范圍為[0.900 754,1.250 817],可以看出MSE值下降了27.9%;項(xiàng)目冷啟動(dòng)在前40輪迭代MSE值呈下降趨勢(shì),從40輪迭代后有較小幅度波動(dòng),最優(yōu)MSE值為0.9067,橫軸為訓(xùn)練次數(shù),范圍為[0,60],縱軸為MSE值,范圍為[0.956 769,1.082 582],可以看出MSE值下降了11.6%。用戶冷啟動(dòng)和項(xiàng)目冷啟動(dòng)在第24輪迭代時(shí)兩個(gè)MAE值相等,在這之后,用戶冷啟動(dòng)處于下降狀態(tài),項(xiàng)目冷啟動(dòng)則開始處于波動(dòng)狀態(tài)。
從圖8(b)中可以看出,用戶冷啟動(dòng)一直趨于降低趨勢(shì),最優(yōu)RMSE值為1.0472,橫軸為訓(xùn)練次數(shù),范圍為[0,60],縱軸為RMSE值,范圍為[1.034 216,1.279 592],可以看出RMSE值下降了19.2%;項(xiàng)目冷啟動(dòng)在前40輪迭代RMSE值呈下降趨勢(shì),從40輪迭代后有較小幅度波動(dòng),最優(yōu)RMSE值為1.0294,橫軸為訓(xùn)練次數(shù),范圍為[0,60],縱軸為RMSE值,范圍為[1.017 509,1.081 228],可以看出RMSE值下降了5.9%。
從圖8(c)中可以看出,用戶冷啟動(dòng)在前40輪迭代MAE值呈明顯下降趨勢(shì),從40輪迭代后有較小幅度波動(dòng),最優(yōu)MAE值為0.8636,橫軸為訓(xùn)練次數(shù),范圍為[0,60],縱軸為MAE值,范圍為[0.840 633,1.044 911],可以看出MAE值下降了19.5%;項(xiàng)目冷啟動(dòng)在前20輪迭代MAE值呈下降趨勢(shì),從20輪迭代后有較小幅度波動(dòng),最優(yōu)MAE值為0.8201,橫軸為訓(xùn)練次數(shù),范圍為[0,60],縱軸為MAE值,范圍為[0.803 610,0.868 817],可以看出MAE值下降了7.5%。
本文實(shí)驗(yàn)選擇6種常用于解決冷啟動(dòng)的方法,分別為STAR-GCN、MetaHIN、DropoutNet、LLAE、HERS和MetaEmb,與本文提出的模型IGNN作比較。圖9和圖10分別表現(xiàn)了用戶冷啟動(dòng)模型、項(xiàng)目冷啟動(dòng)模型的實(shí)驗(yàn)結(jié)果對(duì)比。
圖9 用戶冷啟動(dòng)模型實(shí)驗(yàn)結(jié)果對(duì)比
圖10 項(xiàng)目冷啟動(dòng)模型實(shí)驗(yàn)結(jié)果對(duì)比
從圖9中可以看出,在7個(gè)用戶冷啟動(dòng)基線中,本文提出的IGNN模型性能最佳。IGNN的MSE值、RMSE值和MAE值對(duì)比于其它6個(gè)基線的最優(yōu)值分別降低了4.05%、2.02%和2.47%。STAR-GCN在用戶和項(xiàng)目的二部圖上使用了圖卷積網(wǎng)絡(luò),可以將信息聚合到節(jié)點(diǎn)嵌入中,MSE值和RMSE值表現(xiàn)性能次佳。在MAE值指標(biāo)下,MetaEmb性能相對(duì)STAR-GCN較好,因?yàn)槠渫ㄟ^元學(xué)習(xí)嵌入生成器,可以適應(yīng)冷啟動(dòng)場(chǎng)景。LLAE的表現(xiàn)非常差,因?yàn)槠淠繕?biāo)是使用戶的整個(gè)評(píng)分適合所有項(xiàng)目,并且有根據(jù)用戶屬性重構(gòu)的向量,而評(píng)分預(yù)測(cè)是優(yōu)化每個(gè)用戶和項(xiàng)目對(duì)的評(píng)分。
從圖10中可以看出,在7個(gè)項(xiàng)目冷啟動(dòng)基線中,本文提出的IGNN模型性能最佳。IGNN的MSE值、RMSE值和MAE值對(duì)比于其它6個(gè)基線的最優(yōu)值分別降低了0.47%、1.80%和2.46%。MetaEmb通過基于梯度的元學(xué)習(xí)方法訓(xùn)練嵌入生成器,模型性能次佳。MetaHIN性能一般,因?yàn)樗枰惶字С旨赃m應(yīng)先驗(yàn)知識(shí)。DropoutNet效果并不好,因?yàn)镈ropoutNet需要內(nèi)容信息來近似矩陣分解的結(jié)果,并且其性能取決于預(yù)訓(xùn)練的偏好嵌入。HERS性能表現(xiàn)和DropoutNet相似。LLAE的表現(xiàn)最差,因?yàn)槠淠繕?biāo)是使用戶的整個(gè)評(píng)分適合所有項(xiàng)目,并且有根據(jù)項(xiàng)目屬性重構(gòu)的向量,而評(píng)分預(yù)測(cè)是優(yōu)化每個(gè)用戶和項(xiàng)目對(duì)的評(píng)分。
綜上所述,在最優(yōu)基準(zhǔn)改進(jìn)1%具有統(tǒng)計(jì)學(xué)意義,用戶冷啟動(dòng)模型提升效果較為明顯,項(xiàng)目冷啟動(dòng)提升效果一般,但優(yōu)于目前基線方法。通過將屬性圖應(yīng)用于用戶冷啟動(dòng)和項(xiàng)目冷啟動(dòng)推薦場(chǎng)景,結(jié)果驗(yàn)證了本文提出的IGNN體系結(jié)構(gòu)的性能優(yōu)越性。
互聯(lián)網(wǎng)金融產(chǎn)業(yè)對(duì)國(guó)民經(jīng)濟(jì)產(chǎn)生巨大影響,產(chǎn)生巨大經(jīng)濟(jì)效益并有巨大社會(huì)影響?;ヂ?lián)網(wǎng)金融在快速發(fā)展過程中,強(qiáng)烈依賴于推薦系統(tǒng)。推薦系統(tǒng)為互聯(lián)網(wǎng)金融注入了強(qiáng)有力的新鮮血液和留存了用戶使用率。在推薦系統(tǒng)的實(shí)現(xiàn)中,解決冷啟動(dòng)問題對(duì)提升企業(yè)的經(jīng)濟(jì)效益,保留平臺(tái)的用戶留存率有著直接的影響效果。本文嘗試將深度學(xué)習(xí)技術(shù)應(yīng)用于京東電商平臺(tái)商品推薦的研究中,提出了基于圖神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的信息圖神經(jīng)網(wǎng)絡(luò)。該模型利用改進(jìn)的變分圖自編碼器重構(gòu)偏好嵌入解決了偏好缺失問題,而且通過門控注意力結(jié)構(gòu)提高模型容量,解決細(xì)粒度鄰居聚合的問題。在MSE、RMSE和MAE評(píng)價(jià)指標(biāo)下,與多種冷啟動(dòng)模型相比較,本文提出的IGNN模型在用戶冷啟動(dòng)至少改進(jìn)了2%左右,在項(xiàng)目冷啟動(dòng)至少改進(jìn)了1%左右,有著更好的性能表現(xiàn)。