李龍生 艾 均 蘇 湛 李妍妍(上海理工大學光電信息與計算機工程學院 上海 00093)(鄭州航空工業管理學院電子通信工程學院 河南 鄭州 450003)
隨著科技的進步和計算機的快速發展,人類已經進入大數據的時代,面對如此龐大的信息,人們很難獲得自己想要的信息或者是感興趣的信息,特別是我們經常接觸到的信息,比如電影、新聞、商品、音樂等。在這樣的背景下,推薦系統的出現很好地解決了這些問題。最開始的推薦系統推薦不準確,隨著廣大研究學者對推薦算法的不斷探索研究,推薦系統得到快速成長。發展到如今,推薦系統不僅可以幫助用戶獲取到自己感興趣的信息,還可以幫助商家快速地把信息投放到感興趣的人群中。目前推薦系統常用的有以下幾類:1) 基于協同過濾的推薦[1-2];2) 基于內容的推薦;3) 混合推薦[3-5]。協同過濾推薦技術是目前推薦算法中最受歡迎也是應用最為廣泛的推薦技術。協同過濾算法的主要思想是,根據用戶之間相似的興趣以及愛好,分成不同的用戶群組,對于某個特定用戶的推薦可以根據其所屬的用戶群組中的其他用戶的偏好習性來對其進行推薦。由于數據稀疏[6],冷啟動[7],以及評分的不準確性對現有的推薦系統都會存在或多或少的影響。針對上述出現的問題,許多推薦系統研究學者提出了一系列改進方案。文獻[8]建議用一種降維的方法來緩解數據稀疏性;文獻[9]指出用評分預測填充的方法可以有效地降低評分矩陣的稀疏性;文獻[10]指出利用用戶,物品和標簽之間的多重關系為目標用戶推薦感興趣的物品,從而來提高推薦算法的準確度;文獻[11]指出把奇異值分解(SVD)的方法應用到個性化標簽推薦系統可以很好地提高推薦準確度。然而現有的推薦算法忽視了用戶對物品評分的盲目性,隨意性,小眾偏見性以及惡意評分的特征,存在評分不準確的問題,并且在推薦時,存在推薦商品的多樣性較差的缺點,而且基于用戶-物品評分的協同過濾算法存在準確度不高,效率低等問題。評分對于平時不太關注該物品信息的用戶來說,起到了很好的導向作用,但是從另一方面可以說是左右了物品的生死。當物品口碑能夠影響觀眾選擇時,更趨向利益的市場可能會出現有水分的評分。比如說國產電影上映時,某些電影為了使口碑更好,則會涌出大量趨向利益性的評分,這些評分不屬于客觀因素的評分,基于這樣的評分不僅不能給用戶提供合適的參考而且還有可能推薦錯誤的物品。在Web2.0中,標簽是一項重要的信息資源,它首先由社會大眾用戶使用標簽對物品進行規范的統一化標注并能得到普遍用戶的認可,然后把標注后的標簽進行歸類整理,比如說電影中的標簽標注后可分類為:恐怖、科幻、動作等。這樣便形成了一種全新的信息分類方式即為以標簽為基礎的信息分類方式。為了更好地解決用戶-物品評分信息的所帶來的不必要的影響,一些推薦系統的研究學者結合以上標簽信息提出了一種基于標簽[12-13]的方法。但是該標簽方式是對標簽進行單純權重評分計算,沒有考慮到電影標簽分布的無規律性以及擁有多標簽的特性,由于不同用戶對標簽的喜好程度不同,因此標簽權重評分的權重值的設置問題一直是個難題。針對上面出現的難題,本文提出了一種結合用戶行為和物品標簽的協同過濾推薦算法。該算法是對傳統基于標簽做推薦的一種擴展,我們不去設置權重值,而是通過用戶自身行為(觀影記錄)算出用戶-物品標簽的選擇概率,綜合考慮多標簽而去推薦。同時,該方法較以往的傳統協同過濾方法還能更好地降低帶有客觀因素的評分對推薦準確度的影響。

(1)

(2)
定義2(用戶對物品的選擇性概率評分值)ur為用戶,Ii為對象(電影),δ(tp,Tq)與定義1中定義相同,P(ur,Tq)為用戶ur對標簽Tq的選擇性概率值,由定義1中計算可得。用戶對某個物品的選擇性概率評分值如下式所示:
(3)
定義3(用戶相似度)由定義2中公式得知中間值即用戶對物品的選擇性概率評分值,然后通過該值來計算用戶間的相似度,目前相似度的計算方 法[14-15]有很多種,本文采用基于用戶的皮爾遜相似度計算公式來計算用戶相似度:
(4)

定義4(用戶對物品的選擇性概率預測評分值)由用戶對物品的選擇性概率評分值和用戶相似度計算用戶對物品的選擇性概率預測評分值:
(5)
式中:m為用戶i的最近鄰個數,這與協同過濾算法相似,都是利用與用戶最相似的鄰居的概率評分值預測用戶對物品的概率評分。
根據以上描述,本文并不依賴用戶-物品原始評分,采用結合用戶行為和物品標簽的推薦算法。
輸入:<用戶(user),物品(item),用戶行為(rating)>
輸出:目標用戶的Top-N物品推薦
步驟1用戶行為(rating)即用戶以往記錄。根據用戶行為文件分離出以往該用戶所有有關物品并組成物品集合IM,再結合物品(item)文件找出對應物品標簽信息并組成標簽集合TG,由標簽集合TG利用式(2)計算該用戶下所有標簽概率P(ur,Tq)。
步驟2步驟1已經計算出該用戶下某個標簽的概率P(ur,Tq),然后再結合用戶行為利用式(3)計算出用戶-物品選擇性概率評分值R(ur,Ii)。
步驟3由用戶-物品選擇性概率評分值R(ur,Ii)通過使用基于用戶的皮爾遜相似度計算公式計算用戶間相似度S(i,j)。


本文所提算法流程圖如圖1所示。

圖1 算法流程圖
MovieLens數據集和Netflix數據集是推薦系統研究學者們常用來做電影推薦系統研究的數據集。由于此次實驗需要使用電影標簽,則我們選取帶有電影標簽的MovieLens數據集。為了使實驗結果擁有更高的準確性,以及排除偶然因素造成的不必要影響,本文將MovieLens數據集中用戶-物品評分數據打亂并隨機分成兩部分來做對比,一部分為訓練數據集,另一部分為測試數據集,其中訓練數據集占比為80%,測試數據集占比為20%。為檢驗本文提出的結合用戶行為和物品標簽的協同過濾推薦算法(UBT-CF)的有效性,本文用傳統的基于皮爾遜協同過濾推薦算法[16](CF)作為對比。CF是利用皮爾遜相似度計算公式計算基于用戶-物品評分數據的用戶間相似度,是目前最為流行的個性化推薦系統算法之一,本文選擇CF作為對比。在實驗數據對比結果中,本文選取最近鄰居個數從5逐步增加到50,其中步長為5。
傳統的基于用戶的協同過濾算法是根據用戶-物品評分矩陣(用戶-物品評分范圍值為1~5)通過計算任意兩個用戶之間的評分相似性,由相似性再計算用戶-物品的評分預測矩陣(用戶-物品預測評分范圍值為0~5之間)然后再對目標用戶進行Top-N推薦。在整個推薦系統流程中,用戶-物品評分是用來計算用戶間相似性,只是中間的計算數據,最終結果是評分預測矩陣。本文提出的結合用戶行為和物品標簽的協同過濾推薦算法,是根據用戶行為計算出標簽概率,其標簽概率范圍值本文設定在(0~5)之間,然后利用標簽概率計算相似性,最終得出概率預測評分矩陣(概率預測評分矩陣范圍值為0~5)并對目標用戶進行推薦。本文所涉及方法與所對比的傳統基于用戶的協同過濾方法很相似,不同點在于計算用戶間相似度值是采用中間計算后的值即標簽概率,對比的方法即傳統的基于用戶的協同過濾方法,采用的是用戶-物品評分。兩者的取值范圍相同,以及兩者的最終結果都是評分預測矩陣,并且兩者采用統一的評價指標。
目前在推薦系統的研究領域中,推薦算法是否得到較好的提高,有幾個常用的評價指標。這類評價指標的思路大都很相似,就是計算預測評分與真實評分的差異。其中最為經典也是最為常用的方法就是平均絕對誤差[17-19]MAE(Mean Absolute Error),MAE公式為:
(6)

(7)
實驗結果如圖2、圖3所示。

圖2 傳統CF與UBT-CF,MAE值對比圖

圖3 傳統CF與UBT-CF,RMSE值對比圖
由圖可以看出,本文提出的UBT-CF在MAE和RMSE評價指標上明顯優于傳統CF。由于MAE更擅長于低分值,為了進一步分析UBT-CF比CF優的原因,本文給出UBT-CF標簽概率預測評分分布區間以及CF原始用戶-物品預測評分分布區間。如圖4所示。

圖4 UBT-CF與CF預測評分分布區間
由對比圖可以得知,UBT-CF算出的預測概率評分個數超過98%分布在0.1~2.7之間,而傳統CF算出的預測評分個數超過98%分布在2~5之間。經分析UBT-CF與CF預測評分分布區間圖,本文得出由于本文數據集用的是標簽概率評分,當與基于用戶-物品評分的推薦系統進行比較時,由于MAE,RMSE沒有考慮到數據分布區間不同的原因,對于偏低分的數據,會出現明顯的優勢。
為了更好地驗證本文提出的方法以及使實驗數據具有更好的說服性,本文還需要更為公平準確的評價標準,即標準平均絕對誤差[20]NMAE(Normalized Mean Absolute Error)以及標準均方根誤差[20]NRMSE(Normalized Root Mean Square Error),NMAE公式如下:
(8)
NRMSE公式如下:
(9)
式中:rmax為測試集中用戶對物品的選擇性概率評分最大值,rmin為測試集中用戶對物品的選擇性概率評分最小值。為了讓數據更加緩和,NMAE,NRMSE均在數據區間上做了歸一化處理,從而可以進行更好的比較。實驗結果如圖5所示。

圖5 傳統CF與UBT-CF,NMAE值對比圖

圖6 傳統CF與UBT-CF,NRMSE值對比圖
由以上評價指標對比得知,與傳統CF方法相比,無論是推薦系統中常用的的評價指標MAE,RMSE還是歸一化后對兩者更為公平的NMAE,NRMSE,本文所提出的UBT-CF方法都具有較小的評價指標值。因此,將用戶行為和物品標簽相結合,能有效提高推薦系統的質量,并且不受客觀因素用戶-物品評分的影響。
本文首先論述了用戶評分的利弊,然后提出了一種結合用戶行為和物品標簽的協同過濾推薦算法,通過計算物品標簽的概率,利用本文定義公式計算得到物品-標簽概率評分值、用戶-標簽概率評分值、用戶相似度以及用戶-物品選擇性概率預測評分值,然后生成對應選擇性概率評分值矩陣,最后通過Top-N向目標用戶進行個性化推薦。通過使用Movielens數據集對本文提出的算法進行對比驗證,與傳統基于物品標簽的評分權重算法相比,本文算法可以更好地利用多標簽并且不用考慮權重值的設置問題,從而避免了由于權重值設置不當而造成的推薦結果的不穩定。本文算法是基于結合用戶行為和物品標簽的,并且每當新電影的出現都會伴隨已經匹配正確的分類標簽,因此本文提出的結合用戶行為和物品標簽的協同過濾推薦算法可以很好地解決物品冷啟動問題。實驗結果證明,本文用傳統的基于皮爾遜協同過濾推薦算法(CF)作為對比,提出的UBT-CF在MAE和RMSE以及更為公平的做了歸一化處理的NMAE和NRMSE評價指標上明顯優于傳統CF,能有效提高推薦系統的質量。本文采取的相似度計算公式是基于皮爾遜的,下一步工作將著重利用不同相似度計算方法來更好地提高推薦算法的質量。
參 考 文 獻
[1] Linden G,Smith B,York J.Amazon.com Recommendations:Item-to-Item Collaborative Filtering[J].IEEE Internet Computing,2003,7(1):76- 80.
[2] Huang Z,Zeng D,Chen H.A Comparison of Collaborative-Filtering Recommendation Algorithms for E-commerce[J].IEEE Intelligent Systems,2007,22(5):68- 78.
[3] 劉兆興,張寧,李季明.基于協同過濾和網絡結構的個性化推薦算法[J].復雜系統和復雜性科學,2011,8(2):29- 33.
[4] 趙超超.基于用戶和基于項目結合的個性化推薦算法[J].內蒙古農業大學學報(社會科學版),2007,6(9):139- 142.
[5] Bogers T,Van B A.Recommending scientific articles using citeulike[C]//Proceedings of the 2008 ACM conference on Recommender systems,2008:287- 290.
[6] Hu Y,Peng Q,Hu X,et al.Time Aware and Data Sparsity Tolerant Web Service Recommendation Based on Improved Collaborative Filtering[J].IEEE Transactions on Services Computing,2015,8(5):782- 794.
[7] Wei J,He J,Chen K,et al.Collaborative Filtering and Deep Learning Based Recommendation System For Cold Start Items[J].Expert Systems with Applications,2016,69:29- 39.
[8] Sarwar B M,Karypis G,Konstan J A,et al.Application of dimensionality reduction in recommender system-a case study[R].Minneapolis:Minnesota University Minneapolis Department of Computer Science,2000.
[9] 王嵩,鮑長春,李曉明.參數音頻編碼回顧[J].信號處理,2011,27(4):575- 586.
[10] Liang H Z,Xu Y,Li Y F,et al.Connecting users and items with weighted tags for personalized item recommendations[C]//Ht’10,Proceedings of the 21st ACM Conference on Hypertext and Hypermedia,Toronto,Ontario,Canada,June.DBLP,2010:51- 60.
[11] 肖海力.Sc Grid冗余系統部署[R].北京:中科院計算機網絡信息中心超級計算中心,2010.
[12] Zhang Z K,Zhou T,Zhang Y C.Tag-Aware Recommender Systems:A State-of-the-Art Survey[J].Journal of Computer Science & Technology,2011,26(5):767- 777.
[13] Tso-Sutter K H L,Marinho L B,Schmidt-Thieme L.Tag-aware recommender systems by fusion of collaborative filtering algorithms[C]//Proceedings of the 2008 ACM Symposium on Applied Computing.Fortaleza,Brazil,2008:1995- 1999.
[14] Lee T Q,Park Y,Park Y T.A time-based approach to effective recommender systems using implicit feedback[J].Expert Systems with Applications,2008,34(4):3055- 3062.
[15] Chen Yenliang,Cheng Lichen.A novel collaborative filtering approach for recommending ranked items[J].Expert Systems with Applications,2008,34(4):2396- 2405.
[16] Zhao Z D,Shang M S.User-Based Collaborative-Filtering Recommendation Algorithms on Hadoop[C]//International Conference on Knowledge Discovery and Data Mining.IEEE,2010:478- 481.
[17] Shardanand U,Maes P.Social information filtering:algorithms for automating “word of mouth”[C]//ACM Chi’95 Conference on Human Factors in Computing Systems,Volume 1 of Papers:Using the Information of Others.1995:210- 217.
[18] Breese J S,Heckerman D,Kadie C.Empirical analysis of predictive algorithms for collaborative filtering[J].Uncertainty in Artificial Intelligence,1998,98(7):43- 52.
[19] Herlocker J L,Konstan J A,Borchers A,et al.An algorithmic framework for performing collaborative filtering[C]//SIGIR’99: Proceedings of the,International ACM SIGIR Conference on Research and Development in Information Retrieval,August 15- 19,1999,Berkeley,Ca,Usa.DBLP,1999:230- 237.
[20] Balabanovic M,Shoham Y.Fab:content-based,collaborative recommendation[J].Communications of the Acm,1997,40(3):66- 72.