李道國1,何狄江,李連杰
(1.杭州電子科技大學信息工程學院;2.杭州電子科技大學管理學院,浙江杭州310018)
基于用戶興趣變化的協同過濾推薦算法
李道國1,何狄江2,李連杰2
(1.杭州電子科技大學信息工程學院;2.杭州電子科技大學管理學院,浙江杭州310018)
文章將用戶興趣設定為變量,重新定義了相似度以及評分預測的計算方法,在一定程度上提高了經典協同過濾推薦算法的精確度;提出結合用戶評分時間以及用戶訪問次數的時間權重模型來描述用戶興趣的變化,使得相似度以及評分預測的計算結果更加合理。實驗結果表明,新算法比傳統基于項目的協同過濾算法降低了約8%的平均絕對誤差、提高了約15%的準確率以及18%的召回率,在一定程度上改善了推薦系統的推薦效果。該算法僅在M ovieLens數據集上進行實驗測試,還需要在其他數據集上進行檢驗。
協同過濾;用戶評分時間;用戶訪問次數;相似度;評分預測
互聯網的迅猛發展把人們帶入了一個新的信息時代,人們周圍的數據量正在以指數級的速度增長,怎樣能在龐大的數據中快速、準確地找到所需的信息成為難題[1-2]。在這種背景下,個性化推薦應運而生。協同過濾(Collaborative Filtering,簡稱CF)是其中應用最廣泛的推薦算法,其理論基礎是人們的從眾心理。雖然CF推薦算法在很多方面表現出了獨特的優勢所在,但也存在一些局限性,例如用戶興趣不是一成不變的。由于所處的環境、年齡等多種因素的影響,每個人的興趣喜好在發生著變化。而作為幫助用戶過濾信息的推薦系統就需要時刻關注用戶興趣的變化才能為用戶提供高質量的推薦服務,才能夠在飛速發展的互聯網時代立足[3]。但是這些因素很難用科學的計算方法來實現,傳統的CF推薦算法假定用戶評分時間并不影響相似度的度量,但是實際上,不斷變化的用戶興趣卻在影響著系統推薦的質量。
針對上述問題,本文提出了一種基于用戶興趣變化的協同過濾推薦算法,該算法將用戶興趣隨時間的變化情況考慮在內,并通過改善相似度及預測評分的計算方式,來緩解用戶興趣變化對系統推薦結果的影響,進而達到提高推薦精度的目的。
用戶興趣的準確獲取是推薦系統十分重要的研究內容。在初期協同過濾推薦系統運行中,稀疏性和冷啟動問題對系統的影響比較大。隨著用戶對系統使用時間的推移,其興趣必然也會發生變化,這便增加了系統準確獲得用戶興趣偏好的難度,只有解決該問題才能夠將用戶真正感興趣的項目推薦給用戶。在協同過濾推薦算法中,用戶之間相似度的計算結果直接影響著系統的推薦質量。傳統相似度的計算方法主要有三種[4],但是這三種方法都沒有將評分的時間考慮在內,認為評分時間不影響用戶或者項目之間相似度的計算。雖然剛開始對系統的影響不大,但是隨著用戶使用系統時間的不斷增加,用戶的興趣可能會發生很大的改變,此時再使用傳統的方法會使得計算出的相似度出現不準確的結果。另外,在計算預測評分時[5],僅僅通過相似度的大小來區分每個評分的重要程度,同樣也沒有將用戶評分時間的重要性加以區分,造成預測評分出現不準確,降低了推薦結果的精度。
因此本文提出了基于艾賓浩斯曲線,通過引入用戶評分時間及用戶訪問次數對用戶評分建立新的時間權重模型,進而改進傳統協同過濾推薦算法中因用戶興趣變化所導致的推薦系統推薦準確性降低的問題。
(一)艾賓浩斯遺忘曲線
19世紀著名的德國心理學家艾賓浩斯(Hermann Ebbinghaus)提出了艾賓浩斯遺忘曲線[6],如圖1所示。他通過實驗發現,人在學習之后便會立即開始遺忘,并且遺忘的速度是不同的,剛開始遺忘的速度最快,急劇下降,之后便開始逐漸的緩慢,直到趨于穩定,隨后遺忘停止。

圖1 艾賓特斯遺忘曲線
用戶興趣的變化符合艾賓特斯遺忘曲線,因此遵循以該理論為基礎的權值計算原則,在傳統基于項目的協同過濾推薦算法的基礎上引入用戶評分時間以及用戶訪問次數的權值模型來描述用戶的興趣隨時間的變化。
(二)基于艾賓特斯遺忘曲線的權重定義

綜上所述,新的時間權重模型表示為:

其中n為項目的總數。新的權重模型反映了用戶的長期興趣偏好的同時又準確地反映了用戶興趣的變化。
(三)改進后算法的主要步驟
輸入:目標用戶u訪問過的項目集合Iu。
輸出:目標用戶u的TOP-N項目推薦列表。
Step1:對目標用戶訪問過的項目集合Iu中的項目i,根據公式(1)和(2)計算的值。
Step2:根據公式(3)計算項目i(i∈Iu)與其他項目的相似度,根據計算結果確定項目i的最近鄰集合Ki,將所有Ki中的數據合并為集合Z,Z=∑Ki。

Step3:統計項目集合Iu和集合Z中重合的項目,并把這些項目從Z中刪除,最終得到目標用戶u的候選推薦集合Zu,Zu=Z-Iu。

Step5:將Step4中根據計算出的項目預測評分,依據降序從大到小進行排列,選擇排在最前面的N個項目推薦給目標用戶u。
(一)實驗數據與環境
實驗數據采用Minnesota大學GroupLens研究小組創建的MoieLens數據集中的100 K的數據集進行實驗。該數據集中記錄了總共有943個用戶對1 682部電影的1×105條評分。電影的評分分值在[0-5]之間不等,用戶對電影的喜愛程度隨著評分分值的增加而遞增[7]。數據集中的數據按照4∶1的比例劃分為訓練集和測試集[8]。
實驗環境是Intel(R)Core(TM)i3-2310M2.10GHz CPU,內存2GB,Microsoft Windows7操作系統,算法使用Matlab語言編寫來實現。
(二)檢驗指標
1.平均絕對誤差(MAE)。MAE是推薦系統中最常用也是最簡單的一種性能評價標準,它通過計算出所有的預測評分與實際評分之間的偏差來衡量算法的優劣[3]。MAE值的計算如公式(5)所示:

預測評分為P(u,i)(表示用戶u對電影i的預測評分),用戶實際評分Ru,i(表示用戶u對電影i的真實評分),n表示Pu,i或者 Ru,i的數量,MAE值越小說明該算法就越精確。MAE值的計算如公式所示。
2.準確率(precision)。推薦的準確率就是在N個推薦給用戶的項目中,同時出現在測試集中的概率。計算如公式(6)所示:

3.召回率(recall)。對于目標用戶的推薦召回率則是測試集中目標用戶已經選的項目中,出現在該用戶的推薦集中的概率,計算如公式(7)所示:

其中 Ttest表示在測試數據集中項目的數量,Ttop-N表示系統推薦給用戶的N個項目。準確率越高說明該算法的效果越好,同樣,召回率越高說明算法的效果越好。
(三)實驗分析
實驗一:根據最近鄰個數的不同,MAE值的變化情況
最近鄰個數分別取10、20、30、40、50(實驗二、三取值相同),利用公式(5),計算出本文提出的新算法以及傳統基于項目的CF推薦算法MAE值隨最近鄰個數的不同的變化情況如圖2所示:

圖2 最近鄰集合取值對MAE值的影響
從圖2看出,引入用戶評分時間以及用戶訪問次數的CF推薦算法在最近鄰個數取值范圍內,MAE值均小于傳統的CF推薦算法。MAE值平均降低8%。
實驗二:根據最近鄰個數的不同,Precision的變化情況
利用公式(6),計算出本文提出的新的算法與傳統基于項目的CF推薦算法Precision值隨不同的最近鄰個數的變化情況,如圖3所示:

圖3 最近鄰取值對Precision的影響
從圖3可以看出,改進后的算法在最近鄰個數取值為[10,50]時,Precision的值均大于傳統基于項目的CF算法。Precision平均提高 15%。從圖 3還可以看出Precision的值波動不大,其值不與最近鄰個數的取值相關。
實驗三:根據最近鄰個數的不同,Recall的變化情況
利用公式(7)本文提出的新的算法與傳統基于項目的CF推薦算法的Recall值隨最近鄰個數不同的變化情況如圖4所示:

圖4 最近鄰取值對Recall值的影響
從圖4可以看出,在最近鄰介于10~50之間時,改進的基于項目的CF推薦算法的Recall值均大于傳統基于項目的CF推薦算法。Recall值平均提高18%。從圖4還可以看出Recall的值不隨最近鄰取值的不同而變化,波動不大。
通過以上三組對比實驗結果可知,本文提出的算法在MAE、Precision、Recall三項指標上都有很好的表現性能。這是因為改進后的算法在相似度以及評分預測的計算過程中反映了用戶興趣的變化,在一定程度上有助于提高系統的推薦準確度。
本文針對傳統的基于項目的協同過濾推薦算法中沒有將用戶興趣的變化反應在相似度以及預測評分的計算過程中,提出了一種基于用戶興趣變化的協同過濾推薦算法。新的算法通過結合用戶評分時間以及用戶瀏覽次數建立新的時間權重模型,改善兩個項目相似度以及預測評分的計算。通過實驗一、二、三的結果可知,新的算法能夠在一定程度上緩解用戶興趣隨時間變化的問題,在一定程度上提高了推薦系統的準確性。
[1]羅琦,繆昕杰,魏倩.稀疏數據集協同過濾算法的進一步研究[J].計算機科學,2014(6):264-268.
[2]鄧華平.基于項目聚類和評分的時間加權協同過濾算法[J].計算機應用究,2015(7):1966-1969.
[3]王鵬.基于矩陣分解的推薦系統算法研究[D].北京交通大學,2015.
[4]李紅梅,郝文寧,陳剛.基于改進LSH的協同過濾推薦算法[J].計算機科學,2015,42(10):256-261.
[5]孫輝,馬躍,楊海波,等,2014.一種相似度改進的用戶聚類協同過濾推薦算法[J].小型微型計算機系統(9):1967-1970.
[6]楊崢.基于用戶興趣變化的協同過濾推薦算法研究[D].燕山大學,2015.
[7]劉占兵,肖詩斌,2015.基于用戶興趣模糊聚類的協同過濾算法[J].現代圖書情報技術(11):12-17.
[8]柯良文,王靖,2015.基于用戶特征遷移的協同過濾推薦[J].計算機工程(1):37-43.
(責任編輯:C 校對:L)
F062.5
A
1004-2768(2017)01-0019-03
2016-09-22
李道國(1965-),男,浙江杭州人,杭州電子科技大學信息工程學院教授,研究方向:電子商務、模式識別與人工智能;何狄江(1991-),男,浙江紹興人,杭州電子科技大學管理學院碩士研究生,研究方向:供應鏈管理;李連杰(1991-),女,內蒙古赤峰人,杭州電子科技大學管理學院碩士研究生,研究方向:電子商務。何狄江為通訊作者。