徐 俊,張 政,杜宣萱,肖 剛
(浙江工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,浙江 杭州 310023)
互聯(lián)網(wǎng)和大數(shù)據(jù)技術(shù)的快速發(fā)展導(dǎo)致信息爆炸式增長(zhǎng),為用戶獲取信息提供了便利,但同時(shí)用戶面對(duì)如此紛繁復(fù)雜的數(shù)據(jù)難以快速、準(zhǔn)確地獲取自己想要的數(shù)據(jù).推薦技術(shù)就是依據(jù)用戶的個(gè)性化偏好在海量數(shù)據(jù)中選擇符合用戶需求的信息、產(chǎn)品及服務(wù)提供給用戶,目前已經(jīng)廣泛應(yīng)用在電子商務(wù)、社交網(wǎng)絡(luò)等領(lǐng)域[1].
基于協(xié)同過(guò)濾的方法是應(yīng)用最廣的推薦技術(shù),其中基于模型的方法和基于內(nèi)存的方法是傳統(tǒng)協(xié)同過(guò)濾方法的兩大類別[2].特別是基于模型的方法因?yàn)橛休^高的推薦精度和良好的可擴(kuò)展性,所以受到學(xué)術(shù)界和工業(yè)界的廣泛關(guān)注[3].然而,在大數(shù)據(jù)環(huán)境下,隨著評(píng)分矩陣規(guī)模的不斷擴(kuò)增,未評(píng)分記錄越來(lái)越多,新用戶和新項(xiàng)目的不斷加入,這兩種協(xié)同過(guò)濾推薦算法都面臨著嚴(yán)重的數(shù)據(jù)稀疏性和冷啟動(dòng)挑戰(zhàn)[4].研究人員一般采用結(jié)合輔助信息,例如用戶人口統(tǒng)計(jì)學(xué)數(shù)據(jù)[5-8]、社會(huì)網(wǎng)絡(luò)數(shù)據(jù)[9-12]和語(yǔ)境感知[13-15]等多方面數(shù)據(jù),來(lái)解決數(shù)據(jù)稀疏性和冷啟動(dòng)問(wèn)題.這些多源數(shù)據(jù)一般為高維稀疏性數(shù)據(jù),數(shù)據(jù)真實(shí)性和可靠性不高、噪聲大且涉及隱私較難獲取或并不真實(shí)存在.
項(xiàng)目語(yǔ)義是指項(xiàng)目本身的描述信息包含的語(yǔ)義,例如電影的劇情簡(jiǎn)介、產(chǎn)品的功能描述等,根據(jù)這些自然語(yǔ)言的描述文本提取語(yǔ)義向量表示項(xiàng)目語(yǔ)義.由于項(xiàng)目語(yǔ)義具有更加準(zhǔn)確、穩(wěn)定且容易獲取的優(yōu)勢(shì),并且能表達(dá)項(xiàng)目間的深層次關(guān)聯(lián)性,因此本文提出了一種基于項(xiàng)目語(yǔ)義的協(xié)同過(guò)濾冷啟動(dòng)推薦算法(ISCF),通過(guò)改進(jìn)TF-IDF算法構(gòu)建語(yǔ)義表示模型來(lái)提取項(xiàng)目語(yǔ)義向量,并融入到矩陣分解中補(bǔ)全評(píng)分矩陣,利用聚類對(duì)評(píng)分矩陣進(jìn)行分割,然后通過(guò)協(xié)同過(guò)濾冷啟動(dòng)推薦.
本部分主要對(duì)本文算法以及本文研究領(lǐng)域方面所用到的一些知識(shí)進(jìn)行簡(jiǎn)單介紹.
word2vec是Google的Mikolov等人[16]在2003年提出的一種基于深度學(xué)習(xí)的詞向量模型.它的基本思想是通過(guò)訓(xùn)練語(yǔ)料庫(kù)將每個(gè)單詞轉(zhuǎn)換成n維實(shí)向量,利用向量之間的距離來(lái)計(jì)算單詞的語(yǔ)義相似度.下面是CBOW模型(Continuous Bags-of-Words Model)網(wǎng)絡(luò)結(jié)構(gòu)圖如圖1所示:
圖1 CBOW模型網(wǎng)絡(luò)結(jié)構(gòu)
該網(wǎng)絡(luò)結(jié)構(gòu)主要分為3層:輸入層、映射層和輸出層.W(t-k),…,W(t-2),W(t-1),W(t+1),W(t+2),…,W(t+k)為當(dāng)前詞W(t)的上下文Context(t),通過(guò)調(diào)整k選擇上下文的范圍.CBOW模型利用當(dāng)前詞W(t)的上下文Context(t)預(yù)測(cè)當(dāng)前詞W(t)的概率P(W(t)|Context(t)),通過(guò)極大似然估計(jì)把概率最大化.Word2vec模型會(huì)因?yàn)檫x取向量維度和上下文個(gè)數(shù)的不同導(dǎo)致向量效果不同.
因?yàn)閃ord2vec模型是對(duì)文本中的詞構(gòu)建向量,而不是對(duì)整個(gè)文本構(gòu)建向量,因此Word2vec在向量空間上可以進(jìn)行加減法運(yùn)算[17],文獻(xiàn)[18]中結(jié)合TF-IDF(term frequency inverse document frequency)算法構(gòu)建文本語(yǔ)義表示模型.TF-IDF算法是一種常用加權(quán)技術(shù),廣泛應(yīng)用與信息檢索和文本挖掘,核心是利用權(quán)重來(lái)評(píng)價(jià)特征詞對(duì)整個(gè)文本貢獻(xiàn)的程度.該算法通過(guò)統(tǒng)計(jì)詞頻TF和逆向文件頻率IDF來(lái)評(píng)估特征詞對(duì)文本語(yǔ)義貢獻(xiàn)的重要程度,詞頻TF的公式定義如下所示:
(1)
其中,該特征詞在文本j中的總次數(shù)表示為ni,j,所有特征詞在文本j中出現(xiàn)的總次數(shù)表示為∑knk,j.特征詞的普遍重要性利用逆向文件頻率IDF來(lái)統(tǒng)計(jì),所有文本總數(shù)與出現(xiàn)該特征詞的文本數(shù)量比的對(duì)數(shù)統(tǒng)計(jì)就是IDF,IDF值與特征詞的重要性呈正相關(guān).逆向文件頻率IDF的公式定義如下:
(2)
公式(2)中,語(yǔ)料庫(kù)中所有文本的總數(shù)為|D|,包含特征詞ti的文本數(shù)量為|{j:ti∈dj}|,為了避免無(wú)特征詞導(dǎo)致分母0,公式對(duì)分母進(jìn)行加1操作,即|{j:ti∈dj}|+1.通過(guò)詞頻TF與逆向文件頻率IDF的相乘放大了權(quán)重,從而可以將權(quán)重較小的常見(jiàn)特征詞過(guò)濾掉,篩選出高權(quán)重的特征詞.TF-IDF算法如下所示:
TF-IDFi,j=TFi,j*IDFi,j
(3)
文本語(yǔ)義向量將TF-IDF權(quán)重與Word2vec模型結(jié)合,其計(jì)算公式如下:
(4)
其中,vj表示文本j的語(yǔ)義向量,wi表示項(xiàng)目描述中抽取的第i個(gè)關(guān)鍵詞,Vwi表示為第i個(gè)關(guān)鍵詞通過(guò)Word2vec工具轉(zhuǎn)換后的語(yǔ)義向量,n表示文本j中特征詞總數(shù)量.
矩陣分解模型因?yàn)榫哂辛己玫目蓴U(kuò)展性和高效性,所以被廣泛的應(yīng)用于推薦系統(tǒng)中.模型將用戶-項(xiàng)目評(píng)分矩陣Rm×n分解為Pm×d和Qd×n這兩個(gè)潛在特征矩陣,示意圖如下所示:
圖2 矩陣分解示意圖
其中n表示用戶總數(shù),m表示項(xiàng)目總數(shù),d表示潛在特征維度,然后再通過(guò)P和Q的內(nèi)積預(yù)測(cè)評(píng)分.
本部分將詳細(xì)描述ISCF算法,主要包含3部分:
1)利用基于TF-IDF改進(jìn)算法的項(xiàng)目語(yǔ)義表示對(duì)項(xiàng)目語(yǔ)義信息進(jìn)行向量化描述;
2)在矩陣分解中融入項(xiàng)目語(yǔ)義;
3)通過(guò)聚類分割進(jìn)行協(xié)同過(guò)濾冷啟動(dòng)推薦.
項(xiàng)目描述是由多種多樣特征詞構(gòu)成的文本,可以利用語(yǔ)義表示模型計(jì)算項(xiàng)目語(yǔ)義向量.語(yǔ)義表示模型中的TF-IDF算法雖然能夠提取文中關(guān)鍵特征詞,并將常見(jiàn)特征詞過(guò)濾掉,但是該算法僅是利用特征詞的數(shù)量統(tǒng)計(jì)權(quán)重,并沒(méi)有考慮過(guò)特征詞本身所具有的含義.例如,兩個(gè)特征詞盡管不一樣,但蘊(yùn)含的意思相近,即近義詞,那么TF-IDF算法將會(huì)把它們分別進(jìn)行統(tǒng)計(jì)詞頻,從而降低了關(guān)鍵特征詞的提取精度.對(duì)此,本文利用不同特征詞之間的語(yǔ)義相關(guān)性改進(jìn)傳統(tǒng)TF-IDF算法,增強(qiáng)文中關(guān)鍵特征詞的提取精度.在統(tǒng)計(jì)特征詞的詞頻過(guò)程中,改用語(yǔ)義詞頻STF,即統(tǒng)計(jì)文本中與該特征詞語(yǔ)義相關(guān)的特征詞出現(xiàn)的頻率,而非簡(jiǎn)單的統(tǒng)計(jì)特征詞在文本中出現(xiàn)的次數(shù)TF,語(yǔ)義詞頻STF定義如下:
(5)
其中,N(j)表示為項(xiàng)目j中的特征詞總數(shù)量,ε是一個(gè)閾值,當(dāng)cos(Vwt,j,Vwi,j)>ε時(shí),則認(rèn)為特征詞t和特征詞i屬于同一類別的詞,即近義詞.因?yàn)榫哂邢嚓P(guān)性的特征詞集合能反映出整個(gè)文本的語(yǔ)義特征,不用傳統(tǒng)的詞頻統(tǒng)計(jì)而改用改用特征詞之間的語(yǔ)義相關(guān)性來(lái)統(tǒng)計(jì),可以挖掘文本中重要的特征詞從而更好的凸顯出文本的語(yǔ)義特征.改進(jìn)之后的TF-IDF權(quán)重計(jì)算公式如下所示:
STF-IDFi,j=STFi,j*IDFi,j
(6)
具有語(yǔ)義相關(guān)的特征詞通過(guò)該公式可以獲得詞頻的增加從而提高自身的權(quán)重值.然后利用改進(jìn)后的TF-IDF算法來(lái)優(yōu)化每個(gè)特征詞的語(yǔ)義權(quán)重值,再利用Word2vec來(lái)實(shí)現(xiàn)項(xiàng)目語(yǔ)義向量的表示,計(jì)算公式如下:
(7)
其中,vj表示項(xiàng)目j的語(yǔ)義向量,STF-IDFi,j表示為結(jié)合了語(yǔ)義相關(guān)性的項(xiàng)目j描述文本中特征詞wi的權(quán)重,n表示項(xiàng)目j描述文本中特征詞總數(shù)量,該方法可以增強(qiáng)項(xiàng)目語(yǔ)義的特征表示.
矩陣分解模型在推薦系統(tǒng)中被廣泛應(yīng)用,但其精度受限于數(shù)據(jù)的完整性,當(dāng)用戶評(píng)分矩陣數(shù)據(jù)稀疏時(shí),其預(yù)測(cè)評(píng)分的精度不佳.本文將額外的項(xiàng)目語(yǔ)義信息融入到矩陣分解模型中改善因數(shù)據(jù)稀疏性帶來(lái)的預(yù)測(cè)評(píng)分欠佳問(wèn)題.
在矩陣分解中引入用戶在項(xiàng)目語(yǔ)義上的偏好潛在特征,并通過(guò)一個(gè)調(diào)節(jié)因子來(lái)調(diào)整用戶評(píng)分偏好和用戶語(yǔ)義偏好在評(píng)分預(yù)測(cè)中的比例,評(píng)分預(yù)測(cè)函數(shù)如下:
(8)
(9)
本文通過(guò)借助隨機(jī)梯度下降法求解上述的損失函數(shù)方程.各個(gè)學(xué)習(xí)參數(shù)的梯度方向通過(guò)下面公式求解:
(10)
(11)
(12)
參數(shù)訓(xùn)練完成后,通過(guò)評(píng)分預(yù)測(cè)函數(shù)預(yù)測(cè)評(píng)分矩陣R中的缺省值,并進(jìn)行填補(bǔ)獲得補(bǔ)全評(píng)分矩陣R′.
在補(bǔ)全評(píng)分矩陣R′的基礎(chǔ)上,本文利用到了k-means聚類算法在線下對(duì)補(bǔ)全后的評(píng)分矩陣R′進(jìn)行聚類分割,在線上利用新用戶屬性信息和項(xiàng)目語(yǔ)義信息快速尋找到分割后的數(shù)據(jù)小矩陣,并通過(guò)協(xié)同過(guò)濾進(jìn)行預(yù)測(cè)評(píng)分.在預(yù)測(cè)評(píng)分中,使用分割后的小矩陣進(jìn)行預(yù)測(cè)計(jì)算,計(jì)算量的減少使得計(jì)算速度大大加快,同時(shí)還使得算法具備了可擴(kuò)展性和實(shí)時(shí)性.
本文利用內(nèi)容上的相似表達(dá)項(xiàng)目之間的關(guān)系,即通過(guò)項(xiàng)目的語(yǔ)義向量vi和vj計(jì)算余弦值表示項(xiàng)目的相似度simI(i,j).用戶的相似度參考文獻(xiàn)[5]中的屬性相似度計(jì)算方法:
(13)
其中,n為用戶所有屬性的總數(shù),Aik和Ajk表示為用戶i和用戶j的第k個(gè)屬性的屬性值,sim(Aik,Ajk)表示為用戶i和用戶j的第k個(gè)屬性的相似度,wk表示為第k個(gè)屬性的權(quán)重值.屬性相似度sim(Aik,Ajk)使用絕對(duì)指數(shù)相似度計(jì)算,其具體公式如下所示:
sim(Aik,Ajk)=e-|Aik-Ajk|
(14)
其中,sim(Aik,Ajk)值的范圍在[0,1]之間,用戶i和用戶j的第k個(gè)屬性越相似,其值越接近于1,反之,則越接近于0.wk是屬性的權(quán)重值,每個(gè)屬性對(duì)用戶的影響程度不同,為精確每個(gè)屬性的權(quán)重值,提取屬性k相同的所有用戶所評(píng)分最高的前t個(gè)項(xiàng)目集合,并分析不相同的集合個(gè)數(shù),計(jì)算平均值ave(k),再通過(guò)下面公式計(jì)算每個(gè)屬性的權(quán)值,具體公式如下所示:
(15)
通過(guò)數(shù)據(jù)統(tǒng)計(jì)獲得的屬性權(quán)值相比于人工賦值更加的可靠和準(zhǔn)確.
本文分別通過(guò)用戶和項(xiàng)目的相似度計(jì)算方法進(jìn)行k-means算法聚類,根據(jù)用戶和項(xiàng)目的類簇對(duì)評(píng)分矩陣進(jìn)行數(shù)據(jù)分割,圖3展示了該數(shù)據(jù)分割.
圖3 用戶和項(xiàng)目類簇分割數(shù)據(jù)
上述圖3中同種顏色的表示為一個(gè)數(shù)據(jù)塊小矩陣,使用用戶類簇和項(xiàng)目類簇來(lái)對(duì)評(píng)分矩陣中的行和列進(jìn)行共同分割,將一個(gè)高緯度的評(píng)分矩陣分割成了更加細(xì)小且大小不同的低緯度小矩陣.新用戶和新項(xiàng)目根據(jù)與類簇質(zhì)心的相似度將獲得用戶和新項(xiàng)目各自所屬的類簇xc和yc,然后可以通過(guò)這兩個(gè)值快速的確定評(píng)分矩陣中唯一小矩陣,利用這個(gè)小矩陣中的數(shù)據(jù)進(jìn)行協(xié)同過(guò)濾預(yù)測(cè)評(píng)分.評(píng)分預(yù)測(cè)具體公式如下所示:
(16)
本文實(shí)驗(yàn)的硬件環(huán)境為處理器 i7 9700,3.00GHz,8核8線程,內(nèi)存 8GB,顯卡1050ti 4GBRAM.算法實(shí)現(xiàn)采用Python語(yǔ)言.實(shí)驗(yàn)數(shù)據(jù)的公開(kāi)數(shù)據(jù)集來(lái)源于Movielens,其包括了用戶、電影以及電影評(píng)分?jǐn)?shù)據(jù).其用戶對(duì)電影的評(píng)分取值為{1,2,3,4,5},分?jǐn)?shù)越高代表對(duì)電影越青睞,數(shù)據(jù)稀疏度為93.7%.此外,本文為構(gòu)建項(xiàng)目語(yǔ)義在互聯(lián)網(wǎng)電影資料庫(kù)(Internet Movie Database,簡(jiǎn)稱IMDb)中利用爬蟲(chóng)技術(shù)獲取了1682部電影的劇情文本描述信息.
評(píng)分預(yù)測(cè)的準(zhǔn)確度采用平均絕對(duì)誤差(MAE)和均方根誤差(RESE)評(píng)價(jià).其計(jì)算方式如下:
(17)
(18)
本部分將對(duì)算法中的參數(shù)a、緩解數(shù)據(jù)稀疏性和冷啟動(dòng)問(wèn)題進(jìn)行實(shí)驗(yàn)分析.
4.3.1 參數(shù)a分析
參數(shù)a控制用戶評(píng)分信息和項(xiàng)目語(yǔ)義信息的貢獻(xiàn)程度,為了確定參數(shù)a的最佳值,我們將a從0以0.1的步長(zhǎng)遞增到1觀察其對(duì)預(yù)測(cè)結(jié)果的變化影響.當(dāng)a=0時(shí),數(shù)據(jù)僅包含用戶評(píng)分信息,此時(shí)模型等同于MF,當(dāng)a=1時(shí),數(shù)據(jù)僅包項(xiàng)目的語(yǔ)義信息.
圖4展示了a值不斷提高時(shí)融入項(xiàng)目語(yǔ)義的矩陣分解的預(yù)測(cè)效果,起初在a值從0.1增加到0.6的過(guò)程中,MAE的值在下降,即預(yù)測(cè)評(píng)分的準(zhǔn)確性上升,但在a值從0.6增加到1的過(guò)程中,MAE的值又開(kāi)始上升,即預(yù)測(cè)評(píng)分的準(zhǔn)確性下降.因此,當(dāng)a=0.6時(shí)預(yù)測(cè)評(píng)分的效果達(dá)到了最佳.同時(shí),該實(shí)驗(yàn)也證明了融入項(xiàng)目語(yǔ)義能夠提高矩陣分解的預(yù)測(cè)效果,緩解數(shù)據(jù)稀疏性問(wèn)題.
圖4 參數(shù)a的影響
4.3.2 緩解數(shù)據(jù)稀疏性問(wèn)題分析
為了說(shuō)明融入項(xiàng)目語(yǔ)義的矩陣分解能夠有效得了緩解數(shù)據(jù)稀疏性問(wèn)題,本文將分別與以下算法進(jìn)行比較:
1)Basic MF:基礎(chǔ)矩陣分解,僅利用用戶評(píng)分矩陣預(yù)測(cè)評(píng)分.
2)PMF:概率矩陣分解,結(jié)合概率論的矩陣分解模型.
3)BPMF:基于馬爾可夫蒙特卡羅方法的貝葉斯概率矩陣分解.
4)CBMF:由文獻(xiàn)[13]提出的內(nèi)容加強(qiáng)矩陣分解,在矩陣分解過(guò)程中結(jié)合了標(biāo)簽信息.
5)CISMF:由文獻(xiàn)[8]提出的基于耦合相似度的矩陣分解,利用了耦合相似度的矩陣分解方法.
6)CSMF:本文研究的融入項(xiàng)目語(yǔ)義的矩陣分解,將項(xiàng)目語(yǔ)義信息作為輔助信息融入到矩陣分解過(guò)程中.
本文的實(shí)驗(yàn)采用五折交叉驗(yàn)證的方法,測(cè)試數(shù)據(jù)拆分為4份訓(xùn)練集和1份測(cè)試集,與其他算法的對(duì)比效果如表1所示.
表1 本文所提算法與其它矩陣分解比較
本文所提融入項(xiàng)目語(yǔ)義的矩陣分解的實(shí)驗(yàn)參數(shù)設(shè)置為λ1=λ2=λ3=0.02,a=0.6,d=5,ε=0.8.圖5展示了本文所提算法與其它算法在測(cè)試集上的結(jié)果,CBMF、CISMF、CSMF引入輔助信息的推薦算法相比于MF、PMF、BPMF無(wú)輔助信息的推薦算法明顯降低了MAE值和RMSE值,即提升了預(yù)測(cè)結(jié)果的準(zhǔn)確性,這說(shuō)明引入輔助信息能過(guò)有效地緩解數(shù)據(jù)稀疏性問(wèn)題.其中本文所提的融入項(xiàng)目語(yǔ)義的矩陣分解(CSMF)算法均優(yōu)于其它算法,原因是CSMF算法不同于其它算法僅將輔助信息作為正則化來(lái)限制矩陣分解,而是將輔助信息,即項(xiàng)目語(yǔ)義作為分解過(guò)程中的潛在特征參數(shù),并分解出用戶主觀上的語(yǔ)義偏好潛在特征,在預(yù)測(cè)評(píng)分過(guò)程中,結(jié)合了用戶主觀語(yǔ)義上的影響因素和客觀歷史評(píng)分上的影響因素,因?yàn)樵诂F(xiàn)實(shí)世界中項(xiàng)目的語(yǔ)義信是影響用戶行為的重要因素之一.因此將用戶的語(yǔ)義偏好引入到矩陣分解中,能夠有效地提升矩陣分解的評(píng)分預(yù)測(cè)能力,緩解數(shù)據(jù)稀疏性問(wèn)題.
4.3.3 解決冷啟動(dòng)問(wèn)題分析
為了說(shuō)明本文所提的ISCF算法在提升新用戶評(píng)分預(yù)測(cè)準(zhǔn)確性以及解決冷啟動(dòng)問(wèn)題上的效果,本文將與以下冷啟動(dòng)算法進(jìn)行比較:
1)PredictMean:一種計(jì)算已有評(píng)分平均值作為預(yù)測(cè)的基礎(chǔ)推薦算法.
2)UDCF:通過(guò)人口統(tǒng)計(jì)學(xué)屬性特征計(jì)算用戶相似度的協(xié)同過(guò)濾冷啟動(dòng)推薦的方法.
3)COS-CF:通過(guò)屬性的耦合相似度進(jìn)行協(xié)同過(guò)濾冷啟動(dòng)推薦的方法[19].
4)ISCF:本文所提的在補(bǔ)全評(píng)分矩陣的基礎(chǔ)上,利用聚類分割進(jìn)行協(xié)同過(guò)濾冷啟動(dòng)推薦方法.
本部分依然采用五折交叉驗(yàn)證的方法,與其它冷啟動(dòng)算法的對(duì)比效果如表2所示.
表2 本章所提算法與其它冷啟動(dòng)相關(guān)算法比較
圖5 矩陣分解算法MAE對(duì)比圖Fig.5 MAE comparison of Matrix factorization algorithm 圖6 冷啟動(dòng)推薦算法MAE對(duì)比圖Fig.6 MAE comparison of cold start recommendation algorithms
由圖6可看出,本文所提的基于項(xiàng)目語(yǔ)義的協(xié)同過(guò)濾冷啟動(dòng)推薦算法(ISCF)對(duì)新用戶的評(píng)分預(yù)測(cè)精度高于其它對(duì)比算法,這是因?yàn)镮SCF算法不僅利用了已有評(píng)分?jǐn)?shù)據(jù),還將未評(píng)分項(xiàng)通過(guò)之前的預(yù)測(cè)也加入到了推薦過(guò)程中,使得數(shù)據(jù)更加全面和完善.此外,在計(jì)算評(píng)分上,同時(shí)利用了用戶相似關(guān)系和項(xiàng)目語(yǔ)義相似關(guān)系.首先通過(guò)項(xiàng)目語(yǔ)義協(xié)同過(guò)濾計(jì)算已有用戶對(duì)這類項(xiàng)目的平均分,然后再通過(guò)用戶屬性協(xié)同過(guò)濾計(jì)算新用戶對(duì)此類項(xiàng)目的預(yù)測(cè)評(píng)分.
圖7展示了最近鄰個(gè)數(shù)對(duì)各種冷啟動(dòng)推薦算法的影響,隨著橫坐標(biāo)最近鄰個(gè)數(shù)的增加,對(duì)應(yīng)的MEA值變化的過(guò)程.
圖7 ISCF與其它冷啟動(dòng)推薦算法的性能比較
觀察圖7中可知,伴隨橫坐標(biāo)最近鄰個(gè)數(shù)的增加,UDCF、COS-CF、ISCF的MAE值都在不同程度減小,最后趨向于平穩(wěn)狀態(tài).由結(jié)果可知,本文所提的ISCF算法始終優(yōu)于其它對(duì)比算法,這是因?yàn)镮SCF算法不僅利用了用戶端的信息,還利用到了項(xiàng)目端的信息,即項(xiàng)目語(yǔ)義,在兩端分別進(jìn)行了聚類處理.由于實(shí)驗(yàn)中僅用了職業(yè)、性別、年齡這三個(gè)特征對(duì)用戶進(jìn)行聚類,所以對(duì)比差距不大,如果在用戶信息更全面的環(huán)境下,該算法的優(yōu)勢(shì)會(huì)更加明顯.
本文所提的基于項(xiàng)目語(yǔ)義的協(xié)同過(guò)濾冷啟動(dòng)推薦算法,首先利用語(yǔ)義相關(guān)性改進(jìn)TF-IDF算法,對(duì)項(xiàng)目語(yǔ)義進(jìn)行向量化表達(dá),然后融入到矩陣分解中以緩解數(shù)據(jù)稀疏性問(wèn)題,補(bǔ)全評(píng)分矩陣,最后通過(guò)聚類對(duì)補(bǔ)全后的評(píng)分矩陣進(jìn)行分割,獲得多個(gè)低緯度的評(píng)分小矩陣,利用小矩陣中的數(shù)據(jù)進(jìn)行協(xié)同過(guò)濾預(yù)測(cè)評(píng)分,有效的解決了冷啟動(dòng)問(wèn)題,并提升了算法的可擴(kuò)展性和實(shí)時(shí)性.下一步的研究方向則是考慮如何將用戶心理特征結(jié)合到推薦領(lǐng)域中,改善冷啟動(dòng)推薦的效果.