◆劉 錚 張 妍
融入用戶-項目標注網絡影響力的改進slope one算法研究
◆劉 錚1張 妍2
(1.遼寧大學信息學院 遼寧 110000;2.濟南職業學院計算機學院 山東 250103)
在協同過濾推薦領域中,slope one算法取得了較好的效果,但是該類算法忽略用戶及項目影響力差異性。針對此處不足,本文提出融入用戶-項目標注網絡影響力的改進slope one算法,該算法從用戶影響力及項目熱度兩方面計算權重值,并融入傳統算法中,達到了進一步提高算法準確率的目的。將本文算法應用在MovieLens數據集上與若干近似算法對比試驗,結果顯示本文算法在推薦準確率上有明顯提升。
協同過濾推薦,社會化標注,slope one算法
隨著信息化社會高速發展,個性化推薦系統可有效解決信息過載,Slope One 算法是Lemire 等人[1]提出的基于項目的協同過濾算法,是一類簡潔高效的推薦算法,然而其未考慮項目和用戶群體差異性,造成推薦準確率面臨提升瓶頸。為解決上述問題,國內外學者進行了深入細致的研究工作。算法是較早的改進算法,通過用戶數加權進行改進。劉林靜[3]等人則是將用戶間的相似性作為預測評分權重具有一定提升。
用戶的標注行為蘊含了豐富的關聯信息,而傳統的改進算法多數未考慮這一關聯。本文提出一種融入用戶-項目標注網絡影響力的改進slope one 算法,利用PageRank算法分別計算用戶圖和項目圖的節點重要度,進而得到用戶和項目的重要度區分,將目標用戶的鄰居用戶重要度融入傳統算法的偏差計算中,同時在評分預測時融合項目的重要度差值,達到在標注數據中提升預測準確率的目的。
Slope one算法其具體公式如下:
給定任意兩個不同項目,平均評分偏差dev,如公式(1)所示:

其中,r為用戶對項目評分,S,代表同時對項目和評分的用戶集合。
用戶對未知項目預測評分pre,如公式(2)所示:

其中R表示用戶已經給予評分滿足條件(≠,S,非空)的項目集合。
社會化標注數據包含了用戶間、項目間及用戶與項目中豐富的關聯信息,通過標注行為分別得到用戶關聯復雜圖,項目關聯圖,假設重要的用戶會標注更多數據,重要項目會吸引更多標注,下文予以分別介紹并計算其節點重要度。
將用戶ID視為社交網絡中的用戶節點,通過分析數據集中用戶之間的關注關系視為用戶節點之間的連邊,從而構建整體的無向用戶關系網絡。引入PageRank算法如公式(3)所示:

其中,為阻尼因子一般取值為0.85;為用戶總數;()為用戶關注的用戶的集合;()為與節點相連節點的邊的權重值,()為相連節點的度。
與用戶“實體群”不同的是,項目實體群沒有網絡連接關系,故首先需要建立項目[4]之間的連接關系,然后采用PageRank算法來衡量不同項目的熱度。改進的PageRank表示項目重要度指標模型,如公式(4)所示。

首先,將前文計算所得用戶節點重要度加權到平均偏差計算中如公式(5):

第二步,最終的評分值預測,引入不同項目的重要度偏差,如公式(6):

本文采用 MovieLens 網站公布的小型數據集(MovieLens Latest. Datasets)。其中包含有 700名用戶對 9000部電影的 100000 條評分,取標注行為最多的前100用戶,然后選擇此100人標注數最多的500部電影作為項目集合,得到13490條標注記錄。選擇80%為訓練集,剩余20%為測試集。
實驗采用平均絕對誤差(MAE)及均方根誤差(RMSE)作為評價標準。定義公式如(7)

選取傳統slope one[1](SO)算法;加權slope one[2]算法(WSO)以及融合用戶相似度[4]的算法(BWSO)與本文算法PRSO作為對照試驗,實驗結果下所示。
由圖1可見,本文算法在MAE,RMSE指標對比三類算法均取得了不同程度的提升,因為本文算法分別融合了用戶重要度差異及項目重要度差異,在本文選取處理過的具有社會化標注行為的數據集中,對比其他同類算法,具有明顯優勢。

圖1 算法MAE值對比
本文針對傳統slope one算法忽視不同用戶及項目重要性差異的問題,提出了一種融合用戶-項目標注網絡影響力的改進算法,通過用戶-標簽-項目數據分別得到用戶關聯圖及項目關聯圖,并利用PageRank算法分別計算節點重要度,以此獲取用戶標注行為中蘊含的豐富關聯信息。進而融入傳統slope one算法中。經實驗證明在用戶標注行為密集的數據集中,本文算法預測精度得到了明顯提升。如何提升算法在稀疏數據準確率和冷啟動問題成為下一步研究重點。
[1]Lemire D,Maclachlan A.Slope One predictors for online ratingbased collaborative filtering[C].In:Proceedings of the Fifth SIAM International Conference on Data Mining,2005:471-480.
[2]李桃迎,李墨,李鵬輝.基于加權Slope One的協同過濾個性化推薦算法[J].計算機應用研究,2017,34(08):2264-2268.
[3]劉林靜,樓文高,馮國珍.基于用戶相似性的加權Slope One算法[J].計算機應用研究,2016,33(09):2708-2711.
[4]白楊. 社交網絡中的標簽主題識別及社群挖掘方法研究[D].大連理工大學,2018.