張檳淇 任麗芳 王文劍,3
冷啟動問題一直是困擾推薦系統(tǒng)的主要問題之一,隨著微博、Facebook、維基等社交平臺的出現(xiàn),學者們提出很多利用用戶之間社交信息的方法,緩解這一問題.這些方法是基于有社交連接的用戶更趨向于有相似的行為偏好,同時行為偏好相似的用戶更容易建立連接這一理論,因此可通過信任用戶的行為特征預測目標用戶的偏好特征,緩解冷啟動問題.信任用戶是指與目標用戶存在某種社交關系,如朋友關系、師生關系、親人關系的其它用戶,但由于冷啟動用戶擁有的社交信息可能也是稀疏的,僅考慮社交信息的顯式數(shù)據(jù)可能并不能為所有的冷啟動用戶提供準確的推薦,因此需要考慮社交信息(信任關系)的隱性影響.
自推薦系統(tǒng)成為一個獨立的研究領域之后,學者們提出許多推薦系統(tǒng),一般可分為基于協(xié)同過濾(Collaborative Filtering, CF)[1-2]的推薦系統(tǒng)、基于內容的推薦系統(tǒng)和混合的推薦系統(tǒng).
基于CF的推薦系統(tǒng)大體可分為基于鄰域的方法[3]和基于模型的方法[4].基于鄰域的方法使用用戶對已有項的評分,直接預測該用戶對新項的評分,意在找出項與項之間的聯(lián)系(基于項的CF),或用戶與用戶之間的聯(lián)系(基于用戶的CF).基于模型的方法使用一些機器學習算法訓練物品和用戶向量,再建立模型預測用戶對于物品的評分.Koren[5]提出SVD++(Singular Value Decomposition++),對評分矩陣進行矩陣分解,并考慮評分矩陣的隱性影響與顯性影響,預測用戶對項目的評分.但是,這些方法都面臨冷啟動問題(新項目或新用戶)和數(shù)據(jù)稀疏問題.
基于內容的推薦系統(tǒng)[6]源于信息檢索和信息過濾的研究,存在如下限制:1)內容分析有限,很難應用于具有自動特征提取固有問題的領域;2)過度專業(yè)化,向用戶推薦的項目局限于與該用戶已評級項目相似的項目;3)存在新用戶問題,為了了解用戶的偏好,用戶必須對足夠數(shù)量的項目評級.
混合的推薦系統(tǒng)[7]使用加權等方式融合兩種或兩種以上的推薦方法,以此緩解各種方法的缺點,但需要大量的工作才能找到正確的混合方式.
現(xiàn)階段社交網絡已成為人們生活不可或缺的一部分,用戶之間的信任度影響也更突出.如何將信任度融合到推薦系統(tǒng)中,實現(xiàn)更精準的個性化推薦成為現(xiàn)在研究的熱點問題.
一些研究結果表明,將用戶之間的信任關系融入推薦系統(tǒng)可提高推薦性能,減輕數(shù)據(jù)稀疏和冷啟動問題[8].由于社會信任關系會提供除項目評級之外的另一種用戶偏好,研究者開始廣泛研究信任感知的推薦系統(tǒng)[9].Ma等[10]提出SoRec(Social Re-commendation Using Probabilistic Matrix Factoriza-tion),考慮社會關系的約束,共享一個由評分和信任矩陣分解而成的通用用戶特征矩陣.之后,Ma等[11]提出RSTE(Recommendation with Social Trust Ensemble),線性組合基本矩陣分解模型和基于信任的鄰域模型.Ma等[12]進一步提出,活躍用戶特定于用戶的向量應接近其可信鄰居的平均值,并將其改成正則化形式,形成新的矩陣分解模型SR(Reco-mmender Systems with Social Regularization).Jamali等[13]在SR的基礎上,構建SocialMF(Matrix Factori-zation Based Model for Recommendation in Social Rating Networks),將信任用戶特征向量加權平均表示目標用戶的特征向量.Yang等[14]提出TrustMF(Social Collaborative Filtering by Trust),從信任者和被信任者的角度考慮用戶,結合信任者模型和被信任者模型,即信任該用戶的用戶和被該用戶信任的用戶都將影響用戶對未知項目的評分.Tang等[15]提出LOCABAL(Exploiting Local and Global Social Context for Recommendation),將全局信任和局部信任視為上下文信息,通過單獨的算法計算全局信任.
上述方法表明,社交信息對于改進傳統(tǒng)的推薦算法是有效的.但是,在現(xiàn)實世界中,并非所有的推薦系統(tǒng)中都存在顯式社交關系.Ma[16]明確顯式社交和隱式社交的定義,同時給出對于兩種社交信息的有效性驗證.Yao等[17]考慮推薦模型中信任者和被信任者之間的顯式交互和隱式交互.Guo等[18]提出TrustSVD,在SVD++的基礎上引入隱式社交信息,不僅考慮用戶的顯式評分數(shù)據(jù)與社交關系,也考慮用戶的隱式行為數(shù)據(jù)及社交關系.Xiong等[19]提出SoInp(Information Propagation-Based Social Reco-mmendation Method),從信息傳播的角度對隱式用戶影響進行建模,并在矩陣分解框架中加入隱式用戶影響和顯式信任信息.Ahmadian等[20]提出SoRIR(Social Recommender Based on Reliable Implicit Relationships),基于Dempster-Shafer理論計算用戶之間隱式關系,還引入一種度量,評估預測的可靠性,并使用鄰域改進機制重新計算不可靠的預測.Liu等[21]提出DGE(Dynamic Graph-Based Embedding Model),將時間語義效應、社會關系和用戶行為順序模式整合到網絡嵌入過程中,實現(xiàn)實時社交推薦.
所有這些工作表明,通過信任正則化的矩陣分解模型性能優(yōu)于沒有信任的矩陣因式分解模型,即信任有助于提高預測準確性.其中通過隱式信息加強用戶特征的方法準確率高于僅考慮顯式信息的方法,說明隱性影響更能反映用戶特點,并可較好地緩解冷啟動問題.但是這些方法忽略信任用戶對目標用戶具有不同的隱性影響,即用戶之間的信任度不同.因此,本文提出融合信任隱性影響和信任度的推薦模型(Recommendation Model Combining the Impli-cit Influence of Trust with Trust Degree, RIITD),在引入社交信息中信任關系的前提下,不僅考慮用戶在信任關系中的顯式行為數(shù)據(jù),還考慮信任關系的隱性影響(如被信任用戶的潛在特征向量),用于獲取冷啟動用戶的偏好特征,有效緩解在社交信息較少時不能準確地為冷啟動用戶進行推薦這一問題.此外,本文提出綜合信任度的度量,體現(xiàn)目標用戶與信任用戶之間不同的社交影響,發(fā)揮信任用戶的積極影響,提升推薦系統(tǒng)的性能.在3個常用數(shù)據(jù)集上的實驗表明,本文方法推薦精度較高.
本文提出融合信任隱性影響和信任度的推薦模型(RIITD),整個流程如圖1所示.在RIITD中,考慮用戶-項目評分矩陣和用戶-用戶信任矩陣的顯性影響和隱性影響,并融入信任用戶的信任度,區(qū)分不同信任用戶對目標用戶產生的不同社交影響,提高信任數(shù)據(jù)的可靠性.顯性影響是指用戶對于項目的真實評級數(shù)據(jù)和信任矩陣中用戶直接的信任關系等顯式信息;隱性影響是指用戶過去已評分項目的特征(歷史評分數(shù)據(jù)的特征)和目標用戶信任用戶的特點等隱式信息.
圖1 RIITD流程圖Fig.1 Flowchart of RIITD
在RIITD中,信任的顯性影響被用來約束用戶的特征向量應符合該用戶的社會信任關系,并通過擴展用戶建模將信任的隱性影響添加到模型中.模型確保即使用戶很少或沒有給出評級,也可從用戶的信任信息中獲取用戶的特定向量,得到其偏好特征,從而更好地緩解冷啟動問題.但是,現(xiàn)實生活中信任用戶推薦的項目并不一定總是好的和目標用戶喜歡的,這樣就需要一個指標以確定信任用戶對目標用戶的選擇起多大作用.因此引入用戶信任度,將信任用戶進行分類,使更可靠的用戶起更大的影響作用,避免虛假惡意用戶的影響.
學習用戶和項目的特征矩陣,其中,‖·‖F(xiàn)為Frobenius范數(shù),λ為控制模型復雜度和避免過擬合的參數(shù).
另一方面,假設一個社交網絡由圖G=(V,E)表示,其中,V表示m個節(jié)點(用戶),E表示用戶之間的定向信任關系.如圖2所示,圖中有5個節(jié)點,分別表示用戶u1~u5,每位用戶節(jié)點旁邊的圖形表示該用戶已評分過的不同項目種類和評分值.因為信任關系是有向的,所以節(jié)點之間使用有向邊.
圖2 社會化網絡圖Fig.2 Social network diagram
其中Tu為用戶u信任的用戶集.
在社交網絡快速發(fā)展的時代,用戶之間的交互增加,信任關系的建立也變得方便快速.利用信任關系預測用戶喜好成為學者研究的新方向.但是,單純將信任關系加入推薦系統(tǒng)并不符合現(xiàn)實生活的情況.在現(xiàn)實世界,信任用戶的喜好并不總和自己的喜好一致,很多情況下會有一定差別.本文考慮目標用戶與信任用戶之間的喜好差別,建立信任模型,引入綜合信任度度量信任用戶對目標用戶的不同影響,綜合信任度的定義如下:
Truu,v=βDTu,v+(1-β)IDTu,v,
(1)
其中,DTu,v、IDTu,v分別表示用戶u、v的直接信任度和間接信任度,β表示用戶直接信任度和間接信任度所占的比重.
用戶間的直接信任關系是指在社會化網絡中具有直接好友關系,可進行直接交流的信任關系,如圖2,用戶u2、u4之間為直接信任關系.用戶間的直接信任度包括用戶之間的熟悉程度和被信任用戶的權威度.直接信任度表示為:
DTu,v=αFamu,v+(1-α)Authv,
其中,F(xiàn)amu,v表示目標用戶u和推薦用戶v的熟悉度,Authv表示推薦用戶v的權威度,α表示熟悉度和權威度的權重因子.
熟悉度和權威度的具體介紹如下.用戶熟悉度根據(jù)用戶之間的互動頻率表現(xiàn),即認為互動頻率越高,兩者越熟悉,熟悉度為:
其中,Iu,v表示用戶u、v的交互次數(shù),Iu,max、Iu,min分別表示用戶u與其他用戶交互的最大/最小次數(shù).
用戶的權威度包括全局權威度和個人權威度.在社交平臺中,部分用戶擁有很多關注者,這類用戶可極大地影響其它用戶做出決策,本文將這類用戶視為權威用戶,根據(jù)這一特性計算全局權威度.一般認為權威用戶對于物品的評分與大眾評分較符合,即接近物品評分均值,因此考慮用戶評分與物品平均評分間的差異,將該差異定義為用戶個人權威度,即計算用戶對項目的評分與該項目全局平均評分之差,差值越小表示該用戶的個人權威度越高.因此,得出用戶權威度的計算方法:
間接信任關系是指用戶之間并不是直接的好友關系,而是通過若干好友進行聯(lián)系,體現(xiàn)信任的傳遞性特點.如圖2所示,用戶u3、u4之間無直接聯(lián)系,但是可通過不同的用戶路徑建立聯(lián)系(u3→u5→u4、u3→u1→u2→u4),因此兩者為間接信任關系.
六度分割理論指出,世界上2個陌生人之間間隔的人數(shù)不會超過6個,因此在本文中信任度在社會化網絡中的最大傳播路徑長度應小于等于6,傳播路徑長度過長已不具備參考價值.由圖2可知,兩位用戶間的傳播路徑有多條,所以在計算間接信任度時,必須考慮用戶間的最大傳播路徑.本文根據(jù)社交用戶的總數(shù)量和每位用戶社交數(shù)量的平均數(shù)計算最大傳播路徑長度:
其中,N表示社交用戶總數(shù)量,I表示社交網絡中每位用戶交互數(shù)量的平均數(shù).
推薦用戶與目標用戶之間有多條路徑進行關聯(lián),中間用戶可以是一位也可以是多位,所以用戶的間接信任度與兩位用戶間的關系路徑長度、數(shù)量、邊權重和中間用戶的直接信任度有關:
其中:e-pk表示第k條關系路徑的權重系數(shù),取值范圍在0~1之間;pk表示第k條關系路徑,根據(jù)上述計算的信任最大傳播距離得出|pk|≤dmax;DTx,y表示第k條路徑中用戶x、y的直接信任度.
RIITD建立在已有的推薦模型TrustSVD[18]的基礎上.TrustSVD的基本原理是考慮用戶和項目的偏差,以及已評分項目和信任用戶對評分預測的影響.
首先將項目和用戶轉換到相同的潛在特征空間,從而使它們直接具有可比性.除考慮目標用戶和待評分項目的潛在特征向量以外,還考慮用戶和項目的偏差、目標用戶已評分項目和目標用戶的信任用戶的隱性影響.用戶u對項目j的預測評分為:
RIITD在TrustSVD的基礎上進一步擴展用戶模型,考慮用戶的行為特點,除從歷史評分數(shù)據(jù)的特點和目標用戶信任用戶的特點之外,考慮信任用戶對評分的影響并不能一概而論.目標用戶對信任用戶的信任程度越大,該信任用戶的評分對目標用戶的影響也越大.因此,利用信任度這一用戶特性,根據(jù)信任度的大小改變信任用戶對目標用戶的影響,使信任影響的融入更具有可靠性.此時用戶u對項目j的預測評分為:
(2)
其中Truu,v為用戶u、v結合用戶間的直接信任度和間接信任度得到的用戶之間的綜合信任度.
為了避免過擬合,本文采取正則化技術.由于活躍用戶和活躍項目過擬合的機率較小,而冷啟動用戶和項目過擬合的機率更大,所以對活躍用戶和項目進行弱懲罰,而冷啟動用戶和項目更加正則化.雖然給不同的變量單獨分配正則化參數(shù)可實現(xiàn)更精細的控制和調優(yōu),但與不同的模型進行對比會導致很大的復雜度.所以為了降低模型復雜度,所有變量使用相同的正則化參數(shù)λ.目標函數(shù)如下:
(3)
為了得到上述目標函數(shù)的局部最優(yōu)解,本文對各部分使用梯度下降法求解:
RIITD偽代碼如算法1所示.
算法1RIITD
輸入Rating matrixR,Trust matrixT,
number of iterationsK
輸出RMSE,MAE
Split data set into training setTrand test setTe;
for eachu∈R,v∈Rdo
Calculate theTruu,vusing Eq(1);
end for
Initialize User biasbu,Item biasbi,Item feature vectorqj,User feature vectorpu,Potential feature vector of the items that useruhas rated in the pastyi, Potential feature vector of users trusted by useruwu
fork=1 toKdo
foru∈Tr,i∈Trdo
for the target useruusing Eq(2);
Calculate the error between the predicted rating
updatebu,bj,qj,pu,yi,wuusing Eq(3);
end for
end for
foru∈Te,i∈Tedo
for the target useruusing Eq(2)
Calculate RMSE and MAE
end for
return RMSE,MAE
T(d|R|),T(d|R|),T(d|R|+d|T|),
T(d|R|+d|T|),T(d|R|n),
T(d|R|m+d|T|m),
所以一次迭代的總體時間為
T(|R|+|T|)+T(d|R|+d|T|)+
T(d|R|)+T(d|R|)+T(d|R|+d|T|)+
T(d|R|+d|T|)+T(d|R|n)+
T(d|R|m+d|T|m),
時間復雜度為
O(dc(|R|+|T|))=O(|R|+|T|),
其中,d表示特征向量維數(shù),|R|、|T|表示評分矩陣和信任矩陣中的已知項數(shù),n表示項目得到評分的平均數(shù)量,m表示用戶得到的信任聲明的平均數(shù)量,c=max(n,m),由于評分矩陣和信任矩陣都是稀疏的,所以c?|R|或c?|T|.
已有的社會推薦模型,如SoRec[10]、SR[12]、TrustSVD[18]等,一次迭代的時間復雜度均為O(|R|+|T|),可見RIITD在考慮信任隱性影響和信任度的情況下,并未降低時間效率.由于總體的時間復雜度與評分矩陣和信任矩陣中的已知項數(shù)呈線性關系,RIITD可擴展到非常大的數(shù)據(jù)集.
本文在Epinions、FilmTrust、Ciao這3個社交推薦領域常用數(shù)據(jù)集上進行實驗.3個數(shù)據(jù)集均包含各模型中需要的用戶評級數(shù)據(jù)和信任關系.
Epinions數(shù)據(jù)集是一個從網站收集的數(shù)據(jù)集,人們可在這里查看多個類別的產品,如電影、電腦和體育.用戶可給每個項目分配1~5范圍內的評級.此外,用戶通過信任聲明表達他們的信任關系.數(shù)據(jù)集包含40 163位用戶和139 738個不同的項目.
FilmTrust數(shù)據(jù)集包括1 508位用戶、2 071個項目和35 497個評級.用戶可對項目給出0.5~4.0范圍內的評分數(shù)據(jù)以表達他們的興趣.此外,用戶之間的鏈接信息作為FilmTrust數(shù)據(jù)集中的信任信息.
Ciao數(shù)據(jù)集是從http://dvd.ciao.co.uk網站上抓取的DVD類別數(shù)據(jù)集,包括7 375位用戶、99 746個項目和280 391個評級,評級范圍為1~5.數(shù)據(jù)集中用戶的信任關系也通過信任聲明表達.
各數(shù)據(jù)集的詳細信息如表1所示.
表1 實驗數(shù)據(jù)集詳細信息Table 1 Detailed information of experimental datasets
為了驗證RIITD的有效性,本文選擇如下5種模型進行對比.這5種模型分別從3個方面選擇:1)僅考慮評分矩陣顯性影響和隱性影響的SVD++[5];2)不考慮隱性影響,但結合社交關系的SoRec[10]、RSTE[11]和SR[12];3)考慮評分矩陣和社交矩陣的顯性影響和隱性影響,但未考慮信任度的TrustSVD[18].具體描述如下.
1)SVD++.利用評分矩陣的隱性影響與顯性影響,但不考慮信任信息.
2)SoRec.考慮社會關系的約束,共享一個由評分矩陣和信任矩陣分解而成的通用用戶特征矩陣.
3)SR.活躍用戶特定于用戶的向量應接近其可信鄰居的平均值,并用作正則化形式,形成新的矩陣分解模型.
4)RSTE.組合基本矩陣分解模型和基于信任的鄰域線性模型.
5)TrustSVD.是SVD++融入社交信息的推廣,即將社交矩陣的顯式關系作為隱式反饋信息加入SVD++.
實驗在LENOVO臺式機上進行,使用 Intel Core CPU,i7-6700,3.4 GHz,16 GB RAM,編程環(huán)境為Python 3.7.實驗在所有用戶和冷啟動用戶兩種視圖下分別與5種模型進行對比,以MAE、RMSE和F-Measure作為評價指標.所有用戶表示所有評級都用作測試集,冷啟動用戶表示只有評分少于5項的用戶參與測試集.
評分預測的預測準確率通常通過均方根誤差(Root Mean Square Error, RMSE)和平均絕對誤差(Mean Absolute Error, MAE)計算,RMSE和MAE的計算公式為
其中N為測試集評級數(shù)量.RMSE和MAE數(shù)值越小表明預測精度越高.
準確率(Precision)和召回率(Recall)是廣泛用于信息檢索和統(tǒng)計學分類領域的兩個度量值,用于評價結果的質量.準確率檢驗推薦的項目有多少是準確的,召回率檢驗所有準確的條目有多少被推薦.
由于有時準確率和召回率會出現(xiàn)矛盾的情況,因此需要綜合考慮,由此引入綜合評價指標F-Measure.
準確率、召回率和F-Measure計算公式如下:
此外,使用五折交叉驗證訓練和測試模型.具體而言,將原始的評分數(shù)據(jù)隨機分成5個子集,將每個子集數(shù)據(jù)分別做一次測試集(Testing Test),其余的4組子集數(shù)據(jù)作為訓練集(Training Test).進行5次循環(huán)以確保所有的子集都進行測試,平均測試性能作為最終結果.
SVD++、SoRec、SR、RSTE、TrustSVD的參數(shù)來自于相應的參考文獻,RIITD的參數(shù)通過設置不同的值,訓練不同模型和選擇更好的測試值以決定,具體如表2所示.
表2 參數(shù)設置Table 2 Parameter settings
在計算直接信任度時,考慮用戶熟悉度和權威度兩個因素,α為調整兩個因素的權重因子.α的取值直接影響最終的推薦結果,本次實驗設定β=0.5,即直接信任與間接信任各占一半,設α=0,0.1,…,1.0,MAE、RMSE值如圖3所示.
(a)MAE
圖3是在FilmTrust數(shù)據(jù)集上所有用戶視圖下的結果,其它數(shù)據(jù)集上的實驗結果與其類似.由圖可看出,MAE、RMSE值都隨α值先減后增,并在α=0.5時取得最小值,表明在直接信任中,用戶之間的熟悉度和用戶的權威度同樣重要.
在計算綜合信任度時,結合直接信任度和間接信任度,其中,β為調節(jié)兩者所占比例的權重因子,β的不同取值會影響綜合信任度的值.根據(jù)上述實驗結果取α=0.5,β=0,0.1,…,1.0.MAE、RMSE值如圖4所示.
圖4是在FilmTrust數(shù)據(jù)集上所有用戶視圖下的結果,其它數(shù)據(jù)集的實驗結果與其類似.由圖可看出,MAE、RMSE值都隨β值先減后增,并在β=0.7時取得最小值.該結果表明,在計算綜合信任度時,直接信任度的占比更大,在社交網絡中用戶之間的直接信任關系更影響用戶的選擇,即用戶更愿意聽取有直接信任關系的朋友的意見.
(a)MAE
2.4.3 潛在特征向量維數(shù)d對模型性能的影響
由于各模型都使用矩陣分解技術,本文首先研究潛在特征維數(shù)d的取值對各模型的穩(wěn)定性的影響,結果如圖5和圖6所示.
圖5和圖6是當潛在特征向量維數(shù)d取不同值時,所有用戶和冷啟動用戶視圖下的MAE、RMSE值對比.采用FilmTrust數(shù)據(jù)集,其余兩個數(shù)據(jù)集與圖5和圖6中結果變化趨勢類似.由圖可看出,除了RIITD與TrustSVD,其它模型在特征向量維數(shù)變化時,兩類指標都呈現(xiàn)無規(guī)律浮動,而RIITD浮動范圍很小,體現(xiàn)模型相對于特征維數(shù)的可靠性.這是因為RIITD從多層次、多方面、多角度考慮評級數(shù)據(jù)和信任數(shù)據(jù)的各種影響,不僅依靠評分矩陣和信任矩陣的顯性影響進行矩陣分解,還考慮隱性影響,充分發(fā)揮數(shù)據(jù)的效用.
(a)MAE
(a)MAE
2.4.4 迭代次數(shù)K的選擇
設置各參數(shù)后,迭代次數(shù)K的選擇成為影響算法的關鍵.本文將迭代次數(shù)K設為100,在FilmTrust數(shù)據(jù)集上分別在所有用戶和冷啟動用戶視圖下進行實驗,MAE、RMSE值如圖7所示.
圖7(a)中[0,100]、[100,200]、[200,300]、[300,400]、[400,500]分別對應在所有用戶視圖下進行實驗時,五折交叉驗證中每折交叉驗證MAE、RMSE值隨迭代次數(shù)的變化情況.由圖可觀察到,5個區(qū)間的變化趨勢一樣,在0~20次迭代時,MAE、RMSE值下降速度很快,在20~60次迭代時下降緩慢,60~100次迭代時趨于穩(wěn)定.(b)為在冷啟動用戶視圖下進行實驗的結果,變化趨勢與在所有用戶視圖下的結果基本一致.因此,本文將迭代次數(shù)設為K=100.
(a)所有用戶(a)All Users
2.4.5 實驗結果對比
設置α=0.5,β=0.7,K=100,分別在3個數(shù)據(jù)集上進行實驗,F(xiàn)-Measure值如圖8所示.
(a)所有用戶(a)All Users
由圖8可看出,在3個不同的數(shù)據(jù)集上,RIITD的F-Measure值最高,TrustSVD的F-Measure值次高.但RIITD的F-Measure仍低于0.6,這是因為對于RIITD推薦預測評分前幾的項目,在計算準確率和召回率時考慮推薦項目列表與用戶在測試集的真實評分列表的交集,而用戶真實評分列表中低分項目占了一定比例,這些項目一般是不會進行推薦的.
由于維數(shù)d的變化對RIITD影響不大,但考慮對比模型大多數(shù)在d=100時效果更優(yōu),選擇d=10,100進行實驗.在表3和表4中,黑體數(shù)字表示最優(yōu)結果,斜體數(shù)字表示次優(yōu)結果.
表3為所有用戶視圖下6種模型在3個數(shù)據(jù)集上的實驗結果.由表可看出,在FilmTrust、Ciao數(shù)據(jù)集上,RIITD最優(yōu)并取得更小的MAE、RMSE值.在Epinions數(shù)據(jù)集上d=100時SocialRste優(yōu)于RIITD,但二者相差很小.
表4為冷啟動用戶視圖下6種模型在3個數(shù)據(jù)集上的實驗結果.由表可看出,除了在Ciao數(shù)據(jù)集上d=100時SVD++的MAE更小以外,其余情況在數(shù)據(jù)集上都取得更小的MAE和RMSE值.
表3和表4的最后一列為RIITD最優(yōu)時與次優(yōu)模型相比的改進率,改進率最高達2.05%,最小也有0.17%.即使MAE和RMSE的改進很小,在實踐中也可能導致推薦的重大差異.
由表3和表4可看出,除了RIITD以外,SVD++和TrustSVD表現(xiàn)最優(yōu).SVD++雖然沒有結合信任信息,但仍優(yōu)于其它基于信任的模型,這是因為SVD++考慮評分數(shù)據(jù)的隱性影響,進一步降低預測誤差.
表3 各模型在所有用戶視圖下的實驗結果Table 3 Experimental results of different models in all users views
表4 各模型在冷啟動用戶視圖下的實驗結果Table 4 Experimental results of different models in cold-start users views
TrustSVD雖然也考慮評級和信任數(shù)據(jù)的隱性影響,但并未考慮信任用戶影響的差別.在RIITD中,考慮可信用戶的信任度,區(qū)分每位可信用戶對目標用戶造成的影響,增加可信用戶的可靠性.實驗結果表明,在考慮評級和信任的隱性影響的同時,考慮信任度是非常必要的.
本文提出融合信任隱性影響和信任度的推薦模型(RIITD),不僅考慮顯式評分數(shù)據(jù)和顯式社交關系,還考慮用戶歷史評分項目和信任用戶的潛在特征對目標用戶的影響,豐富預測目標用戶偏好特征的依據(jù),有效緩解冷啟動用戶問題.將信任度引入模型,體現(xiàn)目標用戶與信任用戶之間不同的社交影響,發(fā)揮信任用戶的積極影響.實驗表明,RIITD無論是在全體用戶還是在冷啟動用戶視圖下,預測精度均較優(yōu).
信任是一個復雜的概念,在不同的語境下有不同的解釋,而對于信任的不同理解,研究者可能會提出不同的社會推薦方法.這意味著需要更細致的利用信任關系的推薦方法.今后將考慮社交網絡信任的來源和產生機制等因素對推薦性能的影響,提出新的推薦模型和推薦方法.