梁順攀,劉 偉,鄭智中,原福永
(燕山大學(xué)信息科學(xué)與工程學(xué)院,河北秦皇島 066004)
數(shù)據(jù)稀疏問題一直是推薦系統(tǒng)的挑戰(zhàn)之一,數(shù)據(jù)稀疏會導(dǎo)致推薦系統(tǒng)的推薦結(jié)果精度不高等問題,文獻(xiàn)[1]針對推薦系統(tǒng)中的高維稀疏矩陣提出了一種無約束非負(fù)潛在因子分析算法UNLFA(Unconstrained Non-negative Latent Factor Analysis).文獻(xiàn)[2]研究了八種擴(kuò)展的隨機(jī)梯度下降算法,提出八種新的潛在因子模型.文獻(xiàn)[3]提出了一種基于高維稀疏矩陣的深度潛在因子模型DLFM(Deep Latent Factor Model),通過一個非線性激活函數(shù)將多個潛在因子模型依次連接起來.上述幾種方法利用矩陣分解有效的緩解了推薦系統(tǒng)中高維稀疏矩陣的數(shù)據(jù)稀疏問題,但沒有考慮到其他的輔助信息.使用評論文檔作為輔助信息可以緩解僅使用評分矩陣時產(chǎn)生的數(shù)據(jù)稀疏問題,但用戶在目標(biāo)域冷啟動[4]時,就無法從目標(biāo)域中提取相關(guān)用戶的偏好.
跨域推薦能夠緩解用戶在目標(biāo)域冷啟動問題.基于集合矩陣分解的關(guān)系學(xué)習(xí)模型CMF(Collective Matrix Factorization)[5]將矩陣分解應(yīng)用到跨域推薦中,并且在多個源域的因子之間共享參數(shù)來實現(xiàn)跨域知識集成;跨域推薦的嵌入映射框架EMCDR(Embedding and Mapping framework for Cross-Domain Recommendation)[6]通過多層感知機(jī)捕捉域間的非線性映射函數(shù),得到來自不同領(lǐng)域的用戶表示;跨域和跨系統(tǒng)的深度推薦框架DCDCSR(Deep framework for both Cross-Domain and Cross-System Recommendations)[7]先使用矩陣分解模型生成用戶和項目的潛在因子,然后使用深度神經(jīng)網(wǎng)絡(luò)來映射跨域的潛在因子,進(jìn)一步擴(kuò)展了EMCDR.基于共享知識模型的跨域推薦算法SKP(Sharing Knowledge Pattern)[4],通過分解用戶-項目評分矩陣得到用戶分組對項目分組的評分知識模型,并利用目標(biāo)域的個性知識模型和各個領(lǐng)域共性知識模型得到推薦結(jié)果.知識聚合和遷移相結(jié)合的跨領(lǐng)域推薦算法ATCF(Aggregation and Transfer Collaborative Filtering algorithm)[8],通過基于矩陣分解的矩陣拼接和矩陣填充方法,有效避免了負(fù)遷移.上述方法考慮了用戶對源域項目評分,忽略了評論文檔可以更好的挖掘偏好信息這一特性.
多視角深度神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)方法MVDNN(Multi-View Deep Neural Network)[9]將用戶和項目的評論信息映射到一個潛在空間,最大化了用戶和喜歡的項目之間的相似度;基于聯(lián)合張量因子分解的評論跨域推薦模型RB-JTF(Review-Based cross-domain recommendation through Joint Tensor Factorization)[10]提出了一個輔助域和目標(biāo)域的聯(lián)合張量分解模型,利用評論文本中提取的方面因子來提高跨域推薦的性能;基于內(nèi)容的深度融合模型R-DFM(Review and content based Deep Fusion Model)[11]使用融合評論的堆疊式去噪自動編碼器來訓(xùn)練源域和目標(biāo)域中的用戶或項目因素,然后利用多層感知器將其在兩個域之間傳遞,從而提高冷啟動用戶推薦性能;通過方面轉(zhuǎn)換為冷啟動用戶提供跨域推薦模型CATN(Cross-domain recommendation framework via Aspect Transfer Network)[12]使用Aspects[13]以及注意力[14,15]機(jī)制提取用戶和項目的方面,并且增加了相似用戶的評論作為輔助文檔增強(qiáng)推薦的準(zhǔn)確率.以上這些方法雖然使用了評論文檔作為輔助信息,提高了推薦的準(zhǔn)確度,但其使用的深度模型不能準(zhǔn)確地區(qū)分出用戶的細(xì)粒度偏好,并且只使用了單一源域,故這些方法的推薦準(zhǔn)確度不高.
用戶對項目的評論信息可以反映出用戶對項目多個層面的評價,項目表現(xiàn)出的多個層面即“方面”[13].方面能反映用戶評論對項目屬性的情感程度,將“方面”引入跨域推薦模型能夠更好的進(jìn)行知識遷移.膠囊網(wǎng)絡(luò)[16~18]將神經(jīng)網(wǎng)絡(luò)中的神經(jīng)元擴(kuò)展成神經(jīng)向量,并用膠囊來表示,膠囊的長度代表屬性的概率,而膠囊的方向代表了這個屬性的具體描述,通過這一特性就可以保存評論文檔中的用戶和項目方面.膠囊網(wǎng)絡(luò)的動態(tài)路由機(jī)制可以選擇性的聚集一些低層的膠囊(屬性),進(jìn)而生成高層的膠囊(屬性),這些特性都使膠囊網(wǎng)絡(luò)比其他神經(jīng)網(wǎng)絡(luò)對空間和語序更加敏感.此外,膠囊網(wǎng)絡(luò)的動態(tài)路由機(jī)制與神經(jīng)網(wǎng)絡(luò)的反向傳播機(jī)制不同,僅通過少量迭代就可以獲得較好的結(jié)果.以上這些特性說明,膠囊網(wǎng)絡(luò)可以更好地挖掘文本的細(xì)粒度特征.
基于以上背景,本文提出了一個基于方面和膠囊網(wǎng)絡(luò)的跨域評分預(yù)測模型:ACN.為了更好的學(xué)習(xí)跨域知識,本文將一對相關(guān)數(shù)據(jù)集設(shè)定互為源域和目標(biāo)域,交替進(jìn)行學(xué)習(xí)訓(xùn)練.本文主要貢獻(xiàn)總結(jié)如下:
(1)基于膠囊網(wǎng)絡(luò)可以挖掘細(xì)粒度偏好這一特性,本文使用膠囊網(wǎng)絡(luò)挖掘評論文檔、提取用戶和項目的方面,并且通過基于方面的自注意力機(jī)制,獲取對于用戶和項目表示中更重要的方面.
(2)本文將膠囊網(wǎng)絡(luò)的映射矩陣修改為共享矩陣,使路由過程輸出的每個偏好膠囊都位于同一個向量空間中,保證遷移到目標(biāo)域的方面處在同一向量空間.
(3)本文使用不同類型的源域輸入模型進(jìn)行實驗,證明了在數(shù)據(jù)稀疏和冷啟動的前提下,ACN可以學(xué)習(xí)并遷移不同源域、多源域的知識.
本文提出的ACN模型結(jié)構(gòu)如圖1所示.ACN設(shè)置為一個雙塔結(jié)構(gòu)網(wǎng)絡(luò),分別用來處理用戶評論文檔和項目評論文檔,最后通過知識遷移層將從源域中獲取的偏好遷移到目標(biāo)域,從而預(yù)測用戶對項目的評分.
圖1 ACN模型結(jié)構(gòu)
ACN模型分為四層:(1)初始膠囊層:將評論文檔嵌入表示,經(jīng)過一次卷積操作初步提取文本特征,將評論向量轉(zhuǎn)化為初始化膠囊.(2)主膠囊層:將初始化的膠囊輸入膠囊網(wǎng)絡(luò),通過迭代路由過程挖掘用戶或項目的方面.(3)方面注意力層:將輸出膠囊進(jìn)行方面注意力表示,針對不同源域的側(cè)重點篩選出不同的方面.(4)知識遷移層:將兩個域的方面表示匹配,進(jìn)行最終的評分預(yù)測.由于用戶網(wǎng)絡(luò)與項目網(wǎng)絡(luò)結(jié)構(gòu)相同,故下文主要以用戶網(wǎng)絡(luò)為例進(jìn)行詳細(xì)介紹.
ACN模型中主要用到的符號及其含義如表1所示.
表1 模型符號定義
以用戶u為例,將u在源域的評論文檔定義為Du∈RL,其中每一項代表用戶評論文檔中的單詞索引,L是評論長度.將Du進(jìn)行詞嵌入后得到詞嵌入矩陣Eu=[e1…eg…eL],其中eg∈Rd代表第g個詞的維度為d的嵌入向量.將Eu經(jīng)過一次一維卷積,并初始化為膠囊網(wǎng)絡(luò)的輸入膠囊矩陣.
選用n個寬度為d,窗口大小為w1的卷積核來提取文本特征,構(gòu)成初始化膠囊,則第k個卷積核對Eu的卷積操作定義為:
其中*代表一維卷積,Wk是第k個卷積權(quán)重矩陣,bk是第k個卷積偏置.將n個卷積核卷積結(jié)果進(jìn)行拼接,得到L-w1+1個維度為n的初始化膠囊Pu=[p1…pk…pL-w1+1],其中pk∈Rn代表第k個初始化膠囊.
將初始化膠囊輸入到膠囊網(wǎng)絡(luò)作為低層膠囊,首先對低層膠囊進(jìn)行特征映射,預(yù)測高層膠囊在偏好空間的位置.由于使用不同的映射矩陣會將膠囊映射到不同的偏好空間,導(dǎo)致高層膠囊存在于不同空間,影響最終的知識遷移過程,當(dāng)使用的源域與目標(biāo)域不相關(guān)或者使用多個源域時,這種影響尤為嚴(yán)重.本文在每對低層膠囊和高層膠囊之間使用路由全局共享的映射矩陣,將用戶或項目的每個低層膠囊映射到相同的向量空間,得到高層膠囊的模糊表示qi.
其中pi代表第i個低層膠囊,W S u是共享映射矩陣,代表低層膠囊和高層膠囊的聯(lián)系.
得到qi后,對其進(jìn)行動態(tài)路由過程.首先通過低層膠囊和高層膠囊之間的連接權(quán)重cij加權(quán)計算高層膠囊的候選向量sj,連接權(quán)重cij可以在動態(tài)路由過程通過bij計算得出.
其中bij表示每對低層膠囊和高層膠囊之間的一致性分?jǐn)?shù),初始值為0.
將高層膠囊的候選向量sj經(jīng)過非線性squash函數(shù),得到標(biāo)準(zhǔn)化的高層膠囊.
squash函數(shù)第一項的作用是將sj單位化,即將sj壓縮到[0,1],第二項是一個大于0小于1的值,分母中的數(shù)字代表函數(shù)的擠壓程度,當(dāng)||sj||2大于擠壓程度時,第二項則會大于0.5,表示該膠囊代表的特征存在幾率大,而當(dāng)||sj||2小于擠壓程度時,第二項則會小于0.5,表示該膠囊代表的特征存在幾率小.這樣可以放大sj的重要部分,縮小sj的不重要部分.
最后,在動態(tài)路由的每次迭代中,bij通過以下公式進(jìn)行更新:
動態(tài)路由過程收斂后,膠囊網(wǎng)絡(luò)輸出M個高層膠囊ok∈Re,k∈{1,2,…,M},它們組成了用戶u的膠囊矩陣Ou,代表了用戶u的M個方面的偏好特征.
用戶在不同的領(lǐng)域會關(guān)注不同的方面,只有突出用戶在源域中更加關(guān)注的方面才能對模型的學(xué)習(xí)更有幫助,因此需要將用戶更加關(guān)注的方面賦予更高權(quán)重.
以用戶u為例,使用縮放點積注意力計算每個膠囊對每個方面的注意力權(quán)重,并對膠囊進(jìn)行自注意力加權(quán).通過共享參數(shù)非線性變換矩陣將膠囊矩陣投影到同一空間,得到注意力機(jī)制查詢項Qu和鍵項Ku.其中WQ,WK∈Rd×d為非線性變換矩陣,ReLU是非線性映射激活函數(shù).
然后,通過查詢項和鍵項計算膠囊的注意力權(quán)重WAttn,使用膠囊維度開方對注意力進(jìn)行縮放,可以避免查詢項和鍵項之間產(chǎn)生較高的匹配分?jǐn)?shù),影響結(jié)果.
最后,通過注意力權(quán)重對膠囊矩陣Ou進(jìn)行加權(quán),計算出用戶u對應(yīng)的方面矩陣Au.
同理,將項目ν在目標(biāo)域的評論文檔輸入模型的前三層,可以獲得項目ν對應(yīng)的方面矩陣Aν.
評論文檔經(jīng)過模型的前三層,就得到了用戶u和項目ν的方面矩陣Au和Aν,在知識遷移層中,將Au和Aν中兩個方面之間進(jìn)行語義匹配來計算用戶u對項目ν的預(yù)測評分.
首先計算Au和Aν之間每個方面對之間的語義匹配,公式如下:
其中WMatch是方面匹配映射矩陣,它編碼了源域中每個方面和目標(biāo)域中每個方面之間偏好遷移的重要性.Sp,q反映了相應(yīng)方面對(p,q)之間的匹配程度.
最后,將S中每一對語義匹配求和并取其平均值,考慮到用戶和項目偏置,計算最終的預(yù)測評分,公式定義如下:
其中,bu是用戶偏置項,bν是項目偏置項.
本文將ACN模型訓(xùn)練過程的損失函數(shù)定義為:
其中br是評分偏置項.為了更好地學(xué)習(xí)跨域遷移知識,本文設(shè)置一對相關(guān)領(lǐng)域互為源域和目標(biāo)域,在訓(xùn)練過程中依次執(zhí)行兩個學(xué)習(xí)流程.本文采用Adam[19]優(yōu)化器對損失函數(shù)進(jìn)行優(yōu)化,Adam優(yōu)化器可以在訓(xùn)練過程中自動調(diào)整各個參數(shù)的學(xué)習(xí)速率,并且比普通的SGD優(yōu)化器更準(zhǔn)確、收斂更快.
在 本 文 的 實 驗 中,使 用Amazon5-cores[20]中 的Book、Movie(Movies and TV)和Music(CDs and Vinyl)三個彼此相關(guān)以及Toy(Toys and Games)、Tool(Tools and Improvement)和Beauty三個彼此不相關(guān)的數(shù)據(jù)集.每個數(shù)據(jù)集中包含用戶編號、項目編號、用戶對項目的評分、用戶對項目的評論、評論投票等9種數(shù)據(jù)類型,本文使用用戶編號、項目編號、評論和評分4種數(shù)據(jù)類型.各個數(shù)據(jù)集統(tǒng)計如表2所示.
表2 數(shù)據(jù)集統(tǒng)計
由于跨域推薦模型能夠緩解數(shù)據(jù)稀疏所引起的冷啟動問題,本節(jié)在源域和目標(biāo)域的重疊用戶中,隨機(jī)選擇50%的用戶作為推薦系統(tǒng)的冷啟動用戶,在模型驗證和測試過程均不需要他們在目標(biāo)域中的交互歷史(測試集包含30%,驗證集包含20%),并將剩下的50%的重疊用戶用于模型訓(xùn)練過程,實驗中訓(xùn)練集、測試集和驗證集的比值為5:3:2.
本文除了將ACN模型與基準(zhǔn)模型進(jìn)行縱向?qū)Ρ?,還將重疊用戶以η∈{100%,50%,20%,10%,5%}的比例構(gòu)建訓(xùn)練集,將本文模型和基準(zhǔn)模型同時在這五種比例的數(shù)據(jù)集中進(jìn)行訓(xùn)練,并將結(jié)果進(jìn)行橫向?qū)Ρ龋C明ACN緩解數(shù)據(jù)稀疏引起冷啟動問題的有效性.
在實驗過程中以MSE(均方誤差)作為模型實驗效果的評判標(biāo)準(zhǔn),MSE越低,模型性能越高.MSE的公式定義如下:
為了驗證模型的有效性,實驗選取以下5個基準(zhǔn)模型與ACN進(jìn)行對比:
(1)CMF[5]:對源域和目標(biāo)域均進(jìn)行因子分解,在因子之間共享參數(shù)來實現(xiàn)跨域推薦.
(2)EMCDR[6]:使用多層感知機(jī)學(xué)習(xí)不同域間的非線性映射函數(shù),并且將源域知識遷移給目標(biāo)域來生成推薦.
(3)R-DFM[11]:使用堆疊式去噪自動編碼器來挖掘源域和目標(biāo)域的特征,然后利用多層感知器將其在兩個域之間傳遞.
(4)CATN[12]:通過方面門機(jī)制提取用戶和項目的方面,并且增加用戶輔助文檔的最新跨域推薦模型.
(5)ANR[21]:挖掘用戶和項目方面的最新單域推薦模型.本文使其直接在目標(biāo)域中參與實驗.
本文將Book、Movie和Music三個數(shù)據(jù)集兩兩組合,分別組成三對源域和目標(biāo)域(分別是Book->Movie、Movie->Music和Book->Music),對應(yīng)三個跨域推薦任務(wù).本節(jié)在這三個跨域推薦任務(wù)中對本文模型ACN以及基準(zhǔn)模型進(jìn)行了對照試驗,實驗結(jié)果如表3所示.
表3 各模型實驗結(jié)果對比
基于矩陣分解方面建模方法(如CMF),CMF通過對源域和目標(biāo)域中的評分矩陣進(jìn)行矩陣分解來學(xué)習(xí)用戶和項目的特征,但忽略了其他有用的信息,故其遷移給目標(biāo)域的知識不夠完整,所以在基準(zhǔn)模型中性能是最差的.ACN模型在知識遷移層也是矩陣相乘,但這兩個矩陣并非原始矩陣分解而來,而是通過膠囊網(wǎng)絡(luò)分別對卷積得到的用戶和項目這兩個矩陣進(jìn)行處理,而且在ACN模型中矩陣相乘的目的并非為了還原原始矩陣并得到原始矩陣中的丟失值,而是為了遷移到目標(biāo)域進(jìn)行評分預(yù)測,這與矩陣分解本質(zhì)上是不同的.EMCDR使用了多層感知機(jī)捕獲源域和目標(biāo)域之間的非線性映射,效果比CMF使用的矩陣分解要好,但還是沒有利用到其他輔助信息,故與其他模型相比性能較差;R-DFM擴(kuò)展了堆疊式降噪自動編碼器,并且將評論文本和項目描述內(nèi)容與評分矩陣相融合,在學(xué)習(xí)到的用戶和項目的潛在因素中保留了更多的語義信息,但自動編碼器并不能準(zhǔn)確地提取出文本中的細(xì)粒度特征,故在一些數(shù)據(jù)集上甚至不如僅使用評分矩陣的兩個模型,在其他數(shù)據(jù)集中的表現(xiàn)也并不是最好的;ANR(Aspect-based Neural Recommender)使用注意力機(jī)制對評論文檔進(jìn)行方面表示學(xué)習(xí),在目標(biāo)域的評論文檔中可以挖掘到對推薦有重要作用的信息,在單域和跨域模型中均有較好的效果,但其挖掘到的特征并不完整,且當(dāng)用戶在目標(biāo)域冷啟動時,就無法從目標(biāo)域中提取出相關(guān)用戶的偏好;CATN是目前最新的跨域推薦模型,它使用方面門以及注意力機(jī)制提取用戶和項目的方面,并且為冷啟動用戶額外增加了輔助文檔,挖掘出的偏好更加完整,性能在本文選取的基準(zhǔn)模型中最好,但CATN方面提取的方法是通過反向傳播對模型進(jìn)行更新,沒有引入其他監(jiān)督信息,導(dǎo)致挖掘出的偏好容易產(chǎn)生過擬合,并且CATN沒有考慮到多源域評論文檔對目標(biāo)域推薦的影響;ACN在三個推薦任務(wù)中的性能均高于其他模型,且在三個推薦任務(wù)中相對于性能最高的基準(zhǔn)模型獲得了2.3%、0.8%和2.2%的提升.
僅通過縱向與基準(zhǔn)模型對比不能充分體現(xiàn)出ACN緩解數(shù)據(jù)稀疏引起冷啟動問題的能力,因此本節(jié)將模型在每個推薦任務(wù)上的效果進(jìn)行橫向?qū)Ρ?如圖2所示.
通過圖2可以看出,在數(shù)據(jù)逐漸稀疏的情況下,基準(zhǔn)模型EMCDR、R-DFM和CATN的MSE大幅上升,而本 文 模 型ACN在Book->Movie和Book->Music上 的MSE漲幅明顯小于以上三個基準(zhǔn)模型,并且漲幅與基準(zhǔn)模型CMF以及ANR基本一致.產(chǎn)生這樣效果的原因是CMF僅使用評分?jǐn)?shù)據(jù)作為模型輸入,而ANR則是單域推薦模型,其效果與重疊用戶的稀疏度無關(guān).證明了ACN緩解冷啟動問題的有效性.
圖2 推薦性能隨用戶數(shù)的變化
綜上表明ACN可以更準(zhǔn)確地挖掘用戶和項目的方面,并且可以將在源域中學(xué)習(xí)到的知識遷移到目標(biāo)域,能更有效地提高冷啟動用戶在目標(biāo)域預(yù)測評分的準(zhǔn)確率.
本節(jié)將Toy、Tool和Beauty這3個不相關(guān)的數(shù)據(jù)集組成三對源域和目標(biāo)域(Toy->Tool、Toy->Beauty和Tool->Beauty),對應(yīng)于三個跨域推薦任務(wù).將本文模型ACN、CATN以及ANR依次在三個跨域推薦任務(wù)中進(jìn)行對照試驗,證明ACN使用不相關(guān)的源域和目標(biāo)域進(jìn)行遷移信息的有效性.實驗結(jié)果統(tǒng)計如圖3所示.
圖3 使用與目標(biāo)域不相關(guān)源域時模型的性能
ACN使用與目標(biāo)域不相關(guān)的數(shù)據(jù)集作為源域時,在三個推薦任務(wù)上的性能均高于單域推薦模型ANR,并且性能表現(xiàn)略強(qiáng)于跨域推薦模型CATN.實驗結(jié)果一方面證明ACN在使用不相關(guān)源域評論文檔時,仍然可以挖掘出有用的信息并遷移給目標(biāo)域,提升推薦的準(zhǔn)確度.另一方面通過與ANR的性能對比,證明ACN可以有效緩解用戶在目標(biāo)域冷啟動的問題.
本節(jié)對ACN在單一源域和多個源域進(jìn)行訓(xùn)練時的性能差異進(jìn)行比較.本節(jié)將三個相關(guān)的數(shù)據(jù)集(Book、Music和Movie)和三個不相關(guān)的數(shù)據(jù)集(Toy、Tool和Beauty)進(jìn)行組合,形成兩個跨域推薦任務(wù):Book+Movie->Music和Toy+Tool->Beauty,并在這兩個推薦任務(wù)上對ACN模型進(jìn)行訓(xùn)練,將實驗結(jié)果與ACN使用單一源域時的性能進(jìn)行對比,實驗結(jié)果如圖4和圖5所示.
圖4 相關(guān)多源域和單源域?qū)嶒灲Y(jié)果對比
圖5 不相關(guān)多源域和單源域?qū)嶒灲Y(jié)果對比
從圖4可以看出,ACN使用多個源域進(jìn)行跨域推薦的效果遠(yuǎn)遠(yuǎn)好于使用單個源域的效果.當(dāng)目標(biāo)域是Music時,ACN使用Book與Movie的多源域比使用單源域的性能提高了3.5%和20.6%;當(dāng)目標(biāo)域是Beauty時,ACN使用Toy和Tool的多源域比使用單源域的性能提高了5.0%和4.0%.這說明無論源域與目標(biāo)域的類別相關(guān)或是不相關(guān),使用多個源域都可以大幅度提升模型的性能.與3.2節(jié)的實驗對比,使用多源域的ACN比使用單源域的CATN性能提高了4.3%和20.8%.本節(jié)實驗證明了ACN不僅可以遷移多個相關(guān)源域的知識到目標(biāo)域,增強(qiáng)用戶偏好的偏好信息,當(dāng)源域與目標(biāo)域不相關(guān)時,還可以通過整合從多個源域中學(xué)習(xí)到的知識,提高目標(biāo)域推薦的準(zhǔn)確度.
為了驗證ACN模型使用膠囊網(wǎng)絡(luò)挖掘評論文檔多個方面以及通過自注意力機(jī)制篩選特征的合理性,使用ACN的兩個子模型進(jìn)行消融試驗,兩個子模型定義如下:
ACN-cnn:將ACN模型的卷積膠囊層替換為一次卷積和池化操作的CNN,用于證明膠囊網(wǎng)絡(luò)可以更有效的挖掘評論文檔的多個方面.
ACN-noattn:去掉ACN的自注意力機(jī)制,注意力權(quán)重用維度相同數(shù)值全是1的矩陣代替,用于證明自注意力機(jī)制能夠更好的篩選出對目標(biāo)領(lǐng)域最重要的特征.
將ACN-cnn和ACN-noattn在Movie->Music數(shù)據(jù)集上,重疊用戶以100%,50%,20%,10%,5%的比例進(jìn)行實驗,并與ACN模型進(jìn)行對比,實驗結(jié)果如表4所示.
表4 各模型實驗結(jié)果對比
首先,使用膠囊網(wǎng)絡(luò)和自注意機(jī)制的ACN模型的性能高于使用CNN和自注意力機(jī)制的ACN-cnn模型,說明膠囊網(wǎng)絡(luò)能夠更好地挖掘評論文檔的多個方面,而且ACN模型的性能也要優(yōu)于使用膠囊網(wǎng)絡(luò)的ACNnoattn模型,這說明自注意力機(jī)制能夠更好的篩選出對目標(biāo)領(lǐng)域最重要的特征.其次,使用膠囊網(wǎng)絡(luò)的ACNnoattn模型明顯要好于使用自注意力機(jī)制的ACN-cnn模型,即不使用膠囊網(wǎng)絡(luò)模型效果下降的更多,說明ACN模型中膠囊網(wǎng)絡(luò)比自注意力機(jī)制更為重要.縱向來看,在數(shù)據(jù)逐漸稀疏的情況下,ACN-noattn的MSE要明顯低于ACN-cnn的MSE,這說明膠囊網(wǎng)絡(luò)能夠更好的應(yīng)對數(shù)據(jù)稀疏引起的冷啟動問題,從而我們模型在面對冷啟動問題上表現(xiàn)得更好.
本文提出了一個基于方面和膠囊網(wǎng)絡(luò)的跨域評分預(yù)測模型ACN,使用膠囊網(wǎng)絡(luò)挖掘源域和目標(biāo)域中的用戶或項目方面.為了更好地契合跨域推薦任務(wù),本文設(shè)置了全局共享映射矩陣來表示低層膠囊和高層膠囊之間的映射關(guān)系,使模型能更準(zhǔn)確地遷移并融合從源域和目標(biāo)域挖掘出的方面.經(jīng)過與各種基準(zhǔn)模型的實驗對比,證明了本文的ACN模型可以更準(zhǔn)確地提取并遷移評論文檔中的特征,并且提升評分預(yù)測的準(zhǔn)確率.此外,通過ACN使用不相關(guān)源域與其他基準(zhǔn)模型的對比實驗,證明ACN使用與目標(biāo)域不相關(guān)的源域,仍可以學(xué)習(xí)到有用的信息.本文還將多個源域進(jìn)行組合并對照試驗,證明了與單個源域相比,多個源域可以提升模型的性能.
在未來的工作中考慮通過其他上下文信息完善模型對推薦結(jié)果的可解釋性.