高良友,黃夢(mèng)醒
(海南大學(xué) 信息科學(xué)技術(shù)學(xué)院, 海南 ???570228)
?
綜合用戶(hù)特征和項(xiàng)目屬性的協(xié)作過(guò)濾推薦算法改進(jìn)
高良友,黃夢(mèng)醒
(海南大學(xué) 信息科學(xué)技術(shù)學(xué)院, 海南 海口 570228)
摘要:在綜合用戶(hù)特征和項(xiàng)目屬性的協(xié)作過(guò)濾推薦算法的基礎(chǔ)上,提出了一種改進(jìn)的基于綜合用戶(hù)特征和項(xiàng)目屬性的協(xié)作過(guò)濾推薦算法,分析不同用戶(hù)群體對(duì)不同項(xiàng)目屬性的普遍評(píng)分,并結(jié)合已評(píng)分的項(xiàng)目屬性,預(yù)測(cè)未評(píng)分項(xiàng)目.仿真結(jié)果表明,改進(jìn)算法比原算法具有更高的推薦精準(zhǔn)度,并進(jìn)一步降低數(shù)據(jù)集的稀疏性和緩解冷啟動(dòng)問(wèn)題.
關(guān)鍵詞:協(xié)作過(guò)濾; 稀疏性; 用戶(hù)群體; 項(xiàng)目屬性
隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,可以方便地獲取到豐富的信息資源,但同時(shí)也容易被海量信息淹沒(méi),造成了嚴(yán)重的“信息過(guò)載”現(xiàn)象.個(gè)性化推薦系統(tǒng)是用來(lái)處理嚴(yán)重的“信息過(guò)載”問(wèn)題的常用手段,而在個(gè)性化推薦系統(tǒng)中,協(xié)作過(guò)濾算法是最為經(jīng)典,應(yīng)用最為廣泛,并且是常用的個(gè)性化推薦算法之一.協(xié)作過(guò)濾算法中最常用的算法有基于用戶(hù)的協(xié)作過(guò)濾推薦算法和基于項(xiàng)目的協(xié)作過(guò)濾推薦算法.基于用戶(hù)的協(xié)作過(guò)濾推薦算法[1]的基本思想是用戶(hù)對(duì)未評(píng)分項(xiàng)目的預(yù)測(cè)評(píng)分值可以由與該用戶(hù)相似度最高的K個(gè)近鄰用戶(hù)對(duì)當(dāng)前用戶(hù)未評(píng)分項(xiàng)目的評(píng)分值進(jìn)行加權(quán)平均而得出.基于項(xiàng)目的協(xié)作過(guò)濾推薦算法[2]和基于用戶(hù)的協(xié)作過(guò)濾推薦算法的原理相近,其基本思路是用戶(hù)對(duì)未評(píng)分項(xiàng)目的預(yù)測(cè)評(píng)分值可以由該用戶(hù)對(duì)和當(dāng)前項(xiàng)目相似度最高的K個(gè)近鄰項(xiàng)目的評(píng)分值進(jìn)行加權(quán)平均而獲得.在現(xiàn)實(shí)應(yīng)用當(dāng)中,伴隨著用戶(hù)數(shù)量或項(xiàng)目數(shù)量的逐步提升,上述2種協(xié)作過(guò)濾推薦算法需要處理的數(shù)據(jù)量越來(lái)越大,導(dǎo)致其性能會(huì)變差.對(duì)于新項(xiàng)目問(wèn)題,基于項(xiàng)目的協(xié)作過(guò)濾推薦算法可以在一定程度上緩解問(wèn)題,但是對(duì)于新用戶(hù)問(wèn)題,基于用戶(hù)和基于項(xiàng)目的協(xié)作過(guò)濾推薦算法都將會(huì)失效[3].Sarwar[2]和Deshpande[5]等通過(guò)實(shí)驗(yàn)得出在同樣的應(yīng)用情境下基于項(xiàng)目的協(xié)作過(guò)濾推薦算法的推薦精準(zhǔn)度比基于用戶(hù)的協(xié)作過(guò)濾推薦算法的推薦精準(zhǔn)度要高.但是,基于項(xiàng)目的協(xié)作過(guò)濾推薦算法也同樣不可避免地存在數(shù)據(jù)集稀疏性、冷啟動(dòng)等問(wèn)題,導(dǎo)致個(gè)性化推薦系統(tǒng)的推薦精準(zhǔn)度存在瓶頸.
針對(duì)以上的問(wèn)題,國(guó)內(nèi)外學(xué)者進(jìn)行了大量的科學(xué)研究.文獻(xiàn)[6]對(duì)于個(gè)性化推薦系統(tǒng)中存在的過(guò)度擬合和數(shù)據(jù)集稀疏性等問(wèn)題,提出了鄰居模型、因子分解模型和情緒上下文相結(jié)合的協(xié)作過(guò)濾推薦算法來(lái)解決這些問(wèn)題.文獻(xiàn)[7]對(duì)于協(xié)作過(guò)濾推薦算法普遍存在的由于數(shù)據(jù)更新需要重復(fù)進(jìn)行相似度的計(jì)算而帶來(lái)的可擴(kuò)展性問(wèn)題,以及數(shù)據(jù)集稀疏性和冷啟動(dòng)等問(wèn)題,提出了一種基于項(xiàng)目分類(lèi)的協(xié)作過(guò)濾推薦算法,并將云模型引入到個(gè)性化推薦系統(tǒng)中,兩者的結(jié)合有效地解決了傳統(tǒng)基于云模型協(xié)作過(guò)濾推薦算法所存在的誤推薦問(wèn)題.文獻(xiàn)[8]對(duì)傳統(tǒng)協(xié)作過(guò)濾推薦算法中所存在的數(shù)據(jù)集稀疏性問(wèn)題,從而導(dǎo)致推薦精準(zhǔn)度不高的問(wèn)題,提出了一種基于云填充和項(xiàng)目屬性的協(xié)作過(guò)濾推薦算法,首先利用云模型中的數(shù)據(jù)對(duì)用戶(hù)評(píng)分矩陣中的稀疏數(shù)據(jù)進(jìn)行填充,然后根據(jù)傳統(tǒng)的相似度計(jì)算方法,得出項(xiàng)目之間的相似度,同時(shí)計(jì)算項(xiàng)目的屬性相似度,將2個(gè)相似度通過(guò)加權(quán)因子得到最終的項(xiàng)目之間的相似度.文獻(xiàn)[9]在基于項(xiàng)目分類(lèi)的協(xié)作過(guò)濾推薦算法的基礎(chǔ)之上提出了一種改進(jìn)算法,先根據(jù)用戶(hù)項(xiàng)目的分類(lèi)數(shù)據(jù),獲得用戶(hù)對(duì)類(lèi)內(nèi)部尚未評(píng)分項(xiàng)目的評(píng)分估計(jì)值,再計(jì)算類(lèi)內(nèi)部的用戶(hù)之間的相似度獲得目標(biāo)用戶(hù)的最相近的鄰居用戶(hù),最后產(chǎn)生推薦.
文獻(xiàn)[6]和[7]中的算法都有效地緩解了數(shù)據(jù)集稀疏性的問(wèn)題,并在一定程度上提高了推薦系統(tǒng)的推薦精準(zhǔn)度,但均沒(méi)有將項(xiàng)目屬性作為影響因子考慮到推薦系統(tǒng)中.在實(shí)際應(yīng)用中,項(xiàng)目屬性是決定用戶(hù)偏好的重要因素.文獻(xiàn)[8]和[9]中在協(xié)作過(guò)濾算法中引入項(xiàng)目屬性信息,但也還存在一些不足之處:1)在數(shù)據(jù)集極度稀疏的情境下,僅僅通過(guò)項(xiàng)目屬性值很難預(yù)測(cè)出其他未評(píng)分項(xiàng)目的評(píng)分預(yù)測(cè)值;2)在對(duì)用戶(hù)進(jìn)行評(píng)分預(yù)測(cè)時(shí),沒(méi)有考慮到用戶(hù)所在群體的普遍評(píng)分,而用戶(hù)對(duì)項(xiàng)目的評(píng)分值,很多情況下接近其所在群體的普遍評(píng)分值[10].文獻(xiàn)[10]在預(yù)測(cè)用戶(hù)對(duì)未評(píng)分項(xiàng)目的評(píng)分預(yù)測(cè)值的時(shí)候,同時(shí)考察用戶(hù)的特征信息和項(xiàng)目的屬性信息,進(jìn)一步緩解了數(shù)據(jù)稀疏性和冷啟動(dòng)問(wèn)題.但是,綜合用戶(hù)特征和項(xiàng)目屬性的協(xié)作過(guò)濾推薦算法也存在很多需要進(jìn)一步完善的地方: 1)項(xiàng)目屬性矩陣填充的普遍評(píng)分值和實(shí)際情況會(huì)有較大的差異; 2)評(píng)分預(yù)測(cè)值計(jì)算公式不能適用于方差為零的情況;3)待填充屬性的選取方法比較粗糙;4)不能很好地處理多個(gè)特征對(duì)于相同屬性的疊加效應(yīng).
本文針對(duì)綜合用戶(hù)特征和項(xiàng)目屬性的協(xié)作過(guò)濾推薦算法所存在的缺點(diǎn)進(jìn)行改進(jìn).對(duì)于每一個(gè)用戶(hù),綜合用戶(hù)的多個(gè)特征,確定具有這些特征的用戶(hù)群體,并且計(jì)算用戶(hù)群體對(duì)不同項(xiàng)目屬性的普遍評(píng)分,將超過(guò)一定比例的項(xiàng)目屬性評(píng)分次數(shù)的項(xiàng)目屬性普遍評(píng)分預(yù)填充到該用戶(hù)的項(xiàng)目屬性矩陣中.在進(jìn)行評(píng)分預(yù)測(cè)時(shí),將計(jì)算公式進(jìn)行修改,使其適用于方差為零的情況.仿真結(jié)果表明,本文算法提高了推薦精準(zhǔn)度,并進(jìn)一步降低數(shù)據(jù)集的稀疏性和緩解冷啟動(dòng)問(wèn)題.
1基于項(xiàng)目的協(xié)作過(guò)濾推薦算法
基于項(xiàng)目的協(xié)作過(guò)濾推薦算法主要包括相似度計(jì)算、評(píng)分預(yù)測(cè)算法等.
1.1相似度計(jì)算基于項(xiàng)目的協(xié)作過(guò)濾推薦算法所采用的相似度計(jì)算公式主要有如下幾種
1) 余弦相似度
(1)
其中,simij表示項(xiàng)目i和項(xiàng)目j之間的相似度,Ii和Ij表示項(xiàng)目i和項(xiàng)目j的評(píng)分向量.
2) 修正的余弦相似度
(2)
其中,Rie是用戶(hù)i對(duì)項(xiàng)目e的評(píng)分,Ae為共同評(píng)分的項(xiàng)目中用戶(hù)i的平均評(píng)分,Iij是被用戶(hù)i和用戶(hù)j共同評(píng)分的項(xiàng)目集合[11].
3) 皮爾遜相關(guān)系數(shù)
(3)
這3種計(jì)算項(xiàng)目和項(xiàng)目之間相似度的公式都有各自不同的適用場(chǎng)景.本文選取余弦相似度計(jì)算公式是為了和文獻(xiàn)[10]中的算法進(jìn)行對(duì)比.
1.2評(píng)分預(yù)測(cè)計(jì)算本文采用和文獻(xiàn)[12]相同的評(píng)分預(yù)測(cè)計(jì)算公式
(4)
2綜合用戶(hù)特征和項(xiàng)目屬性的協(xié)作過(guò)濾推薦算法改進(jìn)
1) 在預(yù)測(cè)用戶(hù)對(duì)未評(píng)分項(xiàng)目的評(píng)分預(yù)測(cè)值的過(guò)程中,文獻(xiàn)[10]會(huì)為每個(gè)用戶(hù)的項(xiàng)目屬性矩陣填充普遍評(píng)分,但填充的這個(gè)普遍評(píng)分值卻總是一個(gè)固定的值(固定值為評(píng)分區(qū)間的中間值avg).在很多情形下,此種做法不符合實(shí)際情況.若評(píng)分區(qū)間為[1,5],具有某個(gè)特征的用戶(hù)評(píng)價(jià)特定屬性的項(xiàng)目10 000次,但是這個(gè)評(píng)分值很低,總為1,按照文獻(xiàn)[10]的算法,為此屬性填充3.
(5)
其中n為評(píng)分區(qū)間的最大值.
2) 文獻(xiàn)[10]的評(píng)分預(yù)測(cè)值計(jì)算公式不能適用于方差為零的情形,而在冷啟動(dòng)和數(shù)據(jù)集極端稀疏的情況下,方差為零的情形比較常見(jiàn).
(6)
其中,Pu,i表示用戶(hù)u對(duì)項(xiàng)目Itemi的評(píng)分預(yù)測(cè)值,avgk是項(xiàng)目Itemi的項(xiàng)目屬性k在用戶(hù)u的均值矩陣當(dāng)中的數(shù)值,vark表示項(xiàng)目Itemi的項(xiàng)目屬性k在用戶(hù)u的方差矩陣當(dāng)中的數(shù)值.
3) 選取待填充屬性的方法比較粗糙:①僅僅根據(jù)評(píng)分人數(shù)來(lái)確定待填充屬性,而評(píng)分人數(shù)和評(píng)分值之間沒(méi)有必然的聯(lián)系;②不同特征的評(píng)分用戶(hù)數(shù)目相差較大,但文獻(xiàn)[10]總是為每個(gè)不同特征選取相同數(shù)量的待填充屬性.
4) 沒(méi)有考慮到多個(gè)特征對(duì)于相同屬性的疊加效應(yīng).比如某個(gè)特征對(duì)于一個(gè)屬性的評(píng)分值很高,另外一個(gè)特征對(duì)于這個(gè)屬性的評(píng)分值也很高.現(xiàn)有一個(gè)用戶(hù)同時(shí)具備這2個(gè)特征,如果按照文獻(xiàn)[10]的算法,在評(píng)分區(qū)間為[1,5]的情況下,此用戶(hù)對(duì)于這個(gè)屬性的評(píng)分預(yù)測(cè)值仍然是3.
1) 根據(jù)已有用戶(hù)對(duì)項(xiàng)目的評(píng)分?jǐn)?shù)據(jù)的基礎(chǔ)上,建立用戶(hù)-項(xiàng)目評(píng)分矩陣,如表1所示.
表1 用戶(hù)-項(xiàng)目評(píng)分矩陣
表1中,Itemj表示第j個(gè)項(xiàng)目,Useri表示第i個(gè)用戶(hù),rij表示第i個(gè)用戶(hù)對(duì)第j個(gè)項(xiàng)目的評(píng)分值.若第i個(gè)用戶(hù)對(duì)第j個(gè)項(xiàng)目有評(píng)分信息,則rij為相應(yīng)的評(píng)分;否則rij=0,表示第i個(gè)用戶(hù)尚未對(duì)第j個(gè)項(xiàng)目評(píng)分.
2) 為每個(gè)用戶(hù)建立各自的項(xiàng)目屬性評(píng)分矩陣,并對(duì)每個(gè)項(xiàng)目屬性評(píng)分矩陣進(jìn)行初始化.任一用戶(hù)Useri的項(xiàng)目屬性評(píng)分矩陣,如表2所示.
表2 用戶(hù)Useri的項(xiàng)目屬性評(píng)分矩陣
表2中,Item1,Item2,…,Itemn表示系統(tǒng)中的所有項(xiàng)目,attr1,attr2,…,attrm表示系統(tǒng)中的所有項(xiàng)目屬性集合的并集.初始化每個(gè)項(xiàng)目屬性評(píng)分矩陣是讓任一Useri的項(xiàng)目屬性評(píng)分矩陣中的元素vij均為零.
3) 對(duì)用戶(hù)的項(xiàng)目屬性評(píng)分矩陣填充用戶(hù)-項(xiàng)目評(píng)分矩陣中的相應(yīng)非零元素.若用戶(hù)Useri對(duì)項(xiàng)目j的評(píng)分為rij≠0,則使Useri的項(xiàng)目屬性評(píng)分矩陣中
(7)
其中,rij表示用戶(hù)i對(duì)項(xiàng)目j的評(píng)分,attrm表示屬性m,Attrj表示項(xiàng)目j包含的屬性集合.
4) 根據(jù)用戶(hù)的性別、年齡和職業(yè)等信息唯一地確定了一個(gè)用戶(hù)群體,統(tǒng)計(jì)此用戶(hù)群體中所有用戶(hù)的數(shù)目sum、任一項(xiàng)目屬性的評(píng)分次數(shù)attrCount[i]和評(píng)分總和attrSum[i].
5) 從用戶(hù)群體中選擇滿(mǎn)足attrCount[i]≥sum*percent(其中,percent為0到100%之間的數(shù),本文算法采用10%)的項(xiàng)目屬性,并添加到候選的待填充屬性集Atrribute中.
6) 遍歷該用戶(hù)未評(píng)分項(xiàng)目的所有屬性,考察其是否屬于候選的待填充屬性集Atrribute.若是,則為項(xiàng)目屬性矩陣填充普遍評(píng)分值attrSum[i]/attrCount[i].
7) 對(duì)于用戶(hù)的項(xiàng)目屬性評(píng)分矩陣中不全為零的列,計(jì)算此列的均值和方差,并將結(jié)果填充到此用戶(hù)的均值矩陣和方差矩陣中.用戶(hù)Useri的均值矩陣和方差矩陣如表3和表4所示.
表3 用戶(hù)Useri的均值矩陣
表3中,avgi表示用戶(hù)Useri對(duì)屬性attri的均值.
表4 用戶(hù)Useri的方差矩陣
表4中,vari表示用戶(hù)Useri對(duì)屬性attri的方差.在用戶(hù)Useri的方差矩陣當(dāng)中,如果某一列的方差超過(guò)了限定最大值,則就將該方差設(shè)為零.
8) 在用戶(hù)-項(xiàng)目評(píng)分矩陣中,如果用戶(hù)u對(duì)項(xiàng)目Itemi的評(píng)分值為零(也就是未評(píng)分),但是在該用戶(hù)的項(xiàng)目屬性評(píng)分矩陣中項(xiàng)目Itemi所對(duì)應(yīng)屬性的屬性評(píng)分值并不為零,則可以通過(guò)以下公式計(jì)算出該用戶(hù)對(duì)項(xiàng)目Itemi的預(yù)測(cè)評(píng)分值.計(jì)算公式如下
(8)
其中,avgk是項(xiàng)目Itemi的項(xiàng)目屬性k在用戶(hù)u的均值矩陣當(dāng)中的數(shù)值,vark表示項(xiàng)目Itemi的項(xiàng)目屬性k在用戶(hù)u的方差矩陣當(dāng)中的數(shù)值,X代表項(xiàng)目Itemi的項(xiàng)目屬性集合,n1表示項(xiàng)目Itemi的項(xiàng)目屬性中方差為零的項(xiàng)目屬性數(shù)目,n2表示項(xiàng)目Itemi的項(xiàng)目屬性中方差不為零的項(xiàng)目屬性數(shù)目.
9) 通過(guò)式(8)計(jì)算出來(lái)的用戶(hù)對(duì)項(xiàng)目的預(yù)測(cè)評(píng)分值,填充該用戶(hù)的用戶(hù)-項(xiàng)目評(píng)分矩陣.
10) 用式(1)計(jì)算出項(xiàng)目和項(xiàng)目之間的余弦相似度,并結(jié)合式(4)得出評(píng)分預(yù)測(cè)值.
3實(shí)驗(yàn)結(jié)果與分析
3.1數(shù)據(jù)集與度量標(biāo)準(zhǔn)本文的實(shí)驗(yàn)仿真數(shù)據(jù)集利用Minnesota大學(xué)項(xiàng)目組GroupLens Research所提供的含10萬(wàn)多條評(píng)分記錄的MovieLens電影評(píng)分?jǐn)?shù)據(jù)集,此數(shù)據(jù)集是由943個(gè)用戶(hù)對(duì)1 682部電影所做出的評(píng)分?jǐn)?shù)據(jù).MovieLens站點(diǎn)的評(píng)分范圍是1到5的整數(shù),數(shù)值越大,說(shuō)明此用戶(hù)對(duì)這部電影的喜愛(ài)程度越高[12-13].
平均絕對(duì)誤差(Mean Absolute Error, MAE) 是個(gè)性化推薦系統(tǒng)中應(yīng)用非常廣泛的一種評(píng)價(jià)標(biāo)準(zhǔn),用來(lái)計(jì)算測(cè)試數(shù)據(jù)集中通過(guò)推薦算法計(jì)算出來(lái)的預(yù)測(cè)值和用戶(hù)的真實(shí)評(píng)分之間的絕對(duì)誤差值.MAE值越小,推薦系統(tǒng)的推薦精準(zhǔn)度就會(huì)越高.
MAE的計(jì)算公式為
(9)
其中,pi表示用戶(hù)對(duì)項(xiàng)目的預(yù)測(cè)評(píng)分值,ri表示用戶(hù)對(duì)項(xiàng)目的真實(shí)評(píng)分.
3.2實(shí)驗(yàn)結(jié)果與分析本實(shí)驗(yàn)的目的是將本文的改進(jìn)算法和文獻(xiàn)[10]中的綜合用戶(hù)特征和項(xiàng)目屬性的協(xié)作過(guò)濾推薦算法(USERITEM-CF)進(jìn)行比較.為了提高實(shí)驗(yàn)結(jié)果的真實(shí)性,從10萬(wàn)條評(píng)分記錄的電影評(píng)分?jǐn)?shù)據(jù)集中隨機(jī)抽取100個(gè)用戶(hù)的評(píng)分記錄組成仿真數(shù)據(jù)集,并將仿真數(shù)據(jù)集按照8∶2的比例劃分成訓(xùn)練數(shù)據(jù)集和測(cè)試數(shù)據(jù)集,實(shí)驗(yàn)結(jié)果如圖1所示.
圖1可以得出,1)本文的改進(jìn)算法為用戶(hù)的項(xiàng)目屬性矩陣填充的普遍評(píng)分值相對(duì)于綜合用戶(hù)特征和項(xiàng)目屬性的協(xié)作過(guò)濾推薦算法預(yù)填充的普遍評(píng)分值而言,更加具有動(dòng)態(tài)性,同時(shí)也更加合理;2)綜合用戶(hù)特征和項(xiàng)目屬性的協(xié)作過(guò)濾推薦算法的評(píng)分預(yù)測(cè)值計(jì)算公式在方差值為零的情況下,整個(gè)公式會(huì)失效,而方差為零的情況在數(shù)據(jù)集極端稀疏和冷啟動(dòng)等情形下會(huì)比較常見(jiàn).本文改進(jìn)算法采用了新的評(píng)分預(yù)測(cè)值計(jì)算公式,使其能夠適用于方差為零的情況;3)改進(jìn)算法中選取待填充屬性的方法比原有算法更加合理; 4)綜合用戶(hù)特征和項(xiàng)目屬性的協(xié)作過(guò)濾推薦算法沒(méi)有考慮到多個(gè)特征對(duì)于相同屬性的疊加效應(yīng).本文的改進(jìn)算法通過(guò)用戶(hù)的多個(gè)特征信息唯一地確定了一個(gè)用戶(hù)群體,很好地解決了此問(wèn)題.
此外,在隨機(jī)抽取100個(gè)用戶(hù)的實(shí)驗(yàn)數(shù)據(jù)中,當(dāng)近鄰數(shù)取40、50、60和70時(shí),改進(jìn)算法和原有算法的MAE值都比較穩(wěn)定,但改進(jìn)算法的MAE比原有算法的MAE更小.
綜上所述,本文的改進(jìn)算法可以獲得比綜合用戶(hù)特征和項(xiàng)目屬性的協(xié)作過(guò)濾推薦算法更好的推薦質(zhì)量,同時(shí)可以進(jìn)一步降低數(shù)據(jù)集的稀疏性,緩解冷啟動(dòng)問(wèn)題.
4小結(jié)
首先分析當(dāng)前協(xié)作過(guò)濾算法研究當(dāng)中所存在的一些問(wèn)題、相應(yīng)的解決方法以及這些方法的優(yōu)缺點(diǎn),然后針對(duì)綜合用戶(hù)特征和項(xiàng)目屬性的協(xié)作過(guò)濾推薦算法中所存在的不足之處進(jìn)行相應(yīng)的改進(jìn),提出了一種改進(jìn)算法.該改進(jìn)算法同時(shí)根據(jù)用戶(hù)的多個(gè)特征信息唯一地確定了此用戶(hù)所在的用戶(hù)群體,并將該用戶(hù)群體的社會(huì)普遍項(xiàng)目屬性評(píng)分?jǐn)?shù)值填充進(jìn)此用戶(hù)的項(xiàng)目屬性評(píng)分矩陣中,然后計(jì)算用戶(hù)對(duì)不同項(xiàng)目屬性的均值和方差,再通過(guò)公式得出此用戶(hù)對(duì)未評(píng)分項(xiàng)目的評(píng)分預(yù)測(cè)值,并將其填充到此用戶(hù)的用戶(hù)-項(xiàng)目評(píng)分矩陣中,改進(jìn)算法同時(shí)改進(jìn)了評(píng)分預(yù)測(cè)值計(jì)算公式,使其能夠適用于方差為零的情形.仿真結(jié)果表明,該改進(jìn)算法提高了推薦的精準(zhǔn)度,同時(shí)進(jìn)一步降低數(shù)據(jù)集的稀疏性和緩解冷啟動(dòng)問(wèn)題.
參考文獻(xiàn):
[1] Chen Z M, Jiang Y, Zhao Y. A collaborative filtering recommendation algorithm based on user interest change and trust evaluation[J]. International Journal of Digital Content Technology and its Applications, 2010, 4(9): 106-113.
[2] Sarwar B M, Karypis G, Konstan J A, et al. Item-based collaborative filtering recommendation algorithms[M]. New York: ACM Press, 2001: 285-295.
[3] 雷琨. 電子商務(wù)個(gè)性化推薦系統(tǒng)研究[D]. 成都:電子科技大學(xué), 2012.
[4] Su X Y, Taghi M K. A survey of collaborative filtering techniques[J]. Advances in Artificial Intelligence, 2009, 2009(4): 1-20.
[5] Deshpande M, Karypis G. Item-based top-nrecommendation algorithm[J]. ACM Trans Information Systems, 2004, 22(1): 143-177.
[6] 王強(qiáng)強(qiáng). 基于項(xiàng)目與情緒的協(xié)同過(guò)濾算法研究與實(shí)現(xiàn)[D]. 北京:北京郵電大學(xué), 2013.
[7] 劉芹. 結(jié)合項(xiàng)目分類(lèi)和云模型的協(xié)同過(guò)濾算法研究[D]. 重慶:重慶大學(xué), 2012.
[8] 孫金剛, 艾麗蓉. 基于項(xiàng)目屬性和云填充的協(xié)同過(guò)濾算法[J]. 計(jì)算機(jī)應(yīng)用, 2012, 32(3): 658-660, 668.
[9] 熊忠陽(yáng), 劉芹, 張玉芳,等. 基于項(xiàng)目分類(lèi)的協(xié)同過(guò)濾改進(jìn)算法[J]. 計(jì)算機(jī)應(yīng)用研究, 2012, 29(2): 493-496.
[10] 孫龍菲, 黃夢(mèng)醒. 綜合用戶(hù)特征和項(xiàng)目屬性的協(xié)作過(guò)濾推薦算法[J]. 計(jì)算機(jī)應(yīng)用研究, 2013, 31(2): 384-387.
[11] Wang M J, Han J T. Collaborative filtering recommendation based on item rating and characteristic information prediction[M]. New York: IEEE, 2012: 214-217.
[12] 張玉芳, 代金龍, 熊忠陽(yáng). 分步填充緩解數(shù)據(jù)稀疏性的協(xié)同過(guò)濾算法[J]. 計(jì)算機(jī)應(yīng)用研究, 2013, 30(9): 2 602-2 605.
[13] 夏培勇. 個(gè)性化推薦技術(shù)中的協(xié)同過(guò)濾算法研究[D]. 青島:中國(guó)海洋大學(xué), 2011.
Improvement of Algorithm for Collaborative Filtering Recommendation Based on User Characteristics and Item Attributes
Gao Liangyou, Huang Mengxing
(College of Information Science and Technology, Hainan University, Haikou 570228,China)
Abstract:Based on the algorithms for collaborative filtering recommendation and integrated user characteristics and item attributes, an improved algorithm based on user characteristics and item attributes was introduced to further improve the sparsity of data set and cold start problem and improve the recommendation accuracy. The algorithm predicted ungraded items by analyzing the general score of different user groups on different project attributes and synthesizes the attributes of rated items. The simulation results showed that the improved algorithm has the better prediction accuracy and further reduces the sparsity of data set and cold start problem.
Keywords:collaborative filtering; sparsity; user group; item attributes
中圖分類(lèi)號(hào):TP 393
文獻(xiàn)標(biāo)志碼:ADOl:10.15886/j.cnki.hdxbzkb.2015.0025
文章編號(hào):1004-1729(2015)02-0135-06
收稿日期:------------------------ 2014-09-05基金項(xiàng)目: 國(guó)家自然科學(xué)基金項(xiàng)目(71161007,61462022);海南省重點(diǎn)科技計(jì)劃項(xiàng)目(ZDXM20130078)
作者簡(jiǎn)介:高良友(1988-),男,安徽安慶人,2012級(jí)碩士研究生.通信作者: 黃夢(mèng)醒(1974-),男,教授,研究方向:數(shù)據(jù)與知識(shí)工程、云計(jì)算與物聯(lián)網(wǎng)、個(gè)性化服務(wù)等,E-mail:huangmx09@163.com