吳雄峰,賈 年
(西華大學(xué)無線電管理技術(shù)研究中心,成都 610039)
?
基于用戶特征和時間效應(yīng)的協(xié)同過濾算法
吳雄峰,賈年
(西華大學(xué)無線電管理技術(shù)研究中心,成都610039)
摘要:隨著互聯(lián)網(wǎng)和電子商務(wù)的高速發(fā)展,越來越多的電子商務(wù)網(wǎng)站和應(yīng)用通過推薦技術(shù)給用戶進行個性化推薦。協(xié)同過濾算法作為推薦算法的一種,已被各大公司廣泛應(yīng)用,已成為電子商務(wù)推薦系統(tǒng)中使用最為廣泛、最為成功的一類推薦算法。稀疏性問題是傳統(tǒng)的協(xié)同過濾算法的一個明顯缺點。為解決稀疏性問題,提出基于用戶特征和時間效應(yīng)的協(xié)同過濾算法:在計算相似度這一步驟上引入時間信息和用戶信息這兩大影響因子,改進用戶相似度的計算,減小稀疏性問題,進而提高推薦質(zhì)量。
關(guān)鍵詞:協(xié)同過濾;屬性特征;時間效應(yīng)
隨著互聯(lián)網(wǎng)和信息技術(shù)的快速發(fā)展,網(wǎng)絡(luò)信息不斷膨脹,“信息過載”問題越來越嚴重。用戶想在信息的海洋中找到有用信息,尤為困難。個性化推薦系統(tǒng)在這種情況下產(chǎn)生,并得到快速應(yīng)用。它為不同用戶提供不同的服務(wù),來滿足不同需求。其中,協(xié)同過濾技術(shù)是迄今為止最成功的、應(yīng)用最廣泛的個性化推薦技術(shù)之一[1]。其核心思想是基于用戶對項目的評分來計算用戶間的相似性,通過相似性尋找到與目標用戶興趣最相似的用戶集合,然后找到這個集合中用戶喜歡的、并且目標用戶沒有的物品,并推薦給目標用戶。
傳統(tǒng)的協(xié)同過濾算法在計算用戶相似性上存在以下問題:(1)沒有考慮時間信息對用戶興趣的影響。用戶的興趣是隨著時間的變化而不斷發(fā)生變化的,比如用戶小時候喜歡看動畫片,長大了喜歡看文藝片等。所以,如果我們要準確預(yù)測用戶現(xiàn)在的興趣,就應(yīng)該考慮時間這個因素,因為用戶最近的行為最能體現(xiàn)他現(xiàn)在的興趣。(2)忽略了用戶的個體信息特征。例如兩個從事IT行業(yè)男性用戶他們都喜歡看科技類文章,而一個從事經(jīng)濟行業(yè)的男性用戶喜歡看經(jīng)濟類文章。由此可見,用戶屬性相似的用戶,其興趣有一定的相似度,反之亦然。因此,用戶屬性也可作為影響用戶興趣的一個因素。
通過上述分析,本文提出基于用戶特征和時間效應(yīng)的協(xié)同過濾算法。主要是在傳統(tǒng)協(xié)同過濾算法中計算相似度這一步驟上引入時間信息和用戶信息這兩大影響因子,改進用戶相似度的計算,減小稀疏性問題,進而提高推薦質(zhì)量。
協(xié)同過濾算法的原理是通過分析用戶歷史行為數(shù)據(jù),計算用戶間的相似性,通過相似性尋找到與目標用戶興趣最相似的用戶集合,然后找到這個集合中用戶喜歡的、并且目標用戶沒有的物品,并推薦給目標用戶。其推薦過程可分為三個階段:建立用戶模型、選擇相似鄰居、產(chǎn)生推薦[2]。
1.1建立用戶模型
收集每個用戶的評分記錄,建立用戶模型。通常用一個m×n的矩陣R表示,如表一所示。其中,用戶數(shù)記作m,項目數(shù)記作n,表示第i個用戶對第j個項的評價值記作rij,rij在0到5之間且rij為整數(shù)。評分值的大小與興趣度成正比,分值越大,興趣度越高。
1.2選擇相似鄰居
這里主要是計算用戶間的相似度,相似度越高,表明與目標用戶越相似。通過相似度的計算,選擇出與目標用戶最相似的用戶集。計算用戶相似度方法有三種:Pearson相關(guān)性相似度和修正的余弦相似度以及余弦相似度[3]。本文計算相似度采用第一種方法:Pearson相關(guān)性相似度。其計算公式為:
式中,u表示目標用戶,v表示相似用戶,sim(u,v)記作u和v的相似度,ru,i記作u對項目i的評分,rv,i記作v對項目i的評分,ru和rv分別記作u和v對項目的平均評分,Iuv記作u和v共同評價的項目集合。
1.3產(chǎn)生推薦
通過上述計算得到相似鄰居集后,通過式(2)計算預(yù)測目標用戶對未評價項目的評分值,然后根據(jù)評分的最高TOP-N項推薦給目標用戶進行推薦。
其中,目標用戶u對任意項目i的預(yù)測評分記作Pu,i。
2.1時間效應(yīng)
時間是一種重要的信息,對用戶興趣有著深入的影響。用戶在不同的時間段其興趣不是固定不變的。例如一位程序員隨著工作時間的增加,逐漸從閱讀入門書籍過渡到閱讀專業(yè)書籍。通常我們認為用戶最近訪問的項目為其感興趣的項目,要想準確預(yù)測用戶現(xiàn)在的興趣,就應(yīng)該關(guān)注用戶最近的行為。故本文通過引入時間因子,改進相似度的計算,優(yōu)化最近鄰的尋找過程。此時間因子是按時間衰減的函數(shù),其函數(shù)可表示為:
其中tn表示當前時間,ti表示項目i的評價時刻,t0為最早的評價時刻。m為權(quán)重系數(shù)。該函數(shù)在突出最近評分重要性的同事削弱了過去評分的重要度,有效反映了用戶的興趣變化。
2.2基于用戶屬性的特征向量
在一些網(wǎng)站、軟件注冊中,都會要求用戶填寫基本信息,例如昵稱,性別、職業(yè)、年齡等。像這些帶有某些相同屬性的人可能會有相同的興趣愛好。本文通過引入用戶特征這一因子,考慮用戶的性別、年齡,構(gòu)建用戶特征向量,改進尋找最近鄰過程,以提高推薦質(zhì)量。
(1)年齡因素。每個年齡段的用戶都有不一樣的興趣愛好。例如老年人喜歡健身,青少年喜歡上網(wǎng)。年齡因素也是影響推薦質(zhì)量的一個因素。其相似性的度量公式為:
式中目標用戶記作u,相似用戶記作v,Au記作U的年齡,Av記作V的年齡,本文認為年齡差距在10歲以內(nèi)的用戶,他們的興趣是相近的。
(2)性別因素。通常認為男性用戶和女性用戶的興趣是不相同的,故需要計算性別影響的相似度。我們用Su表示目標用戶u的性別,用Sv表示相似用戶V的性別,S(u,v)表示他們的相似性,則其計算公式可以表示為:
用戶U和V在用戶特征向量上的相似度可以通過如下公式來計算:
式中,λ表示修正系數(shù)。通常λ的值會根據(jù)實驗結(jié)果的值來動態(tài)調(diào)整。
2.3算法改進流程
本文通過對上述影響因子分析并引入,對傳統(tǒng)算法進行改進,來提高推薦質(zhì)量。算法的改進流程如下:
(1)引入時間效應(yīng),先對用戶原始矩陣R按評價時間來進行修正,獲得新的評價矩陣R',其計算方法如下:
(2)在矩陣R'上,通過Pearson相關(guān)系數(shù)法計算目標和候選用戶的原始相似度:
(3)引入用戶特征,在式(8)求出的相似度基礎(chǔ)上,構(gòu)造新的用戶綜合相似度,再根據(jù)新的相似度來獲得最近鄰居集。新的相似度計算公式為:
(4)用新的相似度,通過如下公式產(chǎn)生推薦:
3.1實驗數(shù)據(jù)的選取和評價標準
本次實驗所用的數(shù)據(jù)集為GroupLens研究組提供的Movielens數(shù)據(jù)集,該數(shù)據(jù)集包含943位用戶的10萬條評分記錄和1682部電影,每個用戶至少對20部電影進行了評分[4]。評分區(qū)間設(shè)為1到5之間的整數(shù),評分值越高,表示用戶對該電影的偏愛程度越高。本文隨機選取80%的評分數(shù)據(jù)作為訓(xùn)練集,20%作為測試集。
本文采用平均絕對誤差(Mean Absolute Error,MAE)作為此次試驗的評價系統(tǒng)推薦準確度的度量標準。MAE的值與推薦質(zhì)量成反比,其值越高,推薦的質(zhì)量越低。計算公式如下:
式中,Pu,i表示預(yù)測目標用戶的評價集合,Ru,i表示對應(yīng)的實際評價目標用戶的集合。
3.2實驗結(jié)果及分析
將改進后的算法結(jié)合傳統(tǒng)算法進行反復(fù)試驗確定計算公式中相關(guān)系數(shù)的值,式(3)中權(quán)重系數(shù)m取0.4,時間間隔T取15,式(6)中λ取0.3,式(9)中的α取0.8。通過確定的系數(shù)值,將改進后的算法結(jié)果與傳統(tǒng)結(jié)果相比較,從圖1中可以看出,改進后的算法在相關(guān)公式中系數(shù)合適的情況下,其推薦精度有一定程度的提高。
圖1
實驗表明,本文提出的基于用戶特征和時間效應(yīng)的協(xié)同過濾算法,在引入了時間效應(yīng)和用戶特征后,能較好的改進用戶相似度,有效地解決稀疏性問題,從而提高尋找最近鄰的準確度。雖然本文在稀疏性問題中進行了優(yōu)化,但還有像系統(tǒng)延伸性問題、新用戶問題等,有待繼續(xù)深入研究。
參考文獻:
[1]焦成斌.協(xié)同過濾算法在電子商務(wù)推薦系統(tǒng)的研究[D].鄭州大學(xué),2011.
[2]鄧娟,陳西曲.基于用戶興趣變化的協(xié)同過濾推薦算法[J].武漢工業(yè)學(xué)院學(xué)報,2013,32(4): 48-51.
[3]周張?zhí)m.基于協(xié)同過濾的個性化推薦[D],華中師范大學(xué),2009.
[4]王小亮.基于協(xié)同過濾的個性化推薦算法的優(yōu)化與應(yīng)用[D],浙江工商大學(xué)2010.
賈年(1973-),男,四川眉山人,副教授,碩士生導(dǎo)師,研究方向為智能信息檢索、數(shù)字圖像處理
A Collaborative Fltering Algorithm Based on User Characteristics and the Effects of Time
WU Xiong-feng,JIA Nian
(Center for Radio Administration and Technology Development,Xinhua University,Chengdu 610039)
Abstract:With the rapid development of the internet and ecommerce, more and more ecommerce sites and applications offer users personalized recommendations by recommended technology. As a recommendation algorithm, collaborative filtering algorithm had been widely used in major companies. It will be inaccurate or of low quality to recommend products to users merely by their comments on the products. Sparse question is an obvious drawback of the traditional collaborative filtering algorithms. To solve the problem of parity, proposes a collaborative filtering algorithm based on user’s characteristics and time effects. Introduces this step in the calculation of the similarity of the time information and user information these two influencing factors, improves user computing similarity, reduces parity problems, thus improves the quality of recommendation.
Keywords:Collaborative Filtering; Property Characteristics; Time Effect
收稿日期:2016-03-24修稿日期:2016-03-30
作者簡介:吳雄峰(1991-),男,安徽安慶,在讀碩士研究生,研究方向為嵌入式系統(tǒng)及其應(yīng)用
文章編號:1007-1423(2016)10-0021-04
DOI:10.3969/j.issn.1007-1423.2016.10.005
基金項目:國家科技支撐計劃(No.2011BAH26B03)、西華大學(xué)創(chuàng)新基金(No.ycjj2015189)