廉濤,馬 軍,王帥強(qiáng),崔超然
(1.山東大學(xué),山東濟(jì)南250101;2.山東財(cái)經(jīng)大學(xué),山東濟(jì)南250014)
在這個(gè)信息爆炸的時(shí)代,信息過(guò)載已成為人們?nèi)粘I钪忻媾R的主要問(wèn)題之一,于是近年來(lái)個(gè)性化推薦系統(tǒng)得到了學(xué)術(shù)界和產(chǎn)業(yè)界的廣泛關(guān)注。目前大多數(shù)推薦系統(tǒng)都利用協(xié)同過(guò)濾(Collaborative Filtering),從歷史數(shù)據(jù)(如以前用戶(hù)對(duì)物品的評(píng)分)中發(fā)現(xiàn)用戶(hù)和物品的聯(lián)系,預(yù)測(cè)用戶(hù)對(duì)未知物品的評(píng)分,從而進(jìn)行個(gè)性化推薦[1]。
協(xié)同過(guò)濾主要分為兩大類(lèi):
(1)鄰域方法(Neighborhood Method)。首先使用評(píng)分矩陣計(jì)算用戶(hù)或者物品相似度,尋找目標(biāo)用戶(hù)的鄰居用戶(hù)或者未知物品的鄰居物品;然后根據(jù)鄰居用戶(hù)或者鄰居物品的評(píng)分,預(yù)測(cè)目標(biāo)用戶(hù)對(duì)未知物品的評(píng)分[2-3]。
(2)潛在因素模型(Latent Factor Model)。首先從評(píng)分矩陣中發(fā)現(xiàn)用戶(hù)和物品潛在因素向量,用戶(hù)潛在因素向量表示用戶(hù)的興趣,物品潛在因素向量表示物品的特點(diǎn);然后根據(jù)目標(biāo)用戶(hù)和未知物品對(duì)應(yīng)的潛在因素向量預(yù)測(cè)未知評(píng)分。該類(lèi)方法常用的技術(shù)是矩陣分解[4-5]。
實(shí)際應(yīng)用中,由于大多數(shù)用戶(hù)只對(duì)少數(shù)物品評(píng)分,所以即便兩名用戶(hù)興趣相似,他們共同評(píng)分的物品也可能很少。數(shù)據(jù)的稀疏性對(duì)以上兩類(lèi)方法提出了嚴(yán)峻挑戰(zhàn)[6]。混合模型能夠有效地緩解數(shù)據(jù)稀疏問(wèn)題[7]。LDA主題模型是一種概率混合模型[8],通過(guò)對(duì)詞匯間接地進(jìn)行模糊聚類(lèi),發(fā)現(xiàn)大型語(yǔ)料庫(kù)中的潛在主題,把文檔從高維詞匯空間映射到低維主題空間,進(jìn)而可以在低維主題空間中計(jì)算文檔相似度。如果我們換個(gè)視角看待評(píng)分矩陣,將物品看作詞匯,用戶(hù)對(duì)物品的評(píng)分看作詞頻,用戶(hù)所有的評(píng)分就可以轉(zhuǎn)換成一篇偽文檔。假如物品集合共有5種物品{i1,i2,i3,i4,i5},某名用戶(hù)對(duì)物品的評(píng)分向量為(0,4,1,0,3),則對(duì)應(yīng)的偽文檔的內(nèi)容就是“i2i2i2i2i3i5i5i5”。這樣我們就可以使用LDA對(duì)物品間接地進(jìn)行模糊聚類(lèi),從評(píng)分矩陣中發(fā)現(xiàn)潛在主題,通過(guò)潛在主題把用戶(hù)和物品聯(lián)系起來(lái),將用戶(hù)和物品表示為潛在因素向量,進(jìn)而在低維潛在因素空間計(jì)算用戶(hù)和物品相似度。
本文提出一種混合協(xié)同過(guò)濾方法LDA-CF,該方法結(jié)合了潛在因素模型和鄰域方法。我們首先將評(píng)分矩陣轉(zhuǎn)換為偽文檔集合,使用LDA發(fā)現(xiàn)潛在主題,將用戶(hù)和物品表示成潛在因素向量;然后在低維潛在因素空間,計(jì)算用戶(hù)和物品相似度;最后尋找目標(biāo)用戶(hù)的鄰居用戶(hù)或者未知物品的鄰居物品,根據(jù)鄰居用戶(hù)或者鄰居物品的評(píng)分預(yù)測(cè)未知評(píng)分。在MovieLens 100k數(shù)據(jù)集上的實(shí)驗(yàn)表明:在評(píng)分預(yù)測(cè)任務(wù)中,LDA-CF取得的MAE性能指標(biāo)優(yōu)于傳統(tǒng)的鄰域方法。因此,LDA可以有效地從評(píng)分矩陣中發(fā)現(xiàn)對(duì)計(jì)算相似度十分有用的用戶(hù)和物品低維特征表示,在一定程度上緩解了數(shù)據(jù)稀疏問(wèn)題。
本文第2節(jié)介紹協(xié)同過(guò)濾和混合模型在推薦系統(tǒng)中的相關(guān)工作;第3節(jié)講述本文方法LDA-CF的細(xì)節(jié);第4節(jié)展示實(shí)驗(yàn)結(jié)果與分析;第5節(jié)總結(jié)與展望。
協(xié)同過(guò)濾是一種廣泛使用的推薦方法,主要有兩類(lèi):鄰域方法和潛在因素模型。
鄰域方法主要包括基于物品的協(xié)同過(guò)濾(Item-Based CF)和基于用戶(hù)的協(xié)同過(guò)濾(User-Based CF)?;谖锲返膮f(xié)同過(guò)濾[2]主要分以下三步:首先根據(jù)評(píng)分矩陣計(jì)算物品之間的相似度;然后在目標(biāo)用戶(hù)已經(jīng)評(píng)分的物品中選擇和未知物品最相似的K種物品作為鄰居物品;最后根據(jù)目標(biāo)用戶(hù)對(duì)鄰居物品的評(píng)分預(yù)測(cè)他對(duì)未知物品的評(píng)分?;谟脩?hù)的協(xié)同過(guò)濾[3]基本類(lèi)似,主要是尋找和目標(biāo)用戶(hù)興趣相似的鄰居用戶(hù)。該類(lèi)方法最大的問(wèn)題是,在高維空間中基于稀疏數(shù)據(jù)計(jì)算的相似度并不準(zhǔn)確。
潛在因素模型一般通過(guò)最小化均方誤差損失函數(shù),尋找原始評(píng)分矩陣的一個(gè)最佳近似低秩矩陣R^=UTV,其中U和V的列向量分別對(duì)應(yīng)用戶(hù)和物品潛在因素向量,二者的內(nèi)積表示預(yù)測(cè)評(píng)分。由于評(píng)分矩陣的稀疏性,早期的工作[9]先填充缺失值,再使用奇異值分解得到用戶(hù)和物品潛在因素向量。這樣不僅會(huì)增加計(jì)算量,而且會(huì)引入噪聲。近年來(lái)的工作在目標(biāo)函數(shù)中加入正則化項(xiàng),只使用已知評(píng)分進(jìn)行概率矩陣分解[5]。此外,Koren把潛在因素模型和鄰域方法集成到一個(gè)目標(biāo)函數(shù)中[10],將二者結(jié)合起來(lái)。
Hofmann提出的隱語(yǔ)義模型(Latent factor Model)通過(guò)隱類(lèi)(Latent Class)將用戶(hù)和物品聯(lián)系起來(lái)[11]。認(rèn)為用戶(hù)并不是直接對(duì)物品產(chǎn)生興趣,而是物品屬于不同的類(lèi)別,用戶(hù)對(duì)幾個(gè)類(lèi)別有興趣。這個(gè)模型可以從用戶(hù)行為數(shù)據(jù)中學(xué)習(xí)出這些類(lèi)別,以及用戶(hù)對(duì)類(lèi)別的興趣。他也曾將pLSA(probabilistic Latent Semantic Analysis)擴(kuò)展到協(xié)同過(guò)濾推薦系統(tǒng)中[12]。
Marlin則提出了URP(User Rating Profile)模型[13],將LDA中的詞匯變量替換為評(píng)分變量,對(duì)用戶(hù)的評(píng)分行為進(jìn)行建模。URP試圖發(fā)現(xiàn)評(píng)分矩陣中潛在的用戶(hù)態(tài)度(User Attitude),每種用戶(hù)態(tài)度對(duì)應(yīng)一種評(píng)分模式,即評(píng)分{1,2,3,4,5}的多項(xiàng)式分布,而非詞匯的多項(xiàng)式分布。每名用戶(hù)擁有一種態(tài)度多項(xiàng)式分布。然后根據(jù)用戶(hù)-態(tài)度多項(xiàng)式分布和態(tài)度-評(píng)分多項(xiàng)式分布,預(yù)測(cè)用戶(hù)對(duì)物品的評(píng)分。
LDA主題模型是一種概率混合模型,通過(guò)潛在主題將文檔和詞匯聯(lián)系起來(lái)。假設(shè)文檔集合中有Z個(gè)潛在主題,每個(gè)主題被表示為一種詞匯多項(xiàng)式分布φz,每篇文檔被看作多個(gè)主題的混合,對(duì)應(yīng)一種主題多項(xiàng)式分布θd。一方面LDA分別實(shí)現(xiàn)了文檔和詞匯的模糊聚類(lèi),每個(gè)詞匯可能屬于多個(gè)主題,每篇文檔也可能包含多個(gè)主題。另一方面LDA可以被看作一種類(lèi)似于pLSA的降維方法[14],將文檔從高維詞匯空間映射到低維主題空間。此外Jin系統(tǒng)地研究了混合模型(Mixture Model)在協(xié)同過(guò)濾中的應(yīng)用[7]。所以本文試圖將LDA應(yīng)用到協(xié)同過(guò)濾中,進(jìn)行個(gè)性化推薦。
假設(shè)用戶(hù)集合U有m名用戶(hù),物品集合I有n種物品,評(píng)分矩陣R={ru,i}m×n,其中ru,i∈{1,2,3,4,5}表示用戶(hù)u對(duì)物品i的評(píng)分(評(píng)分范圍依具體應(yīng)用而定)。如果用戶(hù)u未對(duì)物品i評(píng)分,則用0表示。協(xié)同過(guò)濾的主要任務(wù)就是預(yù)測(cè)用戶(hù)對(duì)未知物品的評(píng)分。
本文提出一種結(jié)合潛在因素模型和鄰域方法的混合協(xié)同過(guò)濾方法LDA-CF,來(lái)完成推薦系統(tǒng)中的評(píng)分預(yù)測(cè)任務(wù)。一方面類(lèi)似于潛在因素模型,本文使用LDA從評(píng)分矩陣中發(fā)現(xiàn)潛在主題,通過(guò)潛在主題將用戶(hù)和物品聯(lián)系起來(lái),用潛在因素向量描述用戶(hù)的興趣和物品的特點(diǎn);另一方面類(lèi)似于鄰域方法,本文在低維潛在因素空間,計(jì)算用戶(hù)和物品相似度,根據(jù)鄰居用戶(hù)或鄰居物品的評(píng)分預(yù)測(cè)未知評(píng)分。此外,混合模型可以有效地緩解數(shù)據(jù)稀疏問(wèn)題[7]。在這種混合模型中,物品可能不同程度地屬于多個(gè)主題,用戶(hù)也可能不同程度地對(duì)多個(gè)主題感興趣。即便兩名用戶(hù)共同評(píng)分的物品很少,或者同時(shí)對(duì)兩種物品評(píng)分的用戶(hù)很少,也可以基于潛在因素向量計(jì)算用戶(hù)和物品相似度。
LDA-CF主要分以下幾步:
1)發(fā)現(xiàn)潛在因素向量:將評(píng)分矩陣轉(zhuǎn)換成偽文檔集合,使用LDA發(fā)現(xiàn)潛在主題,將用戶(hù)和物品表示成潛在因素向量;
2)計(jì)算相似度:在低維潛在因素空間,基于KL散度(Kullback-Leibler Divergence)或JS散度(Jensen-Shannon Divergence),計(jì)算用戶(hù)或者物品之間的相似度;
3)預(yù)測(cè)評(píng)分:尋找目標(biāo)用戶(hù)的鄰居用戶(hù)或者未知物品的鄰居物品,根據(jù)鄰居用戶(hù)或鄰居物品的評(píng)分預(yù)測(cè)目標(biāo)用戶(hù)對(duì)未知物品的評(píng)分。
如果從LDA主題模型的視角看待評(píng)分矩陣R,每種物品i對(duì)應(yīng)一個(gè)單詞w,每名用戶(hù)u對(duì)應(yīng)一篇由物品組成的偽文檔du,用戶(hù)u對(duì)物品i的評(píng)分ru,i等于物品i在偽文檔du中出現(xiàn)的次數(shù),那么就可以將評(píng)分矩陣轉(zhuǎn)換成偽文檔集合。假設(shè)物品集合I共有5種物品{i1,i2,i3,i4,i5},用戶(hù)u對(duì)物品集合的評(píng)分向量為(0,4,1,0,3),則偽文檔du的內(nèi)容就是“i2i2i2i2i3i5i5i5”。這樣我們就可以只使用已知評(píng)分,忽略評(píng)分矩陣中大量的缺失值。
然后我們使用LDA發(fā)現(xiàn)偽文檔集合中的潛在主題,通過(guò)潛在主題將用戶(hù)和物品聯(lián)系起來(lái)。每個(gè)主題z對(duì)應(yīng)物品集合I上的一種多項(xiàng)式分布φz,每名用戶(hù)u擁有一種潛在主題上的多項(xiàng)式分布θu。用戶(hù)對(duì)物品的評(píng)分行為可以這樣描述:用戶(hù)u首先根據(jù)自己的興趣θu選擇一個(gè)主題z,然后根據(jù)該主題所對(duì)應(yīng)的物品多項(xiàng)式分布φz選擇一種物品,不斷重復(fù)此過(guò)程,用戶(hù)u選擇物品i的次數(shù)越多,對(duì)它的評(píng)分ru,i就越大。圖模型表示如圖1,對(duì)應(yīng)的生成過(guò)程如下:
1)對(duì)于用戶(hù)集合U中的每名用戶(hù)u,采樣θu~Dirichlet(α);
2)對(duì)于用戶(hù)u對(duì)應(yīng)的偽文檔du中每個(gè)位置的物品iu,n:
a)采樣一個(gè)主題標(biāo)簽zu,n~Multinomial(θu);
b)采樣一種物品iu,n~Multinomial(φzu,n)。
圖1 LDA圖模型表示
如果在偽文檔集合上訓(xùn)練一個(gè)包含Z個(gè)主題的LDA模型,那么用戶(hù)u對(duì)應(yīng)的潛在因素向量就可以用偽文檔du在Z個(gè)主題上的多項(xiàng)式分布θu=來(lái)表示,其中≤1。物品i對(duì)應(yīng)的潛在因素向量也可以由它在Z個(gè)主題中出現(xiàn)的概率組成的向量ηi=(φ1,i,φ2,i,…,φZ(yǔ),i)來(lái)表示。雖然每個(gè)主題z對(duì)應(yīng)的物品多項(xiàng)式分布φz中,各種物品出現(xiàn)的概率之和為1。但是每種物品在各個(gè)主題中出現(xiàn)的概率之和并不為它出現(xiàn)在各個(gè)主題中的概率互不影響,可以都很高或很低。因此我們對(duì)物品i對(duì)應(yīng)的潛在因素向量ηi進(jìn)行線(xiàn)性規(guī)范化,ηi,z=
此模型可以為同一種物品在一篇偽文檔中的多次出現(xiàn)選擇不同的主題標(biāo)簽。因此一種物品可以屬于多個(gè)主題,每名用戶(hù)也可能對(duì)多個(gè)主題感興趣。
協(xié)同過(guò)濾中普遍使用余弦相似度或皮爾遜相關(guān)系數(shù)(Pearson Correlation Coefficient)度量用戶(hù)和物品相似度。由于兩名用戶(hù)共同評(píng)分的物品很少,同時(shí)對(duì)兩種物品評(píng)分的用戶(hù)也很少,在高維空間中基于存在共同評(píng)分的少數(shù)幾個(gè)維度計(jì)算相似度并不準(zhǔn)確。即便兩名用戶(hù)各自評(píng)分的物品并不少,如果他們共同評(píng)分的物品很少,他們之間的相似度也接近于0。計(jì)算物品相似度也存在類(lèi)似問(wèn)題,即維度災(zāi)難(Curse of Dimensionality)。
在低維潛在因素空間中計(jì)算相似度可以有效地緩解數(shù)據(jù)稀疏問(wèn)題。如果兩名用戶(hù)各自評(píng)分的物品并不少,他們對(duì)應(yīng)的潛在因素向量就能夠準(zhǔn)確地描述各自的興趣。即便沒(méi)有共同評(píng)分的物品,如果各自評(píng)分的某些物品屬于相同的主題,那么他們的興趣也會(huì)相似,根據(jù)潛在因素向量計(jì)算的相似度也會(huì)比較高。如果某名用戶(hù)評(píng)分的物品特別少,那么他所對(duì)應(yīng)的潛在因素向量在各個(gè)主題上的分布就比較均勻,但也可以計(jì)算和其他用戶(hù)的相似度,這樣在一定程度上解決了“冷啟動(dòng)”問(wèn)題。同樣的道理也適用于物品相似度的計(jì)算。
KL散度和JS散度用來(lái)度量?jī)蓚€(gè)概率分布之間的距離,我們利用下式計(jì)算用戶(hù)和物品相似度,其中P和Q表示兩個(gè)概率分布。將用戶(hù)潛在因素向量θu和θv代入,就可以計(jì)算兩名用戶(hù)的相似度,將物品潛在因素向量ηi和ηj代入,就可以計(jì)算兩種物品的相似度。
在低維潛在因素空間計(jì)算完用戶(hù)和物品相似度之后,我們采用鄰域方法預(yù)測(cè)未知評(píng)分:尋找目標(biāo)用戶(hù)的鄰居用戶(hù)或者未知物品的鄰居物品,根據(jù)鄰居用戶(hù)或者鄰居物品的評(píng)分,預(yù)測(cè)目標(biāo)用戶(hù)對(duì)未知物品的評(píng)分。
在鄰域方法中,評(píng)分預(yù)測(cè)公式主要有兩種:加權(quán)平均評(píng)分(Weighted Average Rating)和加權(quán)平均偏差(Weighted Average Deviation)。加權(quán)平均偏差考慮了用戶(hù)或物品的個(gè)體差異。
以基于物品的協(xié)同過(guò)濾為例,加權(quán)平均評(píng)分如下式:
以基于用戶(hù)的協(xié)同過(guò)濾為例,加權(quán)平均偏差如下式:
實(shí)驗(yàn)使用MovieLens 100k電影評(píng)分?jǐn)?shù)據(jù),包括來(lái)自943名用戶(hù)對(duì)1 682部電影的100 000個(gè)評(píng)分,評(píng)分范圍為{1,2,3,4,5}。數(shù)據(jù)稀疏度為1-100 000/(943*1 682)=0.937 0。數(shù)據(jù)集也非常不平衡,某名用戶(hù)已評(píng)分的物品數(shù)目變化范圍為[20,737],對(duì)某種物品已評(píng)分的用戶(hù)數(shù)目變化范圍為[1, 583]。我們采用5折交叉驗(yàn)證,每次使用20 000個(gè)評(píng)分作為測(cè)試集,剩余80 000個(gè)評(píng)分作為訓(xùn)練集,取5次實(shí)驗(yàn)的平均結(jié)果。
我們選擇鄰域方法作為基準(zhǔn)方法,基于原始評(píng)分矩陣,根據(jù)余弦相似度和皮爾遜相關(guān)系數(shù)計(jì)算用戶(hù)和物品相似度,分別簡(jiǎn)寫(xiě)為Rating-CF-Cos和Rating-CF-Pcc。本文方法LDA-CF則基于用戶(hù)和物品潛在因素向量,根據(jù)KL散度和JS散度計(jì)算用戶(hù)和物品相似度,分別簡(jiǎn)寫(xiě)為L(zhǎng)DA-CF-KL和LDA-CF-JS。
我們采用平均絕對(duì)誤差(MAE)和覆蓋度(Coverage)作為評(píng)價(jià)指標(biāo)。MAE度量測(cè)試集中用戶(hù)u對(duì)物品i的預(yù)測(cè)評(píng)分和實(shí)際評(píng)分ru,i的誤差,MAE值越小,說(shuō)明預(yù)測(cè)越準(zhǔn)確。覆蓋度度量鄰居數(shù)目K對(duì)基于鄰居預(yù)測(cè)能力的影響,覆蓋度越高,說(shuō)明能對(duì)測(cè)試集中更多的用戶(hù)-物品對(duì)(u,i)預(yù)測(cè)評(píng)分。
其中Test表示測(cè)試集中的全部用戶(hù)-物品對(duì)(u,i),N<K表示測(cè)試集中鄰居用戶(hù)或者鄰居物品數(shù)目不足K的用戶(hù)-物品對(duì)(u,i)的數(shù)目。
首先我們?cè)O(shè)定鄰居數(shù)目K=20,LDA模型參數(shù)α=0.5,β=0.1,觀(guān)察隨著主題數(shù)目Z的變化,LDACF基于鄰居用戶(hù)和基于鄰居物品采用加權(quán)平均偏差預(yù)測(cè)評(píng)分時(shí),MAE的變化情況。從圖2中可以看出,主題數(shù)目從10變化到50時(shí),LDA-CF的效果并無(wú)太大差異,MAE變化范圍小于0.005,說(shuō)明LDA-CF對(duì)主題數(shù)目并不敏感。這可能是因?yàn)橄鄬?duì)于傳統(tǒng)文本文檔中詞頻的變化范圍而言,偽文檔中物品出現(xiàn)的次數(shù)差異并不大。
圖2 LDA主題數(shù)目對(duì)MAE的影響
然后我們?cè)O(shè)定LDA主題數(shù)目Z=20,觀(guān)察鄰居數(shù)目K對(duì)覆蓋度和MAE的影響。
由于我們不是先設(shè)定相似度閾值再選擇鄰居,而是把相似度從大到小排序選擇前K個(gè)作為鄰居,所以相似度的計(jì)算方式和具體數(shù)值對(duì)鄰居數(shù)目沒(méi)有影響。覆蓋度僅受鄰居數(shù)目的影響。從圖3中可以看出,基于鄰居用戶(hù)和基于鄰居物品時(shí),覆蓋度都隨鄰居數(shù)目的增大而顯著下降,并且基于鄰居物品的覆蓋度略高于基于鄰居用戶(hù)的覆蓋度。
圖4和圖5展示了Rating-CF-Pcc和LDA-CFJS分別使用加權(quán)平均評(píng)分和加權(quán)平均偏差預(yù)測(cè)評(píng)分時(shí),基于鄰居用戶(hù)和鄰居物品的MAE值隨鄰居數(shù)目K的變化情況。圖4中各種方法的變化趨勢(shì)略有不同,而圖5中各種方法的變化趨勢(shì)基本一致。當(dāng)K=20時(shí),MAE值最小;當(dāng)K<20時(shí),由于鄰居太少,預(yù)測(cè)效果比較差;當(dāng)K>20時(shí),隨著鄰居數(shù)目的增多,引入了越來(lái)越多相似度較低的用戶(hù)或者物品,預(yù)測(cè)效果也越來(lái)越差。不過(guò)圖4和圖5都表明:無(wú)論基于鄰居用戶(hù)或鄰居物品,LDA-CF-JS始終比Rating-CF-Pcc效果要好。
圖3 鄰居數(shù)目對(duì)覆蓋度的影響
圖4 加權(quán)平均評(píng)分時(shí),鄰居數(shù)目對(duì)MAE的影響
圖5 加權(quán)平均偏差時(shí),鄰居數(shù)目對(duì)MAE的影響
最后我們?cè)O(shè)置主題數(shù)目Z=20,鄰居數(shù)目K=20,在基于鄰居用戶(hù)和基于鄰居物品時(shí),分別采用加權(quán)平均評(píng)分和加權(quán)平均偏差預(yù)測(cè)評(píng)分,總共4種實(shí)驗(yàn)配置下,對(duì)比本文方法LDA-CF和基準(zhǔn)方法Rating-CF取得的MAE值。
表1 加權(quán)平均評(píng)分MAE值
表2 加權(quán)平均偏差MAE值
從表1和表2中我們可以得出以下結(jié)論:
(1)在評(píng)分預(yù)測(cè)任務(wù)中,除了Rating-CF使用加權(quán)平均評(píng)分之外,基于鄰居物品比基于鄰居用戶(hù)預(yù)測(cè)更準(zhǔn)確。說(shuō)明推薦目標(biāo)用戶(hù)喜歡的物品的相似物品,比推薦目標(biāo)用戶(hù)的相似用戶(hù)喜歡的物品,效果要好;
(2)無(wú)論基于鄰居用戶(hù)或鄰居物品,加權(quán)平均偏差的結(jié)果明顯好于加權(quán)平均評(píng)分的結(jié)果。說(shuō)明考慮用戶(hù)評(píng)分行為的差異和物品受歡迎程度的差異會(huì)提高推薦效果;
(3)無(wú)論基于鄰居用戶(hù)或鄰居物品,無(wú)論采用加權(quán)平均評(píng)分或加權(quán)平均偏差預(yù)測(cè)評(píng)分,本文方法LDA-CF比基準(zhǔn)方法Rating-CF取得的MAE值都小。說(shuō)明了雖然同樣是基于鄰居預(yù)測(cè)評(píng)分,使用LDA發(fā)現(xiàn)的潛在因素向量計(jì)算相似度比使用原始評(píng)分矩陣計(jì)算相似度更準(zhǔn)確,推薦效果更好。
本文提出了一種結(jié)合潛在因素模型和鄰域方法的混合協(xié)同過(guò)濾方法LDA-CF。我們從LDA主題模型的視角看待評(píng)分矩陣,將物品看作詞匯,用戶(hù)看作文檔,用戶(hù)對(duì)物品的評(píng)分看作詞頻,從而將評(píng)分矩陣轉(zhuǎn)換成偽文檔集合。首先利用LDA發(fā)現(xiàn)偽文檔集合中的潛在主題,通過(guò)潛在主題將用戶(hù)和物品聯(lián)系起來(lái),用潛在因素向量描述用戶(hù)的興趣和物品的特點(diǎn);然后使用潛在因素向量計(jì)算用戶(hù)和物品相似度;最后采用鄰域方法預(yù)測(cè)未知評(píng)分。在評(píng)分預(yù)測(cè)任務(wù)中,LDA-CF比直接使用原始評(píng)分矩陣的基于鄰居的協(xié)同過(guò)濾方法,預(yù)測(cè)更加準(zhǔn)確。說(shuō)明了LDA可以有效地從評(píng)分矩陣中發(fā)現(xiàn)對(duì)計(jì)算相似度十分有用的用戶(hù)和物品低維特征表示,在一定程度上緩解了數(shù)據(jù)稀疏問(wèn)題。
基于本文的初步結(jié)果,未來(lái)我們想進(jìn)一步檢驗(yàn)本文方法在更大規(guī)模的數(shù)據(jù)集上的效果和效率,研究LDA等概率混合模型能否提高推薦結(jié)果的多樣性,探索考慮時(shí)間因素的動(dòng)態(tài)推薦系統(tǒng)中的關(guān)鍵技術(shù)。
[1] Goldberg D,Nichols D,Oki B M,et al.Using collaborative filtering to weave an information tapestry[J].Commun.ACM,1992,35(12):61-70.
[2] Sarwar B,Karypis G,Konstan J,et al.Item-based collaborative filtering recommendation algorithms[C]//Proceedings of the 10th international conference on World Wide Web,2001,285-295.
[3] Herlocker J L,Konstan J A,Borchers A l,et al.An algorithmic framework for performing collaborative filtering[C]//Proceedings of the 22nd ACM SIGIR,1999,230-237.
[4] Koren Y,Bell R,Volinsky C.Matrix factorization techniques for recommender systems[J].Computer,2009,42(8):30-37.
[5] Salakhutdinov R,Mnih A.Probabilistic matrix factorization[C]//Proceedings of the 20th NIPS,2007.
[6] 周濤.個(gè)性化推薦的十大挑戰(zhàn)[J].中國(guó)計(jì)算機(jī)學(xué)會(huì)通訊,2012,8(7):48-61.
[7] Jin R,Si L,Zhai C X.A study of mixture models for collaborative filtering[J].Inf.Retr.,2006,9(3):357-382.
[8] Blei D M,Ng A Y,and Jordan M I.Latent dirichlet allocation[J].J.Mach.Learn.Res.,2003,3:993-1022.
[9] Sarwar B M,Karypis G,Konstan J A,et al.Application of dimensionality reduction in recommender system—a case study[C]//Proceedings of WebKDD at the 6th ACM SIGKDD,2000.
[10] Koren Y.Factorization meets the neighborhood:a multifaceted collaborative filtering model[C]//Proceedings of the 14th ACM SIGKDD,2008,426-434.
[11] Hofmann T,Puzicha J.Latent class models for collaborative filtering[C]//Proceedings of the 16th IJCAI,1999,688-693.
[12] Hofmann T.Latent semantic models for collaborative filtering[J].TOIS,2004,22(1):89-115.
[13] Marlin B.Modeling user rating profiles for collabora-tive filtering[C]//Proceedings of the 17th NIPS,2003.
[14] Steyvers M,Griffiths T.Probabilistic topic models[M].In Landauer T,McNamara D S,Dennis S,et al.(Eds.),Handbook of Latent Semantic Analysis.Hillsdale,NJ:Erlbaum.2007.