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

        ?

        用余弦相似度修正評(píng)分的協(xié)同過濾推薦算法*

        2020-06-22 12:50:18張瑞典錢曉東
        關(guān)鍵詞:用戶

        張瑞典,錢曉東

        (蘭州交通大學(xué)經(jīng)濟(jì)管理學(xué)院,甘肅 蘭州 730070)

        1 引言

        在互聯(lián)網(wǎng)高速發(fā)展的時(shí)代,信息處于一個(gè)爆炸增長(zhǎng)的狀態(tài),為緩解信息過載問題,互聯(lián)網(wǎng)會(huì)為用戶推薦各種信息,比如淘寶商品,今日頭條的新聞,愛奇藝的電影電視等等。由于信息量太大,需要針對(duì)不同用戶選擇其需要或者感興趣的項(xiàng)目進(jìn)行推薦,既不會(huì)使用戶厭煩,又可高效地為用戶推薦有用的項(xiàng)目。

        根據(jù)評(píng)分計(jì)算用戶相似性[1],并依據(jù)相似性進(jìn)行項(xiàng)目推薦[2]是目前常用的協(xié)同過濾推薦[3]手段。而在評(píng)分時(shí),由于某些不合理因素可能導(dǎo)致少量用戶對(duì)項(xiàng)目做出與自身意志不相符的評(píng)分,比如因一時(shí)情緒導(dǎo)致評(píng)分的極端化,這類評(píng)分會(huì)使相似度計(jì)算出現(xiàn)較大偏差,從而引起推薦結(jié)果出現(xiàn)明顯誤差。

        事實(shí)上,用戶的評(píng)分是由用戶的多種有關(guān)評(píng)分特征最終決定的,就是說如果影響某用戶對(duì)某項(xiàng)目評(píng)分的所有相關(guān)信息一定,那么該用戶對(duì)該項(xiàng)目的評(píng)分就如同基因決定生物性狀一樣確定。然而,由于無法全面收集用戶有關(guān)評(píng)分的特征信息,因此在實(shí)際操作中,都是依據(jù)同一用戶對(duì)大量不同項(xiàng)目所做評(píng)分來衡量其評(píng)分特征,以不同用戶對(duì)同一組(多個(gè))項(xiàng)目做出的評(píng)分來衡量相互之間的相似度。但是,評(píng)分是離散數(shù)據(jù),不能準(zhǔn)確反映用戶的特征和不同用戶間的相似度,因此需要結(jié)合用戶具體的特征,以達(dá)到提高反映準(zhǔn)確度的目的。這種將評(píng)分與多種特征相結(jié)合的方法,可在一定程度上修正不合理評(píng)分帶來的相似度偏差,這也是大多數(shù)文獻(xiàn)所采用的方法。比如,文獻(xiàn)[4]利用用戶文本評(píng)論特征來修正可信度不高的評(píng)分?jǐn)?shù)據(jù),并將其與用戶偏好相結(jié)合來增加評(píng)分的可信度與區(qū)分度;文獻(xiàn)[5]采用多層次的推薦策略,將用戶的評(píng)分相似度[6]、興趣相似度[7]、特征相似度[5]進(jìn)行動(dòng)態(tài)融合,來挖掘目標(biāo)用戶的相似用戶集合。這2種方法都能削弱不合理評(píng)分對(duì)用戶相似度計(jì)算的影響,但效果均不明顯。

        為了更大程度地減小不合理評(píng)分帶來的影響,本文采用評(píng)分矩陣的多種維度進(jìn)行余弦相似度[8]比較的方法修正不合理評(píng)分。用不同用戶對(duì)高相似度的多個(gè)項(xiàng)目所做評(píng)分構(gòu)成的評(píng)分向量計(jì)算余弦相似度,首先將評(píng)分向量按元素個(gè)數(shù)均分為多組,分別求取對(duì)應(yīng)的余弦相似度,如果某組余弦相似度過小,表明該組存在不合理評(píng)分,再對(duì)帶不合理評(píng)分的數(shù)組進(jìn)行降維分組,如此往復(fù),最終可確定不合理評(píng)分;再對(duì)第1次分組的不帶不合理評(píng)分的各組余弦相似度求取平均值,將其作為帶不合理評(píng)分?jǐn)?shù)組的余弦相似度,從而計(jì)算出1個(gè)評(píng)分來取代所確定的不合理評(píng)分。

        修正評(píng)分后,結(jié)合皮爾遜相似度[9]、模糊偏好相似度[10]和Jaccard相似度[11]計(jì)算用戶相似度,以推薦評(píng)分[12]與實(shí)際評(píng)分間的平均絕對(duì)偏差(MAE)[13]、準(zhǔn)確率(Precision)[9]和覆蓋率(Coverage)[14]來衡量推薦性能。利用MovieLens數(shù)據(jù)庫[15]和Bookcrossing[16]數(shù)據(jù)庫進(jìn)行實(shí)驗(yàn),結(jié)果表明:用余弦相似度修正評(píng)分的協(xié)同過濾算法相比未修正評(píng)分前的算法具有更高的推薦精度,其推薦評(píng)分MAE明顯下降。此外,本文算法與對(duì)照算法在MAE、Precision、Coverage指標(biāo)上的仿真實(shí)驗(yàn)均表明,本文算法具有更好的推薦效果。

        2 評(píng)分修正可行性分析及修正方案

        2.1 相似項(xiàng)目評(píng)分的余弦相似度的分析

        若存在A1,A2,…,AT共T個(gè)用戶,分別對(duì)2個(gè)項(xiàng)目C1和C2做出評(píng)分。表1所示為對(duì)應(yīng)評(píng)分情況,rtd表示At對(duì)Cd做出的評(píng)分。

        Table 1 T users’ ratings for 2 items表1 T個(gè)用戶對(duì)2個(gè)項(xiàng)目的評(píng)分

        如果C1和C2的理想相似度高,則兩者的余弦相似度高:

        (1)

        事實(shí)上,sim(C1,C2)cos≤1,當(dāng)且僅當(dāng)rt1∝rt2時(shí)取等號(hào)。設(shè)l為比例系數(shù),則在式(1)成立的情況下,有rt2≈lrt1成立。

        綜上所述,同一用戶對(duì)相似項(xiàng)目的評(píng)分大約成正比。

        求第e個(gè)用戶和第f個(gè)用戶相似度:

        (2)

        而當(dāng)re2≈lre1,rf2≈lrf1時(shí)則有:

        (3)

        因此,不同用戶對(duì)相似度高的項(xiàng)目所做評(píng)分的余弦相似度也高。顯然,當(dāng)被評(píng)分的相似項(xiàng)目數(shù)大于2時(shí),依然符合此規(guī)律。

        2.2 不合理評(píng)分的確定

        若存在2個(gè)用戶A和B,他們均對(duì)相同的項(xiàng)目組做了評(píng)分,且在這些項(xiàng)目組中存在各類相似項(xiàng)目,抽取某類高相似度鄰居項(xiàng)目N(N為小于或等于該類相似項(xiàng)目所有個(gè)數(shù)的最大可被10 整除的數(shù),以便多次分組)個(gè),即A的評(píng)分向量為RA=(rA1,rA2,…,rAN),B的評(píng)分向量為RB=(rB1,rB2,…,rBN),將這N個(gè)項(xiàng)目分為n組,每組m個(gè)分?jǐn)?shù),則有:

        N=mn

        (4)

        規(guī)定A和B的第n組的評(píng)分向量為:

        (5)

        單獨(dú)計(jì)算每組相似度,由于所有項(xiàng)目相似度較高,在合理情況下,根據(jù)式(3)的結(jié)論有:

        (6)

        如果某組出現(xiàn)了不合理評(píng)分,則該組與其它組的相似度會(huì)出現(xiàn)較大的差異,其余弦相似度則會(huì)遠(yuǎn)小于1。為了給出更具體的判斷標(biāo)準(zhǔn),人為設(shè)定Δsim(A,B)cos,如果:

        (7)

        則認(rèn)為RAn或RBn中存在不合理評(píng)分;否則,均不存在。

        為了在A,B的評(píng)分向量中找出不合理評(píng)分,需要在不同維度下計(jì)算A,B間的余弦相似度。

        首先,分別在A,B的各組評(píng)分向量中自行對(duì)比相似度,以確定不合理評(píng)分出現(xiàn)在哪個(gè)用戶的評(píng)分向量中。假設(shè)第x組評(píng)分向量的相似度低于下限,選擇余弦相似度最大的1組(設(shè)為第y組)評(píng)分向量,如果:

        (8)

        則認(rèn)為A的第x組存在不合理評(píng)分。如果:

        (9)

        則認(rèn)為B的第x組存在不合理評(píng)分。

        然后,將帶有不合理評(píng)分的向量和另外1個(gè)用戶對(duì)應(yīng)序號(hào)的評(píng)分向量提取出來繼續(xù)分組。將第x組分為s組,每組q個(gè)分?jǐn)?shù),則有:

        m=sq

        (10)

        又規(guī)定A和B第x組再分組的第s組的評(píng)分向量為:

        (11)

        單獨(dú)計(jì)算每組相似度,重復(fù)式(6)~式(12)的操作,直到所提取到的評(píng)分向量元素個(gè)數(shù)為質(zhì)數(shù)。每次分組降維后,需要與分組前的相似度對(duì)比正常相似度,因?yàn)檎G闆r下應(yīng)該有:

        (12)

        且均應(yīng)在[1-Δsim(A,B)cos,1]。需要注意的是,所分組數(shù)與每組元素個(gè)數(shù)之間的數(shù)值差盡可能小,既保證高維向量計(jì)算相似度的準(zhǔn)確性,又保證有足夠的組進(jìn)行對(duì)比。

        最后,將質(zhì)數(shù)個(gè)元素的評(píng)分向量分為每2個(gè)元素1組,且前組的第2個(gè)元素作為后1個(gè)組的第1個(gè)元素。若哪組包含不合理評(píng)分,則對(duì)應(yīng)組的相似度與最后1次分組前的相似度相差較大。比如,rAz為不合理評(píng)分,則:

        (13)

        至此,不合理評(píng)分已被確定。

        2.3 不合理評(píng)分的修正

        (14)

        其中,i為第i組分組。

        不合理評(píng)分的修正可以推廣到多個(gè)不合理評(píng)分的修正。即求所有合理評(píng)分向量的相似度均值,并將其作為不合理評(píng)分向量的相似度,最終按余弦相似度計(jì)算的逆過程修正所有不合理評(píng)分。另外,式(8)和式(9)中所描述的判定方法只能判定出與合理評(píng)分相差最大的不合理評(píng)分,并不能說明另1個(gè)用戶未做出不合理評(píng)分,因此確定不合理評(píng)分并修正后,需要將2個(gè)評(píng)分向量重復(fù)式(4)~式(14)的步驟,才能確定并修正2個(gè)用戶的不合理評(píng)分。

        3 基于評(píng)分矩陣修正的協(xié)同過濾推薦

        采用第2節(jié)中所述的方法將所有不合理評(píng)分修正一遍后,再利用修正后的評(píng)分矩陣計(jì)算用戶相似度。假設(shè)有u個(gè)用戶對(duì)v個(gè)項(xiàng)目做出了評(píng)分,評(píng)分矩陣表示為Ruv,rjk表示第j個(gè)用戶對(duì)第k個(gè)項(xiàng)目做出的評(píng)分。如果未評(píng)分,則將對(duì)應(yīng)的評(píng)分記為0。

        (15)

        本文以模糊化的混合評(píng)分相似度作為用戶評(píng)分的相似度,以此來衡量不同用戶的相似度。此相似度為3部分的乘積:皮爾遜相似度×平均模糊偏好相似度×Jaccard相似度。第j個(gè)用戶Aj和第h個(gè)用戶Ah的皮爾遜相似度為[12]:

        (16)

        定義1設(shè)U為一論域,給定1個(gè)映射μE:U→[0,1],x→μE(x)∈[0,1],可確定1個(gè)模糊集E,映射μE稱為模糊集E的隸屬函數(shù),μE(x)稱為x對(duì)E的隸屬度。

        評(píng)分模糊化隸屬函數(shù)如圖1所示。其定義式為:

        (17)

        Figure 1 Fuzzy membership function of rating圖1 評(píng)分模糊隸屬函數(shù)

        根據(jù)式(17),可求出某用戶對(duì)某項(xiàng)目的模糊偏好向量θ=(μlike,μdislike)。利用模糊偏好計(jì)算不同用戶間的偏好相似度,用ps(Aj,Ah)表示用戶Aj和用戶Ah間的平均偏好相似度[17,18]:

        (18)

        (19)

        dis(θjc-θhc)=

        (20)

        Jaccard相似度定義為2個(gè)集合的交集與并集的比。已知用戶Aj的評(píng)分項(xiàng)目集合Ij和用戶Ah的評(píng)分項(xiàng)目集合Ih,則用戶Aj,Ah的Jaccard相似度為[19]:

        (21)

        所以,用戶Aj,Ah的評(píng)分相似度為:

        sim(Aj,Ah)=simpcc(Aj,Ah)×

        ps(Aj,Ah)×J(Aj,Ah)

        (22)

        為某目標(biāo)用戶推薦項(xiàng)目,先根據(jù)用戶的相似度,尋找到目標(biāo)用戶在某一范圍內(nèi)的鄰居,然后基于評(píng)分的預(yù)測(cè)公式計(jì)算出該目標(biāo)用戶的推薦評(píng)分,然后依據(jù)推薦評(píng)分決定是否為用戶推薦某項(xiàng)目,或決定推薦某類項(xiàng)目的概率。選定某一目標(biāo)用戶,選出與其相似度較大的固定數(shù)量用戶構(gòu)成最近鄰居集合L。最近鄰居為用戶Aj關(guān)于項(xiàng)目Ck所推薦的評(píng)分為[20]:

        (23)

        4 算法步驟

        為了明確基于變維相似度修正評(píng)分的協(xié)同過濾推薦算法的實(shí)現(xiàn)過程,給出相應(yīng)的算法步驟。該算法步驟主要由2個(gè)部分組成:不合理評(píng)分確定和修正過程,相似度計(jì)算與評(píng)分推薦過程。

        步驟1不合理評(píng)分確定和修正過程

        輸入:RA,RB。

        輸出:修正評(píng)分。

        begin

        1.functionPartition(RA,RB)

        2. 提取RA的維數(shù)N;

        3.forn← 0toNstep 1do

        4.form← 0tonstep 1do

        5.ifN=mnthen

        6.sum[n][m] ←m+n;/*sum[n][m]為m與n的和*/

        7.endif

        8.endfor

        9.endfor

        10.ifsum[n][m] = min(sum[n][m])then/*min(sum[n][m])為sum[n][m]的最小值*/

        11.RA=[RA1,RA2,…,RAn];//將RA分為n組

        12.RB=[RB1,RB2,…,RBn];//將RB分為n組

        13.endif

        14.fori← 1tonstep 1do

        15.sim(Ai,Bi)cos← cos(RAi,RBi);

        16.ifsim(Ai,Bi)cos≥ 1-Δsim(Ai,Bi)costhen

        17. 不做處理;

        18.else

        19. 按式(8)和式(9)的方法確定不合理評(píng)分所在數(shù)組;

        20.RAx←RAi;

        21.RBx←RBi;

        22.endif

        23.endfor

        24.returnRAx,RBx;

        25.endfunction

        26.Partition(RA,RB);

        27.while(1)do

        28.Partition(RAx,RBx);

        29.ifN為質(zhì)數(shù)then

        30.break;

        31.endwhile

        32.按式(13)最終確定不合理評(píng)分;

        33.按式(14)修正不合理評(píng)分;

        endbegin

        步驟2相似度計(jì)算與評(píng)分推薦過程

        輸入:Ruv,L。

        輸出:推薦評(píng)分Pjk。

        begin

        1.forrjk∈Ijdo

        2.sum(rj)←sum(rj)+rjk;//對(duì)用戶Aj的評(píng)分求和

        3.endfor

        5.forrjk∈Ihdo

        6.sum(rh)←sum(rh)+rhk;/*對(duì)用戶Ah的評(píng)分求和*/

        7.endfor

        9.forrj∈Ijdo

        10.forrh∈Ihdo

        11. 按式(16)計(jì)算出皮爾遜相似度simpcc(Aj,Ah);

        12. 按式(17)~式(20)計(jì)算出模糊偏好平均相似度ps(Aj,Ah);

        13. 按式(21)計(jì)算出Jaccard相似度J(Aj,Ah);

        14.sim(Aj,Ah)=simpcc(Aj,Ah) *ps(Aj,Ah) *J(Aj,Ah);

        15.endfor

        16.endfor

        17.forCk∈{C1,C2,…,Cv}do

        18.forAh∈Ldo

        19. 按式(23)計(jì)算出用戶Aj對(duì)應(yīng)項(xiàng)目Ck的推薦評(píng)分Pjk;

        20.endfor

        21.endfor

        endbegin

        步驟1中,第1~25行先對(duì)評(píng)分向量進(jìn)行分組,再建立確定不合理評(píng)分所在數(shù)組的確定函數(shù),通過該函數(shù)可將評(píng)分向量降維分為多個(gè)分向量,并在分向量中找出帶有不合理評(píng)分的向量;第26~33行反復(fù)調(diào)用所建函數(shù)并最終確定和修正不合理評(píng)分。步驟2中,第1~4行求取用戶Aj的評(píng)分均值,第5~8行求取用戶Ah的評(píng)分均值,第9~16行計(jì)算用戶Aj與Ah的評(píng)分相似度,第17~21行計(jì)算用戶Aj對(duì)應(yīng)項(xiàng)目Ck的推薦評(píng)分。

        5 實(shí)驗(yàn)及結(jié)果分析

        5.1 數(shù)據(jù)集及仿真環(huán)境的介紹

        基于2個(gè)不同類別的經(jīng)典數(shù)據(jù)庫MovieLens 100K和Bookcrossing進(jìn)行實(shí)驗(yàn),前者是電影評(píng)分系統(tǒng),用戶在觀影后根據(jù)自身的喜好度對(duì)影片進(jìn)行打分,評(píng)分值為1~5分,包括電影信息和用戶屬性信息。其中,電影信息包括電影ID、title、genres;用戶的屬性信息包括用戶ID、性別、年齡、職業(yè)、郵政編碼。后者是書籍評(píng)價(jià)系統(tǒng),由Ziegler等人使用爬蟲程序從BookCrossing圖書社區(qū)采集的,包括隱式和顯式的評(píng)分信息,評(píng)分為1~10分。這2個(gè)數(shù)據(jù)集的具體參數(shù)如表2所示。

        Table 2 Specific parameters of the datasets表2 數(shù)據(jù)集的具體參數(shù)

        本文仿真環(huán)境的計(jì)算機(jī)配置為:Windows 10 操作系統(tǒng),8 GB 內(nèi)存,Intel(R)Core(TM)i7-6700HQ,CPU為主頻2.60 GHz,實(shí)驗(yàn)基于IDEA開發(fā)平臺(tái),采用scala進(jìn)行開發(fā)。

        5.2 評(píng)價(jià)指標(biāo)和對(duì)照算法的選取

        在推薦系統(tǒng)中,不同的評(píng)價(jià)指標(biāo)反映算法不同層面的性能,為了驗(yàn)證本文所提算法的有效性,實(shí)驗(yàn)采用平均絕對(duì)偏差(MAE)、準(zhǔn)確率(Precision)和覆蓋率(Coverage)進(jìn)行分析。

        假設(shè)目標(biāo)用戶對(duì)候選項(xiàng)目Ck的推薦評(píng)分為Pk,實(shí)際評(píng)分為rk,候選項(xiàng)目個(gè)數(shù)為M,則MAE的表達(dá)式[21]為:

        (24)

        MAE的值越小,表明預(yù)測(cè)誤差越小,推薦結(jié)果越準(zhǔn)確。

        假設(shè)Lj為用戶Aj的推薦列表商品集合,F(xiàn)j為用戶Aj喜歡的商品集合,則準(zhǔn)確率的表達(dá)式為:

        (25)

        Precision表示的是推薦列表中有多少比例的物品出現(xiàn)在測(cè)試集里的商品評(píng)分記錄中,準(zhǔn)確率的值越大,表明推薦精度越高。

        假設(shè)系統(tǒng)中的項(xiàng)目共有V個(gè),被推薦的項(xiàng)目為VR個(gè),則覆蓋率的表達(dá)式為:

        (26)

        覆蓋率越高,說明用戶推薦列表中的商品越多,則整體多樣性越高。

        將經(jīng)典的以余弦相似度為基礎(chǔ)的協(xié)同過濾推薦算法(Cosine-CF)、文獻(xiàn)[5]提出的多層次混合協(xié)同過濾USICCF(User Score and Interest and Characteristic Cooperative Filtering)推薦算法作為本文基于余弦相似度修正評(píng)分的協(xié)同過濾ARCSCF(Adjusted Rating by Cosine Similarity Collaborative Filtering)推薦算法的對(duì)照算法。由于Cosine-CF算法僅從用戶間的評(píng)分進(jìn)行相似度的計(jì)算;USICCF算法基于用戶的評(píng)分、興趣與人口統(tǒng)計(jì)特征衡量相似度,借助用戶的其他特征能在一定程度上修正不合理評(píng)分帶來的相似度衡量誤差;而ARCSCF算法在利用余弦相似度修正不合理評(píng)分的基礎(chǔ)上,采用模糊化的混合評(píng)分相似度進(jìn)行相似鄰居用戶的提取。故本文選擇Cosine-CF和USICCF算法作為本文算法的對(duì)照算法,以便更好地反映本文算法利用余弦相似度修正不合理評(píng)分的有效性。

        5.3 實(shí)驗(yàn)結(jié)果及分析

        在實(shí)際操作中,為有效選取高相似度的項(xiàng)目組,本文通過對(duì)比項(xiàng)目參數(shù)進(jìn)行相似度評(píng)估。如MovieLens 100K數(shù)據(jù)集中的電影類型、年代、時(shí)長(zhǎng)、出品地、清晰度、音質(zhì)、特效、所用語言、主角等級(jí)等,將各類參數(shù)量化成項(xiàng)目特征向量。在量化項(xiàng)目參數(shù)時(shí),可采取分類或分段的數(shù)字對(duì)應(yīng)法,比如類型,類型甲對(duì)應(yīng)數(shù)字“0”,類型乙對(duì)應(yīng)數(shù)字“1”,類型丙對(duì)應(yīng)數(shù)字“2”等;又比如年代,70年代對(duì)應(yīng)數(shù)字“0”,80年代對(duì)應(yīng)數(shù)字“1”,90年代對(duì)應(yīng)數(shù)字“2”等。量化后,求取這些特征向量的余弦相似度,當(dāng)余弦相似度達(dá)到90%以上時(shí),視為高相似度。同理,在選取Bookcrossing數(shù)據(jù)庫中的高相似度書籍時(shí)也采用上述方法。

        5.3.1 確定最優(yōu)參數(shù)

        在修正不合理評(píng)分時(shí),選取合適的Δsim(A,B)cos是一個(gè)比較關(guān)鍵的問題。由于不合理評(píng)分在總體評(píng)分中所占比例很小,所以,為整體上使評(píng)分盡可能符合用戶意志,在確定Δsim(A,B)cos時(shí),采用修正前的rk。此時(shí),如果Δsim(A,B)cos過大,則不能有效修正不合理評(píng)分;如果過小,則會(huì)出現(xiàn)過度修正,將本身合理的評(píng)分差別縮小或消除,從而使修正后的評(píng)分不能代表用戶意志,進(jìn)而使MAE增大。采用MovieLens 100K數(shù)據(jù)集來確定Δsim(A,B)cos參數(shù)的最優(yōu)值,實(shí)驗(yàn)結(jié)果如圖2所示。

        Figure 2 MAE curve of each neighbor number corresponding to different Δsim(A,B)cos values圖2 不同Δsim(A,B)cos對(duì)應(yīng)各鄰居數(shù)的MAE曲線

        圖2為在不同用戶鄰居數(shù)目|L|情況下不同Δsim(A,B)cos對(duì)應(yīng)的MAE曲線。其中,|L|分別為20,40,60,80,100。Δsim(A,B)cos分別為0,0.04,0.08,0.12,0.16,0.2,0.24,0.28,0.32,0.36,0.4。

        根據(jù)圖2,無論用戶鄰居數(shù)|L|如何變化,MAE均隨Δsim(A,B)cos從0逐漸增大,先快速減小而后緩慢增大,最后逐漸趨于平穩(wěn)。表3所示為圖2對(duì)應(yīng)的MAE值。

        在已考察的Δsim(A,B)cos中,當(dāng)Δsim(A,B)cos在0.2附近時(shí),可使得MAE最小,故本文選取Δsim(A,B)cos=0.2。

        5.3.2 分析算法的收斂性

        采用MovieLens 100K和Bookcrossing數(shù)據(jù)集來驗(yàn)證ARCSCF算法在收斂性上的優(yōu)勢(shì),對(duì)照算法采用修正前的評(píng)分?jǐn)?shù)據(jù)集,本文算法采用修正后的評(píng)分?jǐn)?shù)據(jù)集。鑒于ARCSCF算法和對(duì)照算法在MAE、Precision、Coverage上具有相似的實(shí)驗(yàn)結(jié)果,因此主要考察各個(gè)算法在Precision上的收斂狀況,實(shí)驗(yàn)結(jié)果如圖3所示。

        Figure 3 Precision convergence curve of each algorithm under different iteration times圖3 不同迭代次數(shù)下各算法的Precision收斂曲線

        圖3為在不同迭代次數(shù)情況下各算法對(duì)應(yīng)的Precision收斂曲線,其中,迭代次數(shù)以200為步長(zhǎng)從0增長(zhǎng)到1 000。根據(jù)圖3a和圖3b可知,ARCSCF算法和對(duì)照算法的準(zhǔn)確率都隨著迭代次數(shù)的增長(zhǎng)而趨于收斂,并最終僅在小范圍內(nèi)波動(dòng)。ARCSCF算法的收斂速度相較于對(duì)照算法更快,在迭代大概100次以后基本趨于穩(wěn)定,而Cosine-CF算法、USICCF算法分別在迭代大約200次,180次以后趨于平穩(wěn)。這是因?yàn)锳RCSCF算法在修正用戶不合理評(píng)分基礎(chǔ)上進(jìn)行商品推薦,保證每次迭代均能尋找到與目標(biāo)用戶真正相似的推薦用戶群,進(jìn)而使得ARCSCF算法的收斂速度更快,能在較少的迭代次數(shù)下便可獲得較高的推薦準(zhǔn)確率。

        5.3.3 對(duì)照實(shí)驗(yàn)

        在鄰居數(shù)不同的情況下對(duì)評(píng)分修正前和評(píng)分修正后的MAE進(jìn)行對(duì)比,從而反映本文算法對(duì)推薦準(zhǔn)確度的影響?;贛ovieLens 100K數(shù)據(jù)集考察MAE隨|L|的變化時(shí),實(shí)際評(píng)分采用修正后的rk值,在未修正和修正后2種情況下對(duì)比不同用戶鄰居數(shù)目對(duì)應(yīng)的MAE,所得曲線如圖4所示,對(duì)應(yīng)具體的MAE值如表4所示。

        Table 3 MAE of each neighbor number corresponding to different Δsim(A,B)cos values表3 不同Δsim(A,B)cos對(duì)應(yīng)各鄰居數(shù)的MAE值

        Figure 4 MAEs before and after revision when Δsim(A,B)cos=0.2圖4 Δsim(A,B)cos=0.2時(shí)修正前后對(duì)應(yīng)的MAE

        根據(jù)圖4和表4可以看出,評(píng)分修正后的推薦評(píng)分的MAE相比修正前的有所下降。隨著鄰居數(shù)的增多,推薦評(píng)分的MAE越來越小,且其變化越來越趨于平穩(wěn),同時(shí)評(píng)分修正前后推薦評(píng)分MAE的差距越來越明顯。這是因?yàn)殡S著鄰居數(shù)增多,出現(xiàn)不合理評(píng)分的概率越大,對(duì)推薦精度影響越大。

        Table 4 MAEs before and after revision corresponding to different neighbor numbers表4 評(píng)分修正前后不同用戶鄰居數(shù)對(duì)應(yīng)的MAE值

        為了進(jìn)一步驗(yàn)證本文算法的先進(jìn)性,基于MovieLens 100K和Bookcrossing數(shù)據(jù)集比較ARCSCF算法和對(duì)照算法在MAE、Precision、Coverage指標(biāo)上的推薦性能,同樣地,對(duì)照算法采用修正前的評(píng)分?jǐn)?shù)據(jù)集,本文算法采用修正后的評(píng)分?jǐn)?shù)據(jù)集。隨機(jī)地將實(shí)驗(yàn)數(shù)據(jù)的80%作為訓(xùn)練集和20%作為測(cè)試集,該方式可能存在一定的人為處理偏差,故進(jìn)行5折交叉實(shí)驗(yàn),將5次實(shí)驗(yàn)的平均值作為最終仿真結(jié)果。實(shí)驗(yàn)結(jié)果如圖5~圖7所示。

        Figure 5 MAE curve of each algorithm corresponding to different neighbor numbers |L|圖5 不同鄰居數(shù)|L|對(duì)應(yīng)各算法的MAE曲線

        Figure 6 Precision curve of each algorithm corresponding to different neighbor numbers |L|圖6 不同鄰居數(shù)|L|對(duì)應(yīng)各算法的Precision曲線

        Figure 7 Coverage of each algorithm corresponding to different neighbor numbers |L|圖7 不同鄰居數(shù)|L|對(duì)應(yīng)各算法的Coverage值

        從圖5a和圖5b可以看出,3種算法的MAE曲線在2個(gè)不同類別數(shù)據(jù)集MovieLens 100K和Bookcrossing上均呈波動(dòng)下降態(tài)勢(shì),對(duì)照算法的MAE曲線下降幅度較小,ARCSCF算法的MAE曲線下降幅度較大,ARCSCF算法的MAE指標(biāo)整體取值均小于對(duì)照算法的,說明本文算法的預(yù)測(cè)精度最高。此外,在鄰居數(shù)|L|為80,100附近時(shí),對(duì)照算法的MAE基本趨于平緩,ARCSCF算法的MAE還有下降趨勢(shì)。這是因?yàn)镃osine-CF算法僅從用戶間的評(píng)分進(jìn)行相似度的衡量,但不合理評(píng)分的存在會(huì)使得相似用戶的挖掘不夠準(zhǔn)確;USICCF算法將用戶評(píng)分與用戶特征相結(jié)合能在一定程度上弱化不合理評(píng)分的影響,但效果并不明顯;而ARCSCF算法在修正用戶不合理評(píng)分基礎(chǔ)上進(jìn)行商品推薦,使得修正后的評(píng)分?jǐn)?shù)據(jù)更符合用戶真實(shí)的偏好狀況,進(jìn)而縮小相似度計(jì)算的誤差,能推薦更符合用戶真實(shí)喜好的商品,故ARCSCF算法相比對(duì)照算法能獲得更好的推薦效果。

        由圖6a和圖6b可知,3種算法的Precision值在2個(gè)不同類別數(shù)據(jù)集MovieLens 100K和Bookcrossing上均隨著鄰居數(shù)|L|的增加呈現(xiàn)上升趨勢(shì),Cosine-CF算法的增長(zhǎng)幅度最小,USICCF算法次之,ARCSCF算法最大,且ARCSCF算法在Precision指標(biāo)上的整體取值均高于對(duì)照算法的。同時(shí),當(dāng)鄰居數(shù)|L|在80,100附近時(shí),對(duì)照算法均趨于平緩,而ARCSCF算法仍有上升趨勢(shì)。這是因?yàn)锳RCSCF算法基于修正后的評(píng)分?jǐn)?shù)據(jù)集進(jìn)行協(xié)同過濾推薦,能獲得更相似的用戶群,故推薦準(zhǔn)確率相較于對(duì)照算法來說更高。

        根據(jù)圖7a和圖7b可知,ARCSCF算法相比對(duì)照算法在2個(gè)不同類別數(shù)據(jù)集MovieLens 100K和Bookcrossing上的Coverage指標(biāo)有很大的提升,ARCSCF算法的覆蓋率最高,USICCF算法次之,Cosine-CF算法的最低。ARCSCF算法先對(duì)評(píng)分?jǐn)?shù)據(jù)集中的不合理數(shù)據(jù)進(jìn)行修正,再基于修正后的評(píng)分?jǐn)?shù)據(jù)從用戶的實(shí)際消費(fèi)偏好進(jìn)行商品推薦,使推薦的商品能更好地貼合用戶多樣化、個(gè)性化的消費(fèi)喜好,從而提高推薦的覆蓋率。

        6 結(jié)束語

        在眾多用戶對(duì)眾多項(xiàng)目做出評(píng)分的過程中,難免出現(xiàn)因某些原因致使部分用戶所做的少量評(píng)分與自身意志不相符的情況,即不合理評(píng)分。為了在推薦時(shí)盡可能地減小這類評(píng)分的影響,本文提出了一種基于余弦相似度的評(píng)分修正算法,采用該算法可有效修正不合理評(píng)分,將帶修正評(píng)分的評(píng)分?jǐn)?shù)組用于相似度計(jì)算,進(jìn)而為用戶進(jìn)行項(xiàng)目推薦。其中,評(píng)分相似度由皮爾遜相似度、模糊偏好相似度和Jaccard相似度相乘得到。將未修正評(píng)分?jǐn)?shù)組和修正后的評(píng)分?jǐn)?shù)組用于協(xié)同推薦,結(jié)果表明,后者推薦評(píng)分MAE相比前者更小。此外,將本文算法與其他算法進(jìn)行仿真實(shí)驗(yàn),同樣能驗(yàn)證該算法的有效性,實(shí)驗(yàn)結(jié)果反映出本文算法相比對(duì)照算法能獲得更好的推薦效果。

        猜你喜歡
        用戶
        雅閣國(guó)內(nèi)用戶交付突破300萬輛
        車主之友(2022年4期)2022-08-27 00:58:26
        您撥打的用戶已戀愛,請(qǐng)稍后再哭
        關(guān)注用戶
        商用汽車(2016年11期)2016-12-19 01:20:16
        關(guān)注用戶
        商用汽車(2016年5期)2016-11-28 09:55:15
        兩新黨建新媒體用戶與全網(wǎng)新媒體用戶之間有何差別
        關(guān)注用戶
        商用汽車(2016年6期)2016-06-29 09:18:54
        關(guān)注用戶
        商用汽車(2016年4期)2016-05-09 01:23:12
        挖掘用戶需求尖端科技應(yīng)用
        Camera360:拍出5億用戶
        100萬用戶
        精品午夜福利无人区乱码一区| 男人扒开女人双腿猛进女人机机里 | 国产剧情亚洲一区二区三区| 男女裸体做爰视频高清| 亚洲人成77777在线播放网站| 狠狠人妻久久久久久综合| 免费一区二区三区在线视频| 杨幂Av一区二区三区| 亚洲春色视频在线观看| 国产一区二区三区在线视频观看| 日韩av无码精品一二三区| 豆国产95在线 | 亚洲| 亚洲无码夜夜操| 日韩久久无码免费看A| 国产精品一区二区三区女同| 国产自拍av在线观看| 免费观看a级片| 小sao货水好多真紧h视频| 国产精品原创永久在线观看| 女同av免费在线播放| 大陆老熟女自拍自偷露脸| 国产成人精品综合在线观看| 欧美亚洲精品一区二区| 亚洲国产精品综合福利专区| 亚洲av日韩av天堂久久不卡| 久久99精品久久久大学生| 丰满熟妇乱又伦| 国产视频不卡在线| 麻婆视频在线免费观看| 久久精品国产免费观看| 97视频在线播放| 高清国产精品一区二区| 亚洲精品乱码久久久久蜜桃| 国产无遮挡a片又黄又爽| 无码啪啪人妻| 男女主共患难日久生情的古言| 午夜亚洲av日韩av无码大全| a级毛片免费观看网站| 国产视频最新| 久久精品国产熟女亚洲av麻豆| 成人日韩熟女高清视频一区|