任 豪,劉柏嵩,孫金楊
寧波大學(xué) 信息科學(xué)與工程學(xué)院,浙江 寧波 315211
隨著網(wǎng)絡(luò)信息化時代的到來,各類信息呈指數(shù)性增長,出現(xiàn)嚴(yán)重“信息過載”問題。如何從海量數(shù)據(jù)中按需高速獲取有效信息成為亟需解決的問題,各類推薦算法應(yīng)運(yùn)而生。傳統(tǒng)的推薦算法包括基于內(nèi)容的推薦[1-3]、基于協(xié)同過濾的推薦[4-7]和基于混合方法的推薦[8-11]三種,其中基于協(xié)同過濾的推薦應(yīng)用廣泛,推動了電商領(lǐng)域的發(fā)展。
近幾年推薦系統(tǒng)在學(xué)術(shù)界和工業(yè)界大熱,推薦算法在不同的場景下發(fā)揮著重要作用。然而,數(shù)據(jù)稀疏問題和冷啟動問題已然成為制約推薦系統(tǒng)進(jìn)一步發(fā)展的重要瓶頸。遷移學(xué)習(xí)作為機(jī)器學(xué)習(xí)方法的補(bǔ)充和擴(kuò)展,利用已有的來自不同領(lǐng)域的與當(dāng)前任務(wù)相關(guān)的數(shù)據(jù)來幫助解決目標(biāo)領(lǐng)域中標(biāo)簽數(shù)據(jù)稀少或者無標(biāo)簽數(shù)據(jù)問題,旨在從和目標(biāo)域相似或相關(guān)的源域中遷移合適的領(lǐng)域知識,輔助解決目標(biāo)域任務(wù),已在圖像處理、自然語言處理領(lǐng)域得到運(yùn)用。近年來,遷移學(xué)習(xí)被用來解決推薦中的數(shù)據(jù)稀疏[12]和冷啟動[13-14]問題,這類推薦算法統(tǒng)稱為跨領(lǐng)域推薦算法(cross-domain recommendation)[15-16]。
不同任務(wù)中域的劃分不盡相同,目前在推薦任務(wù)中域尚未有統(tǒng)一的劃分標(biāo)準(zhǔn)。目前取得較為廣泛認(rèn)同的推薦中的域的定義為:具有某個特定推薦系統(tǒng)中所需的某些共享屬性的項(xiàng)目集合構(gòu)成一個域,其中共享屬性可以是文本屬性、評分、標(biāo)簽、類別等[17-18]。本文中的域遵從此定義。
跨領(lǐng)域推薦是將不同領(lǐng)域的知識和信息融合,通過發(fā)現(xiàn)并利用輔助數(shù)據(jù)域中的可遷移知識來提高目標(biāo)域的推薦性能,從而做出更加綜合全面的推薦。其中,跨領(lǐng)域推薦任務(wù)定義如下:
定義1(跨領(lǐng)域推薦任務(wù))設(shè)UA和UB分別是域A和域B中的兩個具有某種特征(用戶偏好)的用戶集合,IA和IB分別是域A和域B中的兩個具有某種特征(商品屬性)的項(xiàng)目集合,則兩種不同的跨域推薦任務(wù)可以歸納如下:
(1)利用源域A中用戶和項(xiàng)目信息提高目標(biāo)域B中的項(xiàng)目的推薦質(zhì)量;
(2)將來自兩個不同域中的項(xiàng)目進(jìn)行聯(lián)合推薦。
文中跨領(lǐng)域推薦任務(wù)均指第一種情況。
定義2(遷移學(xué)習(xí)(transfer learning))給定源域Ds以及源任務(wù)Ts,目標(biāo)域Dt和目標(biāo)任務(wù)Tt,當(dāng)Ds≠Dt或者Ts≠Tt時,利用Ds和Ts中學(xué)習(xí)到的fs(?)來提高目標(biāo)預(yù)測函數(shù)ft(?)的預(yù)測準(zhǔn)確性,則遷移學(xué)習(xí)任務(wù)可表示為 合理應(yīng)用遷移學(xué)習(xí)可作為傳統(tǒng)機(jī)器學(xué)習(xí)算法的補(bǔ)充,解決其無法解決的問題,傳統(tǒng)機(jī)器學(xué)習(xí)和遷移學(xué)習(xí)從域和任務(wù)兩個角度的對比如表1 所示。但如何避免“負(fù)遷移”是應(yīng)用遷移學(xué)習(xí)時不可避免的問題。有效避免“負(fù)遷移”需考慮兩個問題:“遷移什么”以及“如何遷移”。從“遷移什么”層面上看,Pan等[19]將遷移學(xué)習(xí)分為四類,即基于實(shí)例的遷移學(xué)習(xí)、基于特征表示的遷移學(xué)習(xí)、基于參數(shù)的遷移學(xué)習(xí)和基于知識關(guān)系的遷移學(xué)習(xí)。而在“如何遷移”層面上,不同任務(wù)場景中有不同的遷移方法,接下來將以跨領(lǐng)域推薦場景為例重點(diǎn)闡述如何展開有效知識遷移。 Table 1 Comparisons between machine learning and transfer learning表1 傳統(tǒng)的機(jī)器學(xué)習(xí)和遷移學(xué)習(xí)的比較 類似于遷移學(xué)習(xí),深度遷移學(xué)習(xí)同樣需要考慮“負(fù)遷移”問題。顯然,在深度遷移學(xué)習(xí)中需要遷移的是那些含有更多有用信息的、可在不同域間共享的、有利于目標(biāo)任務(wù)解決的非線性特征;而從“如何遷移”角度,文獻(xiàn)[20]給出一種深度遷移學(xué)習(xí)的分類方法,其描述見表2,后文中關(guān)于深度跨域推薦算法的分類沿用此分類方法。 Table 2 Classification of deep transfer learning表2 深度遷移學(xué)習(xí)的分類方法 傳統(tǒng)跨域推薦,即基于遷移學(xué)習(xí)的跨領(lǐng)域推薦算法,通過建立輔助域和目標(biāo)域間知識遷移橋梁,借助矩陣分解、因子分解、張量分解等方法提取出合適的領(lǐng)域知識,將其遷移到目標(biāo)域中輔助解決目標(biāo)任務(wù),提高目標(biāo)任務(wù)的性能。不同推薦場景中,知識遷移方法不同,主要包括評分模式共享、隱含特征映射/轉(zhuǎn)換和域關(guān)聯(lián)三種。 評分模式,又稱“密碼本”,是由輔助域數(shù)據(jù)壓縮而成的富含信息的聚類級的評分矩陣,常用于輔助域和目標(biāo)域的用戶項(xiàng)目不重疊時建模用戶簇對于項(xiàng)目簇的隱含行為偏好,通過將用戶-項(xiàng)目交互矩陣“共聚類”提取“密碼本”,重構(gòu)目標(biāo)評分矩陣補(bǔ)全缺數(shù)數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)稀疏條件下的跨域推薦。如ACTL(adaptive codebook transfer learning)[21]以矩陣分解作為基本模型,動態(tài)調(diào)整提取密碼本的規(guī)模以提高算法性能;LSCD(low-rank and sparse cross-domain)[22]加入低秩約束解決基于稀疏評分矩陣的跨域推薦問題;CD-MDTF(cross domain multi-dimension tensor factorization)[23]以多維度的張量分解替代矩陣分解,考慮用戶-項(xiàng)目交互情況的同時考慮時間因子對推薦結(jié)果的影響。 以上方法均是從單個輔助域的評分?jǐn)?shù)據(jù)中遷移領(lǐng)域知識,雖可初步解決推薦中數(shù)據(jù)稀疏問題,但是單個輔助域中的可遷移信息有限,易發(fā)生過擬合且無法保證知識的有效正遷移。近年來從多個輔助域中提取“密碼本”的方式得到重視。MINDTL(multiple incomplete domains transfer learning)[24]從多個相關(guān)的非完全稠密域的評分中提取評分模式,并以此預(yù)測目標(biāo)評分矩陣,其中評分矩陣的近似估計(jì)方法如下: 式中,Bn表示從第n個輔助域中提取的“密碼本”,Utgt和Vtgt分別表示從目標(biāo)域的評分矩陣分解得到的非負(fù)用戶項(xiàng)目矩陣,W是掩碼,用于控制待預(yù)測的評分矩陣的規(guī)模。該算法的不足在于要求引入的多個輔助域數(shù)據(jù)相互關(guān)聯(lián)。Zhuang 等[25]放寬了引入輔助域時的數(shù)據(jù)相關(guān)性約束,提出TRACER(transfer collaborative filtering framework from multiple sources via consensus regularization),對多個輔助域評分?jǐn)?shù)據(jù)聯(lián)合因子分解,通過加入一致正則項(xiàng)實(shí)現(xiàn)各輔助域中“密碼本”的相似性約束。該方法只強(qiáng)調(diào)了域間的共有特性而忽略了域間特有信息,導(dǎo)致推薦效果不理想。Jiang 等[26]考慮了域間特有信息的重要性,提出基于低秩系數(shù)分解的方法DLSCF(deep low-rank sparse collective factorization)。該方法分別從多個輔助域中提取共享評分模式和特有評分模式,再利用分層模型得到隱含因子和隱含子類之間的從屬關(guān)系,通過域間隱含因子類間關(guān)系約束保證知識的正遷移以實(shí)現(xiàn)數(shù)據(jù)異構(gòu)場景下的跨域推薦。 將單個輔助域拓展到多個輔助域增加可遷移信息能夠提高算法性能,但僅利用輔助域的評分信息增大了數(shù)據(jù)引入的代價卻未充分利用其他可用輔助信息,降低數(shù)據(jù)的利用率。于是,充分挖掘輔助域中知識關(guān)系成為了增加正遷移的另一種解決辦法。王俊等[27]提出基于共享模式、隱含因子和連接圖三元橋式的TRBT(triple-bridge transfer)模型,考慮域間特有信息以解決正遷移不足的問題,模型框架如圖1 所示。其目標(biāo)函數(shù)如下: 其中,Z是評分矩陣R的指示矩陣,當(dāng)R中有評分缺失時Z的取值是0,反之則為1。V0、U0分別表示用戶和項(xiàng)目的可遷移特征,S表示通過連接圖挖掘的用戶/項(xiàng)目的可遷移的興趣模式信息,B是輔助域和目標(biāo)域中的共享信息,B′則是域間特有信息,將跨域遷移信息分成[B,B′]可保留領(lǐng)域間共有信息,同時能夠很好地反映領(lǐng)域的相關(guān)性。GU=tr(UTLUU),LU=DU-WU,其中LU是拉普拉斯矩陣,WU是用戶i和用戶j余弦相似度矩陣,DU是由WU的行元素之和生成的一個對角矩陣,GV的計(jì)算方法類似。GU和GV的引入,強(qiáng)調(diào)了共享評分對于項(xiàng)目或者用戶的不同側(cè)重,增加了模式遷移的多樣性。SKP(sharing knowledge pattern)[28]則將用戶屬性信息加入推薦過程以解決跨域正遷移不足問題。引入其他可用的輔助信息增加可用的數(shù)據(jù)量可緩解數(shù)據(jù)稀疏帶來的影響,但在輔助域數(shù)據(jù)和目標(biāo)域數(shù)據(jù)存在不一致性或者沒有明顯關(guān)聯(lián)的情況下,該類方法反而會加重“負(fù)遷移”。 Fig.1 Model of TRBT圖1 TRBT 模型圖 隱含因子(latent factor)是常用的域間用戶行為和項(xiàng)目屬性的稠密表示,用于實(shí)現(xiàn)用戶偏好和項(xiàng)目屬性之間匹配,在域間數(shù)據(jù)沒有明確關(guān)聯(lián)但共享隱含空間時作用效果極佳?;陔[含特征映射/轉(zhuǎn)換的跨域推薦方法通過一定的特征映射/轉(zhuǎn)換,將源域數(shù)據(jù)和目標(biāo)域數(shù)據(jù)映射到相同的特征空間,從而建立域間關(guān)聯(lián)并以此作為域間知識遷移的橋梁,解決不同領(lǐng)域的用戶行為的異構(gòu)問題。 Zhang 等將域間域內(nèi)的實(shí)體對應(yīng)關(guān)系加入矩陣分解過程中,提出基于核誘導(dǎo)的知識遷移的跨域推薦算法KerKT(kernel-induced knowledge transfer)[29]。利用領(lǐng)域自適應(yīng)調(diào)整重疊實(shí)體的特征空間,基于擴(kuò)散核補(bǔ)全法[30]將兩個領(lǐng)域間的不重疊的實(shí)體進(jìn)行關(guān)聯(lián),通過重疊實(shí)體實(shí)現(xiàn)知識有效轉(zhuǎn)移,從而緩解數(shù)據(jù)稀疏性問題。實(shí)驗(yàn)表明,本算法在不同的場景下可將預(yù)測的精準(zhǔn)性提高1.13%至20%不等,同時實(shí)驗(yàn)結(jié)果亦證明了即便在域間僅有較小重疊度的情況下,領(lǐng)域知識的跨域遷移也是可行的,但該方法僅適用域間實(shí)體有重疊的情況。SCT(semantic correlation in tagging systems)[31]則利用跨域標(biāo)簽間的語義關(guān)聯(lián)跨域?qū)R用戶和項(xiàng)目的特征表示,識別域間相似的用戶和項(xiàng)目,實(shí)現(xiàn)數(shù)據(jù)稀疏條件下的跨域推薦。該方法放寬了需實(shí)體重疊的適用條件,但其能否準(zhǔn)確識別領(lǐng)域間相似用戶和相似項(xiàng)目直接影響推薦效果,適用范圍受限。 文獻(xiàn)[32]提出的CDLFM(cross domain collaborative filtering algorithm based on a linear decomposition model)考慮到用戶在評分行為上的相似關(guān)系,將用戶相似度融入到矩陣分解中,同時為了在稀疏域中全面刻畫用戶偏好,作者提出從用戶不感興趣點(diǎn)、評分差異性及評分行為相似性三個維度計(jì)算用戶相似度。為實(shí)現(xiàn)跨領(lǐng)域的知識遷移,文中提出基于領(lǐng)域的梯度增強(qiáng)樹(gradient Boosting trees,GBT)方法學(xué)習(xí)特定用戶的高階特征映射函數(shù)來對齊用戶隱含特征。具體來說,每一個冷啟動用戶u∈UT都可以在源域中找到與之具有相似評分行為的鏈接用戶v并以此為遷移橋梁,利用用戶v在源域和目標(biāo)域中的潛在特征對計(jì)算出域間的特征的映射關(guān)系,其中f(x)按式(3)完成第m次梯度增強(qiáng): 根據(jù)用戶u在源域中的潛在特征和特征映射函數(shù)按式(4)~式(6)得到項(xiàng)目的預(yù)測評分: 其中,hm(x;αm)為參數(shù)化函數(shù),ηm為學(xué)習(xí)率,λ是防止過擬合的衰減參數(shù),Vt是目標(biāo)域中的項(xiàng)目的隱含特征表示。盡管文章中提出了三種不同的計(jì)算用戶相似度的方法,但其算法性能受到單一跨域知識遷移模式約束。隨后,吳彥文等[33]提出采用聯(lián)合用戶側(cè)重和項(xiàng)目側(cè)重的多元知識遷移模式預(yù)測目標(biāo)域評分實(shí)現(xiàn)數(shù)據(jù)稀疏條件下的跨域推薦。更有一些學(xué)者借助隱含特征映射/轉(zhuǎn)換基本思想創(chuàng)造性地將跨域推薦問題轉(zhuǎn)化成分類問題[34]、回歸問題[35-36]等,用常見的機(jī)器學(xué)習(xí)算法加以解決,為跨域推薦提供了新的求解思路。 域間關(guān)聯(lián)是目前傳統(tǒng)跨領(lǐng)域推薦算法中常見的另一個重要的方法。該類算法通過利用額外輔助域中除隱含特征和評分信息以外的其他外部信息建立域間知識遷移的橋梁,增加跨領(lǐng)域推薦的準(zhǔn)確性和合理性,同時增加輔助域數(shù)據(jù)的利用率。常用的域間關(guān)聯(lián)信息包括物品標(biāo)簽及其語義關(guān)系、用戶社交信任關(guān)系、域間關(guān)聯(lián)規(guī)則等。ITTCF(item-based tag transfer collaborative filtering)[37]摒棄了大部分跨域推薦算法中僅從用戶評分模式中挖掘可遷移知識的單一輔助方式,將用戶的行為反饋(即標(biāo)簽)和數(shù)值型的評分信息相結(jié)合,通過層次標(biāo)簽聚類、主題偏好遷移多種方式解決跨域推薦問題。Ma 等[38]則將評分?jǐn)?shù)據(jù)與用戶社會信任關(guān)系結(jié)合融入到推薦中來,提出了跨領(lǐng)域信任感知推薦模型TT-CDR(transitive trustaware cross-domain recommendation)。依據(jù)用戶間的社交關(guān)系為每個領(lǐng)域單獨(dú)建立一個基于上下文感知的信任關(guān)系傳遞網(wǎng)絡(luò),并在此基礎(chǔ)上利用基于信任關(guān)系傳遞感知的概率分解模型挖掘用戶間的社會信任,建模用戶間的間接信任關(guān)系,最后利用非線性用戶特征向量的映射連接不同領(lǐng)域的用戶反饋,實(shí)現(xiàn)跨域項(xiàng)目預(yù)測。由于無法自動挖掘社交信任關(guān)系而需要給定先驗(yàn)的用戶間信任關(guān)系,因此該方法不適用于關(guān)系動態(tài)變化的情況。UP-CDRSs(user profile as a bridge in cross-domain recommender systems)[39]則自動計(jì)算用戶信任關(guān)系并以此作為域間關(guān)聯(lián)橋梁,通過最大化后驗(yàn)概率學(xué)習(xí)用戶和物品的隱含因子,將二者的點(diǎn)積結(jié)果對未評級物品做出評分預(yù)測以實(shí)現(xiàn)跨領(lǐng)域推薦。類似的方法還有CDIE-C(cross-domain item embedding method based on co-clustering)[40]、FAS-CF(fusion auxiliary similarity collaborative filtering)[41]等。 除了直接利用跨領(lǐng)域數(shù)據(jù)間的直接關(guān)聯(lián)外,從領(lǐng)域數(shù)據(jù)中挖掘跨域間接關(guān)聯(lián)也是解決跨域推薦問題的新的方法??紤]到用戶社會關(guān)系和行為偏好間互惠關(guān)系,Shu 等提出了CrossFire(cross media joint friend and item recommendation)[42],利用平臺間用戶-用戶相關(guān)性以及平臺內(nèi)用戶-項(xiàng)目交互關(guān)系挖掘不同平臺間的領(lǐng)域關(guān)聯(lián)特征,融合跨媒體信息解決跨媒體推薦中兩媒體不能直接鏈接問題。圖2 是CrossFire 算法框架。通過基于項(xiàng)目的稀疏遷移學(xué)習(xí)、跨媒體的評分行為遷移學(xué)習(xí)和跨媒體的社交關(guān)系遷移學(xué)習(xí)三方面的計(jì)算提取跨域共享特征實(shí)現(xiàn)項(xiàng)目和朋友的聯(lián)合推薦。在項(xiàng)目的稀疏遷移學(xué)習(xí)部分將給定的項(xiàng)目特征矩陣Xi近似分解為DVi,其中D是從源域和目標(biāo)域中提取的共享特征矩陣,用于跨域知識遷移;同時為了滿足項(xiàng)目特征的幾何位置描述以及跨域項(xiàng)目特征的統(tǒng)一編碼約束依GraphSC(graph regularized sparse coding)[43]和MMD(maximum mean discrepancy)[44]思想加入正則項(xiàng),按式(7)方式得到項(xiàng)目的稀疏表示Vi,i=1,2,…,p: Fig.2 Frame of CrossFire圖2 CrossFire 模型框架 再將項(xiàng)目的稀疏表示通過映射矩陣Q的作用得到項(xiàng)目的隱含特征表示,完成跨媒體的評分行為遷移學(xué)習(xí)。類似的,引入用戶-項(xiàng)目共享交互矩陣P建模用戶在不同社交媒體上的共享隱含特征,構(gòu)建跨媒體用戶關(guān)聯(lián),實(shí)現(xiàn)跨媒體朋友推薦。該算法較好地利用社交網(wǎng)絡(luò)實(shí)現(xiàn)推薦問題,但由于領(lǐng)域間沒有直接關(guān)聯(lián)造成領(lǐng)域特征表示存在語義偏差,推薦的精準(zhǔn)性有待提高。 獲取可遷移特征的質(zhì)量逐漸成為影響跨域推薦性能進(jìn)一步提高的重要因素,加之可利用輔助數(shù)據(jù)的異構(gòu)性,傳統(tǒng)跨域推薦算法僅利用從評分?jǐn)?shù)據(jù)中提取線性特征來實(shí)現(xiàn)推薦的局限性顯現(xiàn),推薦結(jié)果不能滿足實(shí)際要求。于是,研究者們開始將目光轉(zhuǎn)向深度遷移學(xué)習(xí),試圖用深度學(xué)習(xí)方法解決跨領(lǐng)域推薦問題。現(xiàn)有的深度跨域推薦算法按照深度遷移學(xué)習(xí)技術(shù)的不同可分為基于特征映射、基于網(wǎng)絡(luò)/實(shí)例、基于對抗遷移三大類。 該類算法借助于深度學(xué)習(xí)方法將不同領(lǐng)域的特征向量映射到相同的特征空間,在新的特征空間中對齊不同域的用戶/項(xiàng)目向量表示,消除因特征非對齊對推薦結(jié)果的影響,解決跨域推薦問題。Zhu 等[45]提出一種基于遷移學(xué)習(xí)的隱含因子跨域映射模型,在矩陣分解的基礎(chǔ)上利用深度神經(jīng)網(wǎng)絡(luò)映射跨領(lǐng)域特征,同時將不同領(lǐng)域間用戶和項(xiàng)目的評分稀疏度引入,作為一種網(wǎng)絡(luò)訓(xùn)練的指示因子,提高評分?jǐn)?shù)據(jù)的利用率。該算法保留了矩陣分解較好的解釋性又注重非線性特征的提取,但未考慮域間數(shù)據(jù)特征不一致性的影響。為此,Gao 等[46]提出了僅需項(xiàng)目側(cè)輔助信息的神經(jīng)注意力跨域推薦算法NATR(neural attentive transfer recommendation),引入維度適應(yīng)單元解決跨域數(shù)據(jù)不一致性問題,其網(wǎng)絡(luò)結(jié)構(gòu)如圖3。其中,遷移增強(qiáng)嵌入層以隱因子模型(latent factor model,LFM)作為基準(zhǔn)模型,將實(shí)值的用戶與項(xiàng)目的稀疏向量分別映射成稠密向量,結(jié)合維度適應(yīng)單元解決項(xiàng)目向量遷移過程中不同領(lǐng)域內(nèi)向量表示的維數(shù)偏差問題;項(xiàng)目級注意力層和域級注意力層則充分利用注意力機(jī)制強(qiáng)區(qū)分性,分別在構(gòu)建用戶表示時區(qū)分不同項(xiàng)目的重要度和在跨域遷移過程中動態(tài)調(diào)整領(lǐng)域知識對推薦結(jié)果的影響因子;結(jié)果預(yù)測層將求得的用戶偏好特征向量與項(xiàng)目特征向量進(jìn)行點(diǎn)積操作計(jì)算預(yù)測評分以實(shí)現(xiàn)跨領(lǐng)域推薦。SARFM(sentimentaware review feature mapping framework)[47]通過用戶評論中的情感感知實(shí)現(xiàn)不同領(lǐng)域的文本特征對齊,解決跨域情感偏差問題。SSCDR(CDR framework based on semi-supervised mapping)[48]則以重疊用戶作為錨點(diǎn),通過半監(jiān)督學(xué)習(xí)、k近鄰聚類等方法計(jì)算冷啟動用戶的偏好特征實(shí)現(xiàn)跨領(lǐng)域推薦。該方法雖能解決新用戶的推薦問題,但由于其要求兩個域有重疊的用戶,固無法解決新系統(tǒng)的冷啟動問題。 Fig.3 Model of NATR圖3 NATR 模型 基于特征映射的深度跨域推薦算法主要依據(jù)的數(shù)據(jù)大部分依舊是評分?jǐn)?shù)據(jù),輔助數(shù)據(jù)的使用不多,算法性能受到數(shù)據(jù)稀疏性影響依舊明顯。 不同于傳統(tǒng)意義上的基于網(wǎng)絡(luò)的遷移學(xué)習(xí)保留預(yù)訓(xùn)練網(wǎng)絡(luò)中一部分結(jié)果或模型參數(shù)直接應(yīng)用目標(biāo)任務(wù),在跨域推薦場景下的基于網(wǎng)絡(luò)的深度遷移學(xué)習(xí)則是對已有網(wǎng)絡(luò)進(jìn)行整體改進(jìn),組合重構(gòu)新的網(wǎng)絡(luò)模型,常見的網(wǎng)絡(luò)改進(jìn)方法有兩種:(1)保留原始網(wǎng)絡(luò)基本結(jié)構(gòu),增加某些層或者改變某些層以構(gòu)成新網(wǎng)絡(luò);(2)以固有的某些網(wǎng)絡(luò)結(jié)構(gòu)作為整體模型的一部分,經(jīng)拼接重組組成新的網(wǎng)絡(luò)。He等[49]利用第一種網(wǎng)絡(luò)遷移方法改進(jìn)MVDNN(multi-view deep neural network)[50]模型提出GCBAN(general cross-domain framework via Bayesian neural network),其網(wǎng)絡(luò)模型如圖4 所示。該算法考慮到域間用戶和項(xiàng)目的協(xié)同關(guān)系在推薦中的作用,以用戶向量和項(xiàng)目向量的交互結(jié)果替代MVDNN 網(wǎng)絡(luò)中用戶/項(xiàng)目的原始特征編碼作為全連接層的輸入;除此之外,考慮到以定值作為權(quán)重?zé)o法表示網(wǎng)絡(luò)的不確定性,GCBAN 以貝葉斯后驗(yàn)概率替代點(diǎn)估計(jì),有效避免數(shù)據(jù)稀疏時的“過擬合”問題。值得一提的是,本方法中除了利用評分信息以外,還引入用戶和項(xiàng)目的屬性信息提升推薦效果。而MTNet(memory&transfer network)[51]則采 用第二類模型改進(jìn)方法將記憶網(wǎng)絡(luò)和遷移網(wǎng)絡(luò)兩個網(wǎng)絡(luò)拼接,以記憶網(wǎng)絡(luò)提取最有用的特征,以遷移網(wǎng)絡(luò)選擇可遷移的知識,最后通過特征共享交互層耦合兩個獨(dú)立網(wǎng)絡(luò),實(shí)現(xiàn)基于非結(jié)構(gòu)性文本信息的跨域推薦。要求源域和目標(biāo)域的用戶完全重疊限制了該算法模型的適用性。類似方法,文獻(xiàn)[52]以LSTM(long short-term memory)作為基礎(chǔ)模型進(jìn)行多層堆疊共同建模用戶行為,捕獲高階用戶-項(xiàng)目交互關(guān)系,同時在模型中加入注意力機(jī)制以及時間感知因子實(shí)現(xiàn)跨網(wǎng)絡(luò)的在線推薦問題;考慮到LSTM 只能從左到右或者從右到左單向建模,而圖神經(jīng)網(wǎng)絡(luò)則可有效地建模信息間的復(fù)雜高階關(guān)系,Zhao 等[53]提出以GNN(graph neural network)作為基礎(chǔ)模型的PPGN(preference propagation graphnet),通過構(gòu)建用戶偏好傳播圖模型捕獲跨領(lǐng)域特征偏好的高階傳播關(guān)系,實(shí)現(xiàn)跨域推薦。 基于實(shí)例的深度遷移跨域推薦算法將不同域的特征加權(quán)重構(gòu),動態(tài)調(diào)整不同特征在目標(biāo)網(wǎng)絡(luò)和輔助網(wǎng)絡(luò)中的地位,同樣采用現(xiàn)有網(wǎng)絡(luò)整體改進(jìn)或重組的方式實(shí)現(xiàn),亦可看成是基于網(wǎng)絡(luò)的深度跨域推薦的一部分。Hu 等[54]利用NCF(neural collaborative filtering)[55]對復(fù)雜用戶-項(xiàng)目高維非線性交互關(guān)系的有效性提出CoNet(collaborative cross networks)。該模型以前饋神經(jīng)網(wǎng)絡(luò)作為基本網(wǎng)絡(luò)架構(gòu),由三個隱含層和兩個十字交叉單元共同組成,其中交叉連接單元是將CSN(cross-stitch networks)[56]中的實(shí)數(shù)權(quán)值用關(guān)系轉(zhuǎn)移矩陣替代的一種改進(jìn),用于動態(tài)調(diào)整不同特征空間的可遷移特征的權(quán)重,實(shí)現(xiàn)特征的雙向跨域遷移。該算法是目前關(guān)于深度跨域推薦算法模型性能比較中常見的基礎(chǔ)模型。Liu 等[57]則在CoNet的基礎(chǔ)上將事先由ILGNET[58]提取的項(xiàng)目的高級審美特征連同用戶和項(xiàng)目的隱含向量一并作為CSN 的輸入,提出新的跨域推薦算法ACDN(aesthetic preference cross-domain network),其網(wǎng)絡(luò)結(jié)構(gòu)如圖5 所示。該模型中以圖片信息作為輔助信息,從多模態(tài)數(shù)據(jù)中提取有用數(shù)據(jù)以增強(qiáng)跨域推薦的性能。由于CoNet和ACDN 都需要以相同用戶作為跨域遷移的橋梁,而在實(shí)際中不同領(lǐng)域間完全共享用戶的可能性極低,且易造成用戶的隱私泄露問題,因此算法的適用性受限。 Fig.4 Model of GCBAN圖4 GCBAN 模型 Fig.5 Model of ACDN圖5 ACDN 模型 該類深度跨域推薦算法不再依賴于評分?jǐn)?shù)據(jù),更多地關(guān)注于從反饋信息如文本信息、用戶行為序列信息中挖掘用戶的偏好,結(jié)合深度學(xué)習(xí)技術(shù)破除跨域推薦的數(shù)據(jù)稀疏性影響;但是,大部分算法是從某個用戶角度出發(fā)進(jìn)行跨域推薦的,這對于冷啟動問題的解決產(chǎn)生一定的限制。 Goodfellow 等提出的GAN(generative adversarial networks)是對抗學(xué)習(xí)的代表方法之一,其核心結(jié)構(gòu)由生成器G 和判別器D 組成,G 用于生成最接近真實(shí)數(shù)據(jù)的虛假數(shù)據(jù),D 則試圖完美區(qū)分真實(shí)數(shù)據(jù)和“逼真”的虛假數(shù)據(jù),通過D 和G 的博弈對抗達(dá)到兩者都可學(xué)習(xí)到最理想的輸出的效果?;趯沟纳疃瓤缬蛲扑]算法是將GAN 融入到跨領(lǐng)域推薦中解決跨域推薦中特征的領(lǐng)域適應(yīng)問題。其中對抗學(xué)習(xí)的思想主要體現(xiàn)在三方面:(1)借鑒GAN 中最大-最小博弈的對抗式目標(biāo)函數(shù)優(yōu)化模型參數(shù);(2)借鑒其生成模型-判別模型對抗式結(jié)構(gòu)設(shè)計(jì)網(wǎng)絡(luò)模型;(3)對抗式網(wǎng)絡(luò)訓(xùn)練。 Wang 等[59]提出第一個基于判別對抗網(wǎng)絡(luò)的跨域推薦算法RecSys-DAN(discriminative adversarial networks for CDR)以解決單模態(tài)和多模態(tài)下的數(shù)據(jù)稀疏和數(shù)據(jù)不平衡問題。不同于標(biāo)準(zhǔn)GAN 只有一組G和D,該算法在源域和目標(biāo)域中分別設(shè)定一組生成器,在目標(biāo)域中設(shè)定一個判別器D f,其中k∈{s,t} 代表{源域,目標(biāo)域},i∈{u,v,f}代表{用戶,項(xiàng)目,用戶與項(xiàng)目的交互}。G 用于從已知的數(shù)據(jù)中完美地學(xué)習(xí)到各域內(nèi)用戶和項(xiàng)目的隱含特征表示,D 則要學(xué)習(xí)一個映射函數(shù),使得盡可能多的目標(biāo)域特征可由源域特征經(jīng)過映射近似表示,實(shí)現(xiàn)域間的特征的跨域?qū)R,為此和D f的學(xué)習(xí)函數(shù)設(shè)定如下: 特別的,在本算法中用戶和項(xiàng)目的交互即為用戶對項(xiàng)目的評分Y,;由于源域中已知評分情況,故源域的生成器G 以監(jiān)督學(xué)習(xí)方式得到相應(yīng)的特征表示。Yuan 等[60]則將判別器-生成器結(jié)構(gòu)作為基本框架提出一種基于深度域適應(yīng)的跨領(lǐng)域推薦方法(deep domain adaptation cross-domain recommendation,DARec),模型結(jié)構(gòu)如圖6 所示。兩個自動編碼器分別從源域和目標(biāo)域的稀疏評分矩陣中提取用戶偏好特征,并以此作為交叉嵌入模塊的輸入,經(jīng)交叉嵌入模塊的作用將域間用戶偏好特征充分混合后輸入到對抗結(jié)構(gòu)中,聯(lián)合完成評分模式提取、評分預(yù)測以及域分類,最終實(shí)現(xiàn)跨域評分預(yù)測??紤]到推薦場景不同會影響推薦結(jié)果的精準(zhǔn)性,DiscoGAN[61]將時間和所處場景作為考量維度之一融入到GAN 中,以對抗訓(xùn)練的方式學(xué)習(xí)場景特征向量,實(shí)現(xiàn)在不同時間場景下服裝的智能化推薦。 Fig.6 Model of U-DARec圖6 U-DARec 模型 基于對抗的深度跨領(lǐng)域推薦算法將對抗學(xué)習(xí)思想融入到了跨領(lǐng)域推薦中來,通過設(shè)定不同的生成器和判別器達(dá)到預(yù)測目標(biāo)用戶的評分情況,算法的可解釋性有了一定的提升,但是由于GAN 固有局限性使得該類算法的穩(wěn)定性有待進(jìn)一步研究。 傳統(tǒng)跨域推薦算法大都是采用兩段式學(xué)習(xí)方法,而深度跨域推薦算法由于其采用不同的深度學(xué)習(xí)技術(shù),因此大多數(shù)算法模型是“端到端”的,實(shí)時性相對較高。兩大類算法解決問題的方法各有側(cè)重,傳統(tǒng)跨域推薦算法以矩陣分解或張量分解作為基準(zhǔn)模型,可解釋性相對較高,評分信息利用較為充分,評分的準(zhǔn)確性以及稀疏性對推薦結(jié)果的影響較大,忽略了非線性特征的提取和利用;深度跨領(lǐng)域推薦則將各種有效的深度學(xué)習(xí)方法應(yīng)用到跨域推薦中,相交于傳統(tǒng)跨域推薦具有以下幾點(diǎn)優(yōu)勢:(1)可學(xué)習(xí)更多層次的非線性特征,而這些特征往往是低維的;(2)無需通過復(fù)雜的計(jì)算提取特征,可以借助于DNN(deep neural networks)、注意力機(jī)制、圖神經(jīng)網(wǎng)絡(luò)等方式實(shí)現(xiàn);(3)部分算法更加關(guān)注于高階復(fù)雜的用戶行為關(guān)系的抽取,更全面地表述用戶特征。 不同的知識遷移場景以及依賴數(shù)據(jù)類型會對算法的有效性產(chǎn)生影響。表3 和表4 從定性角度分別從遷移技術(shù)、依賴數(shù)據(jù)類型、基礎(chǔ)模型、算法適用性及重點(diǎn)解決問題幾個方面對傳統(tǒng)跨域推薦算法和深度推薦算法進(jìn)行總結(jié),并指出各類算法的優(yōu)缺點(diǎn);同時,為增加算法間的宏觀可比性,增加各算法的定量分析,總結(jié)如表5,同時本文中對當(dāng)前主流的跨領(lǐng)域推薦算法的評價指標(biāo)進(jìn)一步的總結(jié)如表6。 從表3 和表4 各類算法模型的依賴的數(shù)據(jù)類型角度來看,傳統(tǒng)跨域推薦算法以用戶對項(xiàng)目的評分為主,輔以添加部分用戶側(cè)屬性和項(xiàng)目側(cè)屬性信息,特別是基于評分模式和基于隱含特征映射兩類跨域推薦算法大部分都是以評分?jǐn)?shù)據(jù)為基礎(chǔ),利用矩陣分解或者張量分解為基本模型,目標(biāo)域的數(shù)據(jù)的稀疏性對算法模型的性能影響較大;而深度跨域推薦算法則是重點(diǎn)從用戶項(xiàng)目側(cè)屬性信息以及用戶與項(xiàng)目的交互信息中挖掘用戶的興趣偏好,這也使得整個深度跨域推薦中領(lǐng)域間用戶的依賴程度較高。 與模型依賴數(shù)據(jù)直接相關(guān)的便是各類算法模型對用戶特征的描述能力。當(dāng)前的跨域推薦算法主要通過以下幾個方法完成數(shù)據(jù)用戶特征的提?。海?)用戶與項(xiàng)目的交互信息、用戶間的社交關(guān)系等顯示反饋信息;(2)用戶側(cè)屬性信息和項(xiàng)目側(cè)的屬性信息等輔助顯示信息;(3)用戶的隱式反饋信息,如用戶的瀏覽序列。由于用戶顯示反饋信息以評分信息為主,該類信息具有線性性,基于矩陣分解的算法對該類數(shù)據(jù)的利用率較高,但是由于其固有條件的約束,這類算法只能挖掘用戶的線性特征,而實(shí)際情況下用戶的非線性特征偏好往往包含更多的可用信息,這也是深度跨域推薦算法產(chǎn)生的原因。從表4 總結(jié)可以看出,無論是基于隱含特征映射、基于網(wǎng)絡(luò)和實(shí)例的深度遷移還是基于對抗的深度遷移都主要依賴于隱式反饋信息提取用戶的非線性偏好,為全面提取非線性特征同時增加數(shù)據(jù)的利用率,ACDN 從圖片特征中提取用戶的高維審美偏好作為整體偏好特征的補(bǔ)充,SARFM 從評論文本中提取用戶的特征偏好。從整體上看,由于深度學(xué)習(xí)在非線性特征的學(xué)習(xí)上的優(yōu)越性使得深度跨域推薦算法在用戶特征的描述以及提取能力上明顯高于傳統(tǒng)的跨域推薦算法。 Table 3 Summary of traditional cross-domain recommendation algorithms表3 傳統(tǒng)跨領(lǐng)域推薦算法總結(jié) Table 4 Summary of cross-domain recommendation algorithms with deep transfer learning表4 深度跨域推薦算法小結(jié) Table 5 Comparison of experimental results of cross-domain recommendation algorithms表5 跨領(lǐng)域推薦算法實(shí)驗(yàn)結(jié)果比較 Table 6 Summary on use of evaluation indices of main cross-domain recommendation algorithms表6 主要跨領(lǐng)域推薦算法評價指標(biāo)使用總結(jié) 從模型的適用條件上看,傳統(tǒng)跨域推薦對域間用戶的重疊程度依賴性低,甚至可以在用戶和項(xiàng)目都完全無交集的情況下完成推薦,對用戶的隱私保護(hù)有一定的考慮,這使得傳統(tǒng)跨域推薦算法在現(xiàn)實(shí)條件下適用的范圍更廣,可方便實(shí)現(xiàn)跨系統(tǒng)推薦,甚至是跨媒體推薦;而深度跨域推薦則大都從某用戶的角度出發(fā),用戶信息的跨域共享成為了推薦的重要條件,但是當(dāng)前的方法基本是一個ID 即為一個用戶,而“一人多賬號”和“多人共用一個賬號”問題較為常見,如何準(zhǔn)確定位用戶問題有待進(jìn)一步的研究。 從各類算法重點(diǎn)解決實(shí)際問題角度來看,傳統(tǒng)跨域推薦著重于數(shù)據(jù)稀疏問題的解決,少部分算法通過添加標(biāo)簽關(guān)系、用戶社會關(guān)系等輔助信息在冷啟動的條件下發(fā)揮作用(如CD-MDTF、KerKT、CDLFM、CDIE-C 等);而深度跨域推薦算法除了數(shù)據(jù)稀疏和冷啟動問題以外,考慮解決現(xiàn)實(shí)推薦場景下的隱私保護(hù)、在線推薦和跨域推薦中的行為異構(gòu)問題,這是因?yàn)樯疃葘W(xué)習(xí)技術(shù)對其輸入數(shù)據(jù)的約束性較小。 算法模型的可解釋性一直是推薦領(lǐng)域需要重點(diǎn)攻克的問題,跨領(lǐng)域推薦算法中亦然。由于傳統(tǒng)跨域推薦算法以矩陣分解為基礎(chǔ)模型,故此類算法主要通過概率矩陣分解角度增加其可解釋性(如UPCDRSs)、引入概率圖模型(如TRBT)和引入外部知識庫(如社交關(guān)系、標(biāo)簽等)等方式提高推薦結(jié)果的可解釋性;深度跨領(lǐng)域推薦算法則依賴于各種不同的深度模型,總結(jié)如表4。類似于傳統(tǒng)跨域推薦算法,該類算法可從概率估計(jì)(如SSCDR、GCBAN 等)角度增加結(jié)果的可解釋性,部分算法通過注意力機(jī)制對不同的項(xiàng)目進(jìn)行加權(quán)選擇以提取更加準(zhǔn)確的用戶偏好,提高結(jié)果的可解釋性。除此之外,MTNet 引入記憶網(wǎng)絡(luò)提取用戶偏好特征的同時增加模型的可解釋性。但由于端到端模型中間結(jié)果的不可見性增加了結(jié)果可解釋的難度,更加有效的可解釋性方法需要進(jìn)一步探究。 從表5 可以看出,同一模型在不同的跨域場景下表現(xiàn)出來較大的差異性,這是因?yàn)椴煌瑘鼍跋聰?shù)據(jù)稀疏性不同,加之可用的輔助信息利用程度不同,也對推薦結(jié)果產(chǎn)生影響。同時可以看出,在相同條件下,深度跨域推薦的性能相對較高;當(dāng)可用的輔助信息較多的時候,性能會有所改善;從表6 中不同算法模型驗(yàn)證實(shí)驗(yàn)評價指標(biāo)的對比可以看出,常用的評價指標(biāo)可分為評分預(yù)測類(以MAE(mean absolute error)和RMSE(root mean squared error)為主)和排序加權(quán)類(NDCG(normalized discounted cumulative gain)、MRR(mean reciprocal rank)、HR(hit ratio)等)兩大類,主要用于衡量推薦的準(zhǔn)確性。其中傳統(tǒng)跨域推薦算法更加傾向于使用評分預(yù)測類指標(biāo),這與其主要依賴的數(shù)據(jù)類型是評分有關(guān),部分算法由于依賴數(shù)據(jù)的多樣性,同時采用預(yù)測類指標(biāo)和排序類指標(biāo),試圖全面評價模型。但是不同場景下模型的有效性還有更多可以探索的方面,因此如何有效地全面地對各算法模型進(jìn)行橫向的評價仍有待深入研究。 目前跨領(lǐng)域推薦算法作為解決推薦中的數(shù)據(jù)稀疏和冷啟動的有效解決方法得到學(xué)術(shù)界和工業(yè)界的足夠重視,是當(dāng)前推薦領(lǐng)域的重點(diǎn)和熱點(diǎn)研究方向之一。綜合上一章的對比分析可看出,現(xiàn)有的跨領(lǐng)域推薦算法存在以下幾點(diǎn)不足:(1)算法的適用性有限;(2)推薦結(jié)果的可解釋性不佳;(3)數(shù)據(jù)本身挖掘不足,導(dǎo)致成本增加;(4)算法的評價指標(biāo)單一。為此,本文總結(jié)以下幾點(diǎn)可能的研究方向: (1)新深度跨領(lǐng)域推薦算法 跨域推薦涉及不同的推薦對象以及推薦場景,無法建立統(tǒng)一的推薦模型,需要根據(jù)推薦對象、可用信息以及推薦場景考慮構(gòu)建各有側(cè)重的推薦模型;再者,輔助信息來之不易,應(yīng)當(dāng)充分利用已獲得的輔助信息(如時序關(guān)系、地理位置等),但目前此類信息利用尚不充足,需要研究更多的新的深度跨域推薦算法解決上述問題。 (2)跨域推薦的可解釋性問題 跨域推薦算法除直接展現(xiàn)推薦結(jié)果外,還應(yīng)適當(dāng)給出推薦的理由,提升用戶對推薦結(jié)果的接受度。一直以來,推薦系統(tǒng)的可解釋性問題都是業(yè)界研究的重點(diǎn)和難點(diǎn),對于跨域推薦亦然。傳統(tǒng)跨域推薦算法利用矩陣分解來增加可解釋性,但其限制性較大,推薦結(jié)果不能滿足實(shí)際要求;而在目前的深度跨域推薦中,已知的僅是輸入數(shù)據(jù)和輸出結(jié)果,其中間過程的不可見性降低結(jié)果的可解釋性,同時引入輔助域的合理性與否的可解釋性亦不足,需要考慮從更多方面入手提高跨域推薦的可解釋性。 (3)序列推薦與跨領(lǐng)域推薦相結(jié)合 一般來說,用戶的消費(fèi)行為之間總是具有某種隱含的因果關(guān)聯(lián),用戶行為序列可有效建模此類關(guān)系,序列推薦算法可充分利用用戶行為序列信息。但是,單域序列推薦常常對歷史物品中選擇合適的物品給出下一項(xiàng)推薦候選而無法推薦全新的物品,跨領(lǐng)域推薦作為提高推薦多樣性和新穎性的方法可以有效地對單域序列推薦存在的問題進(jìn)行補(bǔ)充,實(shí)現(xiàn)智能化的精準(zhǔn)推薦。當(dāng)前尚無此類研究。 (4)豐富跨領(lǐng)域推薦的評價指標(biāo) 現(xiàn)有的跨領(lǐng)域推薦算法的評價指標(biāo)沿用了傳統(tǒng)推薦中對評分預(yù)測正確率、準(zhǔn)確率等指標(biāo),基本沒有涉及到新穎性、全面性和多樣性方面的評價,雖然可以初步達(dá)到衡量算法性能的目的,但是相較于傳統(tǒng)的推薦,跨領(lǐng)域推薦面臨的問題更復(fù)雜,解決問題更多樣,使用的數(shù)據(jù)集也不同,簡單的評價指標(biāo)無法全面對跨域算法進(jìn)行評價。因此,提出新的跨域推薦算法的評價指標(biāo)是必然之勢。3 傳統(tǒng)跨領(lǐng)域推薦算法
3.1 基于評分模式共享的跨域推薦算法
3.2 基于隱含特征映射/轉(zhuǎn)換的跨域推薦算法
3.3 基于域關(guān)聯(lián)的跨域推薦算法
4 深度跨域推薦算法
4.1 基于特征映射的深度跨域推薦算法
4.2 基于網(wǎng)絡(luò)/實(shí)例的深度跨域推薦算法
4.3 基于對抗的深度跨領(lǐng)域推薦算法
5 跨域推薦算法模型比較分析
6 研究趨勢與展望