張華偉
摘 要 用戶(hù)評(píng)分?jǐn)?shù)據(jù)極端稀疏的情況之下進(jìn)行了分析,根據(jù)現(xiàn)有的項(xiàng)目進(jìn)行評(píng)分預(yù)測(cè)的協(xié)同過(guò)濾推薦算法中,項(xiàng)目與項(xiàng)目之間的相似度量不夠準(zhǔn)確以及新的項(xiàng)目冷啟動(dòng)問(wèn)題,從而給出一種優(yōu)化的基于項(xiàng)目評(píng)分預(yù)測(cè)的協(xié)同過(guò)濾推薦算法,這種算法是在計(jì)算項(xiàng)目與項(xiàng)目之間的相似性的時(shí)候,不但考慮項(xiàng)目的評(píng)分相似度,還會(huì)考慮到項(xiàng)目的特性之間的相似性。通過(guò)實(shí)驗(yàn)表明,利用優(yōu)化后的算法會(huì)計(jì)算出項(xiàng)目與項(xiàng)目之間的相似度更加精準(zhǔn),并且有效地可以解決新項(xiàng)目的推薦問(wèn)題,這樣讓數(shù)據(jù)稀疏性對(duì)推薦的結(jié)果產(chǎn)生的負(fù)面影響相對(duì)較小,還可以提高系統(tǒng)的推薦質(zhì)量問(wèn)題。
關(guān)鍵詞 算法 推薦系統(tǒng) 協(xié)同過(guò)濾 評(píng)分相似性
1協(xié)同過(guò)濾推薦算法技術(shù)的闡述
目前最為成功的個(gè)性化推薦技術(shù)就是協(xié)同過(guò)濾推薦技術(shù),在協(xié)同過(guò)濾推薦技術(shù)當(dāng)中,用戶(hù)可以利用相互協(xié)作的作用來(lái)選擇有用的信息,就是可以根據(jù)其他用戶(hù)對(duì)信息作出評(píng)價(jià)來(lái)選擇想要的信息。協(xié)同過(guò)濾推薦技術(shù)方法會(huì)向用戶(hù)的行為進(jìn)行合理分析,但并不會(huì)關(guān)心信息的實(shí)際內(nèi)容,系統(tǒng)會(huì)自動(dòng)的收集用戶(hù)對(duì)信息評(píng)價(jià)具有相同興趣愛(ài)好的用戶(hù),然后把具有相同興趣愛(ài)好的用戶(hù)對(duì)于信息評(píng)價(jià)從而產(chǎn)生出推薦結(jié)果。
協(xié)同過(guò)濾推薦技術(shù)是有兩種方式的,一種是基于用戶(hù)的協(xié)同過(guò)濾推薦,另一種是基于項(xiàng)目的協(xié)同過(guò)濾推薦。前面一種是根據(jù)評(píng)分相似的具有相同興趣愛(ài)好的用戶(hù)的信息評(píng)分來(lái)對(duì)目標(biāo)用戶(hù)產(chǎn)生推薦結(jié)果。因?yàn)橄嗤d趣愛(ài)好的用戶(hù)對(duì)于項(xiàng)目的評(píng)分與目標(biāo)用戶(hù)是非常接近的,為此目標(biāo)用戶(hù)對(duì)于沒(méi)有評(píng)分項(xiàng)的評(píng)分可以通過(guò)相同興趣愛(ài)好的用戶(hù)對(duì)項(xiàng)的評(píng)分來(lái)進(jìn)行預(yù)判。
為了可以找到與目標(biāo)用戶(hù)相同興趣愛(ài)好的用戶(hù)從而必須推薦度量用戶(hù)之間的相似性,然后在通過(guò)選擇相似性最高的若干用戶(hù)作為目標(biāo)用的相同興趣愛(ài)好的用戶(hù)。計(jì)算用戶(hù)之間相似性的方法有好幾種其中以下兩種較為普遍:
(1)余弦相似性 (cosine)。 用戶(hù)評(píng)分則是看出n維項(xiàng)目空間上的向量, 若用戶(hù)沒(méi)有對(duì)項(xiàng)目進(jìn)行評(píng)分, 那么用戶(hù)對(duì)這個(gè)項(xiàng)目的評(píng)分是0, 用戶(hù)之間的相似性可以通過(guò)向量間的余弦?jiàn)A角度量。設(shè)立用戶(hù)u和用戶(hù)v,在n維項(xiàng)目空間上的評(píng)分可以分別表示為:
向量u和v, 則用戶(hù)u和v之間的相似性sim(u, v)為 :
sim(u, v)=cos(u, v)=u· v/(‖ u‖ ???v‖ ) (1) 式中表示:分子是兩個(gè)用戶(hù)評(píng)分向量的內(nèi)積;而分母則是兩個(gè)向量模的乘積,當(dāng)夾角越小時(shí),則相似度越高。
(2)關(guān)聯(lián)的相似性correlation)??梢栽O(shè)置用戶(hù)u與用戶(hù)v共同評(píng)分過(guò)的項(xiàng)目集合用Iuv表示, 則用戶(hù)u和用戶(hù)v之間的相似性 sim(u, v)經(jīng)過(guò)pearson有關(guān)聯(lián)的系數(shù)度量: sim(u, v)=[ ∑i∈ Iuv (Ru, i-Ru)(Rv, i-Rv)] / [ ∑i∈ Iuv (Ru, i-Ru)2 ∑i∈ Iuv (Rv, i-Rv)2 ] ,其中(2)式中:Ru,i表示用戶(hù)u對(duì)項(xiàng)目i的評(píng)分;Ru和Rv則分別表示為用戶(hù)u和用戶(hù)v對(duì)項(xiàng)目的平均評(píng)分。
2實(shí)驗(yàn)以及結(jié)果分析
2.1數(shù)據(jù)集
該實(shí)驗(yàn)的數(shù)據(jù)集是來(lái)自MovieLens站點(diǎn),這個(gè)站點(diǎn)是是一個(gè)Web的上研究型推薦系統(tǒng),使用該系統(tǒng)必須滿(mǎn)足一個(gè)條件,就是注冊(cè)用戶(hù)必須對(duì)他所擁有的電影中的15部進(jìn)行評(píng)價(jià)才能夠使用這個(gè)系統(tǒng),至少15部。對(duì)此,這個(gè)站點(diǎn)每一個(gè)注冊(cè)用戶(hù)都至少對(duì)15部電影評(píng)價(jià)過(guò)。當(dāng)前,這個(gè)站點(diǎn)的注冊(cè)用戶(hù)已經(jīng)超過(guò)了45000人,電影超過(guò)6600部被用戶(hù)評(píng)分過(guò)。實(shí)驗(yàn)數(shù)據(jù)集就從這個(gè)站點(diǎn)的數(shù)據(jù)集中隨機(jī)的抽取100000個(gè)評(píng)價(jià)數(shù)據(jù),當(dāng)中有943名用戶(hù)對(duì)1682部電影進(jìn)行評(píng)價(jià),同時(shí)要求每個(gè)用戶(hù)都要至少對(duì)100部電影進(jìn)行評(píng)價(jià);與此同時(shí),還會(huì)對(duì)這1682部電影的20個(gè)特征屬性都給予一定的權(quán)值。把這個(gè)分為兩部分進(jìn)行實(shí)驗(yàn),分別是訓(xùn)練集和測(cè)試集,經(jīng)過(guò)實(shí)驗(yàn)表明訓(xùn)練集數(shù)據(jù)是占整個(gè)數(shù)據(jù)集的80%,而測(cè)試集是占整個(gè)數(shù)據(jù)集的20%。
2.2評(píng)價(jià)的標(biāo)準(zhǔn)
評(píng)價(jià)推薦系統(tǒng)推薦質(zhì)量的度量標(biāo)準(zhǔn),采取的是統(tǒng)計(jì)度量方法中的平均絕對(duì)偏差MAE進(jìn)行度量。MAE經(jīng)過(guò)計(jì)算預(yù)測(cè)用戶(hù)評(píng)分與實(shí)際用戶(hù)評(píng)分之間是有偏差的,利用偏差來(lái)度量預(yù)測(cè)的準(zhǔn)確性,若是MAE的值越小,那么推薦質(zhì)量就越高。根據(jù)評(píng)分?jǐn)?shù)據(jù)來(lái)預(yù)測(cè)的評(píng)分集合表示為{p1 , p2 , …,pN},而實(shí)際的評(píng)分集合則表示為成{q1 , q2 , …, qN}, 一般常用的的推薦質(zhì)量度量方法為MAE=∑ N i=1 piqi /N進(jìn)行度量。
2.3實(shí)驗(yàn)的結(jié)果以及分析
這個(gè)實(shí)驗(yàn)所提出的算法都是具有有效性的,采取的基于項(xiàng)目評(píng)分以及項(xiàng)目特質(zhì)屬性相互結(jié)合的方法來(lái)計(jì)算出項(xiàng)目之間的相似之處。在這個(gè)基礎(chǔ)之上可以應(yīng)用本文提出的優(yōu)化算法計(jì)算推薦集。同樣可以把本文的算法與原始的基于項(xiàng)目評(píng)分預(yù)測(cè)的協(xié)同過(guò)濾算法以及可以提出一種改進(jìn)的算法,就是基于修正條件概率下的推薦算法進(jìn)行比較,從而計(jì)算出各種的推薦算法的MAE。通過(guò)分析計(jì)算其實(shí)可以知道在鄰居個(gè)數(shù)不相同的時(shí)候,本文提出的優(yōu)化基于項(xiàng)目評(píng)分預(yù)測(cè)的協(xié)同過(guò)濾推薦算法有著最小的MAE。對(duì)此,用戶(hù)可以在評(píng)分?jǐn)?shù)據(jù)極端稀疏的情況之下進(jìn)行。
3結(jié)語(yǔ)
綜上所述,提出一種優(yōu)化的基于項(xiàng)目評(píng)分預(yù)測(cè)的協(xié)同過(guò)濾推薦算法,在此算法之上有充分考慮到計(jì)算項(xiàng)目相似性的項(xiàng)目之間的評(píng)分相似性和屬性相似性,這樣可以讓數(shù)據(jù)稀疏性對(duì)計(jì)算結(jié)果的負(fù)面影響變小。本文通過(guò)優(yōu)化算法可以在一定程度上提升系統(tǒng)的推薦質(zhì)量。
參考文獻(xiàn)
[1] 鄧愛(ài)林,朱揚(yáng)勇,施伯樂(lè).基于項(xiàng)目評(píng)分預(yù)測(cè)的協(xié)同過(guò)濾推薦算法[J].軟件學(xué)報(bào),2013(09):1621-1628.
[2] 姚忠,魏佳,吳躍.基于高維稀疏數(shù)據(jù)聚類(lèi)的協(xié)同過(guò)濾推薦算法[J].信息系統(tǒng)學(xué)報(bào),2015,2(02):78-96.
[3] 黃創(chuàng)光,印鑒,汪靜,劉玉葆,王甲海.不確定近鄰的協(xié)同過(guò)濾推薦算法[J]. 計(jì)算機(jī)學(xué)報(bào),2010,33(08):1369-1377.
[4] 賈冬艷,張付志.基于雙重鄰居選取策略的協(xié)同過(guò)濾推薦算法[J].計(jì)算機(jī)研究與發(fā)展,2013,50(05):1076-1084.
[5] 于金明,孟軍,吳秋峰.基于改進(jìn)相似性度量的項(xiàng)目協(xié)同過(guò)濾推薦算法[J]. 計(jì)算機(jī)應(yīng)用,2017,37(05):1387-1391+1406.