王永貴,梅軒瑋
遼寧工程技術(shù)大學(xué) 軟件學(xué)院,遼寧 葫蘆島 125105
互聯(lián)網(wǎng)規(guī)模和覆蓋面的迅速增長(zhǎng)帶來(lái)了信息超載的問(wèn)題,過(guò)量信息同時(shí)呈現(xiàn)使得用戶(hù)無(wú)法從中獲取對(duì)自己有用的部分,導(dǎo)致信息的使用效率反而降低[1]。個(gè)性化推薦系統(tǒng)作為解決信息超載的一個(gè)有力工具[2],目前已經(jīng)有了非常廣泛的應(yīng)用,如拼多多、淘寶、快手等都擁有自己完善的推薦系統(tǒng),其原理主要是通過(guò)信息篩選過(guò)濾無(wú)用信息,然后對(duì)有效的用戶(hù)數(shù)據(jù)和用戶(hù)行為進(jìn)行分析處理,獲取用戶(hù)行為偏好,進(jìn)而對(duì)不同用戶(hù)進(jìn)行個(gè)性化推薦,更好地滿(mǎn)足了用戶(hù)需求,深受用戶(hù)喜愛(ài)[3]。隨著推薦系統(tǒng)研究的不斷深入,人們發(fā)現(xiàn)傳統(tǒng)的同質(zhì)網(wǎng)絡(luò)建模方法抽取的信息通常只包含實(shí)際交互系統(tǒng)中的部分信息,這在一定程度上造成了數(shù)據(jù)損失。而異構(gòu)信息網(wǎng)絡(luò)作為一種考慮多元對(duì)象關(guān)系的信息建模方法[4]有效地解決了這個(gè)問(wèn)題,因此受到了推薦算法研究領(lǐng)域的廣泛關(guān)注。當(dāng)前異構(gòu)信息網(wǎng)絡(luò)模型在推薦系統(tǒng)領(lǐng)域應(yīng)用的主要方向是基于元路徑的相似性度量。例如,Bu等人[5]通過(guò)整合元路徑選擇獲取用戶(hù)相似度,提出了改進(jìn)PathSim 算法;Shi 等人[6]提出了可以計(jì)算任意元路徑間相似度的隨機(jī)游走策略算法;黃立威等人[7]通過(guò)對(duì)象間在各種元路徑上構(gòu)成鏈接的機(jī)率來(lái)計(jì)算對(duì)象相似度并進(jìn)行預(yù)測(cè),提出了鏈路預(yù)測(cè)模型。
傳統(tǒng)基于元路徑進(jìn)行相似度計(jì)算的算法對(duì)用戶(hù)關(guān)系的認(rèn)定通常是對(duì)象之間滿(mǎn)足相似度對(duì)稱(chēng)性,然而在實(shí)際問(wèn)題的處理中這種方法有時(shí)會(huì)存在局限性。例如在評(píng)分預(yù)測(cè)系統(tǒng)中計(jì)算用戶(hù)相似度時(shí),選取用戶(hù)m和用戶(hù)n,其對(duì)目標(biāo)對(duì)象的評(píng)分分別為(2,3,1,1,4)和(2,/,/,/,4)(“/”表示該物品未被用戶(hù)評(píng)分),根據(jù)傳統(tǒng)使用的相似度度量方法計(jì)算的用戶(hù)相似度會(huì)得出兩用戶(hù)高度相似的結(jié)論并會(huì)依照用戶(hù)m的喜好對(duì)用戶(hù)n進(jìn)行評(píng)分預(yù)測(cè)和推薦,這樣的結(jié)果可能是由于兩個(gè)用戶(hù)對(duì)物品一和物品五這種類(lèi)型的物品喜好相同,但并不能完全說(shuō)明在其他物品的興趣上也相同。這種情況在一定程度上造成了推薦精度的下降,因此在計(jì)算過(guò)程中就需要考慮用戶(hù)之間相似度的非對(duì)稱(chēng)性[8]。此外,用戶(hù)對(duì)具有模糊性質(zhì)物品的認(rèn)識(shí)是有主觀性的,也就是說(shuō)對(duì)模糊物品的界限定義是不完全相同的[9]。例如在電影評(píng)分上,因?yàn)閷?duì)喜歡這個(gè)定義的模糊性,用戶(hù)們表達(dá)相同程度的喜歡時(shí)有些用戶(hù)會(huì)給3 分,而有些用戶(hù)會(huì)用4 分來(lái)表達(dá)。這種主觀認(rèn)識(shí)上的差異造成相同程度的喜歡在精確評(píng)分上出現(xiàn)了差別,這就導(dǎo)致離散的評(píng)分有時(shí)不能獲取用戶(hù)行為所表達(dá)的真實(shí)信息,加大了準(zhǔn)確度量用戶(hù)之間相似性的難度。
針對(duì)上文描述的問(wèn)題,本文分析異構(gòu)信息網(wǎng)絡(luò)和模糊理論在推薦系統(tǒng)應(yīng)用領(lǐng)域的特點(diǎn),提出了一種非對(duì)稱(chēng)異構(gòu)信息網(wǎng)絡(luò)的模糊推薦算法(FHIN)。其主要貢獻(xiàn)包括3個(gè)方面:
(1)通過(guò)模糊集理論[10]對(duì)評(píng)分進(jìn)行隸屬函數(shù)[11]權(quán)重計(jì)算,得到用戶(hù)決策的模糊權(quán)重,以解決用戶(hù)主觀認(rèn)識(shí)的模糊性問(wèn)題。
(2)在相似度的計(jì)算上設(shè)置非對(duì)稱(chēng)系數(shù),考慮不同元路徑的權(quán)重影響,根據(jù)元路徑的非對(duì)稱(chēng)特征及元路徑權(quán)重計(jì)算用戶(hù)間的相似度;最后使用矩陣分解[12]預(yù)測(cè)目標(biāo)評(píng)分。
(3)在不同數(shù)據(jù)集上進(jìn)行多次實(shí)驗(yàn)比較,結(jié)果證明了本文算法的可靠性和有效性,充分提高了推薦精度,為解決推薦系統(tǒng)中數(shù)據(jù)稀疏性問(wèn)題提供了有效思路。
互聯(lián)網(wǎng)絡(luò)開(kāi)發(fā)者在開(kāi)發(fā)過(guò)程中存在的定義模糊性,導(dǎo)致了用戶(hù)行為的模糊性,因此如何從模糊信息中更好地獲取用戶(hù)的真實(shí)偏好顯得極其重要。模糊集正是這樣一種用于解決信息模糊性的理論,該理論根據(jù)實(shí)際需求定義界限并形成多個(gè)集合,通過(guò)閾值判定將各個(gè)元素依次歸于不同集合,并計(jì)算各個(gè)集合權(quán)重,以降低定義模糊性帶來(lái)的影響。相關(guān)定義[13-14]如下:
定義1模糊集合C可由論域U到[0,1]區(qū)間的任意映射確定。映射規(guī)則記為C的隸屬函數(shù),μC(u)記為u對(duì)模糊集C的隸屬度:
定義2存在多種隸屬函數(shù)表示法,對(duì)于評(píng)分領(lǐng)域的隸屬函數(shù)通常使用Zadeh表示法:
定義3在隸屬函數(shù)類(lèi)型中,表達(dá)喜愛(ài)程度通常使用三角模糊數(shù)f,其表達(dá)式為:
f的計(jì)算公式為:
其中,a、b表示上下邊界,h表示間隔步長(zhǎng),ω表示模糊權(quán)重。
此外要確定隸屬函數(shù)還要求模糊集合必須是凸模糊集合。即設(shè)C為實(shí)線性空間Y上的模糊集,對(duì)于?λ∈[0,1],都有λC+(1-λ)C?C。
信息網(wǎng)絡(luò)通常用有向圖G=(V,E,W)表示,包含對(duì)象集V、鏈接集E和權(quán)重映射集W。G中每個(gè)對(duì)象v∈V都是一個(gè)特定的對(duì)象類(lèi)型;每個(gè)連接邊e∈E都是一個(gè)特定的關(guān)系類(lèi)型;每個(gè)權(quán)重值w∈W都是一個(gè)特定的權(quán)重類(lèi)型。若對(duì)象類(lèi)型數(shù)量或關(guān)系類(lèi)型數(shù)量大于1 個(gè),則稱(chēng)該信息網(wǎng)絡(luò)為異構(gòu)信息網(wǎng)絡(luò),若同時(shí)權(quán)重類(lèi)型數(shù)量大于等于1,則為加權(quán)異構(gòu)信息網(wǎng)絡(luò)[15]。圖1為一個(gè)關(guān)于電影評(píng)分的加權(quán)異構(gòu)信息網(wǎng)絡(luò)。該網(wǎng)絡(luò)包含四種類(lèi)型的對(duì)象:用戶(hù)User、電影Movie、電影類(lèi)型Type 和導(dǎo)演Director。在路徑User→Movie 上以用戶(hù)對(duì)電影的評(píng)分作為該路徑權(quán)重。
圖1 加權(quán)異構(gòu)信息網(wǎng)絡(luò)
網(wǎng)絡(luò)模式是信息網(wǎng)絡(luò)的元描述[16],包含對(duì)象類(lèi)型映射和關(guān)系類(lèi)型映射。圖1 信息網(wǎng)絡(luò)的網(wǎng)絡(luò)模式如圖2所示。
圖2 網(wǎng)絡(luò)模式
異構(gòu)信息網(wǎng)絡(luò)中最重要的概念是元路徑,其定義為任意兩節(jié)點(diǎn)之間不同類(lèi)型連接邊連接構(gòu)成的路徑,用于表示兩節(jié)點(diǎn)間的復(fù)合關(guān)系??梢孕问交硎緸?,其中A1,A2,…,An代表節(jié)點(diǎn)類(lèi)型,R1,R2,…,Rn表示關(guān)系類(lèi)型。對(duì)于兩條不同的元路徑,若第一條元路徑的尾節(jié)點(diǎn)與第二條元路徑的首節(jié)點(diǎn)為相同節(jié)點(diǎn),則兩條元路徑可以進(jìn)行合并。例如圖1的實(shí)例中,元路徑User→Movie 和元路徑Movie→Director可以合并為元路徑User→Movie→Director。不同元路徑之間包含的對(duì)象語(yǔ)義關(guān)系是不同的[17]。元路徑不但刻畫(huà)了對(duì)象間的語(yǔ)義關(guān)聯(lián),而且可以從元路徑中抽取對(duì)象間的特征信息。將異構(gòu)信息網(wǎng)絡(luò)應(yīng)用于推薦系統(tǒng)可以通過(guò)元路徑獲得豐富的語(yǔ)義和結(jié)構(gòu)信息,很大程度地增加了用戶(hù)相似性度量時(shí)可使用的數(shù)據(jù)量,從而提高推薦精度。
目前,基于異構(gòu)信息網(wǎng)絡(luò)進(jìn)行的相似性度量通常使用PathSim 算法,該算法根據(jù)元路徑的語(yǔ)義及其對(duì)應(yīng)的鄰接矩陣計(jì)算用戶(hù)相似度。
定義4給定元路徑H,對(duì)象x和y之間的相似度為:
式中Hx→y表示x和y之間的路徑實(shí)例,即路徑對(duì)應(yīng)鄰接矩陣M中M(x,y)位置的取值。
利用三角模糊模型構(gòu)造模糊化評(píng)分,計(jì)算模糊評(píng)分模型的隸屬函數(shù),更加準(zhǔn)確地獲取用戶(hù)偏好。在相似度度量中考慮對(duì)象對(duì)稱(chēng)性,對(duì)用戶(hù)進(jìn)行對(duì)稱(chēng)性判定,加入非對(duì)稱(chēng)系數(shù)。同時(shí)加入元路徑的權(quán)重影響因素,對(duì)不同元路徑分別帶權(quán)計(jì)算相似度,融合評(píng)分矩陣和物品屬性矩陣,構(gòu)造用戶(hù)相似特征矩陣。最后根據(jù)物品和用戶(hù)的特征表示,預(yù)測(cè)未知評(píng)分。本文算法流程如圖3所示。
圖3 算法流程圖
選取常用數(shù)據(jù)集評(píng)分屬性進(jìn)行模糊化處理,通過(guò)構(gòu)建三角評(píng)分模型,將標(biāo)準(zhǔn)化的1到5范圍評(píng)分模糊為VD(非常不喜歡)、D(不喜歡)、N(無(wú)感)、L(喜歡)、VL(非常喜歡)五個(gè)等級(jí),以此來(lái)表示用戶(hù)喜好程度。評(píng)分模糊數(shù)與喜好程度的對(duì)應(yīng)關(guān)系如表1所示。
表1 喜好程度對(duì)應(yīng)關(guān)系
模糊處理后,根據(jù)定義1 首先將[1,5]評(píng)分縮放到[0,1]區(qū)間,之后由定義2和定義3對(duì)該評(píng)分模型的隸屬函數(shù)進(jìn)行計(jì)算,得到對(duì)應(yīng)隸屬函數(shù):
隸屬函數(shù)的確定的模糊集隸屬度可以得到用戶(hù)間第k個(gè)公共項(xiàng)的模糊權(quán)重ωk為:
其中,gm,k表示用戶(hù)m對(duì)物品k的評(píng)分,gn,k表示用戶(hù)n對(duì)物品k的評(píng)分;dis(gm,k,gn,k)表示評(píng)分信息的歐氏距離,i為評(píng)分向量維數(shù),為向量gm,k中的第j個(gè)分量。
根據(jù)模糊權(quán)重,可以得到用戶(hù)m對(duì)n的模糊相似度:
其中,lmn表示用戶(hù)m和用戶(hù)n的共同評(píng)分項(xiàng);表示用戶(hù)n對(duì)所有項(xiàng)目評(píng)分的均值,表示用戶(hù)m對(duì)所有項(xiàng)目評(píng)分的均值。
由于用戶(hù)評(píng)分行為的不對(duì)稱(chēng)性,計(jì)算用戶(hù)間相似度時(shí)會(huì)出現(xiàn)因個(gè)別用戶(hù)評(píng)分較少且僅有的評(píng)分行為恰好與其他用戶(hù)相同而造成的偶然高相似現(xiàn)象,這種情況下的相似性并不能反映用戶(hù)真實(shí)喜好,一定程度降低了預(yù)測(cè)結(jié)果的準(zhǔn)確度。本文算法在考慮這種非對(duì)稱(chēng)性的基礎(chǔ)上,提出非對(duì)稱(chēng)系數(shù)。首先在數(shù)據(jù)選擇上對(duì)用戶(hù)數(shù)據(jù)進(jìn)行處理,通過(guò)閾值設(shè)定去除評(píng)分行為過(guò)少的用戶(hù)數(shù)據(jù);然后對(duì)評(píng)分行為比值過(guò)大的兩用戶(hù)進(jìn)行標(biāo)記,在后期預(yù)測(cè)中降低標(biāo)記項(xiàng)結(jié)果的影響權(quán)重;最后把用戶(hù)共同評(píng)分項(xiàng)在已評(píng)分總項(xiàng)中占據(jù)的比例作為非對(duì)稱(chēng)系數(shù)加入相似度計(jì)算。用戶(hù)m對(duì)n的非對(duì)稱(chēng)系數(shù)為:
其中,lm代表用戶(hù)m的評(píng)分項(xiàng)。
結(jié)合模糊相似度的計(jì)算公式和非對(duì)稱(chēng)系數(shù),得到用戶(hù)m對(duì)用戶(hù)n的非對(duì)稱(chēng)模糊相似度:
通常在一個(gè)異構(gòu)信息網(wǎng)絡(luò)中都會(huì)存在多條元路徑,不同的元路徑反映著不同角度的用戶(hù)聯(lián)系,而根據(jù)不同元路徑計(jì)算的用戶(hù)相似度也并不相同。為了充分利用不同元路徑中包含的豐富語(yǔ)義信息,有必要對(duì)各條元路徑進(jìn)行賦權(quán)以提高信息的利用率,達(dá)到保證用戶(hù)相似度計(jì)算結(jié)果更為精確的目的,從而準(zhǔn)確地預(yù)測(cè)用戶(hù)評(píng)分。本文算法的權(quán)重設(shè)置主要考慮路徑長(zhǎng)度和路徑數(shù)量?jī)蓚€(gè)因素。
路徑長(zhǎng)度方面。元路徑長(zhǎng)度是指一條元路徑中邊的數(shù)量。在異構(gòu)信息網(wǎng)絡(luò)中元路徑包含著用戶(hù)間的語(yǔ)義信息,元路徑的每一條連接邊都體現(xiàn)著兩個(gè)節(jié)點(diǎn)的關(guān)聯(lián),元路徑的總長(zhǎng)度決定了路徑兩端對(duì)象的關(guān)聯(lián)程度。簡(jiǎn)單來(lái)講,較短的元路徑兩端對(duì)象的關(guān)聯(lián)更加直接,所以短的元路徑應(yīng)該具有更高的權(quán)重。路徑長(zhǎng)度權(quán)重可以表示為目標(biāo)路徑長(zhǎng)度和路徑總長(zhǎng)度的反比例關(guān)系,公式化為:
其中,len(P)表示元路徑P中的邊數(shù),L表示所有元路徑的集合,表示遍歷所有元路徑求得路徑總長(zhǎng)度。
路徑數(shù)量方面。這里的路徑數(shù)量指的是滿(mǎn)足核心元路徑要求的所有路徑的數(shù)量。滿(mǎn)足要求的路徑越多表示路徑數(shù)量越多,代表對(duì)象之間的關(guān)聯(lián)程度越高。因此路徑數(shù)量越多,元路徑的權(quán)重就應(yīng)當(dāng)越高。路徑數(shù)量的權(quán)重影響的具體公式為:
其中,cou(P)表示元路徑P的路徑數(shù)量。
在本文算法中認(rèn)定路徑長(zhǎng)度和路徑數(shù)量?jī)煞N影響因素對(duì)元路徑權(quán)重的影響比重分別為α和β,且滿(mǎn)足α+β=1,得到如下元路徑權(quán)重wp的計(jì)算公式:
根據(jù)元路徑權(quán)重和非對(duì)稱(chēng)模糊相似度得到本文算法的用戶(hù)間相似度計(jì)算公式:
最后根據(jù)這種相似度計(jì)算方法預(yù)測(cè)用戶(hù)評(píng)分,得到用戶(hù)m對(duì)物品a的評(píng)分預(yù)測(cè)結(jié)果為:
其中U為用戶(hù)-用戶(hù)的相似信息矩陣,U(mn)表示用戶(hù)m和用戶(hù)n的共同評(píng)分項(xiàng)集合。
根據(jù)以上介紹,非對(duì)稱(chēng)異構(gòu)信息網(wǎng)絡(luò)的模糊推薦算法步驟描述如下:
輸入:用戶(hù)評(píng)分矩陣U,特征向量維度i,路徑P,路徑長(zhǎng)度和路徑數(shù)量影響因子α和β。
輸出:評(píng)分預(yù)測(cè)值。
步驟1根據(jù)式(6)~(9)構(gòu)造模糊評(píng)分模型,計(jì)算隸屬函數(shù),得到模糊權(quán)重。
步驟2利用式(10)~(11)計(jì)算非對(duì)稱(chēng)系數(shù),求得非對(duì)稱(chēng)相似度。
步驟3根據(jù)式(12)~(14)計(jì)算元路徑權(quán)重。
步驟4由式(15)計(jì)算用戶(hù)間非對(duì)稱(chēng)模糊相似度。
步驟5利用式(16)預(yù)測(cè)評(píng)分。
本實(shí)驗(yàn)采用的硬件環(huán)境為:Intel i5-9400 CPU 四核,主頻2.9 GHz,內(nèi)存16 GB,硬盤(pán)1 TB;操作系統(tǒng)為:Windows10操作系統(tǒng);編程環(huán)境為:MATLAB R2018b。
MovieLens 數(shù)據(jù)集是由美國(guó)明尼蘇達(dá)大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院的GroupLens研究小組發(fā)布,其中包含用戶(hù)信息、電影信息和評(píng)分信息,有MovieLens100K,MovieLens1M 和MovieLens10M 三個(gè)不同規(guī)模的數(shù)據(jù)集,廣泛應(yīng)用于推薦算法研究領(lǐng)域。DoubanMovie數(shù)據(jù)集是豆瓣網(wǎng)用戶(hù)對(duì)電影評(píng)分的數(shù)據(jù)集合,其中包含豆瓣用戶(hù)詳細(xì)信息、電影信息、評(píng)分信息以及用戶(hù)評(píng)論。DoubanMovie數(shù)據(jù)集的最大優(yōu)點(diǎn)是用戶(hù)評(píng)分?jǐn)?shù)據(jù)較新,更符合當(dāng)下用戶(hù)的真實(shí)喜好,因此越來(lái)越多的推薦算法開(kāi)始使用該數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)。本文選擇在Movie-Lens100K、MovieLens1M 和 DoubanMovie 三個(gè)數(shù)據(jù)集上分別實(shí)驗(yàn),觀察算法效率。
MovieLens100K數(shù)據(jù)集中包含943名用戶(hù)對(duì)1 682部電影的100 000條評(píng)分?jǐn)?shù)據(jù);MovieLens1M包含6 040名用戶(hù)對(duì)3 900 部電影的1 000 209 條評(píng)分?jǐn)?shù)據(jù);Douban-Movie數(shù)據(jù)集由13 367名用戶(hù)對(duì)12 677部電影的1 068 178個(gè)評(píng)分?jǐn)?shù)據(jù)組成。實(shí)驗(yàn)數(shù)據(jù)集描述如表2 所示。
表2 實(shí)驗(yàn)數(shù)據(jù)描述
為了能夠更準(zhǔn)確地衡量本文算法的性能,選擇均方根誤差(RMSE)和平均絕對(duì)誤差(MAE)兩個(gè)推薦系統(tǒng)常用評(píng)價(jià)指標(biāo)作為評(píng)定指標(biāo)。當(dāng)預(yù)測(cè)評(píng)分越接近實(shí)際評(píng)分時(shí),RMSE和MAE的值越小,算法性能越好。
RMSE的定義為:
其中,|T|為測(cè)試集中評(píng)分?jǐn)?shù)量。
MAE的定義為:
為了能夠更加直觀地驗(yàn)證算法效果,本文選擇了以下三個(gè)算法與FHIN 算法在不同數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),通過(guò)觀察RMSE 和MAE 兩個(gè)評(píng)價(jià)指標(biāo)結(jié)果判斷算法效率。
UCF 算法:基于傳統(tǒng)協(xié)同過(guò)濾方法進(jìn)行推薦,使用余弦法計(jì)算用戶(hù)相似度確定相似用戶(hù),根據(jù)相似用戶(hù)的評(píng)分信息預(yù)測(cè)評(píng)分。
FCF 算法:在個(gè)性化推薦中加入模糊模型,構(gòu)造隸屬函數(shù)并引入模糊相似度度量方法,通過(guò)協(xié)同過(guò)濾預(yù)測(cè)評(píng)分。
PathSim算法:將異構(gòu)信息網(wǎng)絡(luò)運(yùn)用于推薦算法,提出根據(jù)異構(gòu)信息網(wǎng)絡(luò)中對(duì)稱(chēng)元路徑計(jì)算用戶(hù)相似度的方法并以此進(jìn)行推薦。
為保證實(shí)驗(yàn)結(jié)果準(zhǔn)確性,算法采用五折交叉方法將實(shí)驗(yàn)數(shù)據(jù)集等分為五份,選取一份作為測(cè)試集,其余四份為訓(xùn)練集,每做完一次實(shí)驗(yàn)記錄結(jié)果并重新五等分再進(jìn)行實(shí)驗(yàn),共進(jìn)行五次將結(jié)果平均值作為最終實(shí)驗(yàn)結(jié)果。
在實(shí)驗(yàn)中,用戶(hù)評(píng)分的向量維數(shù)i設(shè)為4,相似度結(jié)果對(duì)預(yù)測(cè)結(jié)果的影響因素設(shè)為1,路徑長(zhǎng)度權(quán)重影響因素α為0.6,路徑數(shù)量權(quán)重影響因素β為0.4。在數(shù)據(jù)集MovieLens100K、MovieLens1M 和 DoubanMovie 上的實(shí)驗(yàn)結(jié)果分別如表3~表5所示。
表3 MovieLens100K實(shí)驗(yàn)結(jié)果
表4 MovieLens1M實(shí)驗(yàn)結(jié)果
表5 DoubanMovie實(shí)驗(yàn)結(jié)果
觀察表中數(shù)據(jù)可以發(fā)現(xiàn)本文算法在不同的數(shù)據(jù)集上的效果均優(yōu)于其他算法。同時(shí)可以看出FCF 算法、PathSim算法和本文算法的效果均優(yōu)于UCF算法,說(shuō)明在傳統(tǒng)推薦算法中加入有利于信息數(shù)據(jù)處理的理論或者方法可以提高推薦精度。另外對(duì)比同樣基于元路徑的PathSim 算法,在計(jì)算用戶(hù)相似度時(shí)應(yīng)用了用戶(hù)非對(duì)稱(chēng)關(guān)系的FHIN 算法在RMSE 和MAE 指標(biāo)上結(jié)果均小于PathSim算法。而觀察同一算法在不同數(shù)據(jù)集上的表現(xiàn)可以發(fā)現(xiàn)隨著數(shù)據(jù)集稀疏程度的增加,各個(gè)算法的效果皆有所減弱,其中FHIN算法效果減弱趨勢(shì)較為緩慢,說(shuō)明本文算法在處理數(shù)據(jù)稀疏性問(wèn)題方面效果顯著。
為驗(yàn)證參數(shù)變化對(duì)實(shí)驗(yàn)結(jié)果的影響,本文將鄰居個(gè)數(shù)λ設(shè)置為10 增到50,增長(zhǎng)間隔為5,觀察本文算法在各個(gè)數(shù)據(jù)集下受參數(shù)影響情況。結(jié)果如圖4 和圖5所示。
圖4 λ 取值對(duì)RMSE的影響
圖5 λ 取值對(duì)MAE的影響
從兩圖中可以觀察到隨著近鄰個(gè)數(shù)的增加指標(biāo)MAE 和RMSE 均先減小,并在鄰居個(gè)數(shù)為20 時(shí)達(dá)到最小值,隨后逐漸增大,說(shuō)明適當(dāng)?shù)匾雲(yún)?shù)對(duì)提高推薦算法效率有一定作用。但是兩指標(biāo)的增長(zhǎng)變化趨勢(shì)并不相同,其中MAE指標(biāo)的增大幅度較大且趨勢(shì)較急;而RMSE指標(biāo)則幅度較小且趨勢(shì)較緩。說(shuō)明MAE指標(biāo)相較于RMSE 指標(biāo)受鄰居個(gè)數(shù)影響更大。由于MAE 和RMSE指標(biāo)均在λ取值為20時(shí)最小,因此本文算法選取20作為鄰居個(gè)數(shù)的取值。
本文提出了一種非對(duì)稱(chēng)異構(gòu)信息網(wǎng)絡(luò)的模糊推薦算法,該算法通過(guò)構(gòu)造模糊模型對(duì)用戶(hù)評(píng)分進(jìn)行模糊處理,綜合異構(gòu)信息網(wǎng)絡(luò)中對(duì)象的非對(duì)稱(chēng)性和元路經(jīng)權(quán)重,提出了一種新的相似性計(jì)算方法,一定程度上緩解了數(shù)據(jù)稀疏性帶來(lái)的問(wèn)題。在未來(lái)的工作中,側(cè)重研究圖像和文本等非結(jié)構(gòu)化數(shù)據(jù)的異構(gòu)信息網(wǎng)絡(luò)構(gòu)建,以提高信息抽取的能力,從數(shù)據(jù)來(lái)源方面解決推薦系統(tǒng)中的數(shù)據(jù)稀疏性問(wèn)題。
計(jì)算機(jī)工程與應(yīng)用2020年23期