邱 葉,邵雄凱,高 榕,王春枝,李 晶
1.湖北工業(yè)大學(xué) 計算機(jī)學(xué)院,武漢 430068
2.武漢大學(xué) 計算機(jī)學(xué)院,武漢 430072
隨著信息時代的不斷發(fā)展,人們獲取信息的數(shù)量也不斷增長。如何在呈幾何式增長的數(shù)據(jù)里找到所需要的數(shù)據(jù),推薦系統(tǒng)為此提供了一種可能的解決方案,利用用戶的歷史數(shù)據(jù)進(jìn)行個性化推薦[1],節(jié)約時間成本的同時也更加符合當(dāng)今時代的需求。事實上,如果用戶通過推薦獲取了感興趣的內(nèi)容,即為推薦模型增添數(shù)據(jù),利于企業(yè)更加精準(zhǔn)刻畫用戶畫像,進(jìn)而實現(xiàn)更精確的推薦。
但是,不斷發(fā)展的推薦系統(tǒng)同樣面臨著數(shù)據(jù)稀疏的難題。網(wǎng)絡(luò)時代使人們的生活方式從線下轉(zhuǎn)向線上,社交關(guān)系不斷發(fā)展。迅速增長的社交數(shù)據(jù)在一定程度上為解決數(shù)據(jù)稀疏問題提供了可能。近年來,社會化推薦成為學(xué)者們趨之若鶩的研究熱點(diǎn),層出不窮的算法和實驗結(jié)果都充分彰顯了社會化推薦的有效性及其所具有的現(xiàn)實意義。
盡管研究者們在此方面開展了許多工作[2-3],但仍有以下問題尚未解決:
(1)在采用用戶信息和輔助信息進(jìn)行推薦建模時,由于數(shù)據(jù)來源不同,所表達(dá)的信息不同,導(dǎo)致兩者不能很好地融合。尤其在社會化推薦中,因為數(shù)據(jù)異構(gòu)而不能很好融合,從而降低了用戶偏好推薦的準(zhǔn)確性[4-6]。
(2)先前的研究將不同朋友在不同方面的影響都一視同仁地看待。在現(xiàn)實場景中,用戶與不同朋友擁有不同相似興趣。如圖1所示,用戶B有兩個朋友,B與A同時喜歡打排球,與C同樣偏好唱歌。顯然,在進(jìn)行室外活動時,B更考慮A的建議;進(jìn)行室內(nèi)活動時更考慮C的建議,且唱歌和打排球給予用戶的影響程度不同。對此Chen等人[7]提出SAMN算法,旨在利用注意力機(jī)制來解決問題。然而普通注意力僅考慮朋友重要性,忽視了在不同方面朋友影響的重要性,例如在用戶對于進(jìn)行室內(nèi)或室外活動舉棋不定時,由于C在唱歌方面對用戶B的影響更大,B更可能進(jìn)行室內(nèi)活動。
圖1 用戶與朋友興趣偏好Fig.1 Preferences of user and friends.
因而,本文提出了一種新的推薦算法——MAGN(multi-head attention gated neural network),即基于多頭注意力門控神經(jīng)網(wǎng)絡(luò)的社會化推薦算法。首先,利用門控神經(jīng)網(wǎng)絡(luò)對輸入的用戶和朋友用戶對做融合,獲得豐富的交互嵌入表示。將得到的融合嵌入通過注意力記憶網(wǎng)絡(luò),獲得朋友在不同方面對于用戶的影響。其次,采用多頭注意力機(jī)制來調(diào)節(jié)朋友之間的影響力大小。最后,基于用戶本身的興趣愛好,利用門控網(wǎng)絡(luò)融合朋友影響,得到綜合用戶興趣表示。在公開數(shù)據(jù)集的實驗表明,本文提出的方法優(yōu)于主流先進(jìn)的社會化推薦算法。
本文研究工作的貢獻(xiàn)如下:
(1)為了在考慮用戶本身興趣的基礎(chǔ)上更好融合其社交影響,更好模擬了現(xiàn)實場景,本文采用門控網(wǎng)絡(luò)來建模用戶與朋友之間的復(fù)雜交互關(guān)系及其非線性交互關(guān)系。
(2)為了在進(jìn)行社會化推薦全面考慮朋友影響,本文利用多頭注意力機(jī)制,不僅突出了不同朋友對于最終推薦結(jié)果的影響,也深層次彰顯了在某一方面給出重要建議朋友對于最終推薦結(jié)果的重要影響。
(3)在兩個真實數(shù)據(jù)集上的實驗表明,本文的方法優(yōu)于主流先進(jìn)的社會化推薦算法。
在這個部分將回顧與多頭注意力門控神經(jīng)網(wǎng)絡(luò)社會化推薦相關(guān)的發(fā)展情況。分為兩個部分:注意力機(jī)制與社會化推薦,基于融合策略的推薦算法。
由于網(wǎng)絡(luò)交流方式的興起,線上社交成為了人們生活中不可或缺的一部分,從而給推薦系統(tǒng)的發(fā)展帶來了新思路。而隨著文獻(xiàn)[8]的發(fā)表,研究者們開始考慮利用注意力機(jī)制來對現(xiàn)有相關(guān)社會化推薦算法進(jìn)行改善,并進(jìn)行了卓有成效的研究工作[9],驗證了注意力機(jī)制在各種社會化推薦任務(wù)中的良好效果。
Pei等人[10]考慮到現(xiàn)有推薦假設(shè)用戶項目交互歷史中所有時間步都與推薦具有同等相關(guān)性,在真實場景中并不適用,同時許多研究都是對用戶和項目分別進(jìn)行動態(tài)建模,而沒有考慮兩者交互的影響。因而提出交互注意門控遞歸網(wǎng)絡(luò),采用注意力機(jī)制來度量時間步的相關(guān)性。柴玉梅等人[11]發(fā)現(xiàn)現(xiàn)有研究都局限地處理項目評分與評論,忽略了評論文本所蘊(yùn)含的信息,從而提出基于雙注意力機(jī)制和遷移學(xué)習(xí)的跨領(lǐng)域推薦模型。通過將注意力機(jī)制添加到詞的上下文關(guān)系中,來提升對文本中重點(diǎn)信息的關(guān)注度。Ji等人[12]考慮到原本的轉(zhuǎn)換器中,自注意力部分是一個沒有關(guān)系偏好的方法,導(dǎo)致先前的工作在采用轉(zhuǎn)換器來解決問題的時候有所限制?;诖怂麄兲岢鰹檗D(zhuǎn)換器中自注意力里的值添加一個潛在空間,并利用這個潛在空間,從推薦任務(wù)的關(guān)系中對上下文進(jìn)行建模。Tay等人[13]提出潛在度量學(xué)習(xí)算法來學(xué)習(xí)用戶和項目之間的自適應(yīng)關(guān)系向量,通過嘗試在每個交互對之間找到最優(yōu)的轉(zhuǎn)換向量,來對隱式數(shù)據(jù)進(jìn)行協(xié)同過濾和排序。
近幾年,深度學(xué)習(xí)在計算機(jī)視覺、語音識別和自然語言處理等許多領(lǐng)域取得了巨大的成功。一些研究人員還嘗試?yán)貌煌纳窠?jīng)網(wǎng)絡(luò)結(jié)構(gòu)來提高推薦性能。Lu等人[14]為了融合豐富的異構(gòu)信息,在社會化影響注意力神經(jīng)網(wǎng)絡(luò)中設(shè)計了注意力特征聚合器,學(xué)習(xí)節(jié)點(diǎn)級和類型級上的用戶和項目表示。同時,利用一個社會影響耦合器來獲取朋友推薦的影響。吳賓等人[15]考慮社會化推薦中物品之間的關(guān)聯(lián)關(guān)系,提出了一種度量物品關(guān)系關(guān)聯(lián)程度的方法,融合關(guān)聯(lián)關(guān)系以及社會關(guān)系,構(gòu)建了聯(lián)合正則化的矩陣分解推薦模型。Ma等人[16]考慮到現(xiàn)如今推薦系統(tǒng)依然存在的數(shù)據(jù)稀疏問題,以及混合異構(gòu)數(shù)據(jù)的困難,提出了一種門控式自動編碼器算法,該算法能夠通過一種神經(jīng)門控結(jié)構(gòu)來學(xué)習(xí)物品內(nèi)容和二進(jìn)制等級的融合隱藏表示。基于融合表示形式,算法利用項目之間的相鄰關(guān)系來幫助推斷用戶的偏好。Xia等人[17]提出了一種混合式深度協(xié)同過濾算法來同時學(xué)習(xí)評分和評論特征,其中兩個嵌入層用于學(xué)習(xí)用戶和項目的特征,兩個基于注意力的門控循環(huán)網(wǎng)絡(luò)從用戶和商品評論中學(xué)習(xí)上下文感知。
本文提出的MAGN算法在如下幾個方面與前人的研究工作[10-17]有很大不同。首先,文獻(xiàn)[10-13]的工作僅僅將普通注意力機(jī)制應(yīng)用在基于機(jī)器學(xué)習(xí)方法實現(xiàn)推薦建模的過程中,從而突顯用戶及各種輔助信息等對最終推薦結(jié)果的影響。但是,少有工作研究利用更加多頭注意力機(jī)制建模探索用戶及各種輔助信息在社會化推薦建模中對于推薦結(jié)果的深層次影響。其次,文獻(xiàn)[14-17]基于異構(gòu)數(shù)據(jù)融合的艱巨性,提出了幾種簡單的融合策略,缺乏建模推薦過程用戶及朋友的深層次的復(fù)雜交互關(guān)系以及非線性交互關(guān)系。相對比,本文提出的MAGN算法是一個基于門控網(wǎng)絡(luò)和多頭注意力機(jī)制的社會化推薦算法。與上述方法存在如下不同:(1)本文采用多頭注意力機(jī)制而不是普通注意力機(jī)制,實現(xiàn)了更加全面且多方面建模不同朋友的重要程度,有效減少了不同朋友對于最終社會化推薦結(jié)果的影響偏差;(2)本文在社會化推薦建模融合過程中采用了少有的門控神經(jīng)網(wǎng)絡(luò),利用門控神經(jīng)網(wǎng)絡(luò)具有的深層次非線性網(wǎng)絡(luò)結(jié)構(gòu),及其強(qiáng)大的學(xué)習(xí)數(shù)據(jù)本質(zhì)特征的能力,獲取了用戶和朋友的深層特征表示,成功實現(xiàn)了用戶及其朋友之間的復(fù)雜交互及其非線性交互的建模。
在這個部分將詳細(xì)介紹所提出的多頭注意力門控神經(jīng)網(wǎng)絡(luò)(MAGN)算法。算法的目標(biāo)是基于用戶社交關(guān)系和隱式反饋來做推薦。對于給定的輸入:用戶表示,項目表示和用戶朋友關(guān)系,將輸出一個帶有來自不同朋友在不同方面影響的用戶興趣特征表示。總體分為三個部分:注意力記憶網(wǎng)絡(luò)部分,將用戶和用戶朋友對進(jìn)行處理得到用戶及其朋友之間的偏好關(guān)系,即用戶與其朋友在哪一個部分具有相似的偏好;多頭注意力部分,在基于得到的與朋友在不同方面的偏好,得出各個不同朋友的重要程度從而計算出帶有不同朋友影響的特征表示。最后,根據(jù)得到的不同朋友在不同方面的影響,尤其考慮到權(quán)重更大的朋友對用戶的影響,將朋友影響向量和用戶自身所具有的興趣點(diǎn)進(jìn)行融合,得到總體的用戶特征表示。結(jié)構(gòu)圖如圖2所示。其中多頭注意力將在2.3節(jié)中展示詳細(xì)圖示。
圖2 多頭注意力門控神經(jīng)網(wǎng)絡(luò)算法Fig.2 Multi-head attention gated neural network algorithms
對于給定的用戶和用戶朋友對,首先要獲得其嵌入表示。在此算法中,采用如下公式(1)、(2)得到融合特征向量,得到更好的特征表達(dá)。
其中,tanh為激活函數(shù),w1和w2、bias分別為門控網(wǎng)絡(luò)的權(quán)重參數(shù)和偏置,ui和u(i,l)表示用戶及用戶朋友對。利用門控網(wǎng)絡(luò)將用戶嵌入和用戶朋友嵌入做特征融合得到融合嵌入向量表示s。
用戶與社會關(guān)系中的朋友各自有其興趣愛好,并在大多數(shù)情況下,用戶擁有多方面的興趣,與其朋友只是在某些方面擁有相同的偏好。然而,在現(xiàn)實場景中,并不能確定用戶和朋友的相似興趣方面,即用戶朋友對之間的關(guān)系并不能反映出用戶和朋友是在哪一方面具有共同的興趣。對此,本文采用了文獻(xiàn)[9,18]中基于注意力的記憶模塊,來學(xué)習(xí)用戶及其朋友之間的關(guān)系向量。模塊的記憶矩陣記為M,其中d為用戶和項目嵌入的維度,n為記憶片的大小。在記憶矩陣M里,把每一個記憶片記為Mj。在這一模塊中對于輸入的用戶和朋友嵌入,輸出能夠代表用戶和朋友共同興趣偏好的向量。
在得到融合嵌入向量s后,從注意力權(quán)重矩陣K中學(xué)習(xí)注意力向量。注意向量a的每個元素被定義為:
其中,Ki∈Rd。然后,使用softmax函數(shù)對a進(jìn)行歸一化,得到最終的結(jié)果:
朋友嵌入u(i,l)首先經(jīng)由記憶矩陣M擴(kuò)展到矩陣:
式中,⊙表示向量的元素積。矩陣F表示不同潛在方面中的朋友偏好。
最后,為了生成朋友向量表示,使用注意力分?jǐn)?shù)來計算F的加權(quán)表示:
輸出是一個特定的關(guān)系向量f(i,l),可以看作是用戶i的第l個朋友對此用戶偏好的影響向量。設(shè)f(i,1),f(i,2),…,f(i,l)為注意力記憶模塊生成的用戶i的朋友關(guān)系向量。
注意力機(jī)制被廣泛應(yīng)用于各個領(lǐng)域,在計算機(jī)視覺、機(jī)器翻譯和推薦系統(tǒng)均獲得了令人滿意的成果。
而對于每一個用戶,此部分致力于獲得與其相關(guān)性最高或聯(lián)系緊密能給予用戶更高影響的朋友,并輸出在不同方面對用戶更有影響的幾個朋友向量。給定輸入為朋友對用戶的影響f(i,l),普通注意力機(jī)制即為朋友分配不同權(quán)重,且當(dāng)用戶使用不同交互方式進(jìn)行交互時權(quán)重會發(fā)生變化。
然而在真實場景中,用戶并非將每一朋友建議都同等對待,與用戶關(guān)系更加親密,或者在某方面更加專業(yè)的朋友顯然能給予用戶更精準(zhǔn)的建議。因而,采用多頭注意力極大滿足了用戶對朋友建議的有所側(cè)重。因此,本文利用多頭注意力機(jī)制從目標(biāo)對象中選擇多個信息,考慮輸入信息的不同部分來獲得在不同方面對用戶的重要程度。結(jié)構(gòu)圖如圖3所示。
圖3 多頭注意力Fig.3 Multi-head attention
對于每一個用戶(Query),將其與從上層得到的輸入朋友向量(Key)進(jìn)行比較,得到不同朋友的分?jǐn)?shù),公式如下:
在本文中將K和V設(shè)為同一個變量f(i,l),表示需要計算的是朋友對用戶的影響。
多頭注意操作將業(yè)務(wù)嵌入f(i,l)作為輸入并將其饋送到不同的頭注意層,其結(jié)果被進(jìn)一步連接為最終輸出:
每個融合嵌入f(i,l)是通過比較權(quán)重得出的朋友重要性,權(quán)重越大代表此朋友對于用戶的影響就越大。
利用從上述兩個模塊中獲得的朋友影響向量,將此向量與用戶本身興趣相融合,得到用戶綜合興趣偏好。受長短時記憶網(wǎng)絡(luò)中門控機(jī)制的影響,門控G和最終得到的用戶在受不同朋友的不同方面影響之下的綜合興趣Ii的計算公式為:
其中T(i,l)、w1、w2分別表示朋友影響向量以及門控層中的權(quán)重參數(shù)。
基于矩陣分解技術(shù)本文的最終預(yù)測部分,評級預(yù)測和建模隱式反饋的公式如下:
其中,Rij是對各個項目的預(yù)測分?jǐn)?shù)。而本文旨在研究隱式反饋,為此,本文利用BPR標(biāo)準(zhǔn)成對學(xué)習(xí)目標(biāo),對于每個正用戶項目對(表示用戶對當(dāng)前項目表示明顯喜好)<ui,vj>,從用戶未觀察到的項目中隨機(jī)抽取一個負(fù)樣本(即用戶對該項目并未展現(xiàn)喜好),記為vk,損失函數(shù)如下:
其中,σ(x)=1/(1+exp(-x))是邏輯sigmoid函數(shù),D表示成對訓(xùn)練實例的集合,同時用它控制正規(guī)化的強(qiáng)度。在本文中,考慮小批量Adagrad[19]可以自適應(yīng)學(xué)習(xí)速率,因而使用作為優(yōu)化器。
在這個部分,基于兩個公開數(shù)據(jù)集進(jìn)行實驗,分別為Delicious[20]和Epinions[21]。Delicious(https://grouplens.org/datasets/hetrec-2011/)是一個社交書簽網(wǎng)絡(luò),允許用戶查看和共享其他用戶的書簽信息。數(shù)據(jù)集約有兩千個用戶數(shù)據(jù),包括社交網(wǎng)絡(luò)、資源消耗(網(wǎng)頁書簽和音樂藝術(shù)家收聽)和標(biāo)簽信息,在本文中僅僅使用社交網(wǎng)絡(luò)和資源消耗(即用戶書簽)信息。Epinions(http://alchemy.cs.washington.edu/data/epinions/)是一個提供項目評估和評論服務(wù)的在線社交網(wǎng)絡(luò),可將其他用戶添加到自己的信任列表,表示對此用戶的評分和評論的認(rèn)可。該數(shù)據(jù)集包含用戶給予項目的評分列表,以及用戶與信任用戶之間的社交關(guān)系。對于數(shù)據(jù)預(yù)處理,本文將去除所有少于五個評分的項目,并將用戶評分小于4的用戶評分設(shè)為0,將用戶評分大于等于4的用戶評分設(shè)為1(作為隱式反饋)。表1給出了數(shù)據(jù)集的統(tǒng)計詳細(xì)信息。
表1 數(shù)據(jù)集統(tǒng)計Table 1 Dataset statistics
為評估所使用算法的性能,本文選擇兩種在推薦中經(jīng)常使用的評估指標(biāo)——Recall@K(召回率)和NDCG@K(歸一化折損累計增益),其中K為推薦列表的長度。其計算公式為:
其中,relj表示在推薦列表中排名j的項目是否在測試集中,表示用戶u在測試集中評分的項目數(shù)。IDCG表示通過理想排名獲得的最大DCG。在本文實驗中,對于Recall@K和NDCG@K,設(shè)置K=10,20,50來評估算法性能。
為了證明所提算法的有效性,從多個角度對本文提出的算法進(jìn)行測試。
(1)與主流先進(jìn)算法進(jìn)行對比,驗證本文所提出算法的高效性與先進(jìn)性;(2)與注意力機(jī)制進(jìn)行對比,驗證采用的多頭注意力機(jī)制的有效性;(3)潛在維度因子分析,基于不同潛在維度因子測試不同情況下的有效維度,驗證本文提出算法的魯棒性。
首先,選定四個近幾年提出的社會化推薦算法進(jìn)行對比:
(1)NFM[22]。這是最近提出的神經(jīng)分解機(jī),它是最先進(jìn)的深度學(xué)習(xí)方法之一,使用雙向交互層將功能和歷史反饋信息集成在一起。在本文中,通過將用戶社交關(guān)系設(shè)為特征,將優(yōu)化功能更改為BPR以適應(yīng)本文的任務(wù)。
(2)NCF[23]。一個最近提出的基于深度學(xué)習(xí)的最新框架,該框架結(jié)合了矩陣分解(MF)和多層感知模型(MLP)進(jìn)行項目排行。
(3)SNCF。通過調(diào)整NCF[22]來模擬社交關(guān)系,將用戶好友插入到輸入的特征向量中,并利用特征向量和用戶id進(jìn)行連接,將此改進(jìn)模型稱為SNCF。
(4)SAMN[7]。是一種最新的深度學(xué)習(xí)方法,利用注意力機(jī)制為社會化感知推薦建模方面和朋友級別的差異。
其次,將無注意力、自注意力[14]以及多頭注意力機(jī)制進(jìn)行對比,驗證本文采用的多頭注意力的有效性。最后,本文測試了在不同潛在維度下對于此算法的影響,驗證了本文所采用的潛在維度所展現(xiàn)的算法魯棒性。
按照70%、20%、10%的概率隨機(jī)將數(shù)據(jù)集分為訓(xùn)練集、驗證集和測試集。其中驗證集用來調(diào)整超參數(shù),通過訓(xùn)練集得出預(yù)測數(shù)據(jù)與測試集比對得到最終結(jié)果。算法的學(xué)習(xí)率均在[0.01,0.05,0.1]之間調(diào)整,批次大小在[64,128,256]之間調(diào)整,隱含層皆在[16,32,64,128,256]之間調(diào)整,記憶片在[8,16,32,64]之間調(diào)整,多頭數(shù)量在[4,8,16,32]之間調(diào)整。
3.4.1 主流先進(jìn)算法對比分析
在兩個數(shù)據(jù)集上所有對比算法的實驗結(jié)果如圖4和5所示。由兩個評估指標(biāo)Recall和NDCG的實驗結(jié)果,本文可以得出:
圖4 基于Delicious數(shù)據(jù)集MAGN與其他主流先進(jìn)算法對比Fig.4 Comparison between MAGN and other mainstreamadvanced algorithms based on Delicious dataset
(1)在兩個數(shù)據(jù)集上,NFM、SNCF、SAMN及MAGN算法效果比NCF良好,可見社交關(guān)系信息對于推薦的有效影響。
(2)在基于社會化推薦的算法中,SAMN效果比NFM及SNCF算法表現(xiàn)更好,則表明在社會化推薦中,僅考慮單純的社交關(guān)系信息還遠(yuǎn)遠(yuǎn)不夠,更需考慮豐富的社交關(guān)系對用戶帶來的影響。
(3)MAGN比SAMN效果更加顯著,這意味著在考慮用戶和項目的特征融合時,利用門控神經(jīng)網(wǎng)絡(luò)能達(dá)到更好效果。且顯而易見的,在社交影響基礎(chǔ)上,采納更重要的朋友,并考慮不同方面影響的方法獲得了更大的進(jìn)步。
(4)在兩個數(shù)據(jù)集上,本文提出的基于注意力門控神經(jīng)網(wǎng)絡(luò)的社會化推薦算法的性能優(yōu)于其他對比算法,驗證了本文提出算法的有效性。
(5)在所有的評價指標(biāo)上,所有對比算法在Delicious數(shù)據(jù)集上的效果比Epinions數(shù)據(jù)集效果要好。這是由于相對于Delicious數(shù)據(jù)集,Epinions數(shù)據(jù)集更加稀疏。
3.4.2 注意力機(jī)制對比分析
為了驗證有無注意力機(jī)制以及不同注意力機(jī)制對算法帶來的不同影響,本文進(jìn)行了實驗與對比分析。實驗結(jié)果如圖6、7所示,其中None指代無注意力機(jī)制,Self指代自注意力機(jī)制,Multi-head指代多頭注意力機(jī)制。
圖5 基于Epinions數(shù)據(jù)集MAGN與其他主流先進(jìn)算法對比Fig.5 Comparison between MAGN and other mainstream advanced algorithms based on Epinions dataset
圖6 基于Delicious數(shù)據(jù)集的不同注意力對比Fig.6 Comparison of different attention based on Delicious dataset
圖7 基于Epinions數(shù)據(jù)集的不同注意力對比Fig.7 Comparison of different attention based on Epinions dataset
首先,在兩個數(shù)據(jù)集中,MAGN都表現(xiàn)出更良好的性能。且無注意力會比自注意力機(jī)制效果稍好,一種可能的解釋是,自注意力的網(wǎng)絡(luò)結(jié)構(gòu)反而導(dǎo)致了過擬合,以至于效果表現(xiàn)欠佳。多頭注意力比自注意力效果更好也驗證了上述所提,對用戶進(jìn)行推薦時,著重考慮在不同方面朋友對用戶的影響,而非考慮朋友之間的相互影響更加合適的想法。最后,多頭注意力對于無注意力并未展現(xiàn)明顯差距,一種可能的解釋是,類似于自注意力機(jī)制,多頭注意力的網(wǎng)絡(luò)結(jié)構(gòu)同樣會產(chǎn)生過擬合。
3.4.3 潛在維度分析
潛在維度的變化同樣對實驗結(jié)果存在一定程度的影響,對此進(jìn)行對比分析,觀察不同潛在維度對于算法的適應(yīng)性。實驗結(jié)果如圖8所示。
圖8 基于Delicious和Epinions數(shù)據(jù)集的MAGN算法潛在維度分析Fig.8 Analysis of potential dimensions of MAGN algorithms based on Delicious and Epinions datasets
由實驗結(jié)果可得,維度越大時,效果也愈加明顯,而相對的,在增大潛在維度時,會增加對于內(nèi)存的使用率和運(yùn)算時間。更為明顯的是,在潛在維度增加到一定程度時,算法的效果提升會趨于平穩(wěn)。因而可見本文所采用的潛在維度256是綜合考慮之后的最好選擇。
社交信息為提高推薦系統(tǒng)的精確度做了一個非常好的鋪墊。因而,本文充分利用了這一優(yōu)勢,基于用戶可能會考慮不同朋友的意見,并受到不同程度影響的現(xiàn)實情況,首先考慮用戶擁有一定影響的朋友數(shù)目,在此基礎(chǔ)上利用多頭注意力更加全面考慮朋友在不同方面給用戶帶來的影響力,深層次地突出了相關(guān)重要朋友在某一個方面的重要影響。同時,利用門控網(wǎng)絡(luò)進(jìn)行融合,提高了最終推薦的準(zhǔn)確率。而在兩個真實數(shù)據(jù)集上的實驗則驗證了本文所提出的算法優(yōu)于主流先進(jìn)社會化推薦算法。在將來,本文將進(jìn)一步考慮如何基于圖模型更加精確地得到朋友對用戶的影響,并不斷提升當(dāng)前算法的可解釋性。