張 震,華 鋼
1.中國礦業大學信電學院,江蘇徐州,221008;2.淮北師范大學計算機科學與技術學院,安徽淮北,235000
基于評分合理因子的協同過濾推薦算法研究
張震1,2,華鋼1
1.中國礦業大學信電學院,江蘇徐州,221008;2.淮北師范大學計算機科學與技術學院,安徽淮北,235000
摘要:研究了協同過濾推薦算法中評分矩陣的稀疏性特征,調查并分析了用戶評分尺度的差異問題。為了提高過濾推薦算法的推薦精度,采用評分合理因子進行算法的改進,構建基于評分合理因子的協同過濾推薦模型及改進的協同過濾推薦算法RFCF。實驗證明,清洗掉評分不合理的用戶不能提高預測準確性,反而會使準確性大大降低;而采用評分合理因子修正相似度計算的準確性,可以明顯提高預測精度和執行效率,并且在評價矩陣稀疏情況較嚴重的情況下也能夠收到較好的效果。
關鍵詞:評分合理因子;相似度度量;評分預測;協同過濾推薦
隨著電子商務、社交網絡、慕課、P2P應用和云計算等技術迅速普及,互聯網信息資源的規模迅速擴大,在海量的信息中,人們要準確有效地甄選自己所需要的信息越來越困難。個性化推薦系統就是解決這一問題的有效方法之一。協同過濾推薦是現行推薦系統中應用最廣泛的技術之一。協同過濾分析用戶興趣,在用戶群中找到與指定用戶具有相似興趣的用戶集,根據用戶集中的這些相似用戶的觀點推導出對目標用戶的推薦列表,形成推薦系統對用戶喜好程度的預測[1-2]。協同過濾推薦基于這樣一個假設:如果用戶對一些項目的評分比較相似,說明他們具有相似的喜好,則他們對其他項目的評分也比較相似。因此,協同過濾推薦算法的依據是用戶的評分。但隨著用戶規模與項目規模的逐漸擴大,數據的稀疏度呈指數增長,同時用戶評分尺度的差異也是影響推薦精度的主要原因之一。目前,國內外學者針對稀疏問題與評分尺度差異問題進行了一系列研究,提出了一些解決方法。針對稀疏問題一般采用矩陣填充技術。最簡單的填充辦法是固定值填充或平均值填充,但這兩種辦法并不能從根本上解決稀疏性問題。預測填充技術[3-6]是目前研究最多的技術。降維[7-10]的方法也可以解決矩陣的稀疏性問題,但矩陣分解的開銷太大,并且會導致信息的丟失。針對用戶評分尺度差異的問題,J.Herlocker等人提出了一種基于皮爾遜相關系數的最大值改進[11-12]與最小值改進[13],考慮了用戶間共同評價項目的數目對相似度計算結果的影響。H.J.Ahn提出了從近鄰度、影響力和流行度三方面改進相似性度量的方法[14]。曾建新等人提出了一種基于改進信息熵的協同過濾算法,考慮了用戶間的交集大小及評分差異[15]。本文提出一種基于用戶評分合理因子的相似度度量方法(簡稱為RFCF),通過分析用戶評分尺度的特點和用戶評分對推薦結果的貢獻差異,構建用戶評價合理因子,改進相似度度量,消除評分尺度差異帶給推薦算法的影響。
1問題的提出
準確查詢目標用戶的最近鄰用戶集是整個協同過濾推薦成功的關鍵。在協同過濾推薦算法中,用戶對項目的評分是計算用戶相似度和確定最鄰近用戶集的主要依據,其中評分矩陣的稀疏性和用戶評分特點的差異是影響相似度計算的重要原因。
例如,在MovieLens數據集中,用戶的評分特點是不同的,如有的用戶對影片評分的高低反映在分值上的差距較大,而有些用戶在分值上的差距較小。如圖1所示。
圖1分別給出了用戶1、用戶2和用戶3對項目集的評分情況分布圖,用戶1與用戶3的評分范圍在[1,5]區間,而用戶2的評分范圍在[3,5]區間;同樣是得分為3的項目,對于用戶1與用戶3是評價中等的項目,而對于用戶2是評價極差的項目。因此,不同用戶的評價尺度存在較大差別,這種差別對計算用戶相似度影響較大,從而最終影響推薦算法的性能。

圖1 評分情況分布圖
2理論基礎
定義1(用戶-項目評分矩陣):R={ru,j},R表示移動用戶對項目的評分矩陣,rk,j表示移動用戶k對項目j的評分,評分值通常為[1,5]區間的整數。
定義2(項目集合):J={j|j∈L},J表示項目集合,其中,L為項目ID集合。
定義3(用戶集合):U={k|k∈M},U表示用戶集合,其中,M表示用戶的ID集合。
定義4(用戶評分合理因子):
(1)

利用(1)式計算上面三個用戶的評分合理因子如表1所示。

表1 用戶評分合理性比較
表1顯示,用戶2的評分合理因子較小,平均分較高,說明該用戶的評分普遍較高,必定影響相似度計算的準確性。
定義5(用戶評分合理性向量):δ={δk,k∈M},δ表示用戶評分合理性度量,其中,M表示用戶的ID集合。
定義6(皮爾遜相關):在評分系統中,不同用戶給出的評分偏向是不同的,有的用戶評分普遍偏高,而有的用戶評分普遍偏低。皮爾遜相關通過減去用戶的平均評分在一定程度上解決了評分偏向的問題。
(2)
定義7(改進的用戶相似度矩陣):SU={sim′(uk,uz) |uk,uz∈U},SU表示用戶之間的相似度矩陣,sim′(uk,uz)表示用戶k與用戶z的相似度,值越大,表示用戶間的相似度就越高。
sim′(uk,uz)=
(3)
定義8(評分預測函數):預測用戶k對商品j的評價函數,Pk,i代表用戶k對商品j的預測評價。
(4)

3改進的推薦算法
改進的協同過濾推薦模型包括數據預處理、基于相似度的最近鄰用戶集的選取、構建推薦引擎、得到推薦列表、模型評估(若滿意,則輸出TopN,否則,返回到數據預處理階段重新進行挖掘)。
RFCF算法流程:
步驟1利用(1)式計算用戶評分合理因子δk,k∈M,從而得到用戶評分合理性向量δ。
步驟2設置δk的下限,并進行數據清洗,調整δk的取值,利用基于用戶Pearson相似度的協同過濾推薦算法UPCF實驗,驗證利用評分合理因子進行數據清洗的有效性。
步驟3利用δk修正相似度度量,利用(2)式計算用戶相似度sim′(uk,uz),從而得到改進的用戶相似度矩陣SU。
步驟4確定相鄰用戶集H的規模。
步驟5利用(3)式進行評分預測,求解P(k,j)的值,并根據P(k,j)的值,確定TopN。
步驟6采用平均絕對誤差MAE與RMSE進行模型評估。
(5)
平均絕對誤差是推薦系統中應用最廣泛的評估方法,它通過計算預測評分與真實評價數據上的差別來衡量推薦結果的準確性。MAE的值越小,推薦精度就越高。
(6)
均方根誤差反映了評分數據的離散程度,數值越小,說明離散程度越小,評分越趨于平均值。

圖2 改進的推薦算法模型
4實驗分析
實驗數據來自Minnesota大學GroupLensResearch項目組收集的MovieLens數據集,數據量共計10萬條,包含了943位用戶對1682部電影的評分。該數據集的稀疏程度高達93.7%。在該數據集中,選取80%作為訓練集,20%作為測試集。
利用(1)式求每位用戶的評分合理因子,通過刪除ξi取值小于0.6的用戶評分進行數據清洗,圖3為基于用戶Pearson相似度的協同過濾推薦算法UPCF在數據清洗前后的MAE與RMSE的變化。
圖3顯示,清洗前后預測的準確性發生明顯的變化,清洗掉評分不合理的用戶不能提高預測的準確性,反而會使準確性大大降低,說明簡單地刪除評分合理因子較小的用戶是不可行的,不僅不能提高算法的精度,反而會加重矩陣的稀疏性。

圖3 清洗前后平均絕對誤差與均方根誤差的變化
為了進一步驗證RFCF算法的有效性,突出算法的優勢,從該數據集中首先隨機抽取4萬條評價,同樣涉及943個用戶對1682部電影的評分。該數據集的稀疏程度高達97.5%。在該數據集中,選取80%作為訓練集,20%作為測試集。比較基于用戶Pearson相似度的協同過濾推薦算法UPCF與基于用戶評分合理因子的協同過濾推薦算法RFCF的MAE與RMSE,測試結果如圖4所示。

圖4 算法比較
從圖4中可以看出RFCF算法和UPCF算法在MAE與RMSE上的對比情況,實驗結果表明,RFCF算法能夠有效地提高預測的準確性,且離散程度較小。同時,當稀疏度較大時,RFCF算法相對于UPCF算法的精度提高幅度較大,這說明RFCF算法在稀疏情況較嚴重的情況下也能夠體現出較強的優勢。
5結束語
本文介紹了一種基于用戶評分合理性探究的協同過濾推薦算法RFCF。該算法從介紹用戶評分特點入手,分析了用戶評分尺度的差異,然后從數據清洗與改進相似度兩個角度進行實驗,驗證了利用評分合理因子改進相似度方法的有效性。實驗證明,RFCF算法比傳統的推薦算法有明顯的改進,并且在稀疏程度較大的情況下也可以有效地提高算法的精度。
參考文獻:
[1]Nguyen T T,Kluver.Rating support interfaces to improve user experience and recommender accuracy[C]//Hongkong:In Proceedings of the 7th ACM Conference on Recommender Systems,2013:149-156
[2]Sarwar B,Karypis G,Konstan J,et al.Application of Dimensionality Reduction in Recommender System-A Case Study[EB/OL].[2016-01-18].http://www.docin.com/p-1035255326.html
[3]Cacheda F,Carneiro V,Fernandez D,et al.Comparison of collaborative filtering algorithms:limitations of current techniques and proposals for scalable,High-Performance recommender systems[J].ACM Transactions on the Web,2011,5(1):1-33
[4]Jung K Y,Hwang H J,KANG U-g.Constructing full matrix through naive bayes for collaborative filtering[C]//Kunming:PROCEEDINGS,2006:1210-1215
[5]Konstan J,Miller B,Maltz D.GroupLens:applying collaborative filtering to Usenet news[J].Communications of the ACM,1997,40(3):77-87
[6]Robles V,Larranaga P,Menasalvas E,et al.Improvement of naive bayes collaborative filtering using interval estimation[C]//Washington DC:Proceedings of the IEEE/WIC International Conference on Web Intelligence,2003:168-174
[7]Sarwar B M.Application of dimensionality reduction in recommender system-a case study[C]//New York:acm webkdd 2000 web mining for e-commerce workshop:acm press,2000:82-90
[8]Pariser A R,Miranker W.Dimensionality reduction via Self-Organizing feature Maps for collaborative filtering[C]//Orlando:Proceedings of International Joint Conference on Neural Networks,2007:1941-1946
[9]Abhinandan D,Mayur D,Ashutosh G,et al.Google News Personali zation:Scalable Online Collaborative Filtering[C]//New York:Proceeding of the 16th international conference on World Wide Web,2007:271-280
[10]Vozalis M G,Margaritis K G.Applying SVD on item-based filtering[C]//Wroclaw Poland:Proceedings of the 5th International Conference on Intelligent System Design and Applications,2005:464-469
[11]Herlocker J L,Konstan J A,Borchers A.An Algorithmic Framework for Performing Collaborative Filtering[C]//Berkeley:Proceedings of the 22nd Annual Interational ACM SIGIR onference on Research and Development in Information Retrieval(SIGIR’99),1999:230-237
[12]Herlocker J L,Konstan J A,Terveen K,et al.Evaluating collaborative filtering recommender systems[J].ACM Transactions on Information Systems,2004,22(1):5-53
[13]HAO M,Irwin K,Michael R L.Effective missing data prediction for collaborative filtering[C]//Amsterdam:Proceedings of the 30th annual international ACM SIGIR conference on Research and development in information retrieval,2007:23-27
[14]Ahn H J.A new similarity measure for collaborative filtering to alleviate the new user cold-starting problem[J].Information Sciences,2008,178(1):37-51
[15]曾建新,楊寧,夏培勇.一種基于改進信息熵的協同過濾算法[J].微計算機信息,2012,28(8):181-183
(責任編輯:汪材印)
doi:10.3969/j.issn.1673-2006.2016.05.026
收稿日期:2016-02-25
基金項目:淮北師范大學校級教研項目“翻轉課堂在高校教學中的應用研究”(jy14138)。
作者簡介:張震(1977-),女,安徽淮北人,在讀博士研究生,副教授,主要研究方向:智能信息處理。
中圖分類號:TP391
文獻標識碼:A
文章編號:1673-2006(2016)05-0096-04