虞勝杰,熊麗榮,王玲燕
(浙江工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,杭州 310023)
個性化推薦是解決社會化網(wǎng)絡(luò)中信息爆炸問題的一種有效手段.傳統(tǒng)的基于協(xié)同過濾的推薦算法通過對用戶上下文信息的學(xué)習(xí)和分析來預(yù)測用戶的偏好和需求,但存在數(shù)據(jù)稀疏性問題[1,2]而影響推薦質(zhì)量.
為了解決這個問題,一些模型[3-5]結(jié)合輔助數(shù)據(jù)如社交關(guān)系來挖掘數(shù)據(jù)中的隱含信息.相關(guān)研究發(fā)現(xiàn)[6,7],在社交網(wǎng)絡(luò)中,用戶的決策通常受到好友的影響,并且用戶更傾向于由信任用戶產(chǎn)生的推薦.許多工作基于用戶與信任用戶偏好相似的假設(shè)展開:Deng等人[3]將信任關(guān)系作為篩選近鄰的指標(biāo);Yang[4]等人提出一種基于用戶信任度和社會相似度的協(xié)同過濾算法;Zhu[5]等人考慮用戶交互、信任傳遞以及社區(qū)劃分等方面對用戶信任度的影響,提高了推薦準(zhǔn)確度.因此,將信任信息結(jié)合到推薦算法中可以有效解決數(shù)據(jù)稀疏問題.
此外,在線網(wǎng)絡(luò)的用戶也可能建立不信任關(guān)系.比如Epinions允許用戶根據(jù)評論的質(zhì)量評估其他用戶,并與他們形成信任或不信任關(guān)系;社交網(wǎng)絡(luò)上的用戶可以對不信任的用戶拉黑、屏蔽.但是,很少有工作將不信任納入到推薦當(dāng)中:Victor等人[8]證明在基于內(nèi)存的推薦系統(tǒng)中結(jié)合不信任信息是有益的;Forsati等人[9]首次不信任信息結(jié)合到基于矩陣分解的模型,并結(jié)合用戶偏好進(jìn)行推薦.以上研究表明,不信任信息可以在社會化推薦中發(fā)揮重要作用.
目前大部分基于信任的推薦算法通常利用信任網(wǎng)絡(luò)中的直接信任來提升推薦準(zhǔn)確率,而未考慮到直接信任關(guān)系也是稀疏的,并且也沒有引入不信任信息.本文提出的信任模型TDtrust根據(jù)信任產(chǎn)生的多方面性,從全局以及局部兩個刻面分析信任網(wǎng)絡(luò)中用戶間的信任關(guān)系,增加信任數(shù)據(jù)的密度,有效緩解數(shù)據(jù)稀疏問題.同時(shí),利用不信任信息對信任網(wǎng)絡(luò)進(jìn)行調(diào)節(jié),幫助過濾信任傳播中“錯誤的推論”[8,10].最后將該信任模型結(jié)合聯(lián)合概率矩陣分解[11]方法(UPMF)設(shè)計(jì)出本文的推薦算法TDRec.該算法結(jié)合社交網(wǎng)絡(luò)用戶的評分以及信任兩部分?jǐn)?shù)據(jù)進(jìn)行評分預(yù)測.本文在Epinions數(shù)據(jù)集上的實(shí)驗(yàn)證明本文提出的算法相比于同類信任增強(qiáng)的矩陣分解算法推薦效果更優(yōu).
本文主要有以下兩個貢獻(xiàn):
1)本文提出結(jié)合了信任和不信任信息的信任計(jì)算模型TDtrust.信任方面綜合考慮評分相似性、節(jié)點(diǎn)中心性等潛在因素,并基于信任傳播機(jī)制,增加信任數(shù)據(jù)的密度;利用不信任信息對信任網(wǎng)絡(luò)進(jìn)行調(diào)節(jié),提高信任數(shù)據(jù)的可靠性.
2)依據(jù)社會平衡理論,提出不信任權(quán)重計(jì)算方法,幫助過濾信任傳播中錯誤的推論.
本文第2章闡述融合信任、不信任信息的社會化推薦相關(guān)工作.第3章給出符號定義.第4章闡述本文提出的融合用戶偏好和信任-不信任關(guān)系的信任模型,并給出基于聯(lián)合概率矩陣分解的推薦算法和推薦框架.第5章給出實(shí)驗(yàn)結(jié)果與分析.第6章總結(jié)全文并探討未來的研究方向.
隨著信息技術(shù)的發(fā)展,社會化網(wǎng)絡(luò)中信息過載問題日益嚴(yán)重,個性化推薦是解決該問題的一種有效方法.傳統(tǒng)的基于協(xié)同過濾的推薦算法主要利用用戶偏好信息,但備受數(shù)據(jù)稀疏問題的影響.為了提高推薦準(zhǔn)確率,同時(shí)增強(qiáng)推薦結(jié)果的可信度,越來越多的研究人員[12-17]將信任信息引入推薦算法當(dāng)中.
Jamali和Ester提出的TrustWalker算法[12]通過在信任網(wǎng)絡(luò)中隨機(jī)游走選擇相似物品的評分從而避免在信任網(wǎng)絡(luò)中游走太深,而在相同游走深度下TrustWalker又能夠在信任網(wǎng)絡(luò)更大范圍內(nèi)來查找相似物品的評分,提高了推薦的準(zhǔn)確性和覆蓋率.但Jamali等人只在二值信任網(wǎng)絡(luò)中游走,每個信任用戶被選擇的概率是相同的,缺乏區(qū)分性.Wang[13]等人結(jié)合用戶偏好和信任相似度,加權(quán)得到用戶間的信任度量. Davoudi等人[14]構(gòu)建的信任模型同時(shí)考慮了用戶相似性、節(jié)點(diǎn)中心性和社會關(guān)系.潘等人[15]在SocialMF的基礎(chǔ)上,提出基于信任關(guān)系隱含相似度的推薦算法.杜等人[16]研究信任用戶間接影響用戶偏好和直接影響用戶評分兩種不同機(jī)制,提出基于用戶間信任關(guān)系融合建模的概率矩陣分解模型TPMF.王等人[17]提出的TM-PMF挖掘了用戶評分過程中潛在的信任關(guān)系,增加了信任數(shù)據(jù)密度.但是,上述研究都忽略了用戶社交關(guān)系中的不信任信息.
最近,一些研究工作[8-10,18-20]嘗試將不信任關(guān)系納入到推薦過程.Victor等人[8]探究了不信任信息在推薦過程中可能的角色:不信任作為扭轉(zhuǎn)信任權(quán)重偏差的指標(biāo),不信任作為過濾器,不信任作為信任網(wǎng)的調(diào)試器.并通過實(shí)驗(yàn)說明不應(yīng)該在推薦過程中使用不信任來扭轉(zhuǎn)信任權(quán)重偏差,使用不信任作為信任網(wǎng)的過濾器或調(diào)試器是可以探索的方向.Rafailidis等人[18]最早將信任和不信任關(guān)系引入Top-N推薦任務(wù)中,設(shè)計(jì)了學(xué)習(xí)排名模型LTRW,提出一種加權(quán)策略來衡量用戶的朋友或敵人對物品選擇的影響.Lee等人[19]利用信任和不信任信息選擇最近鄰居,并采用混合推薦方法進(jìn)行推薦.Ma等人[20]從信任的個人、人際關(guān)系和非個人方面獲得一系列相關(guān)特征,通過這些特征訓(xùn)練邏輯回歸模型,預(yù)測用戶信任和不信任值,并應(yīng)用到信任感知推薦算法中.實(shí)驗(yàn)結(jié)果表明,同時(shí)利用信任和不信任信息能有效提高推薦準(zhǔn)確度.
相比于基于內(nèi)存的協(xié)同過濾,基于模型的協(xié)同過濾方法在數(shù)據(jù)稀疏的情況下推薦效果更優(yōu),且具有良好的可擴(kuò)展性.其中UPMF可以結(jié)合多種上下文信息(評分、信任、地點(diǎn)等),實(shí)現(xiàn)更優(yōu)的推薦效果.Ma等人[11]提出了一種基于概率矩陣分解的因子分析方法SoRec,聯(lián)合用戶信任數(shù)據(jù)和評分記錄進(jìn)行推薦.Davoudi[21]提出了一種結(jié)合相似度以及節(jié)點(diǎn)重要性的信任計(jì)算模型,同時(shí)采用聯(lián)合概率矩陣分解來進(jìn)行推薦.文中的信任模型主要分為兩部分:相似信任、節(jié)點(diǎn)中心性.其中相似信任采用向量相似度(VSS)計(jì)算,節(jié)點(diǎn)中心性則是參考用戶在社交網(wǎng)絡(luò)中的入度值,兩者結(jié)合作為用戶的信任值.但Ma和Davoudi等人只利用用戶間直接信任信息,沒有進(jìn)一步挖掘潛在的間接信任關(guān)系.Wang[22]提出的TUPMFRec雖然從多方面刻畫了信任關(guān)系,并結(jié)合UPMF進(jìn)行推薦,但未利用社交關(guān)系中的不信任信息.
與上述工作相比,本文提出的信任模型綜合考慮信任網(wǎng)絡(luò)中用戶間直接信任值、用戶數(shù)量以及用戶間的相似度,并結(jié)合信任的傳播,增加信任數(shù)據(jù)的密度,有效緩解信任數(shù)據(jù)稀疏問題.同時(shí)利用不信任信息對信任網(wǎng)絡(luò)進(jìn)行調(diào)節(jié),提高信任數(shù)據(jù)的可靠性.在此基礎(chǔ)上,融合聯(lián)合概率矩陣分解方法提高推薦的精度.
定義用戶集合UM={u1,u2,…,un},n為用戶的數(shù)量,定義項(xiàng)目集合VM={v1,v2,…,vm},m為項(xiàng)目的數(shù)量.在評分矩陣R=[rij]n×m中,rij表示用戶i對項(xiàng)目j的評分,其中i=1…n,j=1…m.在矩陣分解方法中,評分矩陣R通過R=UTV得到,信任矩陣S通過S=UTT得到.考慮到用戶間信任和不信任關(guān)系,我們定義有向權(quán)重圖G(ν,ε)來表示用戶的社交關(guān)系網(wǎng)絡(luò),其中ν表示用戶節(jié)點(diǎn),ε表示連接用戶節(jié)點(diǎn)的邊,其中“+”表示信任關(guān)系,“-”表示不信任關(guān)系.
表1給出文中相關(guān)的符號定義.
在社交網(wǎng)絡(luò)中,用戶間存在著信任和不信任關(guān)系.現(xiàn)有文獻(xiàn)[3-5,11-17,22]提出的信任模型在評估用戶間關(guān)系時(shí),存在以下問題:
1)大多數(shù)文獻(xiàn)[3-5,11]計(jì)算全局信任均只考慮全局網(wǎng)絡(luò)中所有用戶對目標(biāo)用戶的信任評價(jià)值,過于片面.
2)計(jì)算局部信任選擇路徑時(shí),大多選取最短路徑[4,5],往往忽略了對評分預(yù)測有參考價(jià)值的用戶反饋.
3)缺乏對不信任信息的有效應(yīng)用方法.
表1 符號說明Table 1 Explanation of symbols
本文綜合考慮信任網(wǎng)絡(luò)中所有用戶對目標(biāo)用戶的信任評價(jià)值、用戶數(shù)量以及用戶間的相似度,全面考慮影響全局信任的潛在因素;在計(jì)算局部信任選擇路徑時(shí),注重對評分預(yù)測最有參考價(jià)值的用戶反饋,選取最有效路徑[23]進(jìn)行間接信任值計(jì)算.同時(shí),利用不信任信息對信任網(wǎng)絡(luò)進(jìn)行調(diào)節(jié),選擇符合社會平衡理論的穩(wěn)定的路徑,利用Jaccard系數(shù)的變體計(jì)算用戶間的不信任權(quán)重,對于不信任權(quán)重大于設(shè)定閾值的用戶,否定其局部信任度量的結(jié)果.
4.1.1 全局信任
關(guān)于全局信任計(jì)算,本文主要考慮以下3點(diǎn),大多數(shù)文獻(xiàn)[3-5,11]都只考慮了第1點(diǎn):
1)用戶的全局信任跟全局網(wǎng)絡(luò)中所有用戶對該用戶的信任評價(jià)值有關(guān);
2)有關(guān)研究[24]表明,社交網(wǎng)絡(luò)中的“大V”更能影響其他用戶的選擇,而這些個人影響力大的用戶通常有較多的關(guān)注者.即,用戶的全局信任跟全局網(wǎng)絡(luò)中對該用戶有信任評價(jià)的用戶數(shù)有關(guān).
3)基于協(xié)同過濾的推薦算法往往認(rèn)為興趣愛好一致的用戶相似度較高.即,用戶的全局信任與用戶間相似度有關(guān).
用戶全局信任值計(jì)算公式[25]如式(1)所示:
(1)
其中|F+(uj)|表示信任網(wǎng)絡(luò)中信任用戶uj的用戶數(shù)量,dtkj表示用戶uk與用戶uj間的直接信任度,Simik表示用戶ui與uk之間的相似度.
4.1.2 局部信任
1)直接信任
若用戶間存在直接信任,則用直接信任評價(jià)值dtij進(jìn)行度量.
2)間接信任
若用戶間不存在直接信任評價(jià)值,則利用信任傳遞性度量用戶間間接信任評價(jià)值idtij.
本文根據(jù)“六度空間”理論,在計(jì)算間接信任時(shí)設(shè)置最大路徑長度Max_Hop<=6,依據(jù)路徑長度L設(shè)計(jì)衰減度函數(shù),如公式(2)所示:
(2)
信任傳播會產(chǎn)生多條路徑,本文選擇最有效路徑[19]進(jìn)行間接信任值計(jì)算.用戶間間接信任值計(jì)算[25]如公式(3)所示:
(3)
其中Ui、Uj分別表示源、目標(biāo)用戶節(jié)點(diǎn),Uk表示某條路徑Pathi中第k個用戶節(jié)點(diǎn),TUk-1→Uk表示用戶節(jié)點(diǎn)Uk-1對用戶節(jié)點(diǎn)Uk的信任值.
最終間接信任值計(jì)算[25]如公式(4)所示:
(4)
綜上所述,用戶間最終信任值計(jì)算公式[25]如式(5)所示:
sij=αgtij+(1-α)ltij
(5)
其中l(wèi)tij表示局部信任值,若存在直接信任,ltij=dtij,否則ltij=idtij.參數(shù)α用于控制衡量全局與局部信任所占的比重.
4.1.3 不信任的調(diào)節(jié)
在信任網(wǎng)絡(luò)中,如果用戶A完全信任用戶B,B完全信任C,由信任傳播可以推出用戶A信任用戶C;但是此信任網(wǎng)絡(luò)中,如果用戶A與C之間存在直接不信任關(guān)系,那么我們就需要否定前面信任傳播的結(jié)果.
本文利用不信任信息對信任網(wǎng)絡(luò)進(jìn)行調(diào)節(jié),幫助過濾類似上述的“錯誤的推論”[8,10],提高信任數(shù)據(jù)的可靠性.
如圖1所示的信任網(wǎng)絡(luò)中,“+”表示信任,“-”表示不信任,用戶節(jié)點(diǎn)A和C之間存在間接信任和間接不信任關(guān)系,其中B、D、E是不同傳播路徑的中間用戶節(jié)點(diǎn).我們的目標(biāo)是衡量兩個節(jié)點(diǎn)間的不信任權(quán)重.
圖1 信任-不信任傳播Fig.1 Trust-distrust propagation
關(guān)于A、B、C之間的鏈路關(guān)系我們可以根據(jù)社會平衡理論[26,27]確定.社會平衡的基本原則[28]是:“我的朋友的朋友是我的朋友,我的敵人的朋友是我的敵人,我的敵人的敵人是我的朋友”.在社交網(wǎng)絡(luò)中,3個相互連接的節(jié)點(diǎn)有4種可能的情況,如圖2所示.根據(jù)社會平衡理論中三角形的平衡,(1)、(2)在結(jié)構(gòu)上是穩(wěn)定的,(3)、(4)在結(jié)構(gòu)上是不穩(wěn)定的.如果所有3個節(jié)點(diǎn)組成的三角形在結(jié)構(gòu)上都是穩(wěn)定的,則由3個以上節(jié)點(diǎn)組成的網(wǎng)絡(luò)在結(jié)構(gòu)上是平衡的[29].本文選擇符合社會平衡理論的穩(wěn)定路徑,即A信任B并且B信任C、A不信任B并且B信任C的情況,利用Jaccard系數(shù)的變體[19]計(jì)算用戶間的不信任權(quán)重.
圖2 社交網(wǎng)絡(luò)中的4個基本的無向三元組[29]Fig.2 Four basic undirected triples in social network
考慮到隨著傳播路徑的增加,計(jì)算復(fù)雜程度劇增,因此本文選擇計(jì)算信任和不信任傳播的最大路徑長度為2[30,31].用戶ui和用戶uj間的不信任權(quán)重Wij的計(jì)算如公式(6)所示:
(6)
若Wij大于設(shè)定閾值η,則本文認(rèn)為用戶ui與用戶uj是不信任的,關(guān)于用戶ui和用戶uj的局部信任度量是錯誤的推論,應(yīng)當(dāng)給予否定,此時(shí)sij=αgtij.
相比于傳統(tǒng)的協(xié)同過濾算法,矩陣分解算法從技術(shù)上降低數(shù)據(jù)稀疏性帶來的影響.結(jié)合上述提出的信任模型TDtrust,本文提出基于UPMF的社會化推薦算法TDRec.
TDRec模型假設(shè):
(7)
(8)
(9)
其中I表示單位矩陣,N(x|μ,σ2)表示均值為μ,方差為σ2的概率密度函數(shù).
評分矩陣R的條件概率分布如公式(10)所示:
(10)
同理,信任矩陣S的條件概率分布如公式(11)所示:
(11)
根據(jù)貝葉斯規(guī)則推導(dǎo)出后驗(yàn)分布函數(shù):
(12)
最大化上述對數(shù)后驗(yàn)概率等價(jià)于最小化公式(13):
(13)
(14)
(15)
(16)
本文完整推薦框架如圖3所示.
圖3 推薦框架Fig.3 Recommendation framework
1)從數(shù)據(jù)庫中得到評分、信任和不信任信息;
2)利用信任數(shù)據(jù)計(jì)算用戶間綜合信任值,利用不信任信息得到不信任權(quán)重Wij,若Wij大于設(shè)定閾值,調(diào)節(jié)其信任值sij=αgtij;
3)聯(lián)合評分矩陣和信任矩陣分解得到用戶潛在特征向量和項(xiàng)目潛在特征向量,根據(jù)R=UTV得到預(yù)測評分值.
本文采用Epinions數(shù)據(jù)集.評分?jǐn)?shù)據(jù)包括用戶ID、項(xiàng)目ID和評分值,信任數(shù)據(jù)包括用戶ID、信任用戶ID和信任值(默認(rèn)為1),不信任數(shù)據(jù)包括用戶ID、不信任用戶ID和不信任值(默認(rèn)為-1).Epinions公開的數(shù)據(jù)集中包含132000個用戶,841372條用戶關(guān)系(包括717667條信任關(guān)系、123705條不信任關(guān)系)和13668320條評分?jǐn)?shù)據(jù)).為了降低模型TDtrust的訓(xùn)練時(shí)間,我們需要對數(shù)據(jù)集進(jìn)行處理.從原始數(shù)據(jù)集中隨機(jī)選取數(shù)據(jù)并不能構(gòu)成關(guān)系網(wǎng)絡(luò),不能很好地驗(yàn)證信任和不信任關(guān)系對推薦準(zhǔn)確度的影響.本文對信任用戶進(jìn)行游走,得到信任網(wǎng)絡(luò),選取對應(yīng)用戶的評分?jǐn)?shù)據(jù)和不信任數(shù)據(jù)進(jìn)行實(shí)驗(yàn).處理后的數(shù)據(jù)集包含23107個用戶和111778條用戶關(guān)系(包括67118條信任關(guān)系、44660條不信任關(guān)系和3703078條評分?jǐn)?shù)據(jù)).
本文采用平均絕對誤差(Mean Absolute Error,MAE)和均方根誤差(Root Mean Square error,RMSE)作為實(shí)驗(yàn)評估標(biāo)準(zhǔn).MAE和RMSE表示預(yù)測值和真實(shí)值的差距,MAE和RMSE值越小推薦效果越好.MAE、RMSE計(jì)算公式如公式(17)、公式(18)所示:
(17)
(18)
其中n為測試集大小,p為預(yù)測評分,q為真實(shí)評分.
為了證明TDRec算法的有效性,本文選取了以下對比算法進(jìn)行實(shí)驗(yàn):
PMF[32]:基于概率模型的矩陣分解方法,只利用了評分信息.
User-Based[33]:傳統(tǒng)的基于用戶相似度的協(xié)同過濾方法.
Item-Based[33]:傳統(tǒng)的基于項(xiàng)目相似度的協(xié)同過濾方法.
SoRec[11]:同時(shí)利用評分信息和社交關(guān)系信息進(jìn)行矩陣分解的方法.
VSS[21]:提出了結(jié)合相似度以及節(jié)點(diǎn)重要性的信任計(jì)算模型,結(jié)合UPMF方法進(jìn)行推薦.
TUPMFRec[22]:提出的信任模型多方面考慮信任關(guān)系,但是沒有利用不信任信息,結(jié)合UPMF方法進(jìn)行推薦.
5.4.1 參數(shù)α的評估
當(dāng)用戶間存在直接信任度時(shí),為了得到更準(zhǔn)確的全局信任值所占比重,實(shí)驗(yàn)1對此時(shí)的權(quán)重參數(shù)α取不同值進(jìn)行實(shí)驗(yàn).實(shí)驗(yàn)中α取值為0.1,0.3,0.5,0.7,0.9,本文在不同比例訓(xùn)練集中進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如圖4所示.
由圖4可知,隨著α的逐漸增大,MAE和RMSE呈增大趨勢,故在本實(shí)驗(yàn)中α取值為0.1時(shí)效果最好.這也符合我們的認(rèn)知,當(dāng)用戶ui對uj存在直接信任時(shí),計(jì)算ui對uj的信任評價(jià)值以ui對uj的直接信任為主,與uj在整個社會化網(wǎng)絡(luò)中的全局信任度關(guān)系不大.
圖4 參數(shù)α的影響(MAE和RMSE)Fig.4 Impact of parameter α(MAE and RMSE)
5.4.2 信任模型有效性
為了驗(yàn)證本文提出的信任模型的有效性,實(shí)驗(yàn)2將TDtrust模型分別應(yīng)用于兩種結(jié)合信任的基于用戶的協(xié)同過濾算法[33,34]以及兩種基于TrustWalker思想的算法TrustWalker[12]、RelevantTrustWalker[35].將未利用不信任調(diào)節(jié)的算法分別為命名為[33]*、[34]*、TW*、 RTW*,將利用不信任調(diào)節(jié)的算法命名為[33]*D、[34]*D、TW*D、RTW*D.本文分別在不同大小訓(xùn)練集中進(jìn)行實(shí)驗(yàn),圖5展示的是訓(xùn)練集大小為70%時(shí)信任模型結(jié)合算法效果比較.同時(shí)再將結(jié)合信任模型的聯(lián)合概率矩陣分解算法TDRec與另外3種矩陣分解算法PMF、SoRec、TUPMFRec進(jìn)行分析比較,實(shí)驗(yàn)結(jié)果如表2、表3所示.
圖5 信任模型結(jié)合算法效果比較(MAE和RMSE)Fig.5 Comparison of trust model effectiveness with algorithms(MAE and RMSE)
由圖5可以看出,結(jié)合了本文信任模型的協(xié)同過濾算法相較于原始的算法,推薦準(zhǔn)確率明顯提高;并且結(jié)合了本文信任模型的兩種TrusterWalker算法相比于原始的算法,推薦準(zhǔn)確度有一定提升.因此,本文提出的信任模型可以有效推進(jìn)協(xié)同過濾等推薦算法,提高評分預(yù)測準(zhǔn)確度.
表2 4種矩陣分解算法效果比較(MAE)Table 2 Comparison of four matrix decomposition algorithms(MAE)
表3 4種矩陣分解算法效果比較(RMSE)Table 3 Comparison of four matrix decomposition algorithms(RMSE)
根據(jù)表2、表3可得,隨著訓(xùn)練集的增大,4種算法的MAE和RMSE都逐漸減少.同時(shí)結(jié)合本文信任模型的聯(lián)合概率矩陣分解算法TDRec在不同訓(xùn)練集大小下的MAE和RMSE都要小于其余3種算法,特別是在數(shù)據(jù)稀疏的情形下,TDRec算法推薦效果也相對較好.從而驗(yàn)證了本文的信任模型可以有效的應(yīng)用于矩陣分解類算法當(dāng)中,提高其算法的評分預(yù)測準(zhǔn)確度.
5.4.3 算法對比
實(shí)驗(yàn)3選取傳統(tǒng)協(xié)同過濾算法User-Based、Item-Based和4個聯(lián)合信任的矩陣分解算法PMF、SoRec、VSS、TUPMFRec與本文提出的TDRec進(jìn)行分析比較.
圖6 TDRec與其他算法比較(MAE和RMSE)Fig.6 Comparison between TDRec and other algorithms (MAE and RMSE)
根據(jù)圖6可以看出結(jié)合本文提出的信任模型的聯(lián)合概率矩陣分解算法TDRec推薦效果優(yōu)于傳統(tǒng)的協(xié)同過濾算法和同類信任增強(qiáng)的矩陣分解算法.并且在不同稀疏程度的數(shù)據(jù)集下,TDRec均能得到較好的推薦效果.
綜合上述實(shí)驗(yàn),根據(jù)實(shí)驗(yàn)2可知,本文提出的信任模型在傳統(tǒng)協(xié)同過濾、TrustWalker、矩陣分解3類算法中均得到了較好的推薦效果,從而證明了該模型的有效性.同時(shí)根據(jù)實(shí)驗(yàn)3,我們可以很明顯的看出,結(jié)合本文提出的信任模型的聯(lián)合概率矩陣分解算法TDRec,其推薦效果要優(yōu)于User-Based、Item-Based 、PMF、SoRec、VSS、TUPMFRec,說明本文的信任模型在結(jié)合UPMF時(shí)得到的推薦效果是最佳的.
本文綜合考慮信任和不信任信息,提出信任計(jì)算模型TDtrust.考慮到信任產(chǎn)生的多源性,本文從全局和局部兩個刻面挖掘信任網(wǎng)絡(luò)中用戶間的信任關(guān)系,同時(shí)利用不信任信息對信任網(wǎng)絡(luò)進(jìn)行調(diào)節(jié),幫助過濾信任傳播中“錯誤的推論”,提高推薦的準(zhǔn)確性.最終將通過模型得到的信任數(shù)據(jù)應(yīng)用于基于UPMF的社會化推薦算法TDRec,得到較好的評分預(yù)測準(zhǔn)確度.在Epinions數(shù)據(jù)集上的實(shí)驗(yàn)證明本文提出的算法相比于傳統(tǒng)協(xié)同過濾推薦算法和同類信任增強(qiáng)的矩陣分解算法推薦效果更優(yōu).考慮到用戶間會建立和取消信任和不信任關(guān)系,在未來的工作中我們會探索適應(yīng)不斷變化的社交關(guān)系的信任模型,并應(yīng)用到社會化推薦算法中去.