《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 基于用戶相似度遷移的協(xié)同過濾推薦算法
基于用戶相似度遷移的協(xié)同過濾推薦算法
2014年微型機與應(yīng)用第14期
柯良文,王 靖
華僑大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,福建 廈門
摘要: 數(shù)據(jù)稀疏性問題是傳統(tǒng)的協(xié)同過濾算法主要的瓶頸之一。遷移學(xué)習(xí)利用輔助領(lǐng)域的用戶評分信息,有效地緩解了目標(biāo)領(lǐng)域的稀疏性問題?,F(xiàn)有的遷移學(xué)習(xí)推薦算法中,普遍存在領(lǐng)域間的用戶需要一致、模型平衡參數(shù)較多等限制。針對這些局限性,提出了一種用戶相似度遷移的模型,利用輔助領(lǐng)域的用戶相似度幫助目標(biāo)領(lǐng)域用戶相似度的學(xué)習(xí)。此外,通過一種用戶特征子空間的距離來度量模型的平衡參數(shù),使模型更加具有智能性。實驗結(jié)果表明,該模型與其他協(xié)同過濾算法相比較能夠更有效地緩解數(shù)據(jù)稀疏性問題
Abstract:
Key words :

  摘  要數(shù)據(jù)稀疏性問題是傳統(tǒng)的協(xié)同過濾算法主要的瓶頸之一。遷移學(xué)習(xí)利用輔助領(lǐng)域的用戶評分信息,有效地緩解了目標(biāo)領(lǐng)域的稀疏性問題?,F(xiàn)有的遷移學(xué)習(xí)推薦算法中,普遍存在領(lǐng)域間的用戶需要一致、模型平衡參數(shù)較多等限制。針對這些局限性,提出了一種用戶相似度遷移的模型,利用輔助領(lǐng)域的用戶相似度幫助目標(biāo)領(lǐng)域用戶相似度的學(xué)習(xí)。此外,通過一種用戶特征子空間的距離來度量模型的平衡參數(shù),使模型更加具有智能性。實驗結(jié)果表明,該模型與其他協(xié)同過濾算法相比較能夠更有效地緩解數(shù)據(jù)稀疏性問題。

  關(guān)鍵詞: 數(shù)據(jù)稀疏性;協(xié)同過濾;遷移學(xué)習(xí);用戶相似度;特征子空間

  協(xié)同過濾技術(shù)是推薦系統(tǒng)中應(yīng)用最為廣泛和成功的推薦技術(shù)之一[1],其基本思想是:利用整個用戶集對項目集的歷史評分?jǐn)?shù)據(jù)來預(yù)測目標(biāo)用戶對其未評分的項目集的偏好程度,從而選擇若干個預(yù)測后偏好程度最高的項目作為推薦結(jié)果[2]。

  傳統(tǒng)的協(xié)同過濾算法最為關(guān)鍵的步驟是度量用戶之間或項目之間的相似度。隨著系統(tǒng)規(guī)模的不斷擴大,用戶對項目評分?jǐn)?shù)據(jù)極端稀疏時,利用傳統(tǒng)的方法難以準(zhǔn)確地度量相似性,導(dǎo)致了推薦系統(tǒng)的推薦質(zhì)量降低。為了緩解稀疏性的問題,多領(lǐng)域數(shù)據(jù)的遷移學(xué)習(xí)已受到了學(xué)者們的高度關(guān)注。目前,研究者已提出了多種基于遷移學(xué)習(xí)的推薦算法,如SINGH等人提出了一種聯(lián)合矩陣分解模型CMF(Collective Matrix Factorization)[3],Li Bin等人提出了一種評分矩陣生成模型RMGM(Rating Matrix Generative Model)[4], Pan Weike等人則提出了一種坐標(biāo)系統(tǒng)遷移模型CST(Coordinate System Transfer)[5]。這些算法均通過對輔助領(lǐng)域的知識進行遷移來幫助提高目標(biāo)領(lǐng)域的推薦精度。

  然而,在現(xiàn)有的遷移學(xué)習(xí)推薦算法中,如CMF模型和CST模型,需要輔助領(lǐng)域與目標(biāo)領(lǐng)域的用戶空間一致,并且模型中需要控制較多的參數(shù),受到了一定的限制。針對這些局限,本文提出一種用戶相似度遷移的協(xié)同過濾模型UST(User Similarity Transfer),對輔助領(lǐng)域和目標(biāo)領(lǐng)域共同用戶的相似度進行遷移。為了能夠充分利用輔助領(lǐng)域的用戶評分信息,本文的模型在輔助領(lǐng)域里采用先填充后計算用戶相似度的策略。另一方面,通過一種用戶特征子空間的距離來度量模型中的平衡參數(shù),一定程度上消除了人為調(diào)控的局限性。

  1 相關(guān)定義

  首先給出本文中所使用的符號及含義。在輔助領(lǐng)域里,定義一個p×q的矩陣RA來表示p個用戶對q個項目的評分;在目標(biāo)領(lǐng)域里,定義一個m×n的評分矩陣RT來表示m個用戶對n個項目的評分。評分矩陣的項ri,j表示用戶ui對項目vj的偏好程度,分值越大表示用戶對項目的偏好程度越高。為了方便描述評分矩陣的項是否被評分,在輔助領(lǐng)域和目標(biāo)領(lǐng)域里分別定義一個只有0和1值的標(biāo)記矩陣WA和WT,其中0表示該項未被評分,1表示該項已被評分。

  2 基于用戶的協(xié)同過濾算法

  基于用戶的協(xié)同過濾算法根據(jù)其他用戶的觀點產(chǎn)生目標(biāo)用戶的推薦列表。首先利用已有的評分?jǐn)?shù)據(jù)計算目標(biāo)用戶與其他用戶的相似度,其次通過目標(biāo)用戶的最近鄰居對某個項目的評分來預(yù)測目標(biāo)用戶對該項目的評分[6]。

  2.1 相似度的計算方法

  相似度的計算是基于用戶的協(xié)同過濾算法中最為關(guān)鍵的一步。傳統(tǒng)的相似度度量方法有余弦相似度、修正的余弦相似度和pearson相關(guān)系數(shù)[2],本文采用實踐中實現(xiàn)效果較好的pearson相關(guān)系數(shù)來度量[7]。設(shè)I是ui和uj共同評分的項目集合,則ui和uj的pearson相似度計算方法如下:

  {BRB91AULFQ1BQ5G5E2%X0I.png

  其中,ri、rj分別表示ui、uj對它們共同評分項目的平均評分。

  2.2 產(chǎn)生推薦結(jié)果

  根據(jù)目標(biāo)用戶ui的最近鄰居集合C對項目的評分信息預(yù)測ui對未評分項目的評分,選擇預(yù)測評分最高的若干個項目作為推薦結(jié)果反饋給目標(biāo)用戶。目標(biāo)用戶ui對未評分項目vk的預(yù)測評分,可以根據(jù)ui的最近鄰居集合C對vk評分的平均加權(quán)得到[8],計算方法如下:

  2.png

  其中,ri、rj分別表示用戶ui、uj對其已知評分項目的平均評分。

  3 基于用戶相似度遷移的推薦模型

  3.1 UST模型介紹

  現(xiàn)實世界中,輔助領(lǐng)域和目標(biāo)領(lǐng)域往往只有部分共同的用戶或項目,導(dǎo)致大部分現(xiàn)有的遷移學(xué)習(xí)算法在實際應(yīng)用中具有一定的局限性。為了能夠提高傳統(tǒng)協(xié)同過濾算法用戶相似度計算的準(zhǔn)確性,本文從相似度遷移的角度出發(fā),建立用戶相似度遷移模型,以更好地利用輔助領(lǐng)域的評分信息幫助目標(biāo)領(lǐng)域用戶相似度的學(xué)習(xí)。

  定義Asim為輔助領(lǐng)域計算得到的用戶相似度矩陣,Tsim為目標(biāo)領(lǐng)域計算得到的用戶相似度矩陣,通過加權(quán)的方法建立如下UST模型:

  Usim=?琢Tsim+(1-?琢)Asim,0<?琢≤1(3)

  其中,?琢為平衡參數(shù),用來控制輔助領(lǐng)域的用戶相似度對目標(biāo)領(lǐng)域用戶相似度學(xué)習(xí)的遷移程度。

  在UST模型中,首先利用輔助領(lǐng)域用戶評分?jǐn)?shù)據(jù)計算用戶之間的相似度,然后通過式(3)計算目標(biāo)領(lǐng)域的用戶相似度矩陣,最后對目標(biāo)領(lǐng)域未評分的項目進行預(yù)測。

  3.2 輔助領(lǐng)域用戶相似度的學(xué)習(xí)

  為了利用輔助領(lǐng)域的評分?jǐn)?shù)據(jù)來計算用戶相似度矩陣,UST模型首先通過一種填充的方法對輔助領(lǐng)域的缺失評分矩陣進行填充,然后對填充后的矩陣計算用戶間的相似度。這樣做的好處是能夠更有效地利用輔助領(lǐng)域已知評分的信息來計算用戶的相似性度。

  矩陣分解MF(Matrix Factorization)技術(shù)是一種有效的填充方式,它希望通過找到一個低秩的矩陣來逼近RA[9]。記填充后的低秩矩陣為ZA,則通過矩陣分解的方法可以將ZA近似分解成如下形式:

  45678.jpg

  進一步地,將輔助領(lǐng)域填充后的矩陣ZA通過式(1)計算出輔助領(lǐng)域的用戶相似度矩陣Asim。

  3.3 目標(biāo)領(lǐng)域用戶相似度的學(xué)習(xí)

  在UST模型中,α的大小受到目標(biāo)領(lǐng)域和輔助領(lǐng)域相關(guān)性的影響。為了度量α的值,采用一種目標(biāo)領(lǐng)域和輔助領(lǐng)域的用戶特征子空間距離來估計。設(shè)正交矩陣UT和UA分別是目標(biāo)領(lǐng)域和輔助領(lǐng)域的用戶特征矩陣,則UT和UA的子空間距離可由下式計算:

  9.png

  其中,?滓 min(Z)表示Z的最小奇異值。為了獲得輔助領(lǐng)域和目標(biāo)領(lǐng)域的用戶特征子空間UT和UA,可以通過矩陣的QR分解將U分解成一個列正交的矩陣Q和上三角矩陣T[11]:

  U=Q×T(10)

  確定了平衡參數(shù)α,根據(jù)模型式(3)計算出目標(biāo)領(lǐng)域最終的用戶相似度矩陣,最后通過式(2)為目標(biāo)用戶產(chǎn)生推薦結(jié)果。

  4 實驗結(jié)果和分析

  為了驗證UST-CF算法的有效性,選取了以下幾種經(jīng)典的非遷移學(xué)習(xí)協(xié)同過濾算法和遷移學(xué)習(xí)的協(xié)同過濾算法做比較:基于pearson相關(guān)相似性的協(xié)同過濾算法(PCC)[6];基于傳統(tǒng)矩陣分解的單個目標(biāo)領(lǐng)域協(xié)同過濾算法(RMF)[10],即本文式(6)的模型;聯(lián)合矩陣分解的協(xié)同過濾算法(CMF)。為了驗證輔助領(lǐng)域評分矩陣填充后是否有利于提高目標(biāo)領(lǐng)域用戶相似度計算的準(zhǔn)確性,本文還對輔助領(lǐng)域未填充的UST-unImpute算法進行比較。

  4.1 實驗數(shù)據(jù)集

  采用MovieLens(http://www. gouplens.org/node/73)站點的電影評分?jǐn)?shù)據(jù)集來對比各種算法的效果。MovieLens數(shù)據(jù)集包括71 567個用戶對10 681個電影項目的約107條評分?jǐn)?shù)據(jù),其評分形式為{0.5,1.0,1.5,…,5.0}。為了度量整個數(shù)據(jù)集的稀疏性,引入數(shù)據(jù)稀疏度的概念,定義為用戶已評分?jǐn)?shù)據(jù)占整個數(shù)據(jù)集的比例,可以得到該數(shù)據(jù)集的稀疏度為107/(71 567×10 681)≈1.31%。

  4.2 評價標(biāo)準(zhǔn)

  推薦系統(tǒng)的質(zhì)量由預(yù)測結(jié)果的精度決定。實驗中,采用兩種廣泛的評價方法:均方根誤差RMSE(Root Mean Square Error)和平均絕對誤差MAE(Mean Absolute Error),具體計算方式如下:

  1112.png

  其中,pi,j、ri,j分別表示預(yù)測評分值和實際評分值,TE表示訓(xùn)練集的下標(biāo)集合。

  4.3 參數(shù)設(shè)定

  對幾種比較算法的參數(shù)做如下設(shè)定:對于基于最近鄰的協(xié)同過濾算法(如PCC、UST-unImpute、UST-CF),選擇的最近鄰居數(shù)為{5~300};對于RMF模型和CMF模型,選擇的特征維度為{4,5,…,10},正則項參數(shù)為{0.1,1,

  5,10},平衡參數(shù)為{0.1,0.5,0.9}。

  4.4 實驗方案和結(jié)果分析

  根據(jù)目標(biāo)和輔助領(lǐng)域的用戶集相同且評分形式一致、用戶集相同但評分形式不一致、用戶集不相同但評分形式一致這三種情形設(shè)計3個實驗方案,每種方案的輔助領(lǐng)域的稀疏度均固定為5%。

  方案1 用戶集相同且評分形式一致

  從數(shù)據(jù)集中隨機選取1 000個用戶對2 000個電影的評分?jǐn)?shù)據(jù),將其中1 000部電影作為輔助領(lǐng)域的項目,剩余的1 000部電影作為目標(biāo)領(lǐng)域的項目。目標(biāo)領(lǐng)域內(nèi)每個用戶至少評價過25部以上的電影。進一步地劃分目標(biāo)領(lǐng)域的訓(xùn)練集和測試集,其中訓(xùn)練集按照不同的數(shù)據(jù)稀疏度劃分為5組,每一組的稀疏度依次為1.0%、1.5%、2.0%、2.5%和3.0%,而每組剩余的評分?jǐn)?shù)據(jù)作為測試集。

  方案2 用戶集相同但評分形式不一致

  從數(shù)據(jù)集中隨機選取1 000個用戶對1 500個電影的評分?jǐn)?shù)據(jù),將其中1 000部電影作為輔助領(lǐng)域的項目,剩余的500部電影作為目標(biāo)領(lǐng)域的項目。在輔助領(lǐng)域里人為地對用戶評分?jǐn)?shù)據(jù)進行如下轉(zhuǎn)化:對評分≧4的項用1來代替,評分<4的項用0來代替。目標(biāo)領(lǐng)域里每個用戶至少評價過20部以上的電影,訓(xùn)練集和測試集的劃分同方案1。

  方案3 用戶集不同但評分形式一致

  從數(shù)據(jù)集中隨機選取2 000部電影,其中1 000部作為輔助領(lǐng)域的項目,剩下的1 000部作為目標(biāo)領(lǐng)域的項目。輔助領(lǐng)域和目標(biāo)領(lǐng)域的用戶數(shù)均固定為1 500個,并且按照兩個領(lǐng)域的共同用戶數(shù)劃分5組實驗。每組實驗的共同用戶數(shù)分別為300、600、900、1 200、1 500。目標(biāo)領(lǐng)域里每個用戶至少評價25部以上電影,并且訓(xùn)練集的稀疏度為1%。

001.jpg


002.jpg

003.jpg

  三個實驗方案的結(jié)果分別如表1~表3所示。從實驗結(jié)果可以看出,與其他協(xié)同過濾算法相比較,本文提出的UST-CF算法均能取得最好的推薦效果。從表1和表2可以看出,目標(biāo)領(lǐng)域的稀疏度越低,UST-CF算法取得的優(yōu)勢越明顯,這說明對評分?jǐn)?shù)據(jù)極其稀疏的情形,UST-CF算法體現(xiàn)了更好的適應(yīng)性,能有效緩解數(shù)據(jù)稀疏的問題。從表3可以看出,即使只有部分的共同用戶,UST-CF算法也能有效利用這部分共同用戶的評分?jǐn)?shù)據(jù),改進目標(biāo)領(lǐng)域測試集的推薦精度。

  本文提出了一種用戶相似度遷移的協(xié)同過濾推薦算法,有效地緩解了目標(biāo)領(lǐng)域數(shù)據(jù)稀疏性的問題。此外,算法采用一種用戶特征子空間的距離來度量UST模型中的平衡參數(shù),大大提高了模型的智能性。本文算法只考慮了對輔助領(lǐng)域的用戶相似度進行遷移,因此如何改進模型,使模型能夠?qū)o助領(lǐng)域的其他知識進行遷移(如用戶的評價特征、項目的屬性等),進一步提高目標(biāo)領(lǐng)域的推薦精度,是一個有意義的研究方向。

  參考文獻

  [1] SU X,KHOSHGOFTAAR T M.A survey of collaborative filtering techniques[J].Advances in Artificial Intelligence,2009(4):1-19.

  [2] 馬宏偉,張光衛(wèi),李鵬.協(xié)同過濾推薦算法綜述[J].小型微型計算機系統(tǒng),2009,30(7):1282-1288.

  [3] SINGH A P,GORDON G J.Relational learning via collectivematrix factorization[C].Proceeding of the 14th ACM SIGKDDInternational Conference on Knowledge Discovery and Data Mining,ACM,2008:650-658.

  [4] Li Bin,Yang Qiang,Xue Xiangyang.Transfer learning for collaborative filtering via a rating-matrix generative model[C].Proceeding of the 26th Annual Internatioal Conference on Machine Learning,ACM,2009:617-624.

  [5] Pan Weike,XIANG E W,LIU N N,et al.Transfer Learningin Collaborative Filtering for Sparsity Reduction[C].AAAI,2010(10):230-235.

  [6] BREESE J S,HECKERMAN D,KADIE C.Empirical analysisof predictive algorithms for collaborative filtering[C].Proceed-ing of the 14th Conference on Uncertainty in ArtificialIntelligence,Morgan Kaufmann Publishers Inc.,1998:43-52.

  [7] MCLAUGHLIN M R,HERLOCKER J L.A collaborative fil-tering algorithm and evaluation metric that accurately modelthe user experience[C].Proceeding of the 27th Annual In-ternational ACM SIGIR Conference on Research and devel-opment in Information Retrieval,ACM,2004:329-336.

  [8] SARWAR B,KARYPIS G,KONSTAN J,et al.Item-based collaborative filtering recommendation algorithms[C].Proceed-ing of the 10th International Conference on World Wide Web,ACM,2001:285-295.

  [9] BUCHANAN A M,F(xiàn)ITZGIBBON A W.Damped newton algorithms for matrix factorization with missing data[C].IEEE Computer Society Conference on Computer Vision and Pat-tern Recognition,CVPR 2005,2005(2):316-322.

  [10] 李改,李磊.基于矩陣分解的協(xié)同過濾算法[J].計算機工程與應(yīng)用,2011,47(30):4-7.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。