朱愛云,任曉軍
(濰坊科技學(xué)院計(jì)算機(jī)軟件學(xué)院,壽光 262700)
個(gè)性化推薦系統(tǒng)作為信息過濾的有效工具越來越受到人們的關(guān)注。因?yàn)樗軒椭脩魪暮A康臄?shù)據(jù)中迅速查找出他們所需要的信息,在推薦系統(tǒng)中,協(xié)同過濾是一種廣泛使用的推薦技術(shù),但是傳統(tǒng)的協(xié)同過濾算法通常存在著數(shù)據(jù)稀疏和冷啟動(dòng)等問題。為了處理這些問題,許多信任感知的推薦方法隨之出現(xiàn),在這些信任感知的推薦方法中許多都是以矩陣分解技術(shù)[1]為基礎(chǔ)。這種推薦方法的出現(xiàn)往往是根據(jù)社交網(wǎng)絡(luò)中的朋友會具有相似的偏好,并且用戶的偏好也會受朋友的偏好所影響,這表明增加用戶之間的額外信息能提高推薦性能。然而,依賴社會關(guān)系可能限制基于信任的推薦方法在其他社交網(wǎng)絡(luò)場景下的應(yīng)用,在社交網(wǎng)絡(luò)中的潛在噪音和弱社會關(guān)系進(jìn)一步也會阻礙這些推薦方法的應(yīng)用[12]。同理,利用增加項(xiàng)目的邊信息能提高推薦系統(tǒng)的性能[1,2,4,8,12],這個(gè)假設(shè)是用戶傾向于對一組相關(guān)的項(xiàng)目有類似的偏好。例如:一個(gè)人如果喜歡電影《魔戒》,他/她可能會喜歡這一系列電影,甚至?xí)蕾p相關(guān)的背景音樂。在這些推薦方法中文獻(xiàn)[2-4]提出了通過使用顯式項(xiàng)目關(guān)系(如:類別、類型、位置等)來提高推薦系統(tǒng)的性能,而在文獻(xiàn)[1,10,12]提出并驗(yàn)證了隱式項(xiàng)目關(guān)系對推薦系統(tǒng)的價(jià)值。
雖然融合信任到推薦系統(tǒng)中能緩解數(shù)據(jù)稀疏性和冷啟動(dòng)問題,但是通過在三個(gè)真實(shí)的數(shù)據(jù)集(Film-Trust,Epinions,Flixster)上分析,首先,信任信息是非常稀疏,因此,如果在預(yù)測準(zhǔn)確度上重點(diǎn)關(guān)注一種信息可能會產(chǎn)生一種邊際效益。其次,針對極少的信任網(wǎng)絡(luò)存在,最好是有一個(gè)更一般的信任模型能夠處理信任鄰居和相似信任的鄰居。這些分析激發(fā)我們考慮評分的顯示影響(評分值)、隱式影響(對什么評分)和信任的顯式影響(信任值)、隱式影響(對誰信任)。評分的隱式影響[1]和信任的隱式影響[12]已驗(yàn)證能提高推薦的準(zhǔn)確度。
因此,針對以上情況我們結(jié)合基于項(xiàng)目的協(xié)同過濾思想和社交網(wǎng)絡(luò)信息,在文獻(xiàn)[1,4,12]基礎(chǔ)上提出了一種新穎的基于信任和項(xiàng)目關(guān)系的推薦模型。并通過在三個(gè)真實(shí)的數(shù)據(jù)集上進(jìn)行訓(xùn)練測試,實(shí)驗(yàn)結(jié)果表明我們提出的方法推薦性能優(yōu)于相比較的傳統(tǒng)方法。
額外的邊信息是通常結(jié)合在協(xié)同過濾推薦方法中來提高推薦的性能,首先,信任感知推薦系統(tǒng)考慮額外的用戶信息是一個(gè)值得關(guān)注的研究領(lǐng)域,近年來,許多這樣的方法已提出,Ma等人[5]提出了RSTE方法,該方法是通過線性結(jié)合信任鄰居到矩陣分解模型中,后來Ma等人發(fā)現(xiàn)使用社會關(guān)系構(gòu)建正則化模型比結(jié)合信任鄰居到矩陣分解模型中的推薦性能好。Jamali等人[6]提出了一個(gè)用戶的潛在特征向量能夠被他所信任的用戶所正則化。Guo等人[12]認(rèn)為用戶的興趣受隱式信任用戶的偏好所影響。
其次,現(xiàn)已有許多研究人員已嘗試使用項(xiàng)目關(guān)系來提高推薦性能,在本文中,我們把項(xiàng)目關(guān)系分成兩類:即顯式和隱式。典型的顯式項(xiàng)目關(guān)系的例子包括屬性(分類、位置、標(biāo)簽等),例如,Hu等人[4]認(rèn)為一個(gè)商店的商品質(zhì)量與它所在地理鄰居的其它商店有一些隱式的指示,Shi等人[3]認(rèn)為用標(biāo)簽來橋接跨領(lǐng)域的知識能提供更好的推薦。隱式項(xiàng)目關(guān)系指的是項(xiàng)目之間不能顯式看到的那種關(guān)系,一個(gè)直接定義隱式項(xiàng)目關(guān)系的方法就是比較項(xiàng)目相似度[14]。
在這一部分我們首先介紹融合信任和隱式項(xiàng)目關(guān)系的推薦模型,然后通過實(shí)驗(yàn)比較我們提出的方法與其他經(jīng)典方法的性能。
矩陣分解技術(shù)已廣泛的應(yīng)用在推薦系統(tǒng)中,這個(gè)潛在的假設(shè)是一個(gè)用戶的偏好能夠被少數(shù)潛在的特征所表示。基于用戶-項(xiàng)目評分矩陣和用戶間的信任矩陣,設(shè)想一個(gè)推薦系統(tǒng)包含m個(gè)用戶,n個(gè)項(xiàng)目,假定用表示用戶-項(xiàng)目評分矩陣,其中ru,i表示用戶u對項(xiàng)目i的評分。矩陣分解的實(shí)質(zhì)[6]是找到兩個(gè)低維的矩陣即用戶特征矩陣P∈Rd×m和項(xiàng)目特征矩陣Q∈Rd×n,然后兩者相乘近似于評分矩陣R使R≈PTQ,其中PT是矩陣P的轉(zhuǎn)置矩陣,因此用戶u對項(xiàng)目 j的預(yù)測評分為,對于我們推薦的主要任務(wù)是預(yù)測評分盡可能的接近于真實(shí)值ru,j。
同理,我們把社交網(wǎng)絡(luò)用一個(gè)圖G=(v,ε)表示,其中v是一個(gè)有m個(gè)用戶的集合,ε是用戶之間的有向信任關(guān)系,用一個(gè)鄰接矩陣描述這些邊 ε的結(jié)構(gòu),其中tu,v表示用戶u信任用戶v的程度,pu,wv分別是信任人u,被信任人v的d維潛在特征向量,為了能夠聯(lián)系信任矩陣中的信任者和評分矩陣中的活躍用戶,限定他們擁有相同的特征空間。因此,我們得到信任特征矩陣Pd×m和被信任人特征矩陣Wd×m。然后利用低維矩陣分解,可以得到信任矩陣公式如下:T≈PTW ,即一個(gè)信任關(guān)系能夠預(yù)測為。最后通過最小化損失函數(shù)不斷學(xué)習(xí)得到矩陣P和矩陣W。
其中,Tu是用戶u信任的用戶集合。
Guo等人[12]提出了用戶的興趣受隱式信任用戶的偏好所影響。即預(yù)測評分為:
為了連接評分矩陣和信任矩陣,我們限制評分矩陣中分解的用戶特征向量和從信任矩陣中分解的用戶特征向量具有相同的特征空間。因此最小化目標(biāo)函數(shù)如下:
雖然增加社會網(wǎng)絡(luò)信息能大大提高推薦的準(zhǔn)確度,也能緩解數(shù)據(jù)稀疏性和冷啟動(dòng)問題,然而有時(shí)社會關(guān)系可能在許多實(shí)際系統(tǒng)中不可用,并且從三個(gè)真實(shí)的數(shù)據(jù)集(FilmTrust,Epinions,Flixster)中的信任數(shù)據(jù)分析,信任數(shù)據(jù)是非常稀疏。因此,受增加社交網(wǎng)絡(luò)信息[8,13]和增加項(xiàng)目[4,7,10,11]的邊信息能大大提高推薦的準(zhǔn)確度的影響。針對社會推薦中僅僅融合好友的推薦方法的不足,忽視用戶推薦的物品之間的關(guān)聯(lián)關(guān)系也會對推薦結(jié)果產(chǎn)生影響,提出了一種基于用戶信任和隱式項(xiàng)目關(guān)系的個(gè)性化推薦方法。該方法不僅利用了用戶的信任關(guān)系,同時(shí)也結(jié)合了基于項(xiàng)目的協(xié)同過濾思想,考慮到與用戶喜歡的項(xiàng)目相似的項(xiàng)目用戶也會喜歡,即與用戶評過分的項(xiàng)目所關(guān)聯(lián)的項(xiàng)目也會影響用戶的偏好。因此,在公式(3)的基礎(chǔ)上增加了隱式項(xiàng)目關(guān)系,一個(gè)直接定義隱式項(xiàng)目關(guān)系的方法就是比較項(xiàng)目相似度。因?yàn)槿绻S多人都喜歡這兩個(gè)項(xiàng)目,則表明這兩個(gè)項(xiàng)目有共同的相似性。這種直觀的判斷是基于項(xiàng)目的協(xié)同過濾,最流行的相似度衡量是皮爾遜相關(guān)系數(shù)(PCC)和余弦相似度(COS),而在本文中我們使用COS來計(jì)算項(xiàng)目間的相似度。
假設(shè)兩個(gè)項(xiàng)目 j,k隱式關(guān)聯(lián)的強(qiáng)度為sj,k,且sj,k值越大,我們認(rèn)為這兩個(gè)項(xiàng)目的特征向量應(yīng)該是越接近,項(xiàng)目 j與項(xiàng)目k的關(guān)聯(lián)程度越大,即隱式項(xiàng)目關(guān)系越密切。在文獻(xiàn)[15]使用社會關(guān)系的啟發(fā)下,我們提出了在融合社會關(guān)系的基礎(chǔ)上再增加隱式項(xiàng)目關(guān)系到矩陣分解模型中,然后構(gòu)建正則化模型生成用戶的潛在特征和項(xiàng)目的潛在特征。通過正則化來調(diào)整評分矩陣的分解,因此給出的模型如下:
其中,Iu,j是一個(gè)指示函數(shù),如果用戶u對項(xiàng)目 j已評分,則Iu,j=1,否則Iu,j=0,β>0是一個(gè)正則化參數(shù),它用來控制隱式項(xiàng)目關(guān)系正則化的重要性;sj,k表示項(xiàng)目 j與項(xiàng)目k的關(guān)聯(lián)程度,Aj是與項(xiàng)目 j的最關(guān)聯(lián)的項(xiàng)目集合。
為了使目標(biāo)函數(shù)(4)最小化,執(zhí)行梯度下降法分別對參數(shù)bu,bj,qj,pu,wv求偏導(dǎo)數(shù)得到如下公式進(jìn)行訓(xùn)練:
表1 三種數(shù)據(jù)集的統(tǒng)計(jì)數(shù)據(jù)
對每種方法的最優(yōu)實(shí)驗(yàn)設(shè)置都是通過我們的實(shí)驗(yàn)驗(yàn)證或以前的文章提供的建議得到的。在本文中,潛在的特征數(shù)選擇d=5,學(xué)習(xí)速率為α=0.4,迭代次數(shù)為100次。其中,RSTE方法在三種數(shù)據(jù)集中均設(shè)置λ=0.001,SoRec方法 在FilmTrust,Epinions,Flixster數(shù)據(jù)集中分別設(shè)置為λc=0.1,1.0,0.001;SoReg 方法在數(shù)據(jù)集Flixster中β=1.0而在其它數(shù)據(jù)集中設(shè)定為β=0.1;SocialMF方法在三種數(shù)據(jù)集中設(shè)定λt=1;SVD++方法在FilmTrust,Epinions,Flixster數(shù)據(jù)集中分別λ=0.1,0.35,0.03;SocialMF+方法在FilmTrust數(shù)據(jù)集中λ=1.2,λt=0.9,在 Epinions數(shù)據(jù)集中 λ=0.9,λt=0.5在Flixster數(shù)據(jù)集中λ=0.8,λt=0.5。
為了說明我們提出的方法的有效性同以下方法進(jìn)行了比較。
1.RSTE:這種方法是Ma等人[5]提出的,通過利用線性結(jié)合信任鄰居與矩陣分解構(gòu)建模型,這是一個(gè)信任感知推薦方法,模型用戶的評分平衡用戶自己的品味與他所信任用戶的品味間的差異。
2.SoRec方法是Ma等人在2008年[9]提出的,利用概率矩陣分解通過共享一個(gè)潛在低維特征矩陣融合用戶評分矩陣與用戶社會信任網(wǎng)絡(luò)。
3.SoReg方法是Ma等人在2011年[8]提出的,利用矩陣分解融合用戶的品味和他們所信任的朋友以此構(gòu)建正則化模型。
4.SocialMF方法是Jamali等人[6]提出的,在社交網(wǎng)絡(luò)中利用矩陣分解模型做出推薦。
5.SVD++方法是Koren等人[1]在2008年提出的,融合用戶評分的顯式和隱式影響做出推薦。
翻耕整地期間應(yīng)施加足量的腐熟有機(jī)肥作底肥,不但肥效長而且可改善土壤結(jié)構(gòu)。小麥播種時(shí)應(yīng)施加種肥,一般使用尿素或復(fù)合肥,可以在較短時(shí)間內(nèi)發(fā)揮最大肥效,以利于種子發(fā)育出苗。出苗后至收割期間要合理追肥。
實(shí)驗(yàn)結(jié)果如表2所示,在表2中所有比較的方法中SocialSVD方法在三種數(shù)據(jù)集(FilmTrust,Epinions,Flixster)中性能是最好的(MAE或RMSE值是最?。?,雖然相對提高的比例很小,但是文獻(xiàn)[9]已經(jīng)指出MAE或RMSE值很小的改善也可能大大提高推薦的性能。
表2 本文提出的方法與其他典型方法的比較
本文中把一個(gè)特定用戶所信任鄰居的數(shù)量作為這個(gè)用戶的信任度,為了驗(yàn)證信任度對預(yù)測準(zhǔn)確度的影響,把信任度分為5類,劃分如下:1-5人,6-10人,11-20人,21-40人,41-100人,特征維數(shù)d=10?;谛湃味饶P偷慕Y(jié)果如圖1、2、3,從圖1、2、3中可以看出,在通常情況下,我們提出的方法不管在哪種數(shù)據(jù)集和哪種信任度下RMSE都是最小的,并且對于同一種方法,隨著信任度的增加(用戶的好友數(shù)越多),RMSE的值就越小,表明在實(shí)際的協(xié)同過濾推薦系統(tǒng)中,只要用戶具有很多的好友,則用戶可以從好友的偏好中學(xué)習(xí)到豐富的個(gè)人偏好特征信息,以此做出更加準(zhǔn)確的推薦。
圖1 Epinions數(shù)據(jù)集中不同信任度的性能比較(d=10)
圖2 Flixster數(shù)據(jù)集中不同信任度的性能比較(d=10)
參數(shù)β在公式(4)中控制著項(xiàng)目關(guān)系正則化的重要性,為了驗(yàn)證隱式項(xiàng)目在推薦過程中所起的作用以及對推薦準(zhǔn)確度的影響,我們分別選擇 β=0.001,0.001,0.01,0.1,0.2,0.5,1.0 在三種真實(shí)的數(shù)據(jù)集 Epinions、FilmTrust、Flixster上進(jìn)行測試,迭代次數(shù)為100,特征維數(shù)為10,目的是尋找β取何值時(shí)能達(dá)到最佳狀態(tài),實(shí)驗(yàn)結(jié)果如圖4、圖5所示。從圖4、圖5可以看出在Epinions數(shù)據(jù)集上 β大約取0.5,在FilmTrust數(shù)據(jù)集上β大約取0.1,在Flixster數(shù)據(jù)集上 β大約取0.2。這也表明隱式的項(xiàng)目對推薦結(jié)果有重要的影響。
圖3 FilmTrust數(shù)據(jù)集中不同信任度的性能比較(d=10)
圖4 參數(shù)β對RMSE的影響
本文通過融合用戶的信任關(guān)系和隱式項(xiàng)目關(guān)系,提出了一個(gè)新穎的矩陣分解模型。首先通過定義引入了矩陣分解在推薦系統(tǒng)中的應(yīng)用,接著結(jié)合社交網(wǎng)絡(luò)中的信任關(guān)系,引入了信任特征矩陣;其次,考慮到用戶對項(xiàng)目的評分不僅與自己的興趣有關(guān),還與所評分的項(xiàng)目、所信任的朋友的興趣以及所評分的項(xiàng)目的相似項(xiàng)目有關(guān);最后,結(jié)合基于項(xiàng)目的協(xié)同過濾中的項(xiàng)目之間存在相似性的思想,在傳統(tǒng)的奇異值(SVD)矩陣分解模型中融合了社交網(wǎng)絡(luò)中的信任關(guān)系和隱式項(xiàng)目關(guān)系構(gòu)建正則化模型的方法。通過在Flixster、Film-Trust、Epionions三個(gè)真實(shí)的數(shù)據(jù)集上進(jìn)行大量的實(shí)驗(yàn),驗(yàn)證了我們提出的推薦模型在準(zhǔn)確性和效率方面都有較大的提升。對于將來的工作,我們打算融合隱式項(xiàng)目和顯示項(xiàng)目關(guān)系進(jìn)一步提高推薦系統(tǒng)的性能。
圖5 參數(shù)β對MAE的影響
參考文獻(xiàn):
[1]KOREN Y.Factorization Meets the Neighborhood:a Multifaceted Collaborative Filtering Model[C].In:Proceedings of the 14th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining(KDD),2008:426-434.
[2]KIMCKIM J.A Recommendation Algorithm Using Multi-Level Association Rules[C].In:Proceedings of 2003 IEEE/WIC International Conference on Web Intelligence(WI),2003:524-527.
[3]SHI YLARSON M,HANJALIC A.Tags as Bridges Between Domains:Improving Recommendation with Tag-Induced Cross-Domain Collaborative Filtering[C].In:Proceedings of the 19th International Conference on User Modeling,Adaptation and Personalization(UMAP),2011:305-316.
[4]HU L,SUN A,LIU Y.Your Neighbors Affect Your Ratings:on Geographical Neighborhood Influence to Rating Prediction[C].In:Proceedings of the 37th International ACM SIGIR Conference on Research&Development in Information Retrieval(SIGIR),2014:345-354.
[5]MA H.KING I.,LYU M.Learning to Recommend with Social Trust Ensemble[C].In:Proceedings of the 32nd International ACM SIGIR Conference on Research and Development in Information Retrieval(SIGIR),2009:203-210.
[6]JAMALI M,ESTET M.A Matrix Factorization Technique with Trust Propagation for Recommendation in Social Networks Systems(Rec-Sys),2010:135-142.
[7]FANG H,BAO Y,ZHANG J.Leveraging Decomposed Trust in Probabilistic Matrix Factorization for Effective Recommendation[C].In Proceedings of the 28th AAAI Conference on Artificial Intelligence(AAAI),2014:30-36.
[8]MA H,ZHOU D Y,LIU C.Recommender Systems with Social Regularization[C].In Proceedings of the 4th ACM International Conference on Web Search and Data Mining,2011:287-296.
[9]MA H,YANG H,LYU M.SoRec:Social Recommendation Using Probabilistic Matrix Factorization[C].In Proceedings of the 31st International ACM SIGIR Conference on Research and Development in Information Retrieval.ACM,2008:931-940
[10]WANG D,Ma J,LIAN T,L G.Recommendation Based on Weighted Social Trusts and Item Relationships[C].In Proceedings of the 29th Annual ACM Symposium on Applied Computing(SAC)ACM,2014:2000-2005.
[11]FOUSS F,PIROTTE A,RENDERS J M,et al.Random-Walk Computation of Similarities Between Nodes of a Graph with Application to Collaborative Recommendation[J].IEEE Transactions on Knowledge and Data Engineering,2007,19(3):355-369.
[12]GUO G,ZHANG J,YORKE S N.Trustsvd:Collaborative Filtering with Both the Explicit and Implicit Influence of User Trust and of Item Ratings[C].In Proceedings of the 29th AAAI Conference on Artificial Intelligence.AAAI,2015.
[13]王瑞琴,蔣云良,李一嘯.一種基于多元社交信任的協(xié)同過濾推薦算法[J].計(jì)算機(jī)研究與發(fā)展,2016,53(6):1389-1399
[14]Wang,D.,Ma,J.,Lian,T.,L.,G.:Recommendation Based on Weighted Social Trusts and Item Relationships.In:Proceedings of the 29th Annual ACM Symposium on Applied Computing(SAC),2000-2005(2014)