一種綜合用戶正負(fù)性評(píng)分和評(píng)分偏好因子的協(xié)同過(guò)濾算法
【專利摘要】一種綜合用戶正負(fù)性評(píng)分和評(píng)分偏好因子的協(xié)同過(guò)濾算法,本發(fā)明公開(kāi)了一種應(yīng)用于個(gè)性化推薦系統(tǒng)中的協(xié)同過(guò)濾項(xiàng)目推薦方法,協(xié)同過(guò)濾的基本思想首先是通過(guò)個(gè)性化推薦系統(tǒng)提供的用戶對(duì)項(xiàng)目的評(píng)分記錄構(gòu)造評(píng)分矩陣;然后根據(jù)評(píng)分矩陣尋找與目標(biāo)用戶興趣相似的用戶;最后根據(jù)找到的相似用戶的喜好對(duì)目標(biāo)用戶進(jìn)行項(xiàng)目推薦。本發(fā)明所述的推薦步驟基于基本協(xié)同過(guò)濾的思想,從相似用戶的尋找和預(yù)測(cè)評(píng)分的計(jì)算兩個(gè)方面出發(fā)實(shí)現(xiàn)創(chuàng)新突破,提高了計(jì)算目標(biāo)用戶對(duì)項(xiàng)目的預(yù)測(cè)評(píng)分的準(zhǔn)確性,從而做出更準(zhǔn)確的項(xiàng)目推薦。
【專利說(shuō)明】一種綜合用戶正負(fù)性評(píng)分和評(píng)分偏好因子的協(xié)同過(guò)濾算法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及個(gè)性化推薦領(lǐng)域,具體為一種綜合用戶正負(fù)性評(píng)分和評(píng)分偏好因子的 協(xié)同過(guò)濾算法,它適用于電子商務(wù)網(wǎng)站的個(gè)性化推薦,屬于信息檢索、數(shù)據(jù)挖掘【技術(shù)領(lǐng)域】。
【背景技術(shù)】
[0002] 在互聯(lián)網(wǎng)的發(fā)展下,電子商務(wù)的發(fā)展日益壯大,隨著商品信息的增加,達(dá)到了一個(gè) 信息過(guò)載的時(shí)期,用戶難以從巨大的商品數(shù)據(jù)庫(kù)中選出自己需要的商品。推薦系統(tǒng)是當(dāng)前 解決上述問(wèn)題的有效方法之一。
[0003] 在已有的推薦系統(tǒng)所使用的推薦算法中,協(xié)同過(guò)濾推薦算法是在實(shí)際應(yīng)用中使 用非常廣泛的一類推薦算法。協(xié)同過(guò)濾算法可分為基于用戶(User-based)和基于項(xiàng)目 (Item-based)的兩種,User-based協(xié)同過(guò)濾的思想認(rèn)為,相似用戶在給項(xiàng)目評(píng)分時(shí)往往會(huì) 給出相近的評(píng)分。所謂"相似用戶",即為"興趣"相似的用戶。當(dāng)需要對(duì)某一用戶進(jìn)行商品 推薦時(shí),協(xié)同過(guò)濾算法通過(guò)綜合待推薦用戶的相似用戶對(duì)某一商品的評(píng)分,預(yù)測(cè)待推薦用 戶對(duì)此商品的評(píng)分,進(jìn)一步估計(jì)待推薦用戶對(duì)商品的喜好程度,從而得出推薦結(jié)果--即 將用戶評(píng)分最高的N個(gè)商品推薦給用戶。對(duì)于與待預(yù)測(cè)的用戶相似的用戶,其相似性越高, 評(píng)分預(yù)測(cè)也就越準(zhǔn)確,推薦的效果也就越好。
[0004] 傳統(tǒng)的User-based協(xié)同過(guò)濾算法普遍使用皮爾遜相關(guān)系數(shù)或余弦相似性公式來(lái) 計(jì)算用戶之間的相似性,但這兩種方法在計(jì)算預(yù)測(cè)評(píng)分準(zhǔn)確度方面還不太理想,因此推薦 效果還有待提高。為了進(jìn)一步提高User-based協(xié)同過(guò)濾算法的推薦效果,許多學(xué)者提出 了一些新的方法來(lái)提高用戶相似性計(jì)算的準(zhǔn)確性。比如,M. Jamali認(rèn)為,如果兩個(gè)用戶共 同評(píng)過(guò)分的商品超過(guò)一定數(shù)量,則這兩個(gè)用戶的相似性應(yīng)該比傳統(tǒng)相似性計(jì)算公式算出的 更高,于是他們利用sigmod函數(shù)來(lái)表征這種特性,并在傳統(tǒng)的皮爾遜相關(guān)系數(shù)中引入此參 數(shù)。HuiFeng Sun基于歐幾里德距離,提出了適用于多維向量空間的相似性計(jì)算函數(shù),平衡 了不同維度向量間的相似性計(jì)算所引起的誤差。Keunho Choi通過(guò)將項(xiàng)目相似性計(jì)算的結(jié) 果作為權(quán)重系數(shù)加入到用戶評(píng)分中,再進(jìn)行用戶相似性計(jì)算,提高了用戶相似性計(jì)算的準(zhǔn) 確性。
[0005] 無(wú)論是傳統(tǒng)的User-based協(xié)同過(guò)濾算法,以及目前基于該算法的改進(jìn),都是直接 采用評(píng)分矩陣中的分?jǐn)?shù)值進(jìn)行計(jì)算,這種計(jì)算方法實(shí)際上是假定了所有用戶對(duì)評(píng)分系統(tǒng)中 的每種分值都有相同的理解,也就是說(shuō),在[1,5]范圍的評(píng)分系統(tǒng)中,無(wú)論哪個(gè)用戶給某個(gè) 項(xiàng)目評(píng)4分時(shí),現(xiàn)有算法都認(rèn)為用戶對(duì)此項(xiàng)目比較滿意。然而從實(shí)際經(jīng)驗(yàn)可知,用戶對(duì)評(píng)分 系統(tǒng)中的各個(gè)分值是有自己的理解的;人們?cè)趯?duì)一個(gè)項(xiàng)目評(píng)分時(shí),也有自己的打分習(xí)慣。另 一方面,當(dāng)今電商網(wǎng)站的評(píng)分系統(tǒng)已經(jīng)在評(píng)分網(wǎng)頁(yè)的頁(yè)面提示中加入了評(píng)分引導(dǎo)語(yǔ),使得 用戶下意識(shí)的把評(píng)分值分為正性打分(對(duì)項(xiàng)目表示喜歡的評(píng)分)和負(fù)性評(píng)分(對(duì)項(xiàng)目表示 不喜歡的評(píng)分),那么這兩種情景下,用戶的評(píng)分標(biāo)準(zhǔn)也可能不同?,F(xiàn)有的計(jì)算方法都忽略 了這兩個(gè)方面的影響。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明針對(duì)現(xiàn)有協(xié)同過(guò)濾技術(shù)在計(jì)算用戶相似性和預(yù)測(cè)評(píng)分時(shí),忽略用戶評(píng)分 偏好和評(píng)分正負(fù)性而導(dǎo)致的預(yù)測(cè)評(píng)分計(jì)算得不夠準(zhǔn)確的問(wèn)題,提出一種綜合用戶正負(fù) 性評(píng)分和評(píng)分偏好因子的協(xié)同過(guò)濾算法,即(Positive-Negative-Rating-Preference Collaborative Filtering, PNRP_CF)方法。本發(fā)明所提出的算法,一方面在計(jì)算用戶相似 性時(shí),從正負(fù)評(píng)分兩個(gè)方面來(lái)計(jì)算用戶評(píng)分偏好因子,并將其加入基于距離的相似性計(jì)算 公式中,以此來(lái)緩解評(píng)分偏好所帶來(lái)的影響,從而能更準(zhǔn)確的尋找相似用戶;另一方面,在 計(jì)算預(yù)測(cè)評(píng)分時(shí),也通過(guò)區(qū)分評(píng)分正負(fù)性來(lái)計(jì)算預(yù)測(cè)分值,有效地提高預(yù)測(cè)評(píng)分的準(zhǔn)確性。
[0007] 為解決上述技術(shù)問(wèn)題,本發(fā)明所采用的技術(shù)方案是一種綜合用戶正負(fù)性評(píng)分和評(píng) 分偏好因子的協(xié)同過(guò)濾算法,該方法包括以下步驟為:
[0008] 步驟1 :根據(jù)推薦系統(tǒng)(電影網(wǎng)站、電商網(wǎng)站等)提供的用戶-項(xiàng)目評(píng)分記錄構(gòu)造 用戶-項(xiàng)目評(píng)分矩陣R。
[0009] 步驟2 :當(dāng)需要為用戶U進(jìn)行推薦時(shí),利用步驟1得到的評(píng)分矩陣R的數(shù)據(jù)和評(píng)分 正負(fù)性相似計(jì)算公式,計(jì)算用戶u與其他用戶V的相似性值sim(u, V),公式包含式(1)、式 ⑵。
【權(quán)利要求】
1. 一種綜合用戶正負(fù)性評(píng)分和評(píng)分偏好因子的協(xié)同過(guò)濾算法,其特征在于,該方法包 括以下步驟為: 步驟1 :通過(guò)推薦系統(tǒng)提供的用戶-評(píng)分記錄構(gòu)造成評(píng)分矩陣R步驟2 :當(dāng)需要對(duì)用戶u進(jìn)行推薦時(shí),利用評(píng)分矩陣R的數(shù)據(jù)和評(píng)分正負(fù)性相似計(jì)算公 式,計(jì)算u與其他用戶V的相似性。 步驟3 :將步驟2中的相似性值從大到小排列,取前k(k的大小可根據(jù)實(shí)際需要調(diào)節(jié)) 個(gè)用戶,作為用戶u的最近鄰用戶集合Nu。 步驟4 :取步驟3中得到的最近鄰用戶集合Nu以及這些近鄰用戶與用戶u的相似性值, 每計(jì)算用戶u對(duì)某一個(gè)未評(píng)分項(xiàng)目i的預(yù)測(cè)評(píng)分時(shí),將Nu中對(duì)項(xiàng)目i的評(píng)分為正性評(píng)分的 用戶劃分到集合AC,對(duì)項(xiàng)目i的評(píng)分為負(fù)性評(píng)分的用戶劃分到集合,利用正負(fù)性評(píng)分 預(yù)測(cè)公式計(jì)算用戶u對(duì)未評(píng)分項(xiàng)目i的預(yù)測(cè)值。 步驟5 :重復(fù)步驟4,直至用戶u所有未評(píng)分項(xiàng)目的預(yù)測(cè)評(píng)分全部算出,然后將用戶u的 未評(píng)分項(xiàng)目的預(yù)測(cè)值從大到小排列,選擇前N個(gè)項(xiàng)目作為推薦項(xiàng)目。
2. 根據(jù)權(quán)利要求1所述的一種綜合用戶正負(fù)性評(píng)分和評(píng)分偏好因子的協(xié)同過(guò)濾算法, 其特征在于,步驟1所述的評(píng)分正負(fù)性定義如下:在一個(gè)推薦系統(tǒng)的評(píng)分分值范圍中,高于 中位數(shù)的分值稱為"正性評(píng)分",低于和等于中位數(shù)的分值稱為"負(fù)性評(píng)分"。
3. 根據(jù)權(quán)利要求1所述的一種綜合用戶正負(fù)性評(píng)分和評(píng)分偏好因子的協(xié)同過(guò)濾算法, 其特征在于,步驟2所述的評(píng)分正負(fù)性相似計(jì)算公式,是從評(píng)分正負(fù)性兩個(gè)方面來(lái)計(jì)算評(píng) 分偏好因子,并將此評(píng)分偏好因子加入基于距離的相似性計(jì)算公式,如下式(1)所示,
式⑴中,sim(u,V)為用戶u和用戶V之間的相似性;Iuv為用戶u和用戶V共同評(píng)分 過(guò)的項(xiàng)目集合,IluvI為集合中的元素個(gè)數(shù);rw,分別為用戶u和用戶V對(duì)項(xiàng)目i的評(píng) 分;rmin為評(píng)分系統(tǒng)中相鄰兩個(gè)評(píng)分間的最小差值;Rp(u,v,i)為打分偏好因子,其計(jì)算方 法如下式(2)所示,
式(2)中,^7,f分別表示用戶u和用戶V的正性評(píng)分平均值;f,f分別表 U+7 V+ U-7 V- 示用戶U和用戶V的負(fù)性評(píng)分平均值;rmx為評(píng)分系統(tǒng)的最大分值;rnred為評(píng)分系統(tǒng)的中位數(shù) 分值。
4.根據(jù)權(quán)利要求1所述的一種綜合用戶正負(fù)性評(píng)分和評(píng)分偏好因子的協(xié)同過(guò)濾算法, 其特征在于,步驟4所述的正負(fù)性評(píng)分預(yù)測(cè)公式,是評(píng)分正負(fù)性兩個(gè)方面來(lái)計(jì)算用戶u對(duì)商 品i的預(yù)測(cè)評(píng)分,如下式(3)所示,
【文檔編號(hào)】G06F17/30GK104462597SQ201410850804
【公開(kāi)日】2015年3月25日 申請(qǐng)日期:2014年12月31日 優(yōu)先權(quán)日:2014年12月31日
【發(fā)明者】黃星辰, 秦拯 申請(qǐng)人:湖南大學(xué)