專利名稱:基于評分的協同過濾推薦方法及系統的制作方法
技術領域:
本發明涉及協同過濾推薦技術領域,特別涉及一種基于評分的協同過濾推薦方法及系統。
背景技術:
互聯網技術的迅猛發展把我們帶進了信息爆炸的時代,海量信息的同時呈現,不僅使用戶很難從中發現自已感興趣的內容,而且使得大量少為人知的信息成為網絡中的 “暗信息”,無法被一般用戶獲取。推薦系統通過建立用戶與項目(例如產品、電影、音樂、 節目等)之間的二元關系,利用用戶歷史選擇信息或相似性關系挖掘用戶潛在的興趣愛好,進而進行推薦。
目前已存在許多經典推薦系統,協同過濾推薦系統是最早被提出并得到廣泛應用的推薦系統。其核心思想就是基于評分相似的最近鄰居的評分數據向目標用戶產生推薦。 由于最近鄰居對項目的評分與目標用戶非常相似,因此目標用戶對未評分項目的評分可以通過最近鄰居對該項目評分的加權平均值逼近。Typestry是最早提出來的基于協同過濾的推薦系統,目標用戶需要指出與自己興趣愛好比較類似的其他用戶。GroupLens是基于用戶評分的自動化協同過濾推薦系統,用于電影和新聞推薦。其他利用協同過濾方法進行推薦的系統還有Amazon, com的書籍推薦系統,Jester的笑話推薦系統等等。
與一般的推薦系統相比,協同過濾推薦系統具有兩大優點一是對推薦對象沒有特殊的要求,能處理音樂、電影等難以進行文本結構化表示的對象;二是具有推薦新信息的能力,可以發現用戶潛在的但自己尚未察覺的興趣偏好。
傳統的協同過濾推薦系統利用不同用戶間共同評分項目計算相似性,主流的相似性計算方法包括余弦相似性方法和相關相似性方法;目標用戶對未評分項目的評分通過相似性較大的鄰居對項目的評分的加權平均值進行預測。可以看出,協同過濾推薦系統的推薦精度取決于用戶間相似性計算的準確度。然而在用戶和項目數量龐大的網絡系統中用戶評分數據極端稀疏情況下,難以找到用戶間共同評分項目,從而導致用戶間相似性計算結果不準確甚至無法計算相似性。協同過濾推薦系統得到了廣泛應用的同時,也面臨著很多問題,例如如何對新用戶進行推薦或如何推薦新產品給用戶即冷啟動問題,評分稀疏性問題,算法可擴展性問題等。另外,傳統的協同過濾推薦算法隨著用戶數量的增多,計算量成線性加大,實時性能越來越差,同時響應速度也越來越慢。發明內容
(一)要解決的技術問題
本發明要解決的技術問題是如何在用戶和項目數量龐大的協同過濾推薦系統中用戶評分數據極端稀疏情況下,解決難以找到用戶間共同評分項而導致無法計算相似性或相似性不準確的問題。
( 二)技術方案
為解決上述技術問題,本發明提供了一種基于評分的協同過濾推薦方法,包括以下步驟Sl 遍歷當前網絡系統中的所有用戶,獲得所有用戶的歷史評分數據;S2:根據所有用戶各自的歷史評分數據的統計特征確定各個用戶之間的相似程度;S3:選擇與當前用戶相似程度最高的k個其它用戶,根據所述k個其它用戶對當前用戶未評分項目的歷史評分數據,來對當前用戶未評分項目進行預測;S4 對每個用戶的預測結果進行篩選,產生對每個用戶的推薦項目。優選地,步驟S2中各個用戶之間的相似程度通過下列公式進行計算,
權利要求
1.一種基于評分的協同過濾推薦方法,其特征在于,包括以下步驟S1遍歷當前網絡系統中的所有用戶,獲得所有用戶的歷史評分數據;S2根據所有用戶各自的歷史評分數據的統計特征確定各個用戶之間的相似程度;S3選擇與當前用戶相似程度最高的k個其它用戶,根據所述k個其它用戶對當前用戶未評分項目的歷史評分數據,來對當前用戶未評分項目進行預測;S4對每個用戶的預測結果進行篩選,產生對每個用戶的推薦項目。
2.如權利要求1所述的方法,其特征在于,步驟S2中各個用戶之間的相似程度通過下列公式進行計算,
3.如權利要求2所述的方法,其特征在于,步驟S3中通過下式來對當前用戶未評分項目進行預測,
4.如權利要求1 3中任一項所述的方法,其特征在于,步驟S4中對每個用戶的預測結果進行篩選時,通過將當前用戶的未評分項目的預測分數與當前用戶的歷史評分數據的均值進行比較,若大于均值,則作為推薦項目。
5.一種基于評分的協同過濾推薦系統,其特征在于,包括歷史數據統計模塊,用于遍歷當前網絡系統中的所有用戶,獲得所有用戶的歷史評分數據;相似程度計算模塊,用于根據所有用戶各自的歷史評分數據的統計特征確定各個用戶之間的相似程度;預測模塊,用于選擇與當前用戶相似程度最高的k個其它用戶,根據所述k個其它用戶對當前用戶未評分項目的歷史評分數據,來對當前用戶未評分項目進行預測;篩選模塊,用于對每個用戶的預測結果進行篩選,產生對每個用戶的推薦項目。
6.如權利要求5所述的系統,其特征在于,相似程度計算模塊中各個用戶之間的相似程度通過下列公式進行計算,
7.如權利要求6所述的系統,其特征在于,預測模塊中通過下式對當前用戶未評分項目進行預測,Pu,, =K+ \~Γ Y,sim(u,x)(rxl -rx)xeS(u)其中,Pu, i為當前用戶U的未評分項目i的預測分數,S(U)為k個其它用戶中對當前用戶U的未評分項目i進行過評分的用戶集合,ru為用戶X對當前用戶u的未評分項目i 的評分,用戶χ為S(U)中的某個元素。
8.如權利要求5 7中任一項所述的系統,其特征在于,篩選模塊中對每個用戶的預測結果進行篩選時,通過將當前用戶的未評分項目的預測分數與當前用戶的歷史評分數據的均值進行比較,若大于均值,則作為推薦項目。
全文摘要
本發明公開了一種基于評分的協同過濾推薦方法及系統,涉及協同過濾推薦技術領域,本發明利用用戶歷史評分數據的統計特征計算各個用戶之間的相似程度,通過與當前用戶相似程度較高的其他用戶來計算當前用戶未評價過的項目,實現了在用戶和項目數量龐大的協同過濾推薦系統中用戶評分數據極端稀疏情況下,解決了難以找到用戶間共同評分項而導致無法計算相似性或相似性不準確的問題,能夠實現準確且快速的項目推薦。
文檔編號G06F17/30GK102495864SQ201110382078
公開日2012年6月13日 申請日期2011年11月25日 優先權日2011年11月25日
發明者曹軍威, 謝峰, 陳震 申請人:清華大學