亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于多種偏置項融合時間信息的協(xié)同過濾算法

        2019-07-18 12:03:17李明秀王淑軍賈如陳立榮
        軟件工程 2019年6期

        李明秀 王淑軍 賈如 陳立榮

        摘 ?要:協(xié)同過濾算法是實現(xiàn)推薦系統(tǒng)最重要的技術(shù)之一。隨著時間的推移,用戶對物品的偏好會不斷地發(fā)生變化,物品自身的流行度也會隨時間不斷地發(fā)生變化。目前常用的推薦算法如基于鄰域的協(xié)同過濾算法itemCF、userCF和隱語義模型算法FunkSVD、BiasSVD、SVD++都沒有考慮到時間因素對推薦系統(tǒng)推薦質(zhì)量的影響。而時間信息是一種非常重要的上下文信息,應(yīng)該在算法中加以利用。本文使用Sigmoid函數(shù)和流行度函數(shù)將時間因素融入到了BiasSVD算法中,成功的設(shè)計出了一個融合時間信息的新算法Time-BiasSVD。在MovieLens數(shù)據(jù)集上的驗證結(jié)果表明:該算法與已有協(xié)同過濾算法,以及融合時間信息的算法timeSVD++相比,能更準(zhǔn)確地預(yù)測用戶實際評分,提高推薦系統(tǒng)的推薦質(zhì)量。

        關(guān)鍵詞:偏置項;協(xié)同過濾;時間因素;Sigmoid函數(shù);流行度函數(shù)

        中圖分類號:TP399 ? ? 文獻(xiàn)標(biāo)識碼:A

        Abstract:Collaborative filtering algorithm is one of the most important techniques to implement recommendation system.As time goes by,users' preferences for items will change constantly and the popularity of items will also change over time.At present,the commonly used recommendation algorithms,such as neighborhood-based collaborative filtering algorithm itemCF,userCF and implicit semantic model algorithm FunkSVD,BiasSVD,SVD ++,do not take into account the impact of time factors on the recommendation quality of the recommendation system.In this paper,the Sigmoid function and the popularity function are used to design a new algorithm by integrating the time factor into the BiasSVD algorithm.The verification results on the MovieLens dataset show that the proposed algorithm can accurately predict the user's actual score and improve the recommendation quality of the recommendation system compared with the existing collaborative filtering algorithms and the timeSVD ++ algorithm.

        Keywords:bias;time factor;collaborative filtering;Sigmoid function;popularity function

        1 ? 引言(Introduction)

        隨著大數(shù)據(jù)時代的到來,網(wǎng)絡(luò)空間中蘊含的信息量幾何式增長。在這種背景下,用戶如何快速的獲得自己需要的信息就變成了一個非常嚴(yán)峻的問題。推薦系統(tǒng)可以幫助用戶發(fā)現(xiàn)他們可能喜歡的物品,這有效地解決了信息過載的問題。

        協(xié)同過濾(Collaborative Filtering,簡稱CF)[1,2]是目前推薦系統(tǒng)中應(yīng)用最廣泛、最成功的技術(shù)。目前在工業(yè)界中得到最廣泛應(yīng)用的協(xié)同過濾算法是基于鄰域的協(xié)同過濾算法?;卩徲虻膮f(xié)同過濾算法包括兩種,基于用戶相似度[3,4]和基于物品相似度[5]。隱語義模型(Latent Factor Model,簡稱LFM)[6]使用用戶的歷史評分?jǐn)?shù)據(jù),挖掘出數(shù)據(jù)中隱含的特征。時間信息是一種非常重要的上下文信息,模型能反映最新的數(shù)據(jù)表達(dá)的內(nèi)容與特性并且能捕捉數(shù)據(jù)本質(zhì)的長期趨勢是推薦算法要解決的重要問題。

        本文在隱語義模型的基礎(chǔ)上提出了一種融合時間信息的新思路,并設(shè)計出了融合時間信息的協(xié)同過濾算法Time-BiasSVD。其核心思想是:通過構(gòu)建一條權(quán)重變化曲線將用戶興趣按照評分產(chǎn)生的時間賦予不同的權(quán)重,使得每條記錄對用戶的影響不同。距離當(dāng)前推薦時間越近的記錄權(quán)重越大,對用戶的影響越明顯。而物品本身也存在不同時間段內(nèi)流行度不同的問題,因此物品也是一個和時間相關(guān)的量。將Sigmoid函數(shù)與物品的流行度融入到當(dāng)前流行的BiasSVD算法中就實現(xiàn)了本文的Time-BiasSVD算法。實驗結(jié)果表明,該算法比已有隱語義模型算法能更有效地預(yù)測用戶的評分。同時相比較于koren等人提出的timeSVD++算法,本文提出的使用Sigmoid函數(shù)和流行度函數(shù)將時間因素分別融入到用戶和物品偏置項的新思路使得推薦系統(tǒng)的推薦精度也有了明顯的提高。

        2 ? 相關(guān)工作(Related research)

        2.1 ? 隱語義模型

        奇異值分解(Singular Value Decomposition,簡稱SVD)SVD可以將一個龐大的原始矩陣拆分成為三個小的矩陣[7]。在損失原始矩陣小部分準(zhǔn)確度的同時大大降低存儲空間的使用。但是SVD也面臨稀疏矩陣和時間復(fù)雜度過高這兩個非常嚴(yán)重的問題[8,9]。

        Simon Funk后來提出的FunkSVD又被稱為隱語義模型。該算法既減少了對存儲空間的利用,又避免了傳統(tǒng)SVD矩陣分解面臨的時間復(fù)雜度過高和稀疏矩陣的問題。

        加入偏置項的隱語義模型BiasSVD算法在FunkSVD算法的基礎(chǔ)上增加了兩個偏置項參數(shù),分別用來代表用戶在評分過程中由于用戶自身性格等因素產(chǎn)生的誤差,以及項目本身屬性導(dǎo)致用戶實際評分產(chǎn)生的誤差。BiasSVD算法將FunkSVD算法中的兩個矩陣P和Q引入,并增加基礎(chǔ)平均分和兩個偏置項參數(shù),這五個參數(shù)就組成了BiasSVD算法的預(yù)測評分函數(shù)。在許多場合的實際應(yīng)用中發(fā)現(xiàn),BiasSVD算法的推薦準(zhǔn)確度高于FunkSVD算法。

        2.2 ? 基于時序信息的推薦算法

        Koren等人提出的timeSVD++算法[10]將物品偏差進(jìn)行了分割,給每個分割段使用數(shù)值不同的物品偏差,將變成了。

        孫光福等人提出的SequentialMF算法[12]使用用戶的評分?jǐn)?shù)據(jù)和評分時間信息來構(gòu)建用戶和產(chǎn)品的消費網(wǎng)絡(luò)圖,并根據(jù)圖計算影響力最大的近鄰集,再把近鄰集用到概率矩陣分解模型中然后分別計算出用戶和項目的特征向量,根據(jù)該特征向量預(yù)測重構(gòu)評分矩陣,再對用戶進(jìn)行推薦。

        與上述相關(guān)工作的不同之處,本研究基于不同偏置項各自的特點設(shè)計出了使用多種偏置項融合時間信息的協(xié)同過濾算法Time-BiasSVD,主要貢獻(xiàn)如下:一是本文創(chuàng)新的使用了變型的Sigmoid函數(shù),并利用它模擬用戶興趣偏置項隨時間的變化趨勢;二是本文在項目偏置項中找出了電影流行度和平均評分的關(guān)系,進(jìn)而將物品偏置項中的流行度分離出來,給物品偏置項也融入了時間信息。

        3 ?基于多種偏置項融合時間信息的協(xié)同過濾算法(Collaborative filtering algorithm based on integrating the time factor into multiple biases)

        3.1 ? 基本定義

        定義1(用戶-物品評分矩陣)R={ru,i},R表示用戶對物品的評分矩陣。ru,i表示用戶u對物品i的評分,為1—5的整數(shù)。

        定義2(用戶-隱含特征矩陣)P={pu,k},P表示用戶與隱含特征之間權(quán)重的矩陣。pu,k表示用戶u對第k種特征的喜歡程度。取值范圍為0—1的浮點數(shù)。

        定義3(隱含特征-物品矩陣)Q={qi,k},Q是表示物品在其所屬特征中占重要程度的矩陣。qi,k表示物品i在特征k中所占的重要度。取值為0—1的浮點數(shù)。

        定義4(用戶偏置項)代表預(yù)測函數(shù)中用戶的評分中用戶自身性格等因素產(chǎn)生的誤差。

        定義5(項目偏置項)代表物品本身屬性導(dǎo)致的評分誤差。

        定義6(用戶興趣隨時間跨度增大變化函數(shù))代表一個物品對用戶的刺激隨著時間跨度的增大而呈現(xiàn)出的S型下降趨勢。數(shù)據(jù)集中每個評分記錄都會有一個時間戳,t代表用戶歷史評分記錄中的時間戳和當(dāng)前為用戶推薦物品的時間戳之間的差值。

        定義7(物品在所屬時間片內(nèi)的流行度)l(h)代表物品在某一時間段內(nèi)的流行度。h代表某個具體的時間片。

        定義8(物品的評分與流行度之間的關(guān)系)代表物品得到的評分與物品在某一時間段內(nèi)的流行度之間存在的正相關(guān)關(guān)系。其中的x就是定義7中的l(h)。

        3.2 ? BiasSVD算法

        RMSE是根號下預(yù)測值與真實值之間差的平方與總預(yù)測次數(shù)N的比值。常被用來衡量協(xié)同過濾算法的好壞。FunkSVD的核心思想是實現(xiàn)RMSE在訓(xùn)練集上最小。

        3.3 ? 時間信息融入用戶偏置項

        用戶的評分習(xí)慣會隨時間的推移而發(fā)生變化,以用戶對電影的評分為例。

        若干年前某用戶觀看了一部電影,這部電影給用戶產(chǎn)生了一個刺激,這個刺激給用戶造成的影響反映為用戶對這部的電影的評分。但是隨著時間的推移,以下幾種原因會改變用戶對某類電影的評分:第一,用戶看的電影變多導(dǎo)致用戶閱歷增加;第二,同類型的電影看得太多導(dǎo)致對這類電影的新鮮度降低;第三,經(jīng)歷的事情變多導(dǎo)致用戶的興趣發(fā)生變化,原來感興趣的類型現(xiàn)在可不感興趣了,反之亦然。

        這些因素都會影響用戶的評分習(xí)慣,最可能的表現(xiàn)是用戶對電影進(jìn)行打分的時候更加嚴(yán)苛。

        在生態(tài)學(xué)中可以使用“S”型曲線[13]來對種群數(shù)量變化進(jìn)行解釋。即某種生物數(shù)量的增長隨著時間的遞增并不是呈J型增長,而是S型增長。因為當(dāng)種群密度增長到某個數(shù)值之后,會遭受一系列客觀因素的制約,導(dǎo)致其增長趨勢受到制約,符合S型增長趨勢。

        使用“S型”曲線解釋用戶對電影的評分也是合理的:從現(xiàn)在的時間向前推,越接近評分記錄產(chǎn)生的時間,這部電影給用戶帶來的刺激越大,但用戶對此類電影的評分也不可能是呈現(xiàn)J型增長。因為在給用戶推薦物品的時間點與評分記錄產(chǎn)生的時間點之間,用戶也會受到各種其他刺激的影響。

        同時,依據(jù)心理學(xué)中提出的觀點,以及郭新明等人的相關(guān)研究[14]發(fā)現(xiàn),用戶的遺忘規(guī)律不會完全依照線性變化方式。用戶對于新產(chǎn)生的興趣在其產(chǎn)生的初期關(guān)注度會很高,具有極小的立即遺忘可能性;當(dāng)用戶度過這段時期后,對該興趣的關(guān)注度就會隨著時間的延伸而迅速降低,當(dāng)關(guān)注度降低到一定程度時,用戶重新回憶起這個興趣的可能性就很小,對應(yīng)于該興趣的遺忘速度,就是表現(xiàn)出速率迅速減小的特點。

        綜上所述:本文使用變型的Sigmoid函數(shù)來描述這個變化趨勢。變型的Sigmoid函數(shù)在一開始表現(xiàn)出來的特點是,數(shù)值一開始維持較高水平且?guī)缀醪粫f減;在后期,迅速降低隨后逐漸變得平緩并最終趨于0。

        4 ? 實驗結(jié)果及分析(Experiment results and analysis)

        本節(jié)首先介紹實驗所用數(shù)據(jù)集,然后說明評價標(biāo)準(zhǔn)及對比算法,最后給出Time-BiasSVD算法與其他算法的對比實驗結(jié)果,并對實驗結(jié)果進(jìn)行分析。

        4.1 ? 數(shù)據(jù)集及試驗環(huán)境

        本文使用MovieLens數(shù)據(jù)集進(jìn)行結(jié)果驗證。

        MovieLens數(shù)據(jù)集主要包含三個版本,小規(guī)模數(shù)據(jù)集有十萬條數(shù)據(jù);中等規(guī)模數(shù)據(jù)集有100余萬條數(shù)據(jù);大規(guī)模的數(shù)據(jù)集過大,由于機器配置問題暫時無法考慮。

        通過對中等規(guī)模和小規(guī)模的MovieLens數(shù)據(jù)集進(jìn)行數(shù)據(jù)分析。發(fā)現(xiàn)中等規(guī)模的MovieLens數(shù)據(jù)集上每個用戶的所有評分記錄多集中于兩小時內(nèi)。因此,本文猜測獲取該數(shù)據(jù)集的方式為直接對用戶進(jìn)行采訪,一名用戶一次性對多部電影進(jìn)行評分。

        由于本文的算法需要在較長時間跨度上描述用戶興趣變化趨勢和物品流行度。所以中等規(guī)模的MovieLens數(shù)據(jù)集并不適合用來測試本文的Time-BiasSVD算法。因此本文選用擁有十萬條數(shù)據(jù)的MovieLens數(shù)據(jù)集進(jìn)行試驗驗證。

        數(shù)據(jù)集中包含了1997年9月19日到1998年4月22日的943個用戶對1682部電影的評分記錄。每個用戶至少評價了20部電影。評分?jǐn)?shù)據(jù)集中有四個屬性列,分別是用戶ID、電影ID、評分值和時間戳。評分為1—5的整數(shù)。

        本文根據(jù)實際生活中對推薦算法的應(yīng)用,使用時間點對數(shù)據(jù)集進(jìn)行劃分。使用歷史數(shù)據(jù),對未來的數(shù)據(jù)進(jìn)行預(yù)測。使用時間戳891368000對數(shù)據(jù)集進(jìn)行劃分,訓(xùn)練集數(shù)據(jù)72026條,測試集7974條。

        4.2 ? 評價指標(biāo)

        4.3 ? 參數(shù)設(shè)置

        本文選取了四種算法作為對比算法:

        (1)隱語義模型FunkSVD算法,沒有考慮用戶或者項目本身具有的偏置項因素,也沒有將時間信息考慮到算法中。

        (2)加入偏置項的隱語義模型BiasSVD算法,將用戶偏置項和項目偏置項因素進(jìn)行了考慮,但是沒有考慮時間因素對評分行為的影響。

        (3)SVD++算法加入了隱式數(shù)據(jù)描述的用戶對物品的偏好,但是也沒有考慮時間因素對用戶行為的影響。

        (4)Koren等人的timeSVD++算法。該算法也是在SVD++算法的基礎(chǔ)上分別在用戶偏置項與物品偏置項中融入了時間信息。

        在實驗中,首先進(jìn)行特征處理,在原始的評分?jǐn)?shù)據(jù)集的基礎(chǔ)上根據(jù)公式(13)進(jìn)行流行度計算,為每部電影增加一個流行度屬性,方便下文計算。本文將參數(shù)P、Q和矩陣、等參數(shù)的初始值通過均值為0的正態(tài)分布隨機抽取獲得。在訓(xùn)練集上迭代時,使用批量梯度下降算法不斷更新這些參數(shù)值,直到函數(shù)收斂為止。設(shè)置最大迭代次數(shù)3000次,跳出迭代條件為本輪RMSE與上輪RMSE之間差值小于1e-5。

        在實驗中,對每個算法選取好合適的參數(shù)后,再將P、Q矩陣中的隱含特征數(shù)量K分別設(shè)定為10、20、50。并在每個K值下進(jìn)行多次實驗,取平均值為最后的RMSE結(jié)果。

        4.4 ? 實驗結(jié)果與分析

        實驗比較了五種算法在不同隱含特征參數(shù)下的結(jié)果。在實驗中分別設(shè)定隱含特征數(shù)量為10、20、50。表2給出了不同算法在不同隱含特征參數(shù)下RMSE的結(jié)果,根據(jù)表2可以得出以下結(jié)論:

        (1)隨著隱含特征的增大,各個算法精度都有一定的提高。

        (2)BiasSVD算法與FunkSVD算法相比,結(jié)果有了不小的提高,這說明在算法中融合偏置因素對結(jié)果的提升是有作用的。

        (3)本文設(shè)計的Time-BiasSVD算法相比BiasSVD算法和FunkSVD算法,以及SVD++算法在結(jié)果上都有較大的提升,這說明本文提出的融合時間信息的方法可以有效的提高推薦精度。

        (4)本文設(shè)計的Time-BiasSVD算法與Koren等人的timeSVD++算法相比,在推薦精度上也有較大提高。

        5 ? 結(jié)論(Conclusion)

        本文使用用戶對電影的評分信息,以及給予評分的時間信息,設(shè)計出了融合時間信息的協(xié)同過濾算法Time-BiasSVD。使用變形的Sigmoid函數(shù)將時間信息融入到BiasSVD算法的用戶偏置項中,同時使用流行度函數(shù)將時間信息融入到了物品偏置項中。經(jīng)過實驗結(jié)果對比,本文提出的Time-BiasSVD算法與SVD++、FunkSVD,以及工業(yè)界常用的傳統(tǒng)推薦算法,例如傳統(tǒng)隱語義模型算法和koren等人的timeSVD++算法相比,推薦精度有了顯著提高。

        由于影響推薦效果的因素還有很多,在算法中考慮的因素仍然有豐富的空間。為了更符合用戶的動態(tài)需求,而不是他過去的需求,可以考慮一些影響用戶未來需求的因素:比如潮流的因素,用戶所在社交網(wǎng)絡(luò)的環(huán)境特點,用戶的消費水平動態(tài)變化等。在接下來的研究里,我們將繼續(xù)挖掘偏置項的特點對算法進(jìn)行改進(jìn),尋找更加完善的模型,以便能夠快速智能地得出個性化的推薦方案,有效地保證甚至提高推薦系統(tǒng)的推薦精度。

        參考文獻(xiàn)(References)

        [1] 劉青文.基于協(xié)同過濾的推薦算法研究[D].合肥:中國科學(xué)技術(shù)大學(xué),2013.

        [2] 孔維梁.協(xié)同過濾推薦系統(tǒng)關(guān)鍵問題研究[D].武漢:華中師范大學(xué),2013.

        [3] 王明佳,韓景倜.基于用戶對項目屬性偏好的協(xié)同過濾算法[J].計算機工程與應(yīng)用,2017,53(6):106-110.

        [4] 錢曉捷,張路一.融合評分結(jié)構(gòu)特征與偏好距離的協(xié)同過濾推薦算法[J].計算機工程,2017,43(5):185-190.

        [5] 李強,何興盛,傅忠謙.基于用戶與物品間差異的推薦算法研究[J].中國科學(xué)技術(shù)大學(xué)學(xué)報,2016,46(2):113-119.

        [6] Zhou X,He J,Huang G,et al.A Personalized Recommendation Algorithm Based on Approximating the Singular Value Decomposition (ApproSVD)[C].Ieee/wic/acm International Conferences on Web Intelligence and Intelligent Agent Technology.IEEE,2013:458-464.

        [7] 鄭鵬,王應(yīng)明,梁薇.基于信任和矩陣分解的協(xié)同過濾推薦算法[J].計算機工程與應(yīng)用,2018,54(13):34-40.

        [8] Ar Y,Bostanci E.A genetic algorithm solution to the collaborative filtering problem[J].Expert Systems with Applications,2016,61:122-128.

        [9] 臣健美,孫亞軍.基于用戶近鄰的N維張量分解推薦算法[J].計算機工程,2017,43(11):193-197.

        [10] Koren,Yehuda.Collaborative filtering with temporal dynamics[C].ACM,2009:447-456.

        [11] Bakir C.Collaborative Filtering with Temporal Dynamics with Using Singular Value Decomposition[J].Tehnicki Vjesnik,2018,25(1):130-135.

        [12] 孫光福,吳樂,劉淇,等.基于時序行為的協(xié)同過濾推薦算法[J].軟件學(xué)報,2013,24(11):2721-2733.

        [13] 孫雀,盧劍波,張鳳鳳,等.植物物種多樣性與島嶼面積的關(guān)系[J].生態(tài)學(xué)報,2009,29(5):2195-2202.

        [14] 郭新明,弋改珍.混合模型的用戶興趣漂移算法[J].智能系統(tǒng)學(xué)報,2010,5(2):91-94.

        作者簡介:

        李明秀(1998-),女,本科生.研究領(lǐng)域:推薦系統(tǒng).

        王淑軍(1996-),男,碩士生.研究領(lǐng)域:分布式系統(tǒng),知識圖譜.

        賈 ?如(1982-),女,博士,講師.研究領(lǐng)域:推薦系統(tǒng),數(shù)據(jù)挖掘.

        陳立榮(1980-),女,講師,博士生.研究領(lǐng)域:電子商務(wù)信譽與信任.本文通訊作者.

        中文字幕av一区二区三区| 亚洲av影片一区二区三区 | 成人做受视频试看60秒| 午夜免费福利小电影| 最新国产一区二区三区| 中文字幕人乱码中文字幕乱码在线| 精品国产群3p在线观看| 少妇性l交大片免费快色| 好吊妞人成免费视频观看| 色狠狠一区二区三区香蕉蜜桃| 欧洲一级无码AV毛片免费| 亚洲色图偷拍自拍亚洲色图| 免费亚洲一区二区三区av| 久久精品国产自在天天线| 久久国产劲暴∨内射| 久久久久国色av∨免费看| 香蕉国产人午夜视频在线观看| 午夜麻豆视频在线观看| 肥老熟女性强欲五十路| 久久97久久97精品免视看| 国产又色又爽又黄的| 无码午夜人妻一区二区三区不卡视频| 操出白浆在线观看| av天堂一区二区三区精品| 男女调情视频在线观看| 亚洲日韩小电影在线观看| 无码av天堂一区二区三区| 美女胸又www又黄的网站| 亚欧乱色束缚一区二区三区| 漂亮人妻被强中文字幕乱码| 国产精品国产三级国产a| 中文字幕无线码| 久久精品无码一区二区三区不| av蜜桃视频在线观看| 水蜜桃精品视频在线观看| 国产精品妇女一二三区| japanese无码中文字幕| 中文字幕无码免费久久9| 我想看久久久一级黄片| 色翁荡熄又大又硬又粗又动态图| 中国女人内谢69xxxx免费视频|