999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

協同過濾推薦算法的優化研究

2022-06-11 06:33:55孫紅梅
電腦知識與技術 2022年13期

孫紅梅

摘要:協同過濾推薦是目前應用最廣泛和最成功的推薦系統,但傳統的協同過濾算法沒有充分利用用戶的行為反饋信息,忽略了時間順序、序列順序等有效信息,存在一些局限性。文章基于傳統的協同過濾算法,結合用戶交互行為信息中的時間順序、序列順序以及物品的流行度和用戶的活躍度等信息,優化算法的推薦效果,并且在數據集MovieLens上進行驗證,實驗結果表明優化后的協同過濾推薦算法能有效提升推薦效果。

關鍵詞:協同過濾;相似性度量;推薦算法

中圖分類號:TP391 ? ? ? ?文獻標識碼:A

文章編號:1009-3044(2022)13-0088-03

1 引言

推薦系統領域的興起和互聯網的快速發展息息相關,也是互聯網經濟落地的主要場景之一。在推薦系統領域中,通過推薦算法從海量數據中挖掘用戶的興趣,捕捉更精確的深度信息,精準地推薦給用戶,促進用戶更加高效地接收信息[1-3]。推薦系統對于大數據時代具有強大且不可替代的推動作用。

在推薦領域中,應用最廣泛且影響最大的應屬協同過濾算法[4-6]。協同過濾算法也是推薦領域研究的熱點和業界主流的應用模型。它是基于用戶行為挖掘用戶興趣的算法模型,通過用戶行為的反饋信息進行協同匯聚,然后從海量的數據中進行過濾得到更精準的深度興趣捕捉,從而推薦給用戶。

傳統的協同過濾算法中,基于領域的協同過濾算法是最經典且輕量的算法模型。協同過濾算法的核心思想是通過用戶的交互反饋行為,計算用戶或者物品之間的相似性,然后根據相似性給用戶推薦物品,但基于領域的協同過濾算法仍然存在一些局限性,如沒有充分利用用戶的行為反饋的信息,忽略了時間順序、序列順序等有效信息,而這些信息往往在推薦的過程中能夠起到有效的作用。

因此,本文基于傳統的協同過濾算法,充分利用用戶交互行為信息中的時間順序、序列順序以及物品的流行度和用戶的活躍度等信息,優化算法的推薦效果,并且在經典數據集MovieLens[7]上驗證算法的有效性。

2 算法模型

2.1傳統的協同過濾算法介紹

根據計算相似性的方向不同,協同過濾算法可以分為基于用戶的協同過濾算法和基于物品的協同過濾算法。

基于物品的協同過濾算法(Item Collaboration Filter,ItemCF)[4,8]的推薦原理,如果用戶對一個物品感興趣,則優先推薦與該物品相似的其他物品給用戶。ItemCF 算法的核心是找相似的物品。假定有兩個物品分別為[i]和[j],通過交互行為信息可以得到分別與這兩個物品有過交互的用戶集合為[Ui]和[Uj],那么就可以通過以下公式計算出兩個物品之間的相似性:

[simi,j=Ui∩UjUiUj] ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?[1]

其中[|Ui∩Uj|]表示與兩個物品都有過交互行為的用戶集合數,能夠有效反映兩個物品之間的相似性程度。兩個物品在用戶與物品的交互行為中共現的次數越高,就意味著兩個物品的相似性程度越高。[|Ui||Uj|]表示對于兩個用戶集合數的權衡,是算法改進后對于熱門物品的打壓考慮。在推薦系統領域中,越是熱門的物品,與用戶的交互行為信息就越多,容易造成所有物品都同熱門商品具有很高的相似性的錯覺,因此在相似性計算的公式中考慮與物品交互的用戶集合的大小,能夠有效地解決這一問題,更加可靠地捕捉物品之間的相似性。越熱門的物品交互的用戶集合越大,因此會得到一個越小的系數,相似性的分值就會得到打壓。

基于用戶的協同過濾算法(User Collaboration Filter,UserCF)[9]的推薦原理,通過計算和分析找到和目標用戶有同樣興趣愛好的用戶集合,可以近似地認為這個集合中用戶喜愛的物品目標用戶也會喜歡,進而推薦給目標用戶。算法的核心問題是如何找到相似的用戶。假定有兩個用戶分別為[u]和[v],通過交互行為信息可以得到分別與這兩個用戶有過交互的物品集合為[Iu]和[Iv],那么可以通過以下公式計算出兩個用戶之間的相似性[sim(u,v)]:

[simu,v=Iu∩IvIuIv] ? ? ? ? ? ? ? ? ? ? ? ? ?[2]

其中[|Iu∩Iv|]表示與這兩個用戶都有過交互行為的物品集合數。公式同樣考慮了用戶活躍度的影響,越是活躍的用戶所交互的物品越多,但是物品間的相關性程度應當是越低的,因此通過[|Iu||Iv|]這一項式對用戶的活躍度進行有效打壓。

2.2協同過濾推薦算法的優化與實現

本文在傳統的ItemCF協同過濾算法的基礎上,充分利用交互信息中的時間順序、序列順序以及物品的流行度和用戶的活躍度等信息,優化算法的推薦效果。

(1)基于ItemCF算法的優化與實現

首先,傳統的ItemCF算法在計算兩個物品的相似性時,沒有考慮每兩個物品共現時的時間順序對于兩個物品之間的相似性影響。在每個用戶與物品的交互行為歷史中,用戶與物品的交互行為存在時間順序上的差異。一般來說,交互時間越近,物品之間的相似性程度越大。因此,推薦算法捕捉了交互行為的時間順序信息。假定一個用戶[u]與物品[i]和[j]的交互時間分別為[ti]和[tj],那么它們之間的時間差為[|ti-tj|]。根據時間越近相似性程度越高的特性,并且保證時序因素的值在[0, 1]范圍之間,采用指數函數的形式刻畫時間順序信息。具體的公式如下:

[simi,j=u∈Ui∩Uje-α*ti-tjUiUj ] ? ? ? ? ? ? [3]

其中[u∈Ui∩Uj]表示與物品[i]和[j]都發生過交互行為的用戶,在這個并集的每個用戶的交互歷史中都存在物品[i]和[j]的共現。ItemCF算法將這樣的共現記錄作為計數,來統計物品之間的共現次數表示物品之間的相似性。推薦算法考慮了物品和用戶交互的時間順序影響,吸取用戶與物品之間的交互時間順序信息進行相似性的計算。此外,[α]在這里是一個超參數,用于調整不同場景下時間順序對于物品之間相似性的影響。

其次,本文還考慮了序列順序信息對于推薦效果的影響。具體來說,在每個用戶與物品的交互行為中,交互行為上不僅存在時間順序上的差異,還存在序列先后的差異,而序列順序的信息往往對推薦的效果也起到很大的作用。例如,自行車和打氣筒有很強的共現關系,當一個用戶購買了自行車時,他對于打氣筒有很強的潛在興趣,而當他購買了一個打氣筒時,自行車未必是他潛在的購買商品。因此,本文同時考慮了推薦算法對于交互行為的序列順序信息的捕捉。為了保證算法的輕量性,通過一個超參數[β]來控制序列順序的信息。具體的公式如下:

[simi,j=u∈Ui∩Ujβ*e-α*ti-tjUiUj] ? ? ? ? ? ? ? ? ? ? [4]

其中,當[ti]<=[tj]時認為序列的順序為正向,將[β]的值賦為1,否則認為序列的順序為負向,[β]賦值為0.8。

此外,ItemCF算法對熱門的物品進行了打壓,但是沒有考慮用戶活躍度的影響。在推薦的過程中,兩個物品的共現出現在不同活躍度的用戶的交互歷史中的價值是不同的。例如,當一個用戶只購買了幾件物品,其中包含了物品[i]和[j],那么這個用戶的交互行為對于計算物品[i]和[j]的相似性程度有很大的價值。而當一個用戶購買過上萬個物品,那么其交互行為對于計算物品[i]和[j]的相似性程度的價值就小了很多。因此,本文同時優化了推薦算法對于用戶活躍度信息的吸取。具體公式如下:

[simi,j=u∈Ui∩Ujβ*e-α*ti-tjln1+IuUiUj] ? ? ? ? ? ? ? ? ? ? ? [5]

其中,用戶[u]的交互物品集合大小[|Iu|]表示該用戶的活躍度程度。而采用對數函數的方式表示用戶的活躍度信息,一方面保證不過度打壓,另一方面使計算得到的數據更加平滑。

(2)基于協同過濾的推薦過程

通過步驟(1)之后能夠得到物品之間的相似性分值,便可根據用戶的歷史交互物品推薦相似性高的物品。

在推薦的過程中同樣考慮了時間因素的影響。將用戶[u]最近交互的時間作為對照時間[t0],遍歷用戶的歷史交互物品[i∈Iu],同樣采用指數函數的形式刻畫時間順序信息,記為[e-α*|ti-t0|]。那么在遍歷的過程中,將當前物品的時間信息與它相關的所有物品的相似性分值加權求和得到推薦物品[j]的推薦分值[rec(j)]。具體的公式如下:

[recj=i∈Iu,j∈Iisimi,j*e-α*ti-t0] ? ? ? ? ? [6]

最后根據得到的推薦分值排序,給用戶推薦未交互過的物品。

3 實驗

3.1實驗設置

3.1.1數據集介紹

本文使用推薦系統領域中的經典數據集MovieLens來驗證推薦算法的效果。MovieLens數據集是由美國Minnesota大學領頭創辦的關于電影推薦的評級數據[7]。本文使用1M數據,包含6040個用戶對于3900個電影的百萬評論數據,用戶對電影依照喜愛程度評1~5顆星。

3.1.2實驗設置及環境

算法采用Python語言開發。在數據處理過程中,將評級數據中4星以上的數據篩出得到有效交互數據,進而計算電影之間的相似性。在預估的過程中,將用戶實際最后的五次有效交互電影作為預估樣本,根據本文優化的協同過濾推薦算法分別推薦10個和50個電影。然后采用NDCG(Normalized Discounted Cumulative Gain)和HR(Hits Ratio)兩個指標評估推薦的效果。

此外,為了防止用戶之間的行為穿越和模擬真實推薦場景,對每個用戶預估時以預估樣本之前的最后一次交互時間作為時間點,根據此時間點之間的數據計算電影間的相似性。因此,針對每個用戶都必須計算一次相似性。為了減少計算量的同時保證實驗的公平性,本文實驗涉及的算法均是利用有效時間點之前的兩周內的數據計算相似性,并且預估時對所有用戶進行隨機采樣100個進行評估,保證預估的用戶能夠分布在整個時間跨度的范圍內。

3.2實驗結果

為了驗證協同過濾推薦算法的優化效果,設計了四組對照實驗來驗證推薦過程中兩個步驟的重要性和優化的推薦效果,實驗設置如下:

(1)ItemCF算法計算電影間的相似性,直接根據相似性對用戶未交互過的電影進行排序推薦,記為算法1。

(2)ItemCF算法計算電影間的相似性,利用本文優化后的推薦過程對用戶進行推薦,記為算法2。

(3)利用本文優化的ItemCF算法計算電影間的相似性,直接根據相似性對用戶進行推薦,記為算法3。

(4)利用本文優化后的ItemCF算法計算電影間的相似性,并且利用本文優化后的推薦過程對用戶進行推薦,記為算法4。

此外,實驗中涉及的優化算法的超參數[α均]設置為[0.000015],而[β]根據條件設置為1或0.8。本文未針對參數進行網格搜索等方式優化算法的效果,理論上參數調整后仍然有一定的優化空間,因此本文涉及的對照實驗均采用統一參數設置保證實驗的公平性。

表1詳細展示了對照實驗在推薦結果上的評估效果。NDCG@10和HR@10是針對算法推薦10個電影的結果評估,而NDCG@50和HR@50則是針對算法推薦50個電影的結果評估。通過對比算法1和算法2的各項指標,可以發現考慮時間因素的推薦過程,能夠一定程度上提升推薦效果。而對比算法1和算法3的各項指標,優化后的ItemCF算法能夠捕捉到更加準確的相似性信息,進而明顯提升推薦的效果。最后,對比算法4和其他實驗的各項指標,可以發現優化后的ItemCF協同過濾推薦算法能夠在傳統的協同過濾算法ItemCF的基礎上顯著提升推薦的效果。可見,本文提出的基于ItemCF協同過濾的推薦算法的兩個步驟對于推薦效果都有一定明顯的提升作用,并且兩個步驟之間相得益彰,從不同角度優化了推薦的過程。

4 總結

本文通過研究推薦領域的協同過濾算法,在傳統的ItemCF算法的基礎上充分利用用戶交互行為中的時間順序、序列順序以及物品的流行度和用戶的活躍度等信息,對協同過濾推薦算法進行優化,從兩個步驟上優化了推薦的過程和效果。同時,優化后的協同過濾推薦算法繼承了協同過濾的輕量性、可解釋性等優點。

參考文獻:

[1] 許海玲,吳瀟,李曉東,等.互聯網推薦系統比較研究[J].軟件學報,2009,20(2):350-362.

[2] Wang J Z,Huang P P,Zhao H,et al.Billion-scale commodity embedding for E-commerce recommendation in alibaba[C]// Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining,2018:839-848.

[3] 劉建國,周濤,汪秉宏.個性化推薦系統的研究進展[J].自然科學進展,2009,19(1):1-15.

[4] Linden G,Smith B,York J.Amazon.com recommendations:item-to-item collaborative filtering[J].IEEE Internet Computing,2003,7(1):76-80.

[5] 鄧愛林,朱揚勇,施伯樂.基于項目評分預測的協同過濾推薦算法[J].軟件學報,2003,14(9):1621-1628.

[6] 馬宏偉,張光衛,李鵬.協同過濾推薦算法綜述[J].小型微型計算機系統,2009,30(7):1282-1288.

[7] Harper F M,Konstan J A.The MovieLens datasets[J].ACM Transactions on Interactive Intelligent Systems,2016,5(4):1-19.

[8] Karypis G.Evaluation of item-based top-N recommendation algorithms[C]//Proceedings of the tenth international conference on Information and knowledge management.2001:247-254.

[9] 榮輝桂,火生旭,胡春華,等.基于用戶相似度的協同過濾推薦算法[J].通信學報,2014,35(2):16-24.

【通聯編輯:代影】

主站蜘蛛池模板: 亚洲精品少妇熟女| 日韩中文欧美| 精品国产成人高清在线| 日韩第一页在线| 伊人91在线| 看av免费毛片手机播放| 亚洲毛片一级带毛片基地| 全部毛片免费看| 福利片91| 久久伊伊香蕉综合精品| 99在线视频网站| 毛片基地美国正在播放亚洲| 日本一区高清| 精品一区二区三区水蜜桃| 欧美亚洲另类在线观看| 免费国产黄线在线观看| 国产真实乱了在线播放| 国产精品无码AV片在线观看播放| 国产精品美女免费视频大全| 免费A∨中文乱码专区| 亚洲一区二区三区香蕉| 欧美亚洲激情| 国产亚洲精品自在久久不卡| 欧美午夜理伦三级在线观看| 亚洲愉拍一区二区精品| 欧美一级特黄aaaaaa在线看片| 国产无码网站在线观看| 亚洲丝袜第一页| 91精品网站| 午夜限制老子影院888| 日本道中文字幕久久一区| 日韩欧美综合在线制服| 福利姬国产精品一区在线| 97亚洲色综久久精品| 制服丝袜 91视频| 国产欧美又粗又猛又爽老| 成人小视频在线观看免费| 99激情网| 国产极品美女在线观看| 国产成人精品一区二区三在线观看| 毛片免费视频| 亚洲嫩模喷白浆| 在线免费不卡视频| 五月天丁香婷婷综合久久| 亚洲日韩精品伊甸| 欧美一区福利| 男人天堂伊人网| 欧美第一页在线| 国产高清国内精品福利| 欧美亚洲综合免费精品高清在线观看| 91久久偷偷做嫩草影院免费看| 国产精品七七在线播放| 无码一区18禁| 国产人前露出系列视频| 无码国产偷倩在线播放老年人 | 亚洲色图欧美一区| 中文字幕佐山爱一区二区免费| 国产69精品久久久久妇女| 97视频精品全国在线观看| 精品91视频| 亚洲欧美日韩精品专区| 亚洲色图欧美激情| 成人va亚洲va欧美天堂| 日本一本在线视频| 国外欧美一区另类中文字幕| 欧美日本在线观看| 亚洲欧美人成电影在线观看| 视频二区欧美| 久久国产精品嫖妓| 四虎永久免费地址| 久久96热在精品国产高清| 韩日无码在线不卡| 伦精品一区二区三区视频| 亚洲Av综合日韩精品久久久| 日韩大片免费观看视频播放| 国产无遮挡裸体免费视频| 青青操国产视频| 国产精品亚欧美一区二区| 狠狠色丁香婷婷综合| 亚洲一区二区在线无码| 国产偷国产偷在线高清| 99视频在线看|