劉浩翰 曲昕彤 賀懷清
(中國(guó)民航大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 天津 300300)
在過去的20年,推薦系統(tǒng)的發(fā)展逐漸完善,它能將可能被用戶喜歡的資訊或項(xiàng)目推薦給用戶,從而幫助用戶從海量的信息中篩選出需要的特定信息[1]。伴隨著用戶的個(gè)性化需求越來越高,在海量信息中找到并為用戶匹配到滿足其個(gè)性化需求,增強(qiáng)其滿意度的信息,成為了專家學(xué)者和廣大網(wǎng)絡(luò)用戶關(guān)心的核心問題。
隨著深度學(xué)習(xí)在推薦領(lǐng)域取得的突破性進(jìn)展,在整合的多源異構(gòu)數(shù)據(jù)中構(gòu)建貼合用戶需求的用戶模型,提高推薦系統(tǒng)的性能和精確度,成為解決上述問題的主流解決方案。矩陣分解[2](Matrix Factorization,MF)是最受歡迎的一種協(xié)同過濾技術(shù),它使用潛在特征向量來表示用戶或項(xiàng)目。但MF因?yàn)槭褂靡粋€(gè)簡(jiǎn)單的固定內(nèi)積,在估計(jì)低維潛在空間中用戶-項(xiàng)目的復(fù)雜交互時(shí)會(huì)造成非線性建模能力較差的限制。He等[3]針對(duì)這一問題提出了一種神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)模擬用戶和項(xiàng)目的潛在特征,設(shè)計(jì)了基于神經(jīng)網(wǎng)絡(luò)的協(xié)同過濾通用框架(Neural Collaborative Filtering,NCF),表明MF可以被解釋為NCF的特例即廣義矩陣分解(Generalized Matrix Factorization,GMF),并利用多層感知機(jī)(Multi-Layer Perceptron,MLP)來賦予NCF高水平的非線性建模能力,由此提出神經(jīng)矩陣分解模型NeuMF。NeuMF統(tǒng)一了MF在建模用戶-項(xiàng)目潛在結(jié)構(gòu)方面的線性建模優(yōu)勢(shì)和MLP的非線性優(yōu)勢(shì),并且較一般方法提高了推薦的精確度。
然而在實(shí)際的推薦環(huán)境中,精確度并不是提高用戶對(duì)推薦項(xiàng)目滿意度的唯一標(biāo)準(zhǔn),推薦列表的多樣性也是一種重要指標(biāo)。多樣性反映的是推薦列表中項(xiàng)目種類的差異性,且提供更加多樣化的推薦列表不僅可以幫助用戶獲取新穎的項(xiàng)目,開拓個(gè)人偏好空間,還有助于覆蓋用戶的大部分興趣點(diǎn),而且盲目崇拜精確度指標(biāo)可能會(huì)傷害推薦系統(tǒng),降低用戶的滿意度。因此,如何實(shí)現(xiàn)將多樣性融入與深度學(xué)習(xí)結(jié)合的推薦系統(tǒng)中,在損失較少精確度的前提下大幅提高推薦的多樣性就成為了可以嘗試的研究目標(biāo)。
目前提高推薦多樣性的方法有多種,在典型的協(xié)同過濾算法中提高多樣性的方法主要有兩種:在推薦算法中提高多樣性以及在推薦列表上提高多樣性。具體代表性方法有:Zhang等[4]首次將物質(zhì)擴(kuò)散理論應(yīng)用在項(xiàng)目-項(xiàng)目(item-item)網(wǎng)絡(luò)結(jié)構(gòu)上,推薦方法每一步得分的傳遞都會(huì)除以自己的度,從而導(dǎo)致用戶的視野匯聚在那些度較大的節(jié)點(diǎn)上,能極大程度地提高推薦的精確性,但在推薦列表多樣性上則表現(xiàn)不佳。Premchaiswadi等[5]基于每個(gè)項(xiàng)目的總體多樣性效應(yīng),提出“總體多樣性效應(yīng)”的重排序推薦方法。Ren等[6]結(jié)合基于用戶和項(xiàng)目的協(xié)同過濾算法,并為其劃分權(quán)重,使用不同的多樣性方法生成推薦列表,最終達(dá)到提升多樣性的目的。Ho等[7]提出5D分?jǐn)?shù)的概念,并把推薦分為資源分配和推薦兩個(gè)階段,資源分配階段將推薦機(jī)會(huì)重新分配給項(xiàng)目,為長(zhǎng)尾項(xiàng)目提供機(jī)會(huì),并為具有良好口碑的項(xiàng)目留一些特權(quán)。
由于推薦多樣性與推薦精確度存在著此長(zhǎng)彼消的關(guān)系,目前提出的用來解決多樣性問題的方法多以犧牲精確度來提升多樣性為主,尤其是推薦列表排序法會(huì)損失較多的精確度,并且沒有從根本的用戶與項(xiàng)目交互過程中學(xué)習(xí)多樣性特征,只將用戶或是項(xiàng)目的某一屬性特征與推薦算法結(jié)合或是只對(duì)推薦列表進(jìn)行操作。為突破以往方法的限制,本文在NeuMF框架基礎(chǔ)上提出了NDMF模型,利用神經(jīng)網(wǎng)絡(luò)的特質(zhì),在較少損失推薦精確度的同時(shí)提高推薦多樣性。
NeuMF框架如圖1所示。
圖1 NeuMF模型框架
(1)
?
(2)
(3)
本文在NeuMF模型保證精確度的基礎(chǔ)上在神經(jīng)網(wǎng)絡(luò)中融合多樣性特征因子,并在推薦過程的最后進(jìn)行推薦列表重排序以進(jìn)一步提高列表多樣性。保證精確度在可接受的損失范圍內(nèi)提高推薦結(jié)果的多樣性和用戶滿意度。由此形成的模型稱為多樣神經(jīng)矩陣分解模型(Neural Diversity Matrix Factorization,NDMF)。
首先介紹兩個(gè)概念。用戶活躍度:表示用戶產(chǎn)生過交互行為的項(xiàng)目總數(shù);項(xiàng)目流行度:表示對(duì)項(xiàng)目產(chǎn)生過交互行為的用戶總數(shù)。二者都符合長(zhǎng)尾分布[8]。
2.1.1復(fù)合用戶活躍度k(u)
考慮到用戶的活躍度不僅體現(xiàn)在交互過的項(xiàng)目數(shù)上,也體現(xiàn)在用戶產(chǎn)生交互的項(xiàng)目類別上,為此本文綜合考慮這兩個(gè)影響因素,定義復(fù)合用戶活躍度如下:
k(u)=ω×k0(u)+(1-ω)×k1(u)
(4)
式中:k(u)表示用戶u的復(fù)合用戶活躍度,由兩部分組成:一部分為用戶u的活躍度,將其簡(jiǎn)單地歸一化處理后記為k0(u);另一部分由kmeans聚類算法得到,記為k1(u)。項(xiàng)目集合通過聚類得到R個(gè)類簇,將用戶u交互過的項(xiàng)目逐一與R個(gè)類簇對(duì)比得到r個(gè)子類簇[9],于是k1(u)表示如下:
(5)
再以閾值ω調(diào)節(jié)二者比重,以達(dá)到最理想的實(shí)驗(yàn)效果。kmeans聚類算法根據(jù)相似性原則將具有較高相似度的項(xiàng)目劃分至同一類簇,并且以距離作為項(xiàng)目對(duì)間相似性度量的標(biāo)準(zhǔn)。本文利用項(xiàng)目的類別屬性將項(xiàng)目p、q在n維空間上的特征分布表示為fp={p1,p2,…},fq={q1,q2,…}根據(jù)余弦夾角定理將項(xiàng)目p、q的相似性定義為:
(6)
2.1.2項(xiàng)目多樣性推薦因子k(i)
在電商系統(tǒng)中,冷門(長(zhǎng)尾)商品的銷售總額比實(shí)體零售店的商品多很多,甚至?xí)^熱門商品的銷售總額,所以長(zhǎng)尾商品的銷售總額不可忽視。因此,提高推薦的多樣性、豐富用戶的視野,可以通過挖掘長(zhǎng)尾商品來實(shí)現(xiàn)。
研究表明長(zhǎng)尾分布用單一的函數(shù)描述不足以反映其特征,但多個(gè)函數(shù)的疊加可以達(dá)到較好的效果。文獻(xiàn)[10]提出一種由n個(gè)底為e的指數(shù)函數(shù)線性組合(Hyper-Exponential Function,HEF)描述長(zhǎng)尾分布函數(shù)的方法:
(7)
因項(xiàng)目流行度符合長(zhǎng)尾分布,本文使用HEF來描述項(xiàng)目的長(zhǎng)尾分布情況。將項(xiàng)目流行度代入式(6)后得到項(xiàng)目i的多樣性推薦因子k1(i),為方便后續(xù)實(shí)驗(yàn)操作,使用函數(shù)f(x)=log(x+1)將k1(i)進(jìn)行平滑處理,最后將結(jié)果歸一化得到k(i)。本文將k(i)作為項(xiàng)目i的多樣性推薦因子,并且與用戶復(fù)合活躍度結(jié)合以提高推薦的多樣性,應(yīng)用在NDMF模型中。
NDMF由改進(jìn)后的GMF與MLP兩部分組成,結(jié)構(gòu)如圖2所示。MLP不僅可以彌補(bǔ)GMF單獨(dú)用向量?jī)?nèi)積描述用戶與項(xiàng)目間的潛在交互特征帶來的局限性,還提升了模型的非線性建模能力。
圖2 NDMF模型結(jié)構(gòu)圖
輸入層:僅使用一個(gè)用戶和一個(gè)項(xiàng)目的特征作為輸入。模型底部包括四個(gè)輸入特征向量,pu和qi為用戶u和項(xiàng)目i的交互特征向量,由用戶-項(xiàng)目交互矩陣Dm×n得到,ru和ti為用戶u的復(fù)合活躍度特征向量和項(xiàng)目i的多樣性特征向量,由k(u)和k(i)融合的矩陣Gm×n而得。
嵌入層:它是一個(gè)全連接層,用來將輸入層的四個(gè)高維稀疏特征向量映射成低維的稠密向量,為了使NDMF具有最大限度的靈活性,讓GMF與MLP獨(dú)立學(xué)習(xí)嵌入,并且以上角標(biāo)G和M區(qū)分二者的輸入。
NCF層:將嵌入層得到的嵌入向量送入各自的NCF層,在GMF部分定義NCF層的映射函數(shù)為:
(8)
式中:?代表向量的逐元素點(diǎn)乘;⊕代表將用戶-項(xiàng)目點(diǎn)乘得到的交互特征向量與用戶活躍度-項(xiàng)目長(zhǎng)尾因子點(diǎn)乘得到的多樣性特征向量進(jìn)行拼接(concatenate)。兩個(gè)特征向量融合后,交互特征與多樣性特征的聯(lián)合即達(dá)到提高推薦多樣性的目的。在MLP部分定義NCF層結(jié)構(gòu):
(9)
式中:a、b、W分別表示激活函數(shù)、偏置向量和權(quán)重矩陣。本文中激活函數(shù)選擇ReLU(Rectified Linear Unit),因?yàn)樗蛔C明不會(huì)導(dǎo)致過飽和,且實(shí)驗(yàn)結(jié)果表明ReLU的效果較Sigmoid和雙曲正切函數(shù)更好。最后將改進(jìn)后的GMF與MLP進(jìn)行融合得到NDMF,兩部分從嵌入層開始獨(dú)立學(xué)習(xí),在最后的隱藏輸出層NDMF層進(jìn)行融合,方案如下:
(10)
NDMF模型使用隱式反饋[12],但yui為1并不代表用戶u喜歡i,同樣yui為0也不意味著用戶u不喜歡i。
(11)
輸入數(shù)據(jù)預(yù)處理分為兩部分,采用兩種自定義的one-hot編碼方式得到用戶-項(xiàng)目交互矩陣Dm×n與復(fù)合用戶活躍度-項(xiàng)目多樣性推薦因子交互矩陣Gm×n,然后根據(jù)Dm×n與Gm×n得到4個(gè)稀疏的底層輸入向量。NDMF模型輸入包括4個(gè)特征向量:用戶特征向量,項(xiàng)目特征向量,復(fù)合用戶活躍度特征向量,項(xiàng)目多樣性推薦因子特征向量。
首先為了得到Dm×n,對(duì)用戶和項(xiàng)目特征進(jìn)行one-hot編碼處理,即以用戶數(shù)M和項(xiàng)目數(shù)N為橫縱階數(shù)生成矩陣,將用戶與項(xiàng)目的交互結(jié)果(0或1)填充到矩陣中,例:若用戶u對(duì)項(xiàng)目i有過交互則矩陣中對(duì)應(yīng)位置為1,否則為0。然后為了得到Gm×n,需要將復(fù)合用戶活躍度k(u)和項(xiàng)目多樣性推薦因子k(i)進(jìn)行特征結(jié)合,將k(u)和k(i)保留相同小數(shù)位后進(jìn)行等倍數(shù)擴(kuò)大化為整數(shù),將k(u)化為二進(jìn)制并生成m×k階矩陣,對(duì)k(i)進(jìn)行相同處理生成k×n階矩陣,其中k為k(u)與k(i)中最大數(shù)值所需二進(jìn)制化的位數(shù)。最后將得到的兩個(gè)矩陣相乘得到m×n階矩陣Gm×n,如圖3所示。
圖3 復(fù)合用戶活躍度矩陣與項(xiàng)目多樣性因子矩陣
Gm×n中的每一項(xiàng)都結(jié)合了用戶u的復(fù)合活躍度以及項(xiàng)目i的多樣性推薦因子,因此其表征的是用戶-項(xiàng)目對(duì)的多樣性特征。多樣性推薦因子本身可提高冷門項(xiàng)目的推薦權(quán)重,而復(fù)合用戶活躍度則體現(xiàn)用戶接受冷門項(xiàng)目的能力,二者相乘起到調(diào)節(jié)推薦因子所占比重的作用,即復(fù)合活躍度較高的用戶相比復(fù)合活躍度低的用戶更能夠承受多樣性推薦因子帶來的冷門項(xiàng)目所占比重的大幅度提升。
(12)
式(12)與二分類交叉熵?fù)p失函數(shù)[13]是相同的,原因在于我們把隱式反饋的輸出當(dāng)作一個(gè)二分類問題進(jìn)行處理,并且使用隨機(jī)梯度下降法最小化目標(biāo)函數(shù)。其中y-是消極實(shí)例(負(fù)反饋),從與用戶無交互的項(xiàng)目中進(jìn)行均勻采樣得到負(fù)反饋,并且可控制采樣比。
(13)
本文算法步驟描述如下:
輸入:Dm×n和Gm×n。
輸出:評(píng)價(jià)指標(biāo)HR、NDCG和ILS、損失函數(shù)loss。
Step1開始。
Step2訓(xùn)練特征并預(yù)測(cè)結(jié)果。
for 用戶u1to 用戶um
for 項(xiàng)目i1to 項(xiàng)目in
Step3候選推薦列表重排序。
for 用戶u1to 用戶um
利用式(13)對(duì)當(dāng)前用戶候選推薦列表resultui中的預(yù)測(cè)分?jǐn)?shù)進(jìn)行調(diào)整,進(jìn)而達(dá)到對(duì)resultui中的項(xiàng)目分?jǐn)?shù)重排序的目的。
Step4利用resultui計(jì)算并輸出三個(gè)評(píng)估指標(biāo)HR、NDCG和ILS,并代入式(12)計(jì)算損失值loss。
Step5結(jié)束。
本文實(shí)驗(yàn)數(shù)據(jù)集使用MovieLens和 Pinterest兩個(gè)數(shù)據(jù)集:
(1) MovieLens顯式反饋數(shù)據(jù)集。該數(shù)據(jù)集廣泛應(yīng)用于評(píng)估協(xié)同過濾算法,雖然它是顯式反饋數(shù)據(jù)集,但我們要從顯式反饋中學(xué)習(xí)隱式信息。為此,將其轉(zhuǎn)換為隱式數(shù)據(jù),其中每條數(shù)據(jù)被標(biāo)記為0或1表示用戶是否對(duì)該項(xiàng)進(jìn)行評(píng)級(jí)。
(2) Pinterest隱式反饋數(shù)據(jù)集。該數(shù)據(jù)集用于評(píng)估基于內(nèi)容的圖像推薦算法,類似于朋友圈點(diǎn)贊,原始數(shù)據(jù)龐大且稀疏。例如,超過20%的用戶只點(diǎn)贊過一次,難以用來評(píng)估協(xié)同過濾算法。因此,過濾數(shù)據(jù)集,僅保留贊過20次以上的用戶。處理后得到了包含55 187個(gè)用戶和1 445 621個(gè)項(xiàng)目交互的數(shù)據(jù)的子集。兩數(shù)據(jù)集數(shù)據(jù)數(shù)量如表1所示。
表1 數(shù)據(jù)集
本文采用了與NeuMF相同的評(píng)估方法——留一法[15](leave-one-out):對(duì)于每個(gè)用戶,使用其最近的一次交互作為測(cè)試集,并將其余數(shù)據(jù)作為訓(xùn)練集。由于在評(píng)估過程中為每個(gè)用戶排列所有項(xiàng)目花費(fèi)的時(shí)間太多,所以隨機(jī)抽取100個(gè)與用戶沒有過交互的項(xiàng)目,將測(cè)試項(xiàng)目排列在這100個(gè)項(xiàng)目中。
為了衡量推薦結(jié)果的精確度與多樣性,本文采用命中率(Hit Radio,HR)、折損累計(jì)增益(Normalized Discounted Cumulative Gain,NDCG)和列表內(nèi)部多樣性(Intra-list Similarity,ILS)進(jìn)行評(píng)估。HR衡量測(cè)試項(xiàng)目是否存在于TopN列表中;NDCG用來衡量測(cè)試項(xiàng)目在TopN列表中的位置,位置越靠前則增益越高,精確度越高;ILS針對(duì)單個(gè)用戶的推薦列表,通過計(jì)算項(xiàng)目之間的相似度進(jìn)而衡量列表的多樣性,推薦列表中項(xiàng)目越不相似,ILS越小,推薦結(jié)果的多樣性越好。為了便于觀察實(shí)驗(yàn)結(jié)果,定義多樣性評(píng)價(jià)指標(biāo)Div=1-ILS,即Div越大,多樣性越好。
4.3.1類簇個(gè)數(shù)確定
在聚類算法中類簇個(gè)數(shù)K對(duì)聚類的結(jié)果有直接影響,本文使用輪廓系數(shù)法[16]對(duì)不同類簇得到的聚類結(jié)果進(jìn)行評(píng)估。項(xiàng)目i的輪廓系數(shù)s(i)定義為:
(14)
式中:b(i)表示項(xiàng)目i的簇內(nèi)相似度,即與簇內(nèi)其他項(xiàng)目的距離的平均值,b(i)越小,說明項(xiàng)目i越應(yīng)該被聚類到該簇;a(i)表示項(xiàng)目i的簇間相似度,即與不同簇項(xiàng)目的平均距離的平均值,a(i)越大,說明項(xiàng)目越不屬于其他簇。由此可得結(jié)論,s(i)接近1,則說明項(xiàng)目i聚類合理;s(i)接近-1,則說明項(xiàng)目i更應(yīng)該分類到另外的簇。為了度量整個(gè)聚類的質(zhì)量,求得所有項(xiàng)目的平均輪廓系數(shù):
(15)
表2 在MovieLens上不同類簇?cái)?shù)的聚類效果
表3 在Pinterest上不同類簇?cái)?shù)的聚類效果
續(xù)表3
4.3.2模型參數(shù)設(shè)置
模型NDMF是基于NCF框架提出的,因此需要在NCF上調(diào)整參數(shù)來達(dá)到更高的效果。首先使用式(12)二類交叉熵?fù)p失函數(shù)學(xué)習(xí)模型,取正負(fù)采樣比1∶4,對(duì)于模型參數(shù)的初始化選擇高斯隨機(jī)分布,并用Adam作為學(xué)習(xí)率自適應(yīng)優(yōu)化算法,它通過對(duì)參數(shù)進(jìn)行頻繁和大幅度的更新來適應(yīng)每個(gè)參數(shù)的學(xué)習(xí)速率,Adam方法在NeuMF和NDMF模型上的收斂速度都比普通SGD(Stochastic Gradient Descent)快,緩解了調(diào)整學(xué)習(xí)率的難度。訓(xùn)練批次大小和學(xué)習(xí)速率通過測(cè)試選擇最優(yōu)的256和0.001,并且由于NCF的結(jié)構(gòu)特性,其隱藏輸出層即最后一層隱藏層決定了模型的性能,所以將其作為重要預(yù)測(cè)因素并使用[8,16,32,64]的因素大小作為模型的評(píng)估標(biāo)準(zhǔn), 若預(yù)測(cè)因素大小為8,則NCF層即結(jié)構(gòu)為32-16-8,分別為輸入層,嵌入層和隱層輸出的大小。由于深層的網(wǎng)絡(luò)結(jié)構(gòu)對(duì)于推薦任務(wù)也存在影響,經(jīng)過實(shí)驗(yàn)驗(yàn)證選擇隱藏層數(shù)為3的MLP。
4.3.3不同方法性能對(duì)比
將NDMF與GMF、MLP、NeuMF三種以NCF框架為基礎(chǔ)的方法在兩個(gè)真實(shí)數(shù)據(jù)集上進(jìn)行對(duì)比,分別在隱層輸出大小為[8,16,32,64]上進(jìn)行實(shí)驗(yàn),結(jié)果如圖4所示。在MovieLens數(shù)據(jù)集上,NDMF的精確度指標(biāo)HR和NDCG較NeuMF相差0.02左右,但與GMF和MLP相比相差不大,且上升趨勢(shì)保持平穩(wěn),其中NDCG降低幅度大于HR的原因在于得到預(yù)測(cè)結(jié)果后對(duì)其進(jìn)行了重排序,可能導(dǎo)致目標(biāo)項(xiàng)目的位置后移。如果目標(biāo)項(xiàng)目被移出TopN列表,那么HR和NDCG都會(huì)降低,如果沒有移出TopN列表那么只有NDCG會(huì)降低。在多樣性評(píng)價(jià)指標(biāo)ILS上可以明顯看出,NDMF的列表內(nèi)部多樣性明顯高于其他三種方法,其中高于NeuMF方法0.09左右,并且隨著精確度的上升會(huì)出現(xiàn)下降趨勢(shì)。對(duì)于Pinterest數(shù)據(jù)集而言,整體趨勢(shì)同上,可看出NDMF方法精確度較NeuMF方法降低幅度稍小,并且趨勢(shì)平穩(wěn),且在多樣性上的優(yōu)勢(shì)突出。由此,本文提出的NDMF方法在NCF框架中使用神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)了構(gòu)成的多樣性特征,得到的實(shí)驗(yàn)結(jié)果顯示,在精確度的損失在可接受范圍內(nèi),并且不低于一般協(xié)同過濾推薦算法的前提下,換來了推薦列表多樣性的大幅提升。
圖4 在兩個(gè)數(shù)據(jù)集上三個(gè)評(píng)價(jià)指標(biāo)的性能比較
4.3.4對(duì)比實(shí)驗(yàn)
以隱層輸出大小為8,從不同角度進(jìn)行以下對(duì)比實(shí)驗(yàn)。在2.1.1節(jié)中,以兩種不同的方法計(jì)算了用戶的活躍度,并以ω控制二者的貢獻(xiàn)度,圖4是以ω=0.5得出的實(shí)驗(yàn)結(jié)果。改變兩種用戶活躍度所占比重并觀察實(shí)驗(yàn)結(jié)果的變化,如表4所示,隨著ω的增大精確度有較小幅度的波動(dòng)而多樣性則小幅度下降,ω增大表示聚類得到的用戶活躍度k1(u)占比逐漸增多,相比于單純由項(xiàng)目被評(píng)價(jià)的次數(shù)得到的活躍度k0(u),k1(u)攜帶的多樣性特征更加明顯,帶來的增益更多。
表4 ω不同時(shí)NDMF方法在兩個(gè)數(shù)據(jù)集上的對(duì)比實(shí)驗(yàn)結(jié)果
最后選取TopN列表的長(zhǎng)度為10和15在兩個(gè)數(shù)據(jù)集進(jìn)行對(duì)比,隨著推薦列表長(zhǎng)度增加,目標(biāo)項(xiàng)目存在于列表的可能性或是其在推薦列表的排名得到提升,且由于Pinterest數(shù)據(jù)集的稀疏度較大,其精確度與多樣性的變化比MovieLens要小??梢钥闯觯贜euMF中ILS的漲幅遠(yuǎn)小于NDMF,這是由于NDMF不僅新增了用戶和項(xiàng)目的多樣性特征,還在MLP的非線性內(nèi)核從數(shù)據(jù)中學(xué)習(xí)交互函數(shù)時(shí)添加了復(fù)合用戶活躍度與項(xiàng)目多樣性推薦因子,具體實(shí)驗(yàn)結(jié)果見表5和表6。
表5 Top10下NeuMF與NDMF實(shí)驗(yàn)對(duì)比
表6 Top15下NeuMF與NDMF實(shí)驗(yàn)對(duì)比
針對(duì)如何提高多樣性,本文提出NDMF模型。其在GMF中以用戶-項(xiàng)目對(duì)為單位進(jìn)一步學(xué)習(xí)復(fù)合用戶活躍度與多樣性推薦因子結(jié)合得到的特征,同時(shí)用MLP學(xué)習(xí)用戶-項(xiàng)目對(duì)間的潛在交互關(guān)系。NDMF不僅通過新特征的學(xué)習(xí)提高了推薦的多樣性,而且在統(tǒng)一了用戶-項(xiàng)目潛在結(jié)構(gòu)方面MF的線性建模優(yōu)勢(shì)以及MLP的非線性建模優(yōu)勢(shì)的基礎(chǔ)上保證了推薦的精確度。最后在得到的預(yù)測(cè)結(jié)果上進(jìn)行重排序,更加確保了多樣性的提升。實(shí)驗(yàn)結(jié)果證明,精確度的損失在可接受的范圍內(nèi),且與精確度的損失相比多樣性得到更大幅度的提升。
近兩年,阿里巴巴提出了基于DNN模型的深度興趣網(wǎng)絡(luò)和它的進(jìn)化版,基于用戶多樣性以及用戶歷史數(shù)據(jù)的部分有效性,在其中設(shè)計(jì)了“興趣層”充分挖掘用戶歷史數(shù)據(jù)中的信息來提升CTR預(yù)估的性能?;谠撗芯?,未來我們將嘗試通過在NDMF模型中的MLP部分添加由注意力機(jī)制構(gòu)成的“興趣層”,來探索用戶和項(xiàng)目的深度交互,進(jìn)而保證推薦的精確性和多樣性的同時(shí)提升。