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