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

        ?

        基于協(xié)同過濾和隱語義模型的混合推薦算法

        2020-04-15 02:58:40李小波陳華輝
        計算機技術(shù)與發(fā)展 2020年2期
        關(guān)鍵詞:信任矩陣算法

        徐 吉,李小波,陳華輝,許 浩

        (1.寧波大學 信息科學與工程學院,浙江 寧波 315211;2.麗水學院 工學院,浙江 麗水 323000)

        0 引 言

        隨著互聯(lián)網(wǎng)的發(fā)展,人們獲取信息的方式愈加豐富,海量信息在滿足需求的同時,也為人們帶來一些困擾。大量信息中的無效信息一方面干擾了人們對正常信息的判斷,另一方面也降低了人們對信息的處理效率[1]。協(xié)同過濾算法[2]一般根據(jù)用戶的評價信息來推測用戶的喜好,但受到數(shù)據(jù)稀疏問題[2-3]的影響,很多時候無法得到較為理想的推薦結(jié)果;除此之外,一般協(xié)同推薦算法忽略了用戶興趣的動態(tài)變化;文中對傳統(tǒng)協(xié)同過濾算法存在的上述問題進行了研究,并提出了改進后的協(xié)同過濾混合推薦推薦算法,用以解決上述問題。

        就目前的現(xiàn)狀來看,用的最多的當屬協(xié)同過濾算法,它的突出缺點就在于解決數(shù)據(jù)稀疏性上表現(xiàn)不佳,導致在數(shù)據(jù)稀疏時,推薦性能大打折扣。LFM算法[3]是一種協(xié)同濾波算法,但是建立在模型的基礎(chǔ)之上,而經(jīng)過改進的LFM在緩和稀疏性問題上有一定的作用,但是它進行降維處理時容易造成數(shù)據(jù)的丟失[4]。傳統(tǒng)的推薦算法已經(jīng)無法再產(chǎn)生較為精準的模型數(shù)據(jù),究其緣由,很大一部分是由于算法的局限性,當然,也不排除和數(shù)據(jù)本身的差異性有關(guān)。當前越來越多的推薦系統(tǒng)會選擇融合多種策略,將各種算法的優(yōu)點整合到一起,以克服單一算法的局限。

        1 協(xié)同過濾算法

        1.1 相似度計算方法

        對于協(xié)同過濾算法來說,其最關(guān)鍵的內(nèi)容是對用戶或者是項目間的相似度進行計算[5]。在這個過程中可以采用不同的計算方法,下面對其中幾種比較典型的方法進行介紹。

        (1)Pearson相關(guān)系數(shù)法。

        當前在推薦算法中已經(jīng)較多地使用了Pearson相關(guān)系數(shù)法[6-7]對用戶或者項目間的相似關(guān)系進行計算,具體如下所示:

        (2)余弦相似度法[8-10]。

        (2)

        在實際中不同的用戶間往往存在明顯的差異性,各個用戶的評價標準也不相同。改進的余弦相似度[9]公式如下所示:

        (3)

        (3)Jaccard相關(guān)系數(shù)法[8,10]。

        在很多情況下主體的特征屬性值并不是連續(xù)的,在這些情形下無法直接對其相似度進行衡量,而是需要采用一些特殊的符號進行描述。有學者提出了Jaccard相關(guān)系數(shù)法,其公式如下所示:

        (4)

        對于此類問題可以采用1/-1代表用戶喜歡/不喜歡,0代表未標注,可以將用戶U,V間的Jaccard相關(guān)系數(shù)計算公式表示為:

        (5)

        其中,ui表示用戶u對項目i形成的標注,1{*}表示指示函數(shù)。

        1.2 改進的項目相似度計算方法

        相似度計算結(jié)果的準確性比較依賴于數(shù)據(jù)量的大小,如果數(shù)據(jù)量較小,往往難以得到較好的效果。這些方法也比較容易受到數(shù)據(jù)稀疏性的影響,這必然會造成相似度計算結(jié)果的不準確??梢圆捎煤侠淼姆绞綄ζ湎嗨贫扔嬎惴椒ㄟM行優(yōu)化,如果兩個項目間沒有共同評分項目,此時無法直接對兩個主體間的相似度進行計算,其中的稀疏評分矩陣即如表1中所示。

        表1 稀疏評分矩陣

        通過表中數(shù)據(jù)可以明顯地看到,項目a,b不存在共同評分用戶,因此難以直接對項目a,b的相似度進行計算。經(jīng)過分析可以發(fā)現(xiàn)出現(xiàn)這種問題的主要原因是數(shù)據(jù)的稀疏性。在表1中雖然沒有直接對項目a,b共同評分的用戶,但可以發(fā)現(xiàn)其他項目與a之間含有一些共同評分用戶,其中的一些項目與b也有明顯的相似度關(guān)系。此時可以根據(jù)項目a與其余項目間的相似度關(guān)系構(gòu)建可信模型,然后可以間接得到項目a與項目b間的相似度關(guān)系。在表中可以發(fā)現(xiàn)c,d,e,f和a都含有可信關(guān)系,并且與b也有一定的相似性,因此可以通過間接的方式得到二者的相似度,具體的傳遞方式是b->f->a,b->e->a。

        1.3 可信關(guān)系建模

        首先是根據(jù)項目來進行可信關(guān)系建模,然后將其應用到相似度的傳遞過程中。在日常生活中當有人向你推薦他信任的物品時,你會有較高的可能性去接受這種推薦,因此人們之間存在一定的信任關(guān)系。在對協(xié)同過濾算法進行設(shè)計時可以考慮這種信任關(guān)系,然后將其應用到信任網(wǎng)絡(luò)的構(gòu)建中。然后可以進行可信關(guān)系建模并完成對相似度的傳遞?;谏鲜龇绞侥軌?qū)崿F(xiàn)對間接相似度的計算。

        由于大量的用戶可能會對這兩個項目進行評分,各個用戶的評分存在一定的差異性,如果這種差異性不明顯,這說明推薦的效果比較好。一般可以將用戶對項目的評分情況設(shè)置一個閾值,當用戶的評分在閾值范圍內(nèi)時,即認為項目之間存在較為可靠的信任關(guān)系。

        準確推薦的含義可以表述為:用戶a,b都對項目i進行評分,并且其評分結(jié)果在閾值θ之內(nèi)。準確度可以表示為如下公式:

        Success(a,b,i)?|Ra,i-Rb,i|≤θ

        (6)

        根據(jù)相同的定義,當用戶u對兩個項目i,j都評分,而用戶a對項目i進行評分,此時可以將正確推薦的公式表示為:

        Success(i,j,u)?|Ru,i-Ru,i|≤θ

        (7)

        項目j可以正確推薦項目i的集合如下所示:

        SuccessSet(i,j)={(u,v,i):success(u,v,i)}

        (8)

        項目間的信任關(guān)系可以表示為:

        (9)

        基于先前的分析可知,正確推薦所占據(jù)的比例對存在明顯的影響。此外,信任關(guān)系還與其自身可靠性相關(guān)。但是還需要注意一個問題,即當其權(quán)重和用戶的評分數(shù)目是正相關(guān)關(guān)系時,會導致評分數(shù)目多的項目受到更大的影響,此時應該使用一個影響權(quán)重進行處理,其可以表示為如下公式:

        (10)

        在傳遞相似度時,兩個物品i,j的信任關(guān)系即為:

        (11)

        1.4 相似度傳遞的計算

        由于數(shù)據(jù)中往往存在明顯的稀疏問題,將會影響到相似度的計算結(jié)果,因此需要通過對相似度的傳遞來解決此問題。在這個過程中要利用項目之間的信任關(guān)系進行分析,其具體的過程如下所示:首先根據(jù)信任矩陣得到信任度最高的項目集合,然后根據(jù)步驟1中的結(jié)果得到項目間的間接相似關(guān)系。

        首先需要根據(jù)信任矩陣得到項目i的信任集合,并且已知p屬于I,然后求解兩個項目i,j的間接相似度,其中傳遞時的權(quán)值是項目i對項目p的信任關(guān)系,最后采用加權(quán)平均的方式計算間接相似indirectsim(i,j),其公式如下所示:

        其中直接相似度可以采用余弦相似度方法進行計算,而間接相似度的計算過程較為復雜,其需要先根據(jù)項目之間的信任關(guān)系進行建模,在此基礎(chǔ)上傳遞直接相似度。整個算法可以劃分為如下多個過程:

        (1)根據(jù)用戶項目評分矩陣對其相似度進行計算;

        (2)根據(jù)用戶項目評分矩陣來構(gòu)建可信關(guān)系模型;

        (3)基于上一步得到的可信關(guān)系模型來傳遞相似度,并得到其間接相似度;

        (4)根據(jù)得到的直接與間接相似度進行加權(quán)計算,可以計算出項目間的相似度;

        (5)根據(jù)相似度獲取項目的最近項目鄰居集合;

        (6)可以對未評分項目進行評分。

        2 隱語義模型

        2.1 定 義

        隱語義模型[11]是一種利用矩陣分解得到結(jié)果的算法,實質(zhì)就是通過降維的方法將一些沒有用的信息和噪聲剔除,從而提高預測數(shù)據(jù)的準確性,也在一定程度上緩和了數(shù)據(jù)稀疏帶來的不良影響。LFM當屬矩陣分解算法中最適合推薦系統(tǒng)的模型。

        Simon Funk[12]將高維矩陣進行分解,得到維數(shù)較低的兩個矩陣的乘積,如下所示:

        R=PTQ

        (13)

        其中,P是m行k列的矩陣,Q則為n行k列的矩陣,m和n則分別代表用戶的數(shù)量與項目的數(shù)量。則用戶u對項目i的評分可以表示為:

        (14)

        可見,隱語義模型的思想本質(zhì)上是借助最小化的評價方法RMSE[13-15]對矩陣P、Q學習的一個過程,其中puk=P(u,f),qik=Q(i,f)。

        2.2 用戶興趣遷移模型

        隱語義模型著重強調(diào)的是最小化求解原則,用戶對項目的評分是在保持條件不發(fā)生變化的理想條件下的,但是事實情況是,用戶的興趣有一個變化的過程,這在傳統(tǒng)的隱語義模型中并沒有得到體現(xiàn)。

        在進行樣本訓練的過程中發(fā)現(xiàn),與推薦時間最接近時,用戶對項目的評分最能反映出用戶的喜愛程度。為了比較客觀地反映這種喜好,則需要將每個時間段的評分按照時間由遠到近的順序選取一個相應的權(quán)重系數(shù),就可以很好地反映出用戶的愛好在這段時間里的一個變化過程[16]。在面對這種問題時,需要將時間因素納入到整個評分計算公式中,作為推薦算法的一個部分,可以更好地反映出哪些更加合適用戶的個人喜好。這當中的一個典型模型就是基于遺忘的興趣模型。目前,心理學家普遍認為,喜好和記憶遵循著相似的變化規(guī)律,即隨著時間向后推移而慢慢弱化,直至被人遺忘,并且,越到最后遺忘的越慢,最終會達到一種穩(wěn)定狀態(tài)。世界文明的一個心理學家—艾賓浩斯,對人類的遺忘現(xiàn)象做過一個數(shù)學統(tǒng)一,得到一條遺忘特性曲線,這就是著名的艾賓浩斯遺忘曲線[17],如圖1所示。

        圖1 艾賓浩斯遺忘曲線

        接著,便逐漸開始有學者將這種規(guī)律運用到推薦算法的模型中。Koychev等人[18]利用推薦系統(tǒng)將用戶的喜好漂移導入了興趣模型中,在他們看來,人們喜好的變化會按照艾賓浩斯曲線規(guī)律發(fā)展,因此,他們提出了一個遺忘規(guī)律性的興趣變化模型。這種模型在記憶曲線的基礎(chǔ)上對不同項的評分分配一個比重系數(shù),并且設(shè)置一個閾值,如果權(quán)重的取值低于這個閾值就忽略不計。Maloof[19]在此基礎(chǔ)上又提出了一種基于遺忘窗口的興趣變化模型,在這種模型中,用戶的評分會隨著權(quán)重的推移而慢慢減少。

        但是在實際的推算中發(fā)現(xiàn)一個問題,那就是直接將記憶曲線導入推薦系統(tǒng)中會導致與推薦時間接近的興趣值被過分放大,反之,較遠的興趣值會被基本忽略。對于上述問題,需要改進一下函數(shù),重新建立一個模型,如下表示:

        fu,i=α+(1-α)*e-(tnow-tu,i)

        (15)

        其中,α是一個0-1之間的變量,表示興趣變化的影響范圍,tnow是現(xiàn)在的時間到初始時間之間的差值,tu,i是用戶u進行項目評分時的時間和初始時間的差值,初始時間的選取一般選擇某個時間點作為參考點。

        通過對該函數(shù)的定義進行簡單分析可知,用戶對項目的這種愛好程度會推著時間的推移而呈現(xiàn)出一個衰減的狀態(tài)。在推薦時間的節(jié)點處,函數(shù)取得最大值,當時間趨向無窮遠處時,函數(shù)取得最小值,無限接近α。關(guān)于α的取值,1代表的是它將用戶的評分同等看待,這和傳統(tǒng)算法是完全一致的,若α的取值是0,則意味著用戶喜好的變化遵循艾賓浩斯曲線的規(guī)律特性。可見,通過對α的值進行調(diào)節(jié),可以找到一個合適的值,使得用戶的興趣喜好可以很好地與評分匹配,更能滿足用戶的客觀需求。

        2.3 引入時間參數(shù)的隱語義模型

        把含有用戶興趣變化的函數(shù)引入到改進的模型中,改進之后的RMSE可以更好地對樣本集進行訓練,以此來求出最佳的P、Q。所以,改進后模型的損失函數(shù)重新進行如下定義:

        (16)

        為了將該損失函數(shù)最小化,需要通過梯度下降方法[20]將其做最優(yōu)化處理。函數(shù)在迭代的過程中,經(jīng)歷一段時間的運算,便會到達一種穩(wěn)定的狀態(tài),為此,可以設(shè)置一個合適的閾值,當?shù)嬎愕竭@一步時,就可以停止繼續(xù)迭代。

        文中算法先設(shè)定一個數(shù)值K來判斷該函數(shù)是否需要繼續(xù)運算,通過梯度下降的方法進行求解的過程如下所示:

        (1)設(shè)定兩個參數(shù)變量α和K,前者表示迭代的步長,而后者表示需要進行迭代的次數(shù)。需要指出的是,隨著迭代過程的推進,步長會慢慢的縮減。

        (17)

        使用下面的公式進行迭代計算,刷新puk和qik的數(shù)值。

        (18)

        (3)記錄迭代計算的次數(shù)與K值進行比較,當?shù)螖?shù)超過K時,停止迭代計算,反之再進入第二步。

        一般情況下,函數(shù)CostFunction在迭代過程中一定會找到一個極值,如果不出意外的話,這一點就是要求的最小值。

        3 混合推薦算法

        嘗試著將以上兩種算法整合到一起,既可以解決降維處理時的數(shù)據(jù)丟失問題,也可以在一定程度上緩和稀疏問題。時間函數(shù)的引入可以很好地反映出用戶的喜好興趣的變化,更有助于提高系統(tǒng)的推薦性。在融合時,采用將兩種算法隔離開來同時運行,得到的運算結(jié)果再進行加權(quán)求和的方式。

        具體的計算公式如下:

        (19)

        傳統(tǒng)意義上的協(xié)同算法,計算相似度時,主要借助的是相關(guān)系數(shù)法。文中擬采用線性回歸法進行求解,為此,需要改寫上面的計算公式:

        (20)

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

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

        本節(jié)將通過實驗的方式對算法的具體效果進行驗證。在進行測試時首先需要獲取實驗數(shù)據(jù)集,這里采用的是MovieLens[21]。MovieLens數(shù)據(jù)集中含有的用戶數(shù)目與電影數(shù)目分別是968和1 762,用戶評分范圍是在1~5之間,各個用戶已經(jīng)評分的電影數(shù)目都高于1/5;為了有效地對算法的效果進行驗證,需要將所有數(shù)據(jù)劃分為訓練集與測試集,其比例分別是70%與30%。將鄰居集合數(shù)目設(shè)置為多個不同的值。

        RMSE[22-23]在推薦系統(tǒng)的評價體系中占據(jù)著非常重要的位置,是衡量系統(tǒng)性能的一個不可或缺的指標。一般的推薦系統(tǒng)會在用戶登錄系統(tǒng)的那一天就開始推薦,但是因為用戶興趣的變化不斷,理論上,和推薦當天距離最短的興趣就越有可能被推薦為當天的興趣,在RMSE中將這些興趣點所對應的時間的比例增加,對模型中的RMSE做了如下修改:

        (21)

        4.2 實驗結(jié)果

        (1)參數(shù)α值對RMSE的影響。

        參數(shù)α的作用就是控制時間造成的用戶興趣的變化,同時會以最小權(quán)重的方式設(shè)置下限值。事實上,用戶喜好的變化是有一定的規(guī)律可循的,因此,需要設(shè)置不同的時間權(quán)重進行數(shù)次實驗。將鄰居集合數(shù)目設(shè)置為100,迭代次數(shù)為200,學習速率為0.05,實驗得到的RMSE數(shù)值如圖2所示。

        圖2 不同參數(shù)α下的RMSE

        從圖2可以看出,在α值變化的過程中,RMSE的數(shù)值也會相應地發(fā)生變化。當α的取值是0.5時,得到的結(jié)果是最好的。

        圖3 不同鄰居個數(shù)下各融合策略下的RMSE比較

        (2)多種算法對MovieLens數(shù)據(jù)集的測試。

        采用多種算法對數(shù)據(jù)集進行了測試,設(shè)置不同的鄰居集合,得到了不同鄰居集合下的RMSE,如圖3所示。

        通過圖3能夠明顯看到,提出的LFTRS_CF算法的RMSE值最小,說明其在準確性方面能夠達到較好的效果,優(yōu)于其他的四種算法。

        5 結(jié)束語

        文中詳細研究了推薦算法的優(yōu)化策略,提出了兩種算法,基于項目相似度的協(xié)同過濾算法和基于用戶興趣遷移的隱語義模型算法,并在此基礎(chǔ)上對其進行線性融合,使得其中存在的數(shù)據(jù)稀疏性問題和用戶興趣遷移問題得到了較好的解決。提出的混合推薦算法既可以對丟失的信息進行補充,較好地適應用戶興趣的變化,同時大大弱化了數(shù)據(jù)的稀疏導致的一系列負面影響。

        猜你喜歡
        信任矩陣算法
        基于MapReduce的改進Eclat算法
        Travellng thg World Full—time for Rree
        表示信任
        進位加法的兩種算法
        嚶嚶嚶,人與人的信任在哪里……
        桃之夭夭B(2017年2期)2017-02-24 17:32:43
        從生到死有多遠
        初等行變換與初等列變換并用求逆矩陣
        一種改進的整周模糊度去相關(guān)算法
        矩陣
        南都周刊(2015年4期)2015-09-10 07:22:44
        矩陣
        南都周刊(2015年3期)2015-09-10 07:22:44
        国产精品无码无片在线观看3D | 国产精品无套粉嫩白浆在线| 日本免费一区二区久久久| 老妇高潮潮喷到猛进猛出| 美女视频黄的全免费视频网站| 午夜三级网| 丰满人妻无套内射视频| 亚洲一区二区三区特色视频| 亚洲中文字幕国产综合| 无码熟妇人妻AV影音先锋| 一本色道久久88综合亚精品| 婷婷色婷婷开心五月四| 男女车车的车车网站w98免费| 91久久国产精品视频| 国产色婷亚洲99精品av网站| 亚洲丁香婷婷久久一区二区| 日本japanese少妇高清| 亚洲嫩模高清在线视频| 亚洲av手机在线观看| 乱码1乱码2美美哒| 少妇邻居内射在线| 日本精品一区二区在线看| 亚洲日本人妻少妇中文字幕| 国产成人一区二区三区| 911香蕉视频| 人妻少妇激情久久综合| 日本伊人精品一区二区三区| 国产一区二区三区影院| 人妻精品一区二区三区视频| 国产在线视频一区二区三区不卡| 99精品国产成人一区二区| 毛茸茸性xxxx毛茸茸毛茸茸| 日本啪啪一区二区三区| 丰满人妻猛进入中文字幕| 亚洲av无码国产精品色午夜洪| 国产精品99精品一区二区三区∴| 丝袜美腿亚洲综合一区| 亚洲av成人片无码网站| 成人区人妻精品一区二区不卡网站 | 美女视频黄的全免费视频网站| 美女超薄透明丝袜美腿|