亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

基于用戶相似度的稀疏數(shù)據(jù)協(xié)同過濾推薦方法

文檔序號:10655173閱讀:764來源:國知局
基于用戶相似度的稀疏數(shù)據(jù)協(xié)同過濾推薦方法
【專利摘要】本發(fā)明公開一種基于用戶相似度的稀疏數(shù)據(jù)協(xié)同過濾推薦方法,主要解決現(xiàn)有技術(shù)中面臨稀疏數(shù)據(jù)時,計(jì)算用戶之間相似度值不準(zhǔn)確,進(jìn)而影響推薦質(zhì)量的問題。其實(shí)現(xiàn)步驟為:(1)構(gòu)建稀疏用戶對項(xiàng)目的評分矩陣;(2)計(jì)算任意兩個項(xiàng)目之間的全局相似性;(3)計(jì)算任意兩個用戶評分之間的局部相似性;(4)計(jì)算任意兩個用戶之間的相似度;(5)預(yù)測評分;(6)產(chǎn)生推薦列表;(7)完成了對所有用戶的協(xié)同過濾項(xiàng)目推薦。通過實(shí)驗(yàn)仿真結(jié)果表明,在稀疏數(shù)據(jù)集上,本發(fā)明與傳統(tǒng)協(xié)同過濾推薦方法相比計(jì)算用戶之間相似度更準(zhǔn)確,進(jìn)而提高推薦質(zhì)量,更好的滿足用戶需求。
【專利說明】
基于用戶相似度的稀疏數(shù)據(jù)協(xié)同過濾推薦方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明屬于物理技術(shù)領(lǐng)域,更進(jìn)一步設(shè)及項(xiàng)目推薦技術(shù)領(lǐng)域中的一種基于用戶相 似度的稀疏數(shù)據(jù)協(xié)同過濾推薦方法。本發(fā)明可根據(jù)用戶對物品的評分信息,通過計(jì)算用戶 之間的相似度進(jìn)而根據(jù)相似度大小為用戶選取鄰居用戶集,由此發(fā)現(xiàn)用戶的興趣點(diǎn),從而 引導(dǎo)用戶發(fā)現(xiàn)自己需要的物品,將用戶感興趣的物品推薦給用戶,給用戶解決個性化推薦 問題。
【背景技術(shù)】
[0002] 隨著互聯(lián)網(wǎng)的進(jìn)一步普及,信息過載問題日益嚴(yán)重,如何從海量信息中快速有效 獲取自己感興趣的信息已經(jīng)成為一個亟需解決的問題。面臨上述問題,推薦系統(tǒng)應(yīng)運(yùn)而生 并且受到廣泛關(guān)注。推薦系統(tǒng)通過分析用戶的歷史行為數(shù)據(jù),分析發(fā)現(xiàn)用戶的興趣愛好,并 為用戶推薦其感興趣的物品或是信息。現(xiàn)如今,已存在的推薦方法有很多,其中協(xié)同過濾是 應(yīng)用最為廣泛且最為成功的一種推薦方法。其中基于內(nèi)存的協(xié)同過濾主要思想是首先通過 合理的相似性指標(biāo)計(jì)算用戶之間的相似度,然后根據(jù)相似度大小為目標(biāo)用戶選取合適的鄰 居用戶集,進(jìn)而為目標(biāo)用戶未評過分的項(xiàng)目進(jìn)行預(yù)測評分,最后根據(jù)預(yù)測評分大小進(jìn)行推 薦。因此,相似性指標(biāo)的設(shè)計(jì)選取至關(guān)重要,其影響著目標(biāo)用戶鄰居集,進(jìn)而影響著最終的 推薦質(zhì)量。
[0003] 西安電子科技大學(xué)申請的專利"基于化ccard均衡距離的協(xié)同過濾推薦方法"(申 請?zhí)枺?01510493501,申請公布號:CN 105095476 A)中公開了一種協(xié)同過濾推薦方法。該方 法的實(shí)施步驟是:步驟1,從推薦系統(tǒng)中獲取用戶項(xiàng)目評分,并計(jì)算用戶之間的相似度。步驟 2,根據(jù)用戶項(xiàng)目評分,確定最近鄰居查詢個數(shù)。步驟3,根據(jù)相似度矩陣確定目標(biāo)用戶鄰居 集再由鄰居集計(jì)算目標(biāo)用戶對所有未評分的項(xiàng)目進(jìn)行評分預(yù)測。步驟4,根據(jù)評分預(yù)測情況 進(jìn)行推薦。該方法存在的不足之處是,其計(jì)算用戶之間的相似度時只利用了用戶之間的共 同評分項(xiàng)目信息,數(shù)據(jù)比較稀疏的情況下,相似度的計(jì)算不準(zhǔn)確,進(jìn)而影響最終的推薦質(zhì) 量。
[0004] Bidyut Kr.Patra 等人在其發(fā)表的論文"A new similarity measure using Bhsttschsryys coefficient for col Isborstive filtering in sp 曰 rse d曰 t 曰'' 化nowledge-Based Systems 82(2015) 163-177)中提出了一種基于BCF的協(xié)同過濾推薦方 法,該方法的實(shí)施步驟是:步驟1,建立用戶和物品的稀疏評分矩陣信息。步驟2,結(jié)合 Bhattacharyya系數(shù)計(jì)算物品之間的全局相似度,然后將用戶的平均評分或是評分中位數(shù) 作為參考基準(zhǔn)計(jì)算用戶評分局部相似度,最后根據(jù)用戶之間的所有評分信息計(jì)算用戶之間 的相似度。步驟3,根據(jù)用戶相似度大小為目標(biāo)用戶選取鄰居用戶集。步驟4,根據(jù)鄰居用戶 評分情況進(jìn)行推薦。該方法雖然利用了用戶之間所有評分信息,但是僅僅采用 Bhattacharyya系數(shù)計(jì)算物品之間全局相似性不準(zhǔn)確還可W進(jìn)一步提高,并且在計(jì)算用戶 評分局部相似性時僅僅利用了傳統(tǒng)相似性指標(biāo)不準(zhǔn)確,所W影響用戶相似度的計(jì)算進(jìn)而影 響最終推薦效果。

【發(fā)明內(nèi)容】

[0005] 本發(fā)明的目的是針對現(xiàn)有技術(shù)的協(xié)同過濾推薦方法在面臨稀疏數(shù)據(jù)時,其采用的 相似性指標(biāo)存在的缺陷與不足,提出了一種基于用戶相似度的稀疏數(shù)據(jù)協(xié)同過濾推薦方 法。本發(fā)明針對稀疏數(shù)據(jù)結(jié)合化attacharyya系數(shù)與化ccard系數(shù)W構(gòu)建用戶相似度進(jìn)行協(xié) 同過濾推薦,有效克服了數(shù)據(jù)稀疏問題對推薦結(jié)果產(chǎn)生的負(fù)面影響。
[0006] 為了實(shí)現(xiàn)上述目的,本發(fā)明的具體實(shí)現(xiàn)步驟如下:
[0007] (1)構(gòu)建稀疏用戶對項(xiàng)目的評分矩陣:
[0008] (Ia)從用戶對項(xiàng)目的評分?jǐn)?shù)據(jù)集中隨機(jī)提取用戶對項(xiàng)目的評分信息,創(chuàng)建用戶對 項(xiàng)目的稀疏評分矩陣R(nXm),其中,n表示用戶數(shù)量,m表示項(xiàng)目數(shù)量;
[0009] (Ib)將稀疏評分矩陣中用戶未評過分的項(xiàng)目的評分用0表示,將稀疏評分矩陣中 用戶評過分的項(xiàng)目的評分用對應(yīng)評分值表示;
[0010] (2)計(jì)算稀疏評分矩陣中任意兩個項(xiàng)目之間的全局相似性:
[0011] (2a)按照下式,計(jì)算稀疏評分矩陣中任意兩個項(xiàng)目之間的雅克比化ccard系數(shù):
[0012]
[001引其中,JaccardQ,j)表示稀疏評分矩陣中任意項(xiàng)目i與項(xiàng)目j的雅克比化ccard系 數(shù),ri表示稀疏評分矩陣中項(xiàng)目i的評分集合,n表示稀疏評分矩陣中項(xiàng)目j的評分集合,ri n r康示項(xiàng)目i的評分集合與項(xiàng)目j的評分集合的交集,I ri n d表示兩個評分集合的交集 中評分個數(shù),ri U n表示項(xiàng)目i的評分集合與項(xiàng)目j的評分集合的并集,I n U n I表示兩個評 分集合的并集中評分個數(shù);
[0014] (2b)計(jì)算稀疏評分矩陣中任意兩個項(xiàng)目之間的己氏化attacharyya系數(shù);
[0015] (2c)按照下式,計(jì)算稀疏評分矩陣中任意兩個項(xiàng)目之間的全局相似性:
[0016] BCJ(i,j) = [1+Jaccard(i,j)]地C(i,j)
[0017]其中,BCJ(i,j)表示稀疏評分矩陣中任意項(xiàng)目i與項(xiàng)目j的全局相似性Jaccard Q,j)表示項(xiàng)目i與項(xiàng)目j的雅克比化ccard系數(shù),*表示相乘操作,BCQ,j)表示項(xiàng)目i與項(xiàng)目 j 的己氏Miat1:acharyya 系數(shù);
[0018] (2d)判斷是否計(jì)算完稀疏評分矩陣中所有項(xiàng)目的全局相似性,若是,執(zhí)行步驟 (3),否則,執(zhí)行步驟(2a);
[0019] (3)計(jì)算稀疏評分矩陣中任意兩個用戶評分之間的局部相似性:
[0020] (3a)按照下式,計(jì)算稀疏評分矩陣中任意兩個用戶評分之間的局部相似性:
[0021]
[0022] 其中,Ioc表示稀疏評分矩陣中任意兩個用戶評分之間的局部相似性,表示稀疏 評分矩陣中任意用戶U對項(xiàng)目i的評分,rvj表示稀疏評分矩陣中任意用戶V對項(xiàng)目j的評分, ^表示稀疏評分矩陣中任意用戶U的平均評分,表示稀疏評分矩陣中任意用戶V的平均評 分,e表示求自然常數(shù)操作,*表示相乘操作,;::;;;表示在[1,2,3,4,引評分區(qū)間的中位數(shù)3;
[0023] (3b)判斷是否計(jì)算完稀疏評分矩陣中所有用戶評分的局部相似性,若是,執(zhí)行步 驟(4),否則,執(zhí)行步驟(3a);
[0024] (4)計(jì)算稀疏評分矩陣中任意兩個用戶之間的相似度:
[0025] (4a)計(jì)算稀疏評分矩陣中任意兩個用戶之間雅克比化ccard系數(shù);
[0026] (4b)按照下式,計(jì)算稀疏評分矩陣中任意兩個用戶之間的相似度:
[0027]
[00%] 其中,sim(m,n)表示稀疏評分矩陣中任意用戶m與用戶n的相似度,Jaccard(m,n) 表不用戶m與用戶n的雅克比化ccard系數(shù),X表不求和操作,Im表不用戶m的評分集合,In表 示用戶n的評分集合,E表示屬于符號,BCJQ, j)表示項(xiàng)目i與項(xiàng)目j的全局相似性,*表示相 乘操作,Ioc (rmi ,rnj)表不評分打Ii與評分rnj的局部相關(guān)性,打Ii表不用戶m對項(xiàng)目i的評分,:Tnj 表示用戶n對項(xiàng)目j的評分;
[0029] (4c)判斷是否計(jì)算完稀疏評分矩陣中所有用戶的相似度,若是,執(zhí)行步驟(5),否 貝IJ,執(zhí)行步驟(4a);
[0030] (5)預(yù)測評分:
[0031 ] (5a)選取稀疏評分矩陣中任意一個用戶作為目標(biāo)用戶;
[0032] (5b)將目標(biāo)用戶與其它用戶的相似度值按照從大到小排序,選取排序中前K個用 戶,作為目標(biāo)用戶的鄰居用戶集,K>50;
[0033] (5c)采用協(xié)同過濾公式,對稀疏評分矩陣中目標(biāo)用戶評分為0的項(xiàng)目進(jìn)行預(yù)測評 分;
[0034] (5d)判斷稀疏評分矩陣中所有用戶是否均選為目標(biāo)用戶,若是,則執(zhí)行步驟(6), 否則,執(zhí)行步驟(5a);
[00巧](6)產(chǎn)生推薦列表:
[0036] (6a)選取稀疏評分矩陣中任意一個用戶作為目標(biāo)用戶,并為其產(chǎn)生推薦列表;
[0037] (6b)將稀疏評分矩陣中目標(biāo)用戶評分為0的項(xiàng)目按照預(yù)測評分從大到小排序,從 排序中選取前N個項(xiàng)目作為最終的推薦集合,
[003引(6c)判斷稀疏評分矩陣中所有用戶是否均產(chǎn)生了推薦列表,若是,則執(zhí)行步驟 (7),否則,執(zhí)行步驟(6a);
[0039] (7)完成了對所有用戶的協(xié)同過濾項(xiàng)目推薦。
[0040] 本發(fā)明與現(xiàn)有技術(shù)相比有W下優(yōu)點(diǎn):
[0041] 第1,由于本發(fā)明采用了計(jì)算任意兩個項(xiàng)目之間的全局相似性時結(jié)合 Bhattacharyya系數(shù)與化ccard系數(shù)的方法,有效克服了現(xiàn)有技術(shù)在數(shù)據(jù)稀疏的情況下,物 品全局相似度的計(jì)算不準(zhǔn)確對推薦正確率產(chǎn)生負(fù)面影響的不足,使得本發(fā)明具有計(jì)算項(xiàng)目 之間全局相似性更加準(zhǔn)確,繼而提高推薦正確率的優(yōu)點(diǎn)。
[0042] 第2,由于本發(fā)明采用了計(jì)算用戶評分之間的局部相似性時,同時將用戶平均評分 與評分中位數(shù)作為參考基準(zhǔn),并結(jié)合sigmoid函數(shù)的方法,有效克服了現(xiàn)有技術(shù)在數(shù)據(jù)稀疏 情況下,計(jì)算用戶評分局部相似性,僅僅利用傳統(tǒng)相似性指標(biāo)不準(zhǔn)確,導(dǎo)致推薦質(zhì)量下降的 缺點(diǎn),使得本發(fā)明具有計(jì)算用戶評分局部相似性更有效進(jìn)而減小推薦誤差的優(yōu)點(diǎn)。
【附圖說明】
[0043] 圖1是本發(fā)明的流程圖;
[0044] 圖2是本發(fā)明與現(xiàn)有技術(shù)在ML數(shù)據(jù)集上平均絕對誤差隨鄰居用戶數(shù)量k變化的仿 真結(jié)果圖;
[0045] 圖3是本發(fā)明與現(xiàn)有技術(shù)在ML數(shù)據(jù)集上正確率隨推薦列表長度Top-N變化的仿真 結(jié)果圖;
[0046] 圖4是本發(fā)明與現(xiàn)有技術(shù)在ML數(shù)據(jù)集上召回率隨推薦列表長度Top-N變化的仿真 結(jié)果圖;
[0047] 圖5是本發(fā)明與現(xiàn)有技術(shù)在化t數(shù)據(jù)集上平均絕對誤差隨鄰居用戶數(shù)量k變化的仿 真結(jié)果圖;
[0048] 圖6是本發(fā)明與現(xiàn)有技術(shù)在化t數(shù)據(jù)集上正確率隨推薦列表長度Top-N變化的仿真 結(jié)果圖;
[0049] 圖7是本發(fā)明與現(xiàn)有技術(shù)在化t數(shù)據(jù)集上召回率隨推薦列表長度Top-N變化的仿真 結(jié)果圖。
【具體實(shí)施方式】
[0050] W下結(jié)合附圖對本發(fā)明的具體實(shí)施措施進(jìn)行詳細(xì)描述。
[0051] 參照圖1,本發(fā)明的實(shí)現(xiàn)步驟如下:
[0052] 步驟1,構(gòu)建稀疏用戶對項(xiàng)目的評分矩陣。
[0053] 從用戶對項(xiàng)目的評分?jǐn)?shù)據(jù)集中隨機(jī)提取用戶對項(xiàng)目的評分信息,創(chuàng)建用戶對項(xiàng)目 的稀疏評分矩陣R(n Xm),其中,n表示用戶數(shù)量,m表示項(xiàng)目數(shù)量。
[0054] 將稀疏評分矩陣中用戶未評過分的項(xiàng)目的評分用0表示,將稀疏評分矩陣中用戶 評過分的項(xiàng)目的評分用對應(yīng)評分值表示。
[0055] 步驟2,計(jì)算稀疏評分矩陣中任意兩個項(xiàng)目之間的全局相似性。
[0056] 第1步,按照下式,計(jì)算稀疏評分矩陣中任意兩個項(xiàng)目之間的雅克比化ccard系數(shù):
[0化7]
[00則其中,JaccardU,j)表示稀疏評分矩陣中任意項(xiàng)目i與項(xiàng)目j的雅克比Jaccard系 數(shù),ri表示稀疏評分矩陣中項(xiàng)目i的評分集合,n表示稀疏評分矩陣中項(xiàng)目j的評分集合,ri n r康示項(xiàng)目i的評分集合與項(xiàng)目j的評分集合的交集,I ri n d表示兩個評分集合的交集 中評分個數(shù),ri U n表示項(xiàng)目i的評分集合與項(xiàng)目j的評分集合的并集,I n U n I表示兩個評 分集合的并集中評分個數(shù)。
[0059] 第2步,按照下式,計(jì)算稀疏評分矩陣中任意兩個項(xiàng)目之間的己氏化attacharyya 系數(shù):
[0060]
[0061 ] 其中,BC(i , j)表示稀疏評分矩陣中任意項(xiàng)目i與項(xiàng)目j的己氏化attacharyya系 數(shù),X表示求和操作,h表示稀疏評分矩陣中用戶對項(xiàng)目的評分分?jǐn)?shù),廣表示開平方操作, /1表示稀疏評分矩陣中將項(xiàng)目i評分為h的用戶比例
'Cih表示稀疏評分矩陣中將項(xiàng) 目i評分為h的用戶數(shù),Cl表示稀疏評分矩陣中將項(xiàng)目i評過分的用戶數(shù);表示稀疏評分矩 陣中將項(xiàng)目j評分為h用戶的比仍
旬h表示稀疏評分矩陣中將項(xiàng)目j評分為h的用戶 數(shù),Cj表示稀疏評分矩陣中將項(xiàng)目j評過分的用戶數(shù)。
[0062] 第3步,按照下式,計(jì)算稀疏評分矩陣中任意兩個項(xiàng)目之間的全局相似性:
[0063] BCJ(i,j) = [1+Jaccard(i,j)]地C(i,j)
[0064] 其中,BCJQ J)表示稀疏評分矩陣中任意項(xiàng)目i與項(xiàng)目j的全局相似性,Jaccard Q,j)表示項(xiàng)目i與項(xiàng)目j的雅克比化ccard系數(shù),*表示相乘操作,BCQ,j)表示項(xiàng)目i與項(xiàng)目 j 的己氏Miat1:acharyya 系數(shù)。
[0065] 第4步,判斷是否計(jì)算完稀疏評分矩陣中所有項(xiàng)目的全局相似性,若是,執(zhí)行步驟 3,否則,執(zhí)行本步驟的第1步。
[0066] 步驟3,計(jì)算稀疏評分矩陣中任意兩個用戶評分之間的局部相似性。
[0067] 第1步,按照下式,計(jì)算稀疏評分矩陣中任意兩個用戶評分之間的局部相似性:
[006引
[0069] 其中,Ioc表示稀疏評分矩陣中任意兩個用戶評分之間的局部相似性,表示稀疏 評分矩陣中任意用戶U對項(xiàng)目i的評分,rvj表示稀疏評分矩陣中任意用戶V對項(xiàng)目j的評分, ;:表示稀疏評分矩陣中任意用戶U的平均評分,;;;表示稀疏評分矩陣中任意用戶V的平均評 分,e表示求自然常數(shù)操作,*表示相乘操作,;:品表示在[1,2,3,4,引評分區(qū)間的中位數(shù)3。
[0070] 第2步,判斷是否計(jì)算完稀疏評分矩陣中所有用戶評分的局部相似性,若是,執(zhí)行 步驟4,否則,執(zhí)行本步驟的第1步。
[0071 ]步驟4,計(jì)算稀疏評分矩陣中任意兩個用戶之間的相似度。
[0072] 第1步,按照下式,計(jì)算稀疏評分矩陣中任意兩個用戶之間雅克比化ccard系數(shù);
[0073]
[0074] 其中,JaccarcKk,1)表示稀疏評分矩陣中任意用戶k與用戶1的雅克比化ccard系 數(shù),rk表示稀疏評分矩陣中任意用戶k的評分集合,ri表示稀疏評分矩陣中任意用戶1的評分 集合,Innril表示用戶k的評分集合與用戶1的評分集合的交集中評分個數(shù),InUriI表示 用戶k的評分集合與用戶1的評分集合的并集中評分個數(shù)。
[0075] 第2步,按照下式,計(jì)算稀疏評分矩陣中任意兩個用戶之間的相似度:
[0076]
[0077] 其中,sim(m,n)表示稀疏評分矩陣中任意用戶m與用戶n的相似度,Jaccard(m,n) 表不用戶m與用戶n的雅克比化ccard系數(shù),X表不求和操作,Im表不用戶m的評分集合,In表 示用戶n的評分集合,G表示屬于符號,BCJ(i,j)表示項(xiàng)目i與項(xiàng)目j的全局相似性,*表示相 乘操作,Ioc (rmi,rnj )表示評分打Ii與評分rnj的局部相關(guān)性,打Ii表示用戶m對項(xiàng)目i的評分,:Tnj 表示用戶n對項(xiàng)目j的評分。
[0078]第3步,判斷是否計(jì)算完稀疏評分矩陣中所有用戶的相似度,若是,執(zhí)行步驟5,否 貝IJ,執(zhí)行本步驟的第1步。
[00巧]步驟5,預(yù)測評分。
[0080] 第1步,選取稀疏評分矩陣中任意一個用戶作為目標(biāo)用戶。
[0081] 第2步,將目標(biāo)用戶與其它用戶的相似度值按照從大到小排序,選取排序中前K個 用戶,作為目標(biāo)用戶的鄰居用戶集,K>50。
[0082] 第3步,采用如下協(xié)同過濾公式,對稀疏評分矩陣中目標(biāo)用戶評分為0的項(xiàng)目進(jìn)行 預(yù)測評分:
[0083]
[0084] 其中,Pai表示對目標(biāo)用戶a對未評過分的項(xiàng)目i的預(yù)測評分,~表示用戶a的平均評 分,S表示求和操作,G表示屬于符號,Hai表示目標(biāo)用戶a鄰居用戶集中對項(xiàng)目i評過分的鄰 居用戶子集,
其中,S表示目標(biāo)用戶的鄰居用戶,G表示屬于符號,Ka 表示用戶a的鄰居用戶集,I表示集合定義符號,3表示存在符號,表示鄰居用戶S對項(xiàng)目i 的評分,S im(a, S)表不用戶a與鄰居用戶S的相似度。
[0085] 第4步,判斷稀疏評分矩陣中所有用戶是否均選為目標(biāo)用戶,若是,則執(zhí)行步驟6, 否則,執(zhí)行本步驟的第1步。
[00化]步驟6,產(chǎn)生推薦列表。
[0087]第1步,選取稀疏評分矩陣中任意一個用戶作為目標(biāo)用戶,并為其產(chǎn)生推薦列表。 [008引第2步,將稀疏評分矩陣中目標(biāo)用戶評分為0的項(xiàng)目按照預(yù)測評分從大到小排序, 從排序中選取前N個項(xiàng)目作為最終的推薦集合,2《N《20。
[0089] 第3步,判斷稀疏評分矩陣中所有用戶是否均產(chǎn)生了推薦列表,若是,則執(zhí)行步驟 7,否則,執(zhí)行本步驟的第1步。
[0090] 步驟7,完成了對所有用戶的協(xié)同過濾項(xiàng)目推薦。
[0091 ]本發(fā)明可通過W下仿真實(shí)驗(yàn)結(jié)果進(jìn)一步說明。
[0092] 1.仿真實(shí)驗(yàn)的條件:
[0093] 仿真實(shí)驗(yàn)運(yùn)行環(huán)境:CPU為Intel (R)Core(TMH5-3337U@l. 8細(xì)Z,內(nèi)存為4GB,編譯 環(huán)境為 Matlab2014a。
[0094] 2.仿真實(shí)驗(yàn)數(shù)據(jù)與評價(jià)指標(biāo):
[00M]本發(fā)明中采用推薦系統(tǒng)領(lǐng)域常用的數(shù)據(jù)集MovieLens-IM和化tflix電影數(shù)據(jù)集, 為了驗(yàn)證本發(fā)明在稀疏數(shù)據(jù)上的有效性,從兩個數(shù)據(jù)集分別隨機(jī)獲取兩個稀疏數(shù)據(jù)子集ML 和化t,具體數(shù)據(jù)統(tǒng)計(jì)信息見表1。
[0096]表1數(shù)據(jù)集統(tǒng)計(jì)信息
[0097]
[0098] 表1中英文Dataset (original)表示原始數(shù)據(jù)集,Dataset (subset)表示隨機(jī)獲取 的稀疏數(shù)據(jù)子集,WUser表示用戶數(shù)量,#Item表示項(xiàng)目數(shù)量,#3日1:;[]1旨3表示評分?jǐn)?shù)量, Sparsity level表示數(shù)據(jù)稀疏度,?表示稀疏度計(jì)算公式,其中,R表示評分?jǐn)?shù)量,U表 U祐I 示用戶數(shù)量,I表示項(xiàng)目數(shù)量,*表示相乘操作。
[0099] 本發(fā)明采用推薦系統(tǒng)領(lǐng)域常用的評價(jià)指標(biāo),包括平均絕對誤差MAE,正確率 Precision,召回率Recall。其中,MAE指標(biāo)表示預(yù)測評分與真實(shí)評分絕對誤差平均值,由下 式獲得:
[0100]
[0101] 其中,MAE表示平均絕對誤差,X表示求和操作,IU為用戶U評過分的項(xiàng)目集合,K 表示用戶U對物品i的預(yù)測評分,據(jù)表示用戶U對物品i的真實(shí)評分,Ifi-拖I表示預(yù)測評分與 真實(shí)評分的差值的絕對值,#Iu表示用戶U評過分的項(xiàng)目數(shù)量。
[0102] 正確率Precision表示推薦列表中用戶真實(shí)喜歡的項(xiàng)目占推薦列表中所有項(xiàng)目的 比例,由下式獲得:
[0103]
[0104] 其中,Precision表示正確率,n表示推薦列表中用戶真實(shí)喜歡的項(xiàng)目數(shù),ILr I表示 推薦列表中項(xiàng)目數(shù)。
[0105] 召回率Recall表示推薦列表中用戶真實(shí)喜歡的項(xiàng)目占用戶整體喜歡的所有項(xiàng)目 數(shù)的比例,由下式獲得:
[0106]
[0107]其中,Recall表示召回率,n表示推薦列表中用戶真實(shí)喜歡的項(xiàng)目數(shù),Ikevl表示用 戶真實(shí)喜歡的所有項(xiàng)目的數(shù)量。
[010引3.仿真實(shí)驗(yàn)結(jié)果與內(nèi)容:
[0109]仿真實(shí)驗(yàn)1是在ML數(shù)據(jù)集上,W平均絕對誤差MAE為評價(jià)指標(biāo),本發(fā)明化jcf與現(xiàn)有 技術(shù)的基于bcf-cor的協(xié)同過濾推薦方法、基于bcf-med的協(xié)同過濾推薦方法、基于jmsd的 協(xié)同過濾推薦方法、基于nhsm的協(xié)同過濾推薦方法進(jìn)行對比,對比的結(jié)果如圖2所示。圖2 中,縱坐標(biāo)表示平均絕對誤差,橫坐標(biāo)表示鄰居用戶數(shù),W菱形標(biāo)記的曲線表示現(xiàn)有技術(shù)的 基于nhsm的協(xié)同過濾推薦方法,W五角星標(biāo)記的曲線表示現(xiàn)有技術(shù)的基于加 Sd的協(xié)同過濾 推薦方法,W叉形標(biāo)記的曲線表示現(xiàn)有技術(shù)的基于bcf-med的協(xié)同過濾推薦方法,W方形標(biāo) 記的曲線表示現(xiàn)有技術(shù)的基于bcf-cor的協(xié)同過濾推薦方法,W圓形標(biāo)記的曲線表示本發(fā) 明,從圖2中可W看出,總體上本發(fā)明的曲線位于其它現(xiàn)有四種技術(shù)下方,因此說明本發(fā)明 平均絕對誤差是最低的。
[0110]仿真實(shí)驗(yàn)2是在ML數(shù)據(jù)集上,W正確率Precision為評價(jià)指標(biāo),本發(fā)明化jcf與現(xiàn)有 技術(shù)的基于bcf-cor的協(xié)同過濾方法、基于bcf-med的協(xié)同過濾推薦方法、基于jmsd的協(xié)同 過濾推薦方法、基于nhsm的協(xié)同過濾推薦方法進(jìn)行對比,對比結(jié)果如圖3所示。其中,縱坐標(biāo) 表示正確率,橫坐標(biāo)表示推薦列表長度,W菱形標(biāo)記的曲線表示現(xiàn)有技術(shù)的基于nhsm的協(xié) 同過濾推薦方法,W五角星標(biāo)記的曲線表示現(xiàn)有技術(shù)的基于jmsd的協(xié)同過濾推薦方法,W 叉形標(biāo)記的曲線表示現(xiàn)有技術(shù)的基于bcf-med的協(xié)同過濾推薦方法,W方形標(biāo)記的曲線表 示現(xiàn)有技術(shù)的基于bcf-cor的協(xié)同過濾推薦方法,W圓形標(biāo)記的曲線表示本發(fā)明,從圖3中 可W看出,本發(fā)明的曲線位于其它現(xiàn)有四種技術(shù)上方,因此說明本發(fā)明正確率是最高的。
[0111] 仿真實(shí)驗(yàn)3是在ML數(shù)據(jù)集上,W召回率Recall為評價(jià)指標(biāo),本發(fā)明ibjcf與現(xiàn)有技 術(shù)的基于bcf-cor的協(xié)同過濾推薦方法、基于bcf-med的協(xié)同過濾推薦方法、基于jmsd的協(xié) 同過濾推薦方法、基于nhsm的協(xié)同過濾推薦方法進(jìn)行對比,對比結(jié)果如圖4所示。其中,縱坐 標(biāo)表示召回率,橫坐標(biāo)表示推薦列表長度,W菱形標(biāo)記的曲線表示現(xiàn)有技術(shù)的基于nhsm的 協(xié)同過濾推薦方法,W五角星標(biāo)記的曲線表示現(xiàn)有技術(shù)的基于jmsd的協(xié)同過濾推薦方法, W叉形標(biāo)記的曲線表示現(xiàn)有技術(shù)的基于bcf-med的協(xié)同過濾推薦方法,W方形標(biāo)記的曲線 表示現(xiàn)有技術(shù)的基于bcf-cor的協(xié)同過濾推薦方法,W圓形標(biāo)記的曲線表示本發(fā)明,從圖4 中可W看出,本發(fā)明的曲線位于其它現(xiàn)有四種技術(shù)上方,因此說明本發(fā)明召回率是最高的。
[0112] 仿真實(shí)驗(yàn)4是在化t數(shù)據(jù)集上,W平均絕對誤差MAE為評價(jià)指標(biāo),本發(fā)明化jcf與現(xiàn) 有技術(shù)的基于bcf-cor的協(xié)同過濾推薦方法、基于bcf-med的協(xié)同過濾推薦方法、基于jmsd 的協(xié)同過濾推薦方法、基于nhsm的協(xié)同過濾推薦方法進(jìn)行對比,對比結(jié)果如圖5所示。其中, 縱坐標(biāo)表示平均絕對誤差,橫坐標(biāo)表示鄰居用戶數(shù),W菱形標(biāo)記的曲線表示現(xiàn)有技術(shù)的基 于nhsm的協(xié)同過濾推薦方法,W五角星標(biāo)記的曲線表示現(xiàn)有技術(shù)的基于加 Sd的協(xié)同過濾推 薦方法,W叉形標(biāo)記的曲線表示現(xiàn)有技術(shù)的基于bcf-med的協(xié)同過濾推薦方法,W方形標(biāo)記 的曲線表示現(xiàn)有技術(shù)的基于bcf-cor的協(xié)同過濾推薦方法,W圓形標(biāo)記的曲線表示本發(fā)明, 從圖5中可W看出,總體上本發(fā)明的曲線位于其它現(xiàn)有四種技術(shù)下方,因此說明本發(fā)明平均 絕對誤差是最低的。
[0113]仿真實(shí)驗(yàn)5是在化t數(shù)據(jù)集上,W正確率PreciSion為評價(jià)指標(biāo),本發(fā)明ibjcf與現(xiàn) 有技術(shù)的基于bcf-cor的協(xié)同過濾推薦方法、基于bcf-med的協(xié)同過濾推薦方法、基于jmsd 的協(xié)同過濾推薦方法、基于nhsm的協(xié)同過濾推薦方法進(jìn)行對比,對比結(jié)果如圖6所示。其中, 縱坐標(biāo)表示正確率,橫坐標(biāo)表示推薦列表長度,W菱形標(biāo)記的曲線表示現(xiàn)有技術(shù)的基于 nhsm的協(xié)同過濾推薦方法,W五角星標(biāo)記的曲線表示現(xiàn)有技術(shù)的基于jmsd的協(xié)同過濾推薦 方法,W叉形標(biāo)記的曲線表示現(xiàn)有技術(shù)的基于bcf-med的協(xié)同過濾推薦方法,W方形標(biāo)記的 曲線表示現(xiàn)有技術(shù)的基于bcf-cor的協(xié)同過濾推薦方法,W圓形標(biāo)記的曲線表示本發(fā)明,從 圖6中可W看出,本發(fā)明的曲線位于其它現(xiàn)有四種技術(shù)上方,因此說明本發(fā)明正確率是最高 的。
[0114]仿真實(shí)驗(yàn)6是在化t數(shù)據(jù)集上,W召回率Recall為評價(jià)指標(biāo),本發(fā)明化jcf與現(xiàn)有技 術(shù)的基于bcf-cor的協(xié)同過濾推薦方法、基于bcf-med的協(xié)同過濾推薦方法、基于jmsd的協(xié) 同過濾推薦方法、基于nhsm的協(xié)同過濾推薦方法進(jìn)行對比,對比結(jié)果如圖7所示。其中,縱坐 標(biāo)表示召回率,橫坐標(biāo)表示推薦列表長度,W菱形標(biāo)記的曲線表示現(xiàn)有技術(shù)的基于nhsm的 協(xié)同過濾推薦方法,W五角星標(biāo)記的曲線表示現(xiàn)有技術(shù)的基于jmsd的協(xié)同過濾推薦方法, W叉形標(biāo)記的曲線表示現(xiàn)有技術(shù)的基于bcf-med的協(xié)同過濾推薦方法,W方形標(biāo)記的曲線 表示現(xiàn)有技術(shù)的基于bcf-cor的協(xié)同過濾推薦方法,W圓形標(biāo)記的曲線表示本發(fā)明,從圖7 中可W看出,本發(fā)明的曲線位于其它現(xiàn)有四種技術(shù)上方,因此說明本發(fā)明召回率是最高的。
【主權(quán)項(xiàng)】
1. 一種基于用戶相似度的稀疏數(shù)據(jù)協(xié)同過濾推薦方法,包括如下步驟: (1) 構(gòu)建稀疏用戶對項(xiàng)目的評分矩陣: (la) 從用戶對項(xiàng)目的評分?jǐn)?shù)據(jù)集中隨機(jī)提取用戶對項(xiàng)目的評分信息,創(chuàng)建用戶對項(xiàng)目 的稀疏評分矩陣R(n Xm),其中,η表示用戶數(shù)量,m表示項(xiàng)目數(shù)量; (lb) 將稀疏評分矩陣中用戶未評過分的項(xiàng)目的評分用O表示,將稀疏評分矩陣中用戶 評過分的項(xiàng)目的評分用對應(yīng)評分值表示; (2) 計(jì)算稀疏評分矩陣中任意兩個項(xiàng)目之間的全局相似性: (2a)按照下式,計(jì)算稀疏評分矩陣中任意兩個項(xiàng)目之間的雅克比Jaccard系數(shù):其中,Jaccard(i,j)表示稀疏評分矩陣中任意項(xiàng)目i與項(xiàng)目j的雅克比Jaccard系數(shù),ri 表示稀疏評分矩陣中項(xiàng)目i的評分集合,^表示稀疏評分矩陣中項(xiàng)目j的評分集合,ri n 表 示項(xiàng)目i的評分集合與項(xiàng)目j的評分集合的交集,I n n ^ I表示兩個評分集合的交集中評分 個數(shù),n U 〇表示項(xiàng)目i的評分集合與項(xiàng)目j的評分集合的并集,I ri U 〇 I表示兩個評分集合 的并集中評分個數(shù); (2b)計(jì)算稀疏評分矩陣中任意兩個項(xiàng)目之間的巴氏Bhattacharyya系數(shù); (2c)按照下式,計(jì)算稀疏評分矩陣中任意兩個項(xiàng)目之間的全局相似性: BCJ(i,j)=[1+Jaccard(i,j)]*BC(i,j) 其中,BCJ(i,j)表示稀疏評分矩陣中任意項(xiàng)目i與項(xiàng)目j的全局相似性,JaCCard(i,j) 表示項(xiàng)目i與項(xiàng)目j的雅克比Jaccard系數(shù),*表示相乘操作,BC(i,j)表示項(xiàng)目i與項(xiàng)目j的巴 氏 Bhattacharyya 系數(shù); (2d)判斷是否計(jì)算完稀疏評分矩陣中所有項(xiàng)目的全局相似性,若是,執(zhí)行步驟(3),否 貝IJ,執(zhí)行步驟(2a); (3) 計(jì)算稀疏評分矩陣中任意兩個用戶評分之間的局部相似性: (3a)桉照下式,計(jì)筧稀疏評分矩陣中仵意兩個用戶評分夕間的局部相似性:其中,Ioc表示稀疏評分矩陣中任意兩個用戶評分之間的局部相似性,rul表示稀疏評分 矩陣中任意用戶u對項(xiàng)目i的評分,表示稀疏評分矩陣中任意用戶V對項(xiàng)目j的評分,;:表 示稀疏評分矩陣中任意用戶u的平均評分,表示稀疏評分矩陣中任意用戶V的平均評分,e 表示求自然常數(shù)操作,*表示相乘操作,?表示在[1,2,3,4,5 ]評分區(qū)間的中位數(shù)3; (3b)判斷是否計(jì)算完稀疏評分矩陣中所有用戶評分的局部相似性,若是,執(zhí)行步驟 (4),否則,執(zhí)行步驟(3a); (4) 計(jì)算稀疏評分矩陣中任意兩個用戶之間的相似度: (4a)計(jì)算稀疏評分矩陣中任意兩個用戶之間雅克比Jaccard系數(shù); (4b)按照下式,計(jì)算稀疏評分矩陣中任意兩個用戶之間的相似度:其中,sim(m,n)表示稀疏評分矩陣中任意用戶m與用戶η的相似度,Jaccard(m,n)表示 用戶m與用戶η的雅克比Jaccard系數(shù),Σ表示求和操作,Im表示用戶m的評分集合,In表示用 戶η的評分集合,e表示屬于符號,BCJ(i,j)表示項(xiàng)目i與項(xiàng)目j的全局相似性,*表示相乘操 作,1 〇c (rmi,rnj)表示評分rmi與評分rnj的局部相關(guān)性,rmi表示用戶m對項(xiàng)目i的評分,r nj表示 用戶η對項(xiàng)目j的評分; (4c)判斷是否計(jì)算完稀疏評分矩陣中所有用戶的相似度,若是,執(zhí)行步驟(5),否則,執(zhí) 行步驟(4a); (5) 預(yù)測評分: (5a)選取稀疏評分矩陣中任意一個用戶作為目標(biāo)用戶; (5b)將目標(biāo)用戶與其它用戶的相似度值按照從大到小排序,選取排序中前K個用戶,作 為目標(biāo)用戶的鄰居用戶集,K>50; (5c)采用協(xié)同過濾公式,對稀疏評分矩陣中目標(biāo)用戶評分為O的項(xiàng)目進(jìn)行預(yù)測評分; (5d)判斷稀疏評分矩陣中所有用戶是否均選為目標(biāo)用戶,若是,則執(zhí)行步驟(6),否則, 執(zhí)行步驟(5a); (6) 產(chǎn)生推薦列表: (6a)選取稀疏評分矩陣中任意一個用戶作為目標(biāo)用戶,并為其產(chǎn)生推薦列表; (6b)將稀疏評分矩陣中目標(biāo)用戶評分為O的項(xiàng)目按照預(yù)測評分從大到小排序,從排序 中選取前N個項(xiàng)目作為最終的推薦集合,2<N<20; (6c)判斷稀疏評分矩陣中所有用戶是否均產(chǎn)生了推薦列表,若是,則執(zhí)行步驟(7),否 貝IJ,執(zhí)行步驟(6a); (7) 完成了對所有用戶的協(xié)同過濾項(xiàng)目推薦。2. 根據(jù)權(quán)利要求1中所述的基于用戶相似度的稀疏數(shù)據(jù)協(xié)同過濾推薦方法,其特征在 于,步驟(2b)中所述的計(jì)算稀疏評分矩陣中任意兩個項(xiàng)目之間的巴氏Bhattacharyya系數(shù) 是按照如下公式完成的:其中,BC(i J)表示稀疏評分矩陣中任意項(xiàng)目i與項(xiàng)目j的巴氏Bhattacharyya系數(shù),Σ 表示求和操作,h表示稀疏評分矩陣中用戶對項(xiàng)目的評分分?jǐn)?shù),a廠表示開平方操作,&表 示稀疏評分矩陣中將項(xiàng)目i評分為h的用戶比例,^ = f 'Clh表示稀疏評分矩陣中將項(xiàng)目i評 分為h的用戶數(shù),C1表示稀疏評分矩陣中將項(xiàng)目i評過分的用戶數(shù);j;,表示稀疏評分矩陣中 將項(xiàng)目j評分為h用戶的比例,6 = f^'Cjh表示稀疏評分矩陣中將項(xiàng)目j評分為h的用戶數(shù),Cj 表示稀疏評分矩陣中將項(xiàng)目j評過分的用戶數(shù)。3. 根據(jù)權(quán)利要求1中所述的基于用戶相似度的稀疏數(shù)據(jù)協(xié)同過濾推薦方法,其特征在 于,步驟(4a)中所述的計(jì)算稀疏評分矩陣中任意兩個用戶之間雅克比Jaccard系數(shù)是按照 如下公式完成的:其中,Jaccard(k, 1)表示稀疏評分矩陣中任意用戶k與用戶1的雅克比Jaccard系數(shù),rk 表示稀疏評分矩陣中任意用戶k的評分集合,^表示稀疏評分矩陣中任意用戶1的評分集 合,|rknri|表示用戶k的評分集合與用戶1的評分集合的交集中評分個數(shù),Ir kUr1I表示用 戶k的評分集合與用戶1的評分集合的并集中評分個數(shù)。4.根據(jù)權(quán)利要求1中所述的基于用戶相似度的稀疏數(shù)據(jù)協(xié)同過濾推薦方法,其特征在 于,步驟(5c)中所述的協(xié)同過濾公式如下:其中,pal表示對目標(biāo)用戶a對未評過分的項(xiàng)目i的預(yù)測評分,;:表示用戶a的平均評分, Σ表示求和操作,e表示屬于符號,Hal表示目標(biāo)用戶a鄰居用戶集中對項(xiàng)目i評過分的鄰居 用戶子集,^^ = &6[1;|3^#0},其中,8表示目標(biāo)用戶的鄰居用戶,£表示屬于符號,1^表 示用戶a的鄰居用戶集,I表示集合定義符號,3表示存在符號,r sl表示鄰居用戶s對項(xiàng)目i的 評分,sim(a, s)表示用戶a與鄰居用戶s的相似度。
【文檔編號】G06F17/30GK106021329SQ201610297877
【公開日】2016年10月12日
【申請日】2016年5月6日
【發(fā)明人】慕彩紅, 劉逸, 王喜智, 朱虎明, 熊濤, 劉若辰, 田小林, 馮偉, 焦李成
【申請人】西安電子科技大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1