李增暉
摘要:傳統(tǒng)的矩陣分解模型僅通過用戶-項(xiàng)目的評分矩陣來對用戶進(jìn)行項(xiàng)目推薦,由于未能使用用戶與項(xiàng)目的特征信息從而造成了信息損失,使得模型的評分預(yù)測誤差較大。為了更加充分地滿足個(gè)性化推薦的需求,利用因子分解機(jī)以及深度神經(jīng)網(wǎng)絡(luò)改進(jìn)傳統(tǒng)的矩陣分解模型,融入用戶與項(xiàng)目的特征信息。對改進(jìn)后的模型在數(shù)據(jù)集MovieLens-1M上檢驗(yàn)?zāi)P偷男Ч?,采用RMSE作為評估指標(biāo),實(shí)驗(yàn)發(fā)現(xiàn)改進(jìn)后模型的RMSE值降低,模型的評分預(yù)測誤差減小,評分預(yù)測結(jié)果更加準(zhǔn)確。
關(guān)鍵詞: 矩陣分解;因子分解機(jī);深度學(xué)習(xí);推薦模型
中圖分類號(hào):TP391? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2021)25-0017-03
Abstract:The traditional matrix factorization model only uses the user-item rating matrix to recommend items to users.The failure to use the feature information of users and items causes information loss, which makes the model's rating prediction error larger.In order to more fully meet the needs of personalized recommendation, the factorization machine and deep neural network are used to improve the traditional matrix factorization model and incorporate the characteristic information of users and items.To test the effect of the improved model on the data set MovieLens-1M, using RMSE as the evaluation index, the experiment found that the RMSE value of the improved model is reduced, the models scoring prediction error is reduced, and the scoring prediction result is more accurate.
Key words:matrix factorization;factorization machine;deep learning;recommendation model
隨著科技的不斷發(fā)展,數(shù)據(jù)的產(chǎn)生呈現(xiàn)幾何倍數(shù)式的增長。數(shù)據(jù)的增加是信息技術(shù)發(fā)展的必然趨勢,但是如此海量的數(shù)據(jù)已經(jīng)遠(yuǎn)遠(yuǎn)超于個(gè)人或者系統(tǒng)所能有效利用的范圍,造成了信息過載的問題。而推薦算法是目前解決該問題的有效方案之一。
傳統(tǒng)推薦算法包括基于內(nèi)容推薦算法、協(xié)同過濾推薦算法和混合推薦算法。隨著數(shù)據(jù)的迅猛增長以及使用場景的多種多樣,傳統(tǒng)的推薦算法遇到了冷啟動(dòng)、稀疏矩陣等挑戰(zhàn)[1]。
近年來,深度學(xué)習(xí)在圖像處理及語音識(shí)別等人工智能領(lǐng)域上的表現(xiàn)十分出色[2],使得許多學(xué)者開始嘗試將深度學(xué)習(xí)與推薦算法領(lǐng)域進(jìn)行結(jié)合。張[3]等人稱在推薦系統(tǒng)中使用深度學(xué)習(xí)技術(shù)可以提高推薦質(zhì)量。與傳統(tǒng)推薦體系結(jié)構(gòu)相比[4],深度學(xué)習(xí)技術(shù)為推薦模型提供了更好的用戶與項(xiàng)目的交互表示[5],同時(shí)有助于挖掘用戶的興趣偏好。利用深度學(xué)習(xí)技術(shù)來學(xué)習(xí)用戶與項(xiàng)目的特征信息,不僅可以有效地獲取特征表示,還可以降低數(shù)據(jù)的稀疏性,使推薦效果能夠顯著地提升[6]。
事實(shí)上,近年來許多公司也都投身于深度學(xué)習(xí)方法的研究,來改善推薦算法的表現(xiàn)。例如,谷歌公司推出了Wide&Deep模型用于更好地實(shí)現(xiàn)手機(jī)應(yīng)用的推薦,Yahoo News采用了基于RNN的推薦模型向用戶進(jìn)行新聞推薦,美國奈飛公司采用深度學(xué)習(xí)推薦算法向用戶進(jìn)行影片推薦等等。
1 矩陣分解模型
協(xié)同過濾推薦算法是目前應(yīng)用最廣泛的推薦技術(shù)[7]。協(xié)同過濾推薦算法主要有以下兩類:
第一類為基于近鄰的協(xié)同過濾推薦算法,雖然此類算法具有很強(qiáng)的解釋性,但是其計(jì)算量比較大,隨著數(shù)據(jù)量不斷加大的情況下,難以實(shí)現(xiàn)向用戶進(jìn)行實(shí)時(shí)的推薦。針對此問題,第二類即基于模型的協(xié)同過濾推薦算法被提出,通過對評分?jǐn)?shù)據(jù)進(jìn)行分析并訓(xùn)練出相應(yīng)的預(yù)測模型以用于推薦,相較于第一類算法,此類算法的計(jì)算量更小,預(yù)測所需時(shí)間較短,是更好的一種方案,矩陣分解是此類算法中的常用模型之一。
評分預(yù)測可以視作一個(gè)將共現(xiàn)矩陣中未評分的數(shù)據(jù)補(bǔ)全的過程,而矩陣分解是實(shí)現(xiàn)這一過程的一類方法。矩陣分解方法所基于的假設(shè)是用戶的行為可以由嵌入的潛在因子決定。
矩陣分解過程如圖1所示,將共現(xiàn)矩陣RM×N分解為用戶潛在因子矩陣PM×K與項(xiàng)目潛在因子矩陣QK×N。其中M為用戶數(shù),N為項(xiàng)目數(shù),K為潛在因子的個(gè)數(shù)(圖1中M=4,N=4,K=2)。
共現(xiàn)矩陣R中用戶未給出評分?jǐn)?shù)據(jù)的預(yù)測值可以通過矩陣P中用戶u的行向量和矩陣Q中項(xiàng)目i的列向量計(jì)算,其表達(dá)式如公式(1)所示:
其中qi表示項(xiàng)目i的隱向量,pu表示用戶u的隱向量。
2 模型設(shè)計(jì)
2.1 模型結(jié)構(gòu)
從矩陣分解的過程中可以看出該方法僅僅采用了用戶-項(xiàng)目評分的共現(xiàn)矩陣,忽略了用戶和項(xiàng)目的特征信息,造成了信息損失,從而影響了評分預(yù)測的準(zhǔn)確度。針對此問題本文設(shè)計(jì)了一個(gè)融入多個(gè)模型的混合推薦模型命名為MF-FMD模型(如圖2所示)。首先,加入因子分解機(jī)來融合用戶與項(xiàng)目的特征值。但是由于因子分解機(jī)僅能獲得到較低階的特征交叉,三階及以上的更高階的特征交叉會(huì)造成模型中的權(quán)重?cái)?shù)量以及訓(xùn)練復(fù)雜度過高,因此同時(shí)引入深度神經(jīng)網(wǎng)絡(luò)來獲取更高階的特征交叉信息。