一種基于屬性評分縮放的協(xié)同過濾推薦方法
【技術領域】
[0001] 本發(fā)明設及一種協(xié)同過濾推薦方法,尤其設及一種基于屬性評分縮放的協(xié)同過濾 推薦方法。
【背景技術】
[0002] 隨著Internet和電子商務的迅猛發(fā)展,"信息爆炸"和"信息過載"問題越來越嚴 重,用戶很難從海量的信息中找到自己真正需要的信息。推薦系統(tǒng)可W在用戶目的不明確 的情況下幫助用戶找到可能感興趣的信息并推薦給用戶。協(xié)同過濾是現(xiàn)行推薦系統(tǒng)中應用 最廣泛最成功的技術之一,但其需要維護一個存儲用戶偏好的數(shù)據(jù)庫。因此,隨著系統(tǒng)中用 戶和項目數(shù)量的不斷增加,協(xié)同過濾面臨嚴峻的用戶評分數(shù)據(jù)稀疏性、推薦實時性、可擴展 性挑戰(zhàn),推薦質量迅速下降。針對上述問題,迫切需要一種能夠提高推薦質量的推薦方法。
【發(fā)明內容】
[0003] 針對傳統(tǒng)協(xié)同過濾推薦算法在單一評分數(shù)據(jù)集上預測精度低的問題,本發(fā)明研制 一種基于屬性評分縮放的協(xié)同過濾推薦方法。
[0004] 本發(fā)明其特征在于,包括W下步驟:
[000引 (1)用戶-項目屬性評分矩陣的構造。定義項目的屬性集為A={A^As,…,Ak,… Al},Ak={a。a2,…,at}。需要注意的是,對于某一項目的屬性Ak,其可能有多個取值。例 如,一部電影既是動作片又是科幻片,一件商品既是女裝又是戶外等。設用戶對第k個屬性 Ak的評分矩陣為G,表示如下:
[0006]
[0007] 其中,m為用戶數(shù)量。
[000引確定用戶對各屬性值的評分,即gy。采用評分縮放法;如果用戶對具有某一屬性 值的項目的評分差距都比較小但評分又不完全相同,那么我們希望能對其評分進行放大, 反之,我們希望對其評分進行適當?shù)目s減;如果用戶對具有某一屬性值的項目只有一次評 分,我們就認為用戶可能不喜歡此類項目,令其評分為零;如果用戶對具有某一屬性值的項 目的評分完全相同,也令其評分為零。本文采用方差對評分進行縮放,并將闊值定為1,即如 果方差大于1,就將評分縮減,反之,將評分放大。因此,評分縮放法定義為用戶對具有某一 屬性值的項目的評分的均值和方差的比值,公式如下:
[0009]
[0010] 其中
代表用戶對Ak=aj.的項目的評分的方差,
代表用 戶對Ak=aj.的項目的評分的均值,N代表用戶i評價過的Ak=aj斯項目的數(shù)量,rh代表用 戶對Ak=3j.的項目的評分。
[0011] 由定義可知,每個用戶對每個屬性值的評分至多只有一個值;例如,如果A沒有看 過悲劇電影,則其沒有該項評分。
[0012] (2)項目屬性的確定。主要從W下兩個方面進行度量:
[0013] 數(shù)據(jù)稀疏度;用戶評分數(shù)據(jù)矩陣中未評分條目所占的百分比,其公式定義如下:
[0014]
[0015] 其中,Nr為評分總量,m為矩陣的行數(shù)(用戶的數(shù)量),n為矩陣的列數(shù)(項目或者 項目屬性值的數(shù)量)。
[0016] 數(shù)據(jù)減少率;用戶-項目屬性評分相比用戶-項目評分所減少的數(shù)據(jù)量的比率,定 義如下:
[0017]
[001引其中,N。為用戶-項目屬性評分的數(shù)據(jù)量,N。為用戶-項目評分的數(shù)據(jù)量。
[0019] (3)推薦的生成。對多個預測評分求均值作為最終評分,并選取TopT項目推薦給 用戶。
【附圖說明】
[0020] 圖1是基于屬性評分縮放的協(xié)同過濾推薦方法實施流程圖。
[0021] 圖2是數(shù)據(jù)集描述圖.
[0022] 圖3是數(shù)據(jù)集1上各項目屬性推薦和直接評分推薦的MAE對比圖。
[0023] 圖4是數(shù)據(jù)集2上各項目屬性推薦和直接評分推薦的MAE對比圖。
[0024] 圖5是數(shù)據(jù)集3上各項目屬性推薦和直接評分推薦的MAE對比圖。
[0025] 圖6是數(shù)據(jù)集1上項目屬性組合評分推薦和直接評分推薦的MAE對比圖。
[0026] 圖7是數(shù)據(jù)集2上項目屬性組合評分推薦和直接評分推薦的MAE對比圖。
[0027] 圖8是數(shù)據(jù)集3上項目屬性組合評分推薦和直接評分推薦的MAE對比圖。
【具體實施方式】
[002引為更好地理解本發(fā)明,下面結合附圖和【具體實施方式】對本發(fā)明進行更為詳細描 述。在W下的描述中,當已有的現(xiàn)有技術的詳細描述也許會淡化本發(fā)明的主題內容時,該些 描述在該兒將被忽略。
[0029] 圖1是本發(fā)明基于屬性評分縮放的協(xié)同過濾推薦方法實施流程圖。在本實施例 中,本發(fā)明的基于屬性評分縮放的協(xié)同過濾推薦方法包括W下步驟:
[0030] 首先,構建用戶-項目評分矩陣并采用評分縮放法構造用戶-項目屬性評分矩陣; 然后,依據(jù)數(shù)據(jù)稀疏度和數(shù)據(jù)減少率進行屬性選取,在每個已選屬性評分矩陣上計算用戶 之間的皮爾遜相似度,并選取相似度最高的K個用戶作為相似鄰居;接下來,根據(jù)K個鄰居 的過往評分預測目標用戶對目標項目的評分;該樣,當所有已選屬性評分矩陣的預測完成 時,我們會得到目標用戶對每個目標項目的一組預測評分,我們將該些評分加權后作為最 終評分;最后,選取最終評分最高的前T個項目推薦給用戶。
[0031] 本發(fā)明采用MovieLens數(shù)據(jù)集,包括2113個用戶對10109部電影的855598條評 分。其中評分數(shù)據(jù)從1到5,評分越高,表示用戶對電影越喜歡。為了分析實驗數(shù)據(jù)集的樣 本量成倍增加時對方法性能的影響,本發(fā)明從數(shù)據(jù)集中隨機抽取=個訓練數(shù)據(jù)集(250位 用戶對250部電影的10000條評分,500位用戶對500部電影的60000條評分及1000位用 戶對1000部電影的200000條評分),對應每個訓練集抽取部分數(shù)據(jù)作為測試集,數(shù)據(jù)條數(shù) 分別為300、600和2000。
[00對 (1)屬性選取
[0033] 本發(fā)明首先選取稀疏度較低且減少率相對較高的屬性,各數(shù)據(jù)集的描述如圖2所 示。本發(fā)明選擇的屬性為;類型、拍攝地1和拍攝時間。
[0034] (2)將評分縮放法的預測和直接評分的預測結果對比
[0035] 將評分縮放法的預測結果和直接評分的預測結果進行比較,在數(shù)據(jù)集1、數(shù)據(jù)集2 和數(shù)據(jù)集3上的結果分別如圖3、圖4和圖5所示??蒞發(fā)現(xiàn)評分縮放法構造的評分矩陣的 推薦精度總高于直接評分,而且在系統(tǒng)用戶較多時,效果更加明顯。
[0036] (3)將評分縮放法的預測進行組合與直接評分的預測結果對比
[0037] 對評分縮放法在各屬性上產生的預測評分取均值后和直接評分的預測結果進行 比較,在數(shù)據(jù)集1、數(shù)據(jù)集2和數(shù)據(jù)集3上的結果分別如圖6、圖7和圖8所示??蒞發(fā)現(xiàn), 將評分組合后的推薦精度要優(yōu)于直接評分,并且當鄰居數(shù)目達到20時,推薦結果已經比較 穩(wěn)定;此外,隨著系統(tǒng)用戶和項目的增多,該方法也能夠在鄰居數(shù)目不增加的情況下取得精 度較高的推薦結果。
[003引盡管上面對本發(fā)明說明性的【具體實施方式】進行了描述,但應當清楚,本發(fā)明不限 于【具體實施方式】的范圍,對本技術領域的普通技術人員來講,只要各種變化在所附的權利 要求限定和確定的本發(fā)明的精神和范圍內,該些變化是顯而易見的,一切利用本發(fā)明構思 的發(fā)明創(chuàng)造均在保護之列。
【主權項】
1. 一種基于屬性評分縮放的協(xié)同過濾推薦方法其特征在于,主要包括以下步驟: (1) 用戶-項目屬性評分矩陣的構造。定義項目的屬性集為A = (A1, A2,…,Ak,…AJ, Ak= {a i,a2,…,at}。需要注意的是,對于某一項目的屬性Ak,其可能有多個取值。例如,一 部電影既是動作片又是科幻片,一件商品既是女裝又是戶外等。設用戶對第k個屬性A k的 評分矩陣為G,表示如下:確定用戶對各屬性值的評分,即gu。采用評分縮放法:如果用戶對具有某一屬性值的 項目的評分差距都比較小但評分又不完全相同,那么我們希望能對其評分進行放大,反之, 我們希望對其評分進行適當?shù)目s減;如果用戶對具有某一屬性值的項目只有一次評分,我 們就認為用戶可能不喜歡此類項目,令其評分為零;如果用戶對具有某一屬性值的項目的 評分完全相同,也令其評分為零。本文采用方差對評分進行縮放,并將閾值定為1,即如果方 差大于1,就將評分縮減,反之,將評分放大。因此,評分縮放法定義為用戶對具有某一屬性 值的項目的評分的均值和方差的比值,公式如下:(2) 項目屬性的確定。主要從以下兩個方面進行度量: 數(shù)據(jù)稀疏度:用戶評分數(shù)據(jù)矩陣中未評分條目所占的百分比,其公式定義如下:數(shù)據(jù)減少率:用戶-項目屬性評分相比用戶-項目評分所減少的數(shù)據(jù)量的比率,定義如 下:(3) 推薦的生成。對多個餓測評分求均值作為最終評分,并選取Top T項目推薦給用 戶。2. 根據(jù)權利要求1所述的基于屬性評分縮放的協(xié)同過濾推薦方法其特征在于: 權利要求1中(1)所述,1為屬性的個數(shù),m為用戶數(shù)量,t是屬性Ak值的數(shù)量,fi戈表用戶對Ak= a j的項目的評分的方I代表用戶對Ak= a j的 項目的評分的均值,N代表用戶i評價過的Ak= a j的項目的數(shù)量,r h代表用戶對A k= a j的 項目的評分。 權利要求1中(2)所述隊為評分總量,m為矩陣的行數(shù)(用戶的數(shù)量),η為矩陣的列 數(shù)(項目或者項目屬性值的數(shù)量),Na為用戶-項目屬性評分的數(shù)據(jù)量,N。為用戶-項目評 分的數(shù)據(jù)量。
【專利摘要】一種基于屬性評分縮放的協(xié)同過濾推薦方法。針對傳統(tǒng)協(xié)同過濾推薦算法在單一評分數(shù)據(jù)集上預測精度低的問題,提出一種基于屬性評分縮放的協(xié)同過濾推薦方法。首先,構建用戶-項目評分矩陣并采用評分縮放法構造用戶-項目屬性評分矩陣;然后,依據(jù)數(shù)據(jù)稀疏度和數(shù)據(jù)減少率進行屬性選取,在每個已選屬性評分矩陣上計算用戶之間的皮爾遜相似度,得到目標用戶的最近鄰居集;接下來,針對每個最近鄰居集,在用戶-項目評分矩陣上完成初步評分預測;這樣,當所有已選屬性評分矩陣的預測完成時,我們會得到目標用戶對每個目標項目的一組預測評分,我們將這些評分加權后作為最終評分,完成推薦。實驗結果表明,該算法能有效提高推薦精度。
【IPC分類】G06F17/30
【公開號】CN104881499
【申請?zhí)枴緾N201510341870
【發(fā)明人】龔安, 高云, 高洪福, 唐永紅, 高震
【申請人】中國石油大學(華東)
【公開日】2015年9月2日
【申請日】2015年6月19日