梁順攀,劉澤謙,張國政
(燕山大學(xué) 信息科學(xué)與工程學(xué)院,河北 秦皇島 066000)
評分預(yù)測作為推薦系統(tǒng)研究領(lǐng)域的基本問題,其分析的數(shù)據(jù)大都來自用戶和項目的評論信息。目前基于評論的研究大多只涉及到挖掘評論特征間的二階交互特征,并沒有對特征進(jìn)行更深層次的交互研究,比如雙重注意力交互學(xué)習(xí)模型(Dual attention mutual learning,DAML[1])利用神經(jīng)因子分解機(jī)(Neural factorization machine,NFM[2])做特征間交互并進(jìn)行評分預(yù)測。因此,本文對基于特征交互的工作進(jìn)行了分析。在基于特征交互的領(lǐng)域中,對特征交互的研究有兩個方面:傳統(tǒng)的淺層方式和目前的深層方式。淺層方式通過簡單的特征叉積方式構(gòu)造特征組合來表述特征間的關(guān)系,比如線性回歸模型[3],但其高度依賴人工特征提取,導(dǎo)致模型的預(yù)測能力受限。因此因子分解機(jī)(Factorization machine,FM)[4]應(yīng)運(yùn)而生,其主要通過隱向量內(nèi)積的方式自動地建模交互特征。近幾年的深層特征交互研究都是基于FM做進(jìn)一步優(yōu)化,進(jìn)而探索更深層的交互特征。寬度&深度學(xué)習(xí)模型(Wide & deep)[5]從記憶和泛化兩個角度構(gòu)建了一個聯(lián)合模型去學(xué)習(xí)高階特征。而深度交叉網(wǎng)絡(luò)[6]是對Wide & Deep模型的拓展,實現(xiàn)了自動學(xué)習(xí)顯式高階交互特征。極深因子分解機(jī)[7]是對DCN的擴(kuò)展,將顯式和隱式交互結(jié)合充分表征交叉特征,可以看作是真正的深度因子分解機(jī)?;谏疃壬窠?jīng)網(wǎng)絡(luò)(Deep neural network,DNN)的因子分解模型將FM與多層感知器相結(jié)合,只能隱含地揭示特征間隱式的關(guān)系。其僅使用嵌入的一部分來生成交互特征,只能建模相鄰特征之間的交互,無法全面表達(dá)特征的語義。對此,文獻(xiàn)[8]研究了自然語言中屬性特征,通過數(shù)據(jù)挖掘情態(tài)動詞詞義與語境特征的互動關(guān)系,文獻(xiàn)[9]通過提取用戶評論語句的關(guān)鍵詞對用戶情感傾向進(jìn)行了研究。文獻(xiàn)[10-12]為了充分表達(dá)上下文感知特征語義學(xué)習(xí)了不同語義空間的情感信息。以上工作都實現(xiàn)了對特征的深層交互并且取得了更加精確的推薦,然而大量的特征組合會讓特征冗余,導(dǎo)致模型訓(xùn)練的速度減慢并且預(yù)測效果下降。
本文針對以上問題展開研究,探索評論特征間的深層關(guān)系,通過建模評論特征間的高階特征來提高評分預(yù)測模型的預(yù)測準(zhǔn)確率和效率。為此,本文提出基于深度因子分解機(jī)的評分預(yù)測模型(Rating Prediction Model based Depth Factorization Machine,RPDFM)。模型從廣度和深度兩個層面提取特征間的深層關(guān)系。在廣度方面,RPDFM同時學(xué)習(xí)特征間的高階交互特征和低階交互特征,二者結(jié)合得到更全面的交互特征;從深度方面,為了挖掘到評論特征間不同語義情感空間的信息并有效建模高階特征,RPDFM將原始特征劃分為多個切片,利用多個隱含網(wǎng)絡(luò)層進(jìn)行顯式交叉;針對特征冗余問題,在每層交叉中加入自注意力甄別特征的重要性并去除無用的特征組合;最后聯(lián)合隱式高階交叉特征作為最終的高階特征。本文在亞馬遜關(guān)于評論的真實數(shù)據(jù)集上進(jìn)行實驗,結(jié)果表明RPDFM可以有效提高評分預(yù)測的效果。
RPDFM由四部分組成:嵌入層、特征提取層、特征交互層以及特征融合與預(yù)測層。嵌入層利用詞嵌入技術(shù)將評論文本向量化。特征提取層利用卷積神經(jīng)網(wǎng)絡(luò)提取評論文本的特征,然后將用戶特征和項目特征融合并輸入到特征交互層進(jìn)行交叉運(yùn)算。特征交互層分為3個模塊:顯式高階交互、隱式高階交互和線性低階交互,3個模塊采用并行的方式共享特征提取層的輸出,同時學(xué)習(xí)特征提取層的評論文本特征。顯式高階交互從向量對的角度對特征進(jìn)行高階交互,同時加入自注意力獲取每一個詞在評論上下文中的重要性;隱式高階交互利用普通的DNN對特征進(jìn)行隱式學(xué)習(xí),探索隱含的高階非線性特征;線性低階交互是為了彌補(bǔ)模型沒有低階交互的缺點(diǎn)而引入的,其對特征進(jìn)行了線性處理,生成特征的低階交互信息。三者之間互相補(bǔ)充以捕獲到更深入且全面的評論特征,從而提高評分預(yù)測的準(zhǔn)確率。模型的整體框架如圖1所示。
首先,收集有關(guān)用戶U和項目I的所有評論分別生成用戶評論文檔和項目文檔,在這個過程中要保證每個詞在評論中出現(xiàn)的順序不變;然后將兩個文檔作為輸入序列,同時為了豐富評論文本的語義表達(dá),利用詞向量嵌入模型Word2vec[13]把文檔中的每個詞映射為對應(yīng)的k維向量。最終得到用戶和項目的評論文檔嵌入矩陣表示,分別為Du=[wU1,wU2,…,wUl]和Di=[wI1,wI2,…,wIl],D∈Rk×l,其中w表示每個單詞的嵌入向量,k是每個單詞的嵌入維數(shù),l是單詞的個數(shù)。
圖1 基于深度因子分解機(jī)的評分預(yù)測模型框架Fig.1 A rating prediction model framework based on depth factorization machine
將嵌入層得到的向量矩陣Du和Di輸入到特征提取層,通過卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行特征提取。
首先,利用卷積核對用戶和項目的評論嵌入矩陣做卷積運(yùn)算,然后通過激活函數(shù)σ將卷積結(jié)果映射到非線性特征空間:
(1)
其次,將得到的用戶和項目的局部上下文特征通過平均池化操作g壓縮數(shù)據(jù)后得到用戶特征Hu和項目特征Hi:
(2)
式中,H表示經(jīng)過池化層得到的用戶或項目特征。
然后,通過一個全連接層重新擬合特征以減少特征信息的丟失,得到用戶和項目最終的特征表示Cu=[c1,c2,…,clu]和Ci=[c1,c2,…,cli]:
C=σ(WH+b),
(3)
式中,C表示經(jīng)過全連接層得到的用戶或項目的最終嵌入特征,W表示權(quán)重矩陣,b表示偏置參數(shù)。
最后,將得到的用戶特征Cu和項目特征Ci進(jìn)行融合得到他們的整體特征M,其融合過程如下:
M=Cu?Ci⊕Cu⊕Ci。
(4)
式中,?指哈達(dá)瑪積,⊕指拼接運(yùn)算,融合后的M=[e1,e2,…,en],M∈Rn×z,其中en表示融合后的每個特征向量,n為特征的個數(shù),z為特征向量的嵌入維度。采用這種交互方式的目的是為了得到更豐富的特征,這些特征既包含了用戶和項目獨(dú)立的個性化特征,又涵蓋了用戶和項目二階交互的特征。M將做為特征交互層的輸入特征。
1.3.1顯式高階注意交互
高階特征交互主要是從大量的用戶和項目的評論信息中,提取它們沒有出現(xiàn)過的或者很少出現(xiàn)且可能出現(xiàn)的組合特征,從而更深入地挖掘隱含特征,使模型具備更強(qiáng)的泛化能力。特征提取層的輸出M作為一個長序列包含了眾多特征,相鄰特征間的交互顯然不能捕獲到豐富的組合特征。
因此,本層將輸入的特征M分割成多個特征切片矩陣,通過將切分后的特征與M中對應(yīng)的原始特征進(jìn)行充分地交叉運(yùn)算來體現(xiàn)不同特征語義間的情感關(guān)系。具體的,首先對M進(jìn)行分割,以M中一個特征向量e為例,先將e嵌入到維度為m×d的向量空間中,再將其切分為m個d維的行向量,最后將切分得到的行向量轉(zhuǎn)化成列向量以便于后面的計算。這樣對每個特征進(jìn)行切分后,可以得到切片向量Mi∈Rd×1,i=1,2,…,n×m。其中n為特征的個數(shù),m指一個特征劃分出的切片數(shù)量,d指每個切片的嵌入維度。
然后,將輸入的原始特征M與特征切片Mi進(jìn)行高階交互,具體如圖2所示。在k層交互網(wǎng)絡(luò)中,首先規(guī)定第一層的切片的數(shù)量為x,之后每一層切片的數(shù)量m為第k層的深度網(wǎng)絡(luò)的尺寸的1/2。然后將每一個切分的向量與原始特征從基于向量對的角度在網(wǎng)絡(luò)中進(jìn)行交互學(xué)習(xí)。這樣不僅可以使模型的計算速度提高,而且使模型更容易學(xué)習(xí)特征間的關(guān)系,具體的計算公式如下:
(5)
圖2 高階特征交互圖Fig.2 High-order feature interaction figure
每一層的切分特征Mi和原始輸入特征M進(jìn)行交互后,其輸出特征將作為下一層的輸入特征,多次交互學(xué)習(xí)后就實現(xiàn)對特征的深度學(xué)習(xí),獲得更廣泛的特征組合。但對于第k層的交叉運(yùn)算,假設(shè)其輸出Pk個組合,則第k+1層將得到Pk×Pk+1×m個組合,因為不是每一對組合都是有用的,冗余的組合或者重要性幾乎為0的組合必然會影響模型的效率以及準(zhǔn)確率。因此,本文在每一層中對交互得到的特征矩陣加入了一層自注意力計算。
(6)
式中,Wk,m表示第m個切片在第k層的卷積核。
其次,把卷積后的輸出序列Ek,m分為三等份,分別作為查詢向量序列Q、鍵向量序列K和值向量序列V。然后計算每個特征在上下文的重要性權(quán)重A=[a1,a2,…,an],計算公式如下:
(7)
(8)
式中,W′∈Rm×1,b是偏置向量。最終顯式高階注意交互特征即為P=[P1,P2,…,Pn]。
1.3.2隱式高階深層交互
將特征向量輸入到深層網(wǎng)絡(luò)中進(jìn)行隱式高階交互是對顯式高階交互的一種補(bǔ)充。本模塊與顯式高階交互模塊聯(lián)合共同捕獲評論高階交互特征。具體實現(xiàn)如圖3,在輸入特征提取層的輸出M=[e1,e2,…,en]后,設(shè)置k層網(wǎng)絡(luò)對M中的特征e進(jìn)行交互學(xué)習(xí)。在每層網(wǎng)絡(luò)中,對特征向量e做內(nèi)積運(yùn)算進(jìn)行交叉學(xué)習(xí),其中第一層的特征就是M,Mk+1是第k層的交叉特征結(jié)果,同時Mk+1也是下一層網(wǎng)絡(luò)的輸入特征,計算過程如下:
Mk+1=WkMk+bk。
(9)
式中,Wk∈Rsk×l,Sk表示第k層的網(wǎng)絡(luò)尺寸大小,l指初始特征映射維度,bk指第k層的偏置。
進(jìn)行k層學(xué)習(xí)后,將最后一層的交叉結(jié)果Mk+1作為隱式高階交互的輸出,即得到最終的特征F。
圖3 隱式高階深層交互Fig.3 Implicit high-order deep interaction
1.3.3低階交互
低階特征交互可以從大量的用戶和項目的評論特征中,挖掘它們們之間存在的直接相關(guān)性特征,進(jìn)而更加準(zhǔn)確地表示它們之間的關(guān)系。本文在低階交互過程中輸入在特征提取層得到的特征向量M=[e1,e2,…,en],利用FM提取低階交互特征L:
(10)
(11)
模型的訓(xùn)練過程可分為向前和向后反饋兩個階段。在向前反饋階段,隱含層中經(jīng)過卷積計算后使用了ReLU激活函數(shù)。因此文中采用He的方法[14]對權(quán)重進(jìn)行初始化。在向后反饋階段,利用平方損失函數(shù)作為目標(biāo)函數(shù)對模型進(jìn)行訓(xùn)練:
(12)
式中,θ是模型中所有需要學(xué)習(xí)的參數(shù)。
訓(xùn)練過程中采用Adam方法進(jìn)行參數(shù)的更新,通過前后反饋、交叉迭代,完成模型的訓(xùn)練。此外,為防止過擬合,文中采用了Dropout策略,按照一定的概率將一些神經(jīng)元暫時從網(wǎng)絡(luò)中丟棄,提高模型性能。
本文利用Amazon的5個核心數(shù)據(jù)集進(jìn)行實驗,包括Music Instruments、Office Products、Digital Music、Video Games、Tools Improvement。這些評論數(shù)據(jù)集包含許多噪音,比如特殊符號、介詞、連詞、代詞等。因此本文對數(shù)據(jù)進(jìn)行預(yù)處理以保證每個用戶和每個項目都至少有一條評論,并根據(jù)Chen等人[15]的研究調(diào)整了評論的長度。表1統(tǒng)計了預(yù)處理后的每個數(shù)據(jù)集的詳細(xì)信息。為了使模型的推薦準(zhǔn)確率更高,泛化能力更強(qiáng),本文將數(shù)據(jù)集劃分為3個部分進(jìn)行訓(xùn)練,其中訓(xùn)練集占80%,驗證集占10%,測試集占10%。為了評估模型的性能,本論文采用了評分預(yù)測領(lǐng)域中常用的均方誤差(Mean Squared Error,MSE)作為評價指標(biāo),其計算方法如下:
(13)
表1 數(shù)據(jù)集的統(tǒng)計數(shù)據(jù)Tab.1 Dataset statistics
為了驗證模型的有效性,實驗選取了幾個基準(zhǔn)的模型Probabilistic Matrix Factorization(PMF)[16]、Convolutional Matrix Factorization(CMF)[17]、Context-Aware user-item Represention Learning(CARL)[18]、DAML[1]進(jìn)行對比。以下是對模型的介紹:
PMF:利用矩陣分解模型對評分?jǐn)?shù)據(jù)進(jìn)行推薦并利用ALS技術(shù)優(yōu)化模型。
ConvMF:將CNN與PMF結(jié)合對項目評論文檔做特征分析進(jìn)行推薦,并采用隱因子模型(LMF)做評分預(yù)測。
CARL:考慮用戶項目對之間的交互關(guān)系,通過兩條平行的CNN網(wǎng)絡(luò)和注意力機(jī)制建模并利用FM做最終的預(yù)測。
DAML:利用卷積神經(jīng)網(wǎng)絡(luò)和互注意力共同學(xué)習(xí)用戶和項目評論的特征,然后結(jié)合評分特征,利用神經(jīng)因子分解機(jī)(NFM)進(jìn)行高階非線性交互,完成預(yù)測。
本實驗主要分析網(wǎng)絡(luò)層深度以及顯式網(wǎng)絡(luò)層和隱式網(wǎng)絡(luò)層中神經(jīng)元個數(shù)對實驗結(jié)果的影響,并以此選擇最優(yōu)的數(shù)值訓(xùn)練模型。
網(wǎng)絡(luò)層深度:RPDFM模型中設(shè)置了兩個網(wǎng)絡(luò)結(jié)構(gòu)自動捕獲高階特征,分別為顯式高階網(wǎng)絡(luò)和隱式高階網(wǎng)絡(luò)。網(wǎng)絡(luò)層的深度(隱含層的個數(shù))決定模型是否可以獲得更復(fù)雜的特征,影響著特征交互的效果和模型的性能。本實驗分別探索了顯式高階網(wǎng)絡(luò)層的最佳網(wǎng)絡(luò)層數(shù)和隱式高階層的最佳網(wǎng)絡(luò)層數(shù)。圖4是RPDFM在5個數(shù)據(jù)集上MSE值隨顯式高階網(wǎng)絡(luò)層數(shù)的變化情況,圖5是RPDFM在5個數(shù)據(jù)集上MSE值隨隱式網(wǎng)絡(luò)層數(shù)的變化情況??梢钥吹綗o論是在顯式交叉還是隱式交叉中,兩個稀疏度高的數(shù)據(jù)集上最優(yōu)網(wǎng)絡(luò)層數(shù)比稀疏度低的數(shù)據(jù)集的值大,這表明龐大且稀疏的數(shù)據(jù)集需要更多的網(wǎng)絡(luò)層才能挖掘到特征間最準(zhǔn)確的關(guān)系。通過結(jié)果也可以發(fā)現(xiàn),當(dāng)網(wǎng)絡(luò)層數(shù)達(dá)到一定值后,MSE的結(jié)果會降低,這是因為模型的特征組合個數(shù)會隨著隱含層的層數(shù)增大而呈線性增長,組合越多,特征冗余現(xiàn)象越嚴(yán)重,模型的推薦結(jié)果也就會變差。根據(jù)實驗中的結(jié)果設(shè)置各個數(shù)據(jù)集的最佳網(wǎng)絡(luò)層數(shù)如表2。
圖4 MSE隨顯式網(wǎng)絡(luò)層數(shù)的變化趨勢Fig.4 The trend of MSE with the number of explicit network layers
圖5 MSE隨隱式網(wǎng)絡(luò)層數(shù)的變化趨勢Fig.5 The trend of MSE with the number of implicit network layers
表2 顯式和隱式網(wǎng)絡(luò)層中最佳網(wǎng)絡(luò)層個數(shù)Tab.2 The number of optimal network layers in explicit and implicit network layers
神經(jīng)元個數(shù):隱含層中神經(jīng)元的數(shù)量決定了是否可以創(chuàng)建更豐富的特征,影響著模型推薦的準(zhǔn)確率。因此文中通過實驗分析了神經(jīng)元的個數(shù)對實驗結(jié)果的影響,實驗結(jié)果圖6所示。由圖看到,隨著神經(jīng)元個數(shù)增加,MSE的值呈小幅度下降,到了一定值后呈平緩趨勢,此時增加神經(jīng)元的數(shù)量將不再改善網(wǎng)絡(luò)的性能。由于不同數(shù)據(jù)集數(shù)據(jù)稀疏程度和數(shù)據(jù)集大小不同,最佳神經(jīng)元個數(shù)也因數(shù)據(jù)集的這種差異而不同。比如,結(jié)合實驗結(jié)果,在Tools Improvement和Video Games數(shù)據(jù)集上的訓(xùn)練中,將神經(jīng)元的數(shù)量調(diào)整為200,模型的推薦效果最好;而在其它實驗的數(shù)據(jù)集中,神經(jīng)元個數(shù)據(jù)設(shè)置為100時模型效果最好。
圖6 MSE隨網(wǎng)絡(luò)中神經(jīng)元個數(shù)的變化趨勢Fig.6 The trend of MSE with the number of neurons in the network
本模型的主要目的是對評分特征做高階非線性交互,挖掘特征間更多的隱含特征,從而提升推薦準(zhǔn)確率。經(jīng)過多次實驗驗證,得到表3的實驗結(jié)果,可以看到本文提出的RPDFM模型準(zhǔn)確率更好,證明RPDFM可以有效提升預(yù)測準(zhǔn)確率。
由實驗結(jié)果可以看到ConvMF的結(jié)果明顯好于PMF。ConvMF本質(zhì)上是基于矩陣分解的思想,但是引入了偏置項,使結(jié)果表現(xiàn)得更加優(yōu)異,這表明ConvMF相比純粹的矩陣分解可以提取到更多潛在特征。CARL的實驗結(jié)果表明其比基于矩陣分解的模型表現(xiàn)更好,這是因為CARL利用FM對特征進(jìn)行二階交互,可以挖掘特征間深層次的關(guān)系。DAML是在CARL的基礎(chǔ)上,把神經(jīng)網(wǎng)絡(luò)引入到因子分解機(jī)中,將一階線性交互特征和二階顯式高階特征相結(jié)合,探索更深層的潛在關(guān)系,實驗結(jié)果也證明,它比FM能得到更精確的推薦結(jié)果。
而本文提出的RPDFM模型,嘗試探索更高階的交叉特征,從實驗結(jié)果可以看出RPDFM優(yōu)于其他四個模型,相比于目前預(yù)測性能最好的DAML模型RPDFM的準(zhǔn)確率提升了1.30%、3.20%、2.31%、1.90%和2.28%。而且模型在Video Games和Tools Improvement兩個稀疏數(shù)據(jù)集上的準(zhǔn)確率也有所提升,表明高階交互可以緩解數(shù)據(jù)稀疏問題。通過大規(guī)模的交互行為,挖掘出更多的潛在組合,將與當(dāng)前項目相似且和用戶有交互行為的物品用于推薦,可以在一定程度上解決冷啟動的問題。RPDFM模型在Office Products數(shù)據(jù)集上的提升相對較大,因為該數(shù)據(jù)集中的每個用戶的評論條數(shù)最多,通過高階交互,可以獲取更豐富的特征信息進(jìn)行評分預(yù)測。但是在該數(shù)據(jù)集上進(jìn)行高階交互后對預(yù)測的提升并不明顯,這表明在數(shù)據(jù)量豐富的情況下高階交互中會引入一些噪音,注意力模塊不能完全剔除無用的特征組合,導(dǎo)致推薦效果不理想。
表3 各模型在5個數(shù)據(jù)集上的性能對比Tab.3 Performance comparison of each model on five datasets
RPDFM將評論的融合特征輸入到3個交互模塊中進(jìn)行學(xué)習(xí),提取隱含特征。并且3個模塊共享特征提取層輸出特征,同時進(jìn)行訓(xùn)練。因此在這一節(jié)中分別對這3個模塊進(jìn)行了實驗,驗證各個部分及各模塊間的組合對實驗的影響。實驗結(jié)果如圖7所示,圖中IH指基于顯式的高階交互模塊,IEH指顯式和隱式結(jié)合的高階交互模塊,IEH-FM指顯式、隱式以及低階結(jié)合的模塊。OP、DM、MI、TI、VG分別指Office Products、Digital Music、Music Instruments、Tools Improvement、Video Games 5個數(shù)據(jù)集。從圖7可以看出5個數(shù)據(jù)集整體呈現(xiàn)一致規(guī)律,即當(dāng)顯式高階、隱式高階、低階交互三者融合后,它們的MSE值都是最低的,證明三者結(jié)合可以有效提升推薦準(zhǔn)確率。當(dāng)只有顯式高階部分的時候比只有隱式高階部分以及只有低階交互部分呈現(xiàn)更好的效果,這是因為顯式高階交互從基于向量的角度出發(fā),將特征向量切分為了n個部分,然后對每個部分都進(jìn)行充分的交叉,可以獲取到更充足的組合特征,為用戶推薦出與當(dāng)前項目特征相似的物品。這一優(yōu)勢可以緩解推薦系統(tǒng)中存在的冷啟動問題,并提高推薦準(zhǔn)確率。
隱式高階交互部分是將特征向量輸入到網(wǎng)絡(luò)層中進(jìn)行交叉學(xué)習(xí),只加強(qiáng)了現(xiàn)有組合特征的表現(xiàn)力,沒有挖掘到更多的潛在因素。因此實驗中將其與顯式部分結(jié)合,二者相輔相成,有效地提高了推薦的準(zhǔn)確率。低階交互部分實質(zhì)上利用FM對融合特征進(jìn)行交互,將線性特征與二階交叉特征相結(jié)合作為低階特征,彌補(bǔ)模型只有高階特征的不足。因此三者的結(jié)合提高了預(yù)測準(zhǔn)確率。
在高階交互部分,由于多層隱含網(wǎng)絡(luò)的引入,導(dǎo)致出現(xiàn)特征冗余的現(xiàn)象,因此引入了自注意力模塊進(jìn)行緩解,為了驗證注意力對實驗的作用,文中進(jìn)行了對比實驗,結(jié)果如表4所示,其中N-RPDFM指沒有加入注意力機(jī)制的模型??梢钥吹揭胱宰⒁饬C(jī)制后,相比于N-RPDFM,RPDFM在五個數(shù)據(jù)集上的預(yù)測效果都實現(xiàn)了有效提升,分別提升了2.09%、3.14%、2.03%、1.42%以及1.08%。同時,實驗結(jié)果表明自注意力機(jī)制加強(qiáng)了每個詞的語義特征,可以有效甄別相同的詞在不同語境中的含義,從而實現(xiàn)更準(zhǔn)確的特征匹配,為用戶推薦他們喜歡的物品。這可以在一定程度上緩解特征冗余的問題。
圖7 不同交互模塊對模型性能的影響Fig.7 The impact of different interaction modules on model performance
此外,在對比實驗中,發(fā)現(xiàn)RPDFM還能夠提高推薦的效率。對比表現(xiàn)最好的DAML和RPDFM在不同稀疏性的數(shù)據(jù)集上模型迭代10次的運(yùn)行時間,實驗結(jié)果如圖8、9,可以看出本文的模型提高了推薦的效率。通過分析,DAML在獲得用戶和項目項目的評論特征后,在接下來的特征融合過程中會導(dǎo)致特征冗余,進(jìn)而使得推薦的效率降低。而RPDFM中使用的自注意力機(jī)制減少了對外部信息的依賴,在捕捉數(shù)據(jù)或特征的內(nèi)部相關(guān)性上速度更快,使得推薦效率有了一定的提升。
圖8 Musical Instrument數(shù)據(jù)集上的迭代次數(shù)對比Fig.8 Comparison of iteration times on the Music Instrument dataset
表4 各模型在5個數(shù)據(jù)集上的性能對比Tab.4 Performance comparison of each model on five datasets
圖9 Tools Improvement數(shù)據(jù)集上的迭代次數(shù)對比Fig.9 Comparison of iteration times on the Tools Improvement dataset
針對目前基于評論的工作中用戶和項目特征之間的關(guān)系挖掘不充分以及缺少對高階特征研究的問題,本文提出基于深度因子分解機(jī)的評分預(yù)測模型(RPDFM)。模型從廣度和深度分別探究了評論特征間的深層關(guān)系。從廣度角度:一方面學(xué)習(xí)特征間的高階非線性特征,另一方面學(xué)習(xí)低階線性特征,二者聯(lián)合充分表征特征間深層的關(guān)系。從深度角度:一方面立足于因子分解機(jī)的初衷,從基于向量對的角度學(xué)習(xí)用戶和項目之間的高階顯式交互特征,不僅捕獲到每個詞在不同語義空間的情感信息,還可以得到有限的組合結(jié)果,此外加入自注意力機(jī)制,緩解了特征冗余的問題;另一方面利用DNN對特征進(jìn)行高階隱式交互,學(xué)習(xí)特征間更深層的隱含表示,將二者結(jié)合作為最終的高階特征。本文在亞馬遜數(shù)據(jù)集上進(jìn)行實驗驗證模型的可行性和有效性,結(jié)果表明RPDFM可以提高評分預(yù)測的準(zhǔn)確率和效率。
本文提出的模型雖然可以提升預(yù)測準(zhǔn)確率,但是由于加入了多個隱含網(wǎng)絡(luò),使模型的復(fù)雜度增加。此外,本文缺少對可解釋性的研究,以后可以在如何優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu)以及可解釋性方面進(jìn)行深入研究。