999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

融合BiGRU和記憶網(wǎng)絡的會話推薦算法

2023-02-21 13:16:30曾亞竹孫靜宇何倩倩
計算機工程與設計 2023年2期
關鍵詞:融合用戶模型

曾亞竹,孫靜宇,何倩倩

(太原理工大學 軟件學院,山西 晉中 030600)

0 引 言

Massimo等[1]提出一種分層循環(huán)神經(jīng)網(wǎng)絡(recurrent neural network,RNN)向用戶提供推薦。Hidasi等[2]通過改進排名損失函數(shù)提升了RNN的性能。Liu等[3]考慮用戶的整體偏好和當前目的,在會話推薦中取得了較好的推薦效果。Wu等[4]將圖神經(jīng)網(wǎng)絡應用于會話推薦。Li等[5]使用了一種注意力機制來獲取用戶的主要會話目的。Sun等[6]采用深層的雙向自注意力對用戶行為會話進行建模。Li等[7]提出一種BiLSTM(bidirectional long short-term memory)結(jié)構,處理當前會話和歷史會話的交互,但這樣可能會引入噪聲。由于基于RNN推薦算法存在短期記憶問題,Chen等[8]首先引入用戶記憶網(wǎng)絡來利用用戶的歷史記錄以提高性能,并顯式地捕獲項和特征級序列模式,從而改進了序列推薦。Wang等[9]在Li等的基礎上加入了鄰域信息輔助建模用戶會話意圖,并證明鄰域會話有助于改善當前會話推薦算法,但未充分獲取短期會話反映的用戶興趣。Wu等[10]構建了一個個性化圖神經(jīng)網(wǎng)絡,但忽略了歷史會話中的交互。

為解決以上問題,本文綜合考慮歷史會話的交互和鄰域會話的信息并構建模型。融合縮放點積自注意力和BiGRU(bidirectional gated recurrent unit)提取用戶行為特征。使用圖卷積網(wǎng)絡獲取鄰域信息以改進記憶網(wǎng)絡并判斷用戶當前會話的輔助信息。最后對兩個編碼器的會話表示進行特征融合,獲得用戶的當前偏好并預測下一個交互。

1 相關技術

1.1 門限循環(huán)單元

門限循環(huán)單元(gated recurrent unit,GRU)是一種特殊的RNN,它優(yōu)化了傳統(tǒng)的RNN,使得網(wǎng)絡更加簡單,模型參數(shù)更少。它包含兩個門,更新門的表達式ht如式(1)

(1)

其中,更新門zt是由式(2)確定

zt=σ(Wzxt+Uzht-1)

(2)

(3)

重置門中rt的計算如式(4)

rt=σ(Wrxt+Urht-1)

(4)

Wr、Ur是權重矩陣,⊙表示點乘,σ表示使用Sigmoid激活。

1.2 縮放點積自注意力

自注意機制通過強調(diào)某些特定行為,忽略其它行為來關注當前會話的意圖。對相對更重要的項目賦予更高的權重。自注意機制能通過建模項目間更細粒度的關系學習到更加準確的用戶行為模式。通過計算每個點擊的權重減少高維數(shù)據(jù)的計算復雜度,使模型更快學習當前會話意圖,并利用注意權重找出每個點擊對會話意圖的重要程度。輸入由query、key和value組成,并且三者相等。縮放點積自注意力函數(shù)是自注意力函數(shù)的一種,其結(jié)構如圖1所示。

圖1 縮放點積自注意力模型

query和key經(jīng)過矩陣乘積之后進行縮放,mask操作保證當前預測結(jié)果僅取決于之前的輸出,將softmax歸一化后的結(jié)果和value相乘獲得加權輸出。

2 融合BiGRU和記憶網(wǎng)絡的會話推薦

提出一種融合BiGRU和記憶網(wǎng)絡的會話推薦模型(SRGM)來生成基于會話的推薦。SRGM模型利用當前會話和鄰域會話的信息來預測用戶的下一個交互。如圖2所示,SRGM由3個部分組成:會話網(wǎng)絡編碼器(session network encoder,SNE)、記憶網(wǎng)絡編碼器(memory network encoder,MNE)和推薦解碼器。

圖2 SRGM模型

將用戶為序列S劃分為會話I,其中Xt=[x1,x2,…xt,…,xn] 表示用戶和項目交互中的時間戳t(t≥1) 處的會話,n表示在會話中交互項目的個數(shù),其中每個xt是與用戶交互的項目。基于會話的推薦系統(tǒng)的目標是預測用戶的下一個交互。用戶在不同的時間段內(nèi)有明確獨特的意圖,將超過一定時間的用戶行為分割為兩個會話[5]。給定當前會話,目標是通過從用戶交互的所有會話I中top-N個項目 (1≤N≤|I|) 來預測第xn+1個項目。

會話Xt進入輸入層后分別經(jīng)過全局編碼器和局部編碼器。BiGRU改進SNE中的全局編碼器以更好地建模歷史會話興趣,使用另一個融合縮放點積自注意力的BiGRU改進局部編碼器以消除會話中的噪聲,提取用戶的特定行為特征。

全局和局部編碼器共同構造用戶會話表示。使用圖卷積網(wǎng)絡改進MNE獲得用戶的鄰域信息以加強對用戶當前會話輔助信息的推斷,并用改進的融合選通門結(jié)合SNE獲得的用戶短期意圖和MNE獲得的用戶鄰域長期興趣以考慮用戶的動態(tài)興趣,最終獲得用戶的最終興趣的向量表示并對用戶進行推薦。

2.1 會話網(wǎng)絡編碼器

SNE對當前會話進行編碼,它包括兩個模塊:全局編碼器和局部編碼器。前者用于總結(jié)并建模整個會話中用戶的順序行為并獲取會話的總體特征。后者關注用戶特定的行為,用于在會話包含意外單擊或出于好奇而單擊的項目時選擇當前會話中相對重要的項目以捕捉用戶的主要意圖。本文使用BiGRU改進全局編碼器,相比于LSTM(long short-term memory),BiGRU復雜度更低,而相較于GRU,更利于捕捉歷史會話之間的順序關系。

BiGRU包含前向和后向GRU,用隱藏狀態(tài)表示hn當前會話的順序行為,隱藏狀態(tài)hn的計算如下

(5)

(6)

盡管全局編碼器考慮了整個會話過程反映的興趣,但受限于GRU本身的特性,仍會給模型引入噪聲。為消除噪聲項的干擾,準確捕捉當前會話的行為模式,使用一個融合項目級自注意力機制[11]的BiGRU改進局部編碼器,如圖3所示。

圖3 項目級自注意力層結(jié)構

(7)

將Q和K相乘,再使用scale縮放以防止梯度過小,使用mask操作隱藏對角線元素避免Q和K中相同物品之間的高匹配分數(shù)。最后使用softmax做歸一化處理,得到權重矩陣,并和局部編碼器的存儲器矩陣相乘,使用縮放點積計算最后的加權輸出At

(8)

(9)

(10)

2.2 記憶網(wǎng)絡編碼器

SNE僅利用用戶自身會話之中包含的行為信息,忽略了鄰域會話中相似行為信息對推薦的重要性,并且對于長度較短的會話,SNE由于缺乏足夠的歷史信息而導致不能夠準確捕捉用戶行為模式。為解決這個問題,提出了記憶網(wǎng)絡編碼器MNE。MNE模塊使用記憶網(wǎng)絡矩陣M,存儲最近一段時間內(nèi)的m個用戶會話并抽取當前會話的鄰域會話,作為與當前會話有著相似興趣模式的會話。這是一個基于會話的最近鄰方法,對具有與當前會話相似的行為模式的會話賦予更高的權重。這些鄰域會話可以加強對當前會話的輔助信息的推斷。

(11)

(12)

(13)

每輪實驗開始時,記憶網(wǎng)絡矩陣均設置為空。使用先進先出法更新記憶網(wǎng)絡矩陣。當新會話被存入記憶網(wǎng)絡矩陣時,起始會話被從記憶網(wǎng)絡矩陣中刪除,新會話被加進隊列。記憶矩陣不為空時,會話會被直接寫入矩陣,不刪除矩陣中現(xiàn)有的早期會話。

2.3 推薦解碼器

推薦解碼器結(jié)合SNE和MNE的會話表示并進行特征融合,預測項目接下來被點擊的概率。如圖2所示,模型使用選通門機制結(jié)合SNE和MNE的信息并建模用戶最終的會話表示,可以兼顧序列會話包含的信息和鄰域會話間的權重。由于之前的模型大多未考慮到不同項目特性的部分,沒有重視項目內(nèi)部的豐富的特征信息,可能會使模型對用戶興趣失去精準的判斷。根據(jù)Ma等[13]的研究,提出了一種改進的融合項目內(nèi)部特征的選通門以選擇項目特征并且建模用戶的興趣。融合選通門ft由下面的公式給出

(14)

(15)

參考文獻[5],為節(jié)省內(nèi)存空間,不使用標準RNN中的全連接層對隱藏層狀態(tài)解碼,而使用雙線性插值替代全連接層來計算推薦列表,減少模型參數(shù)的同時提升了預測的準確度。embi是待預測項目的特征表示,根據(jù)用戶會話意圖的最終表示ct計算待預測項目被推薦的概率值

(16)

其中,B∈Rd×D,d是每個嵌入項的維數(shù),D是用戶會話意圖的最終表示ct的維數(shù)。

2.4 目標函數(shù)

模型的目的是使用當下的用戶會話,盡可能預測下一個被點擊的項目。所以采用交叉熵損失函數(shù),計算為預測的項目得分和實際場景中用戶的點擊的項目的獨熱編碼之間的交叉熵

(17)

3 實驗設置

3.1 數(shù)據(jù)集

使用YOOCHOOSE和LastFM兩個公開的數(shù)據(jù)集并對其做以下預處理。將數(shù)據(jù)集里的所有會話序列按時間順序重新排序,將只在測試集中出現(xiàn)的項目過濾掉并對項目進行數(shù)據(jù)增強。表1中展示了兩個數(shù)據(jù)集的統(tǒng)計信息。

表1 實驗數(shù)據(jù)集信息統(tǒng)計

YOOCHOOSE數(shù)據(jù)集是2015年RecSys競賽的公開數(shù)據(jù)集,內(nèi)容為電子商務網(wǎng)站的用戶點擊。將最后一天的點擊流作為測試集,其它的數(shù)據(jù)則作為訓練集。文獻[14]證明了僅使用當前一段時間的會話就可以達成較好的推薦性能,故按照文獻[14]的方法,移除長度為1的會話和交互少于5次的物品。使用最近一段時間的1/64和1/4的會話切片作為訓練集并稱之為RSC 1/64(RecSys 1/64)和RSC 1/4 (RecSys 1/4)。

LFM(LastFM數(shù)據(jù)集)是用戶聽音樂序列的數(shù)據(jù)集,包含從2004年到2009年之間近1000名聽眾的音樂播放記錄、時間、歌手和歌曲。為簡化數(shù)據(jù),將LFM用于歌手推薦。在實驗中選擇前40 000個最受歡迎的歌手作為數(shù)據(jù)集。將發(fā)生在8小時內(nèi)的音樂點擊流數(shù)據(jù)劃分為一個會話,刪除長度為1和長度大于50的會話。

3.2 基線算法

為驗證SRGM模型效果,將模型和6種基于會話推薦的基線算法進行比較,分別是兩種傳統(tǒng)推薦算法、兩種基于RNN的推薦算法和兩種基于內(nèi)存網(wǎng)絡的推薦算法。

用于比較的傳統(tǒng)推薦算法如下:

S-POP:推薦當前會話中最流行的物品。推薦的物品會跟隨會話長度的增加而更改。

ItemKNN:基于社交的相似度計算法,物品的相似度定義為會話中兩個物品的共同出現(xiàn)的次數(shù)除以其中一個項目出現(xiàn)的會話次數(shù)乘積的平方根。使用正則化避免很少被點擊的項目之間巧合的高度相似性。

用于比較的基于RNN的推薦算法如下:

GRU4Rec:Hidasi等提出的模型。它使用會話并行以及小批量的方法訓練模型,并且還使用基于排序的損失函數(shù)。

NARM[5]:引入了一種注意力模型和編碼器結(jié)構結(jié)合歷史行為以優(yōu)化GRU4Rec的深度學習算法。

用于比較的基于內(nèi)存網(wǎng)絡的推薦算法:

RUM-I:RUM[8]的兩個具體實現(xiàn)中的其中一個。將項目嵌入存儲在內(nèi)存矩陣中,應用于基于會話的推薦任務,通過基于RNN的算法表示一個新會話,另一個具體實現(xiàn)由于難以提取新會話對特定項目的偏好而不能應用于基于會話的推薦,故不在此處贅述。

CSRM[9]:一種基于會話的協(xié)同推薦機,在NARM算法上進行改進,增加基于鄰域信息的記憶網(wǎng)絡模塊以更好預測當前會話的意圖。

3.3 實驗過程

編程語言為Python,使用TensorFlow編寫代碼,顯卡使用RTX2080 GPU加速訓練。為降低過擬合,使用兩個dropout層。分別位于會話物品嵌入層和BiGRU層之間及用戶意圖表示層和Bilinear層之間,dropout設置為25%和50%。在整個模型訓練中,使用基于時間的反向傳播算法(back-propagation through time,BPTT)對模型進行訓練。模型訓練使用高斯分布參數(shù)隨機初始化,使用Adam優(yōu)化器,并根據(jù)驗證集對超參數(shù)進行調(diào)整,驗證集是訓練數(shù)據(jù)大小的一部分。超參數(shù)統(tǒng)計見表2。

表2 超參數(shù)統(tǒng)計

3.4 評價指標

評價指標的目的是預測用戶在當前會話的下一步將單擊什么項目。推薦系統(tǒng)將生成一個候選列表,該列表通常包含N個項目,這N個項目將根據(jù)預測分數(shù)的高低進行排序。用戶接下來點擊的實際項目應該包含在推薦列表中。因此,使用以下指標來評估top-N的表現(xiàn):

Recall@20(召回率):期望項目在前20個推薦列表中的比例。不考慮實際項目在推薦列表中的排名。

MRR@20(平均倒序排名):期望項目在推薦列表中排名的倒數(shù)平均值,排序大于20則置為0。MRR考慮到了實際推薦場景下項目列表中的真實排序情況。

3.5 性能比較

3.5.1 和基線算法的比較

比較了SRGM和6種基線算法的性能。表3中說明在實驗使用的兩種指標下,SRGM相較于基線算法在實驗數(shù)據(jù)集上都實現(xiàn)了較好的提升。

表3 SRGM與基線算法的性能比較/%

表3可看出,基于RNN的模型相對于傳統(tǒng)的模型性能提升明顯,這說明基于RNN的模型能夠很好處理會話中的序列信息并且解決基于會話的推薦問題。NARM相對于GRU4rec推薦性能的明顯提升也說明注意力機制的加入對于會話推薦性能會產(chǎn)生積極影響。而SRGM明顯優(yōu)于兩種基于RNN的基線算法。對于基于內(nèi)存網(wǎng)絡的基線算法,實驗結(jié)果發(fā)現(xiàn)SRGM明顯優(yōu)于RUM,這可能是基于會話的推薦中由于用戶是匿名的原因,并沒有可供使用的用戶信息。

相較于最優(yōu)基線算法CSRM,SRGM在3個數(shù)據(jù)集(RSC 1/64,RSC 1/4和LFM)的Recall@20指標上的提升為0.92%、1.64%和4.85%,對于MRR@20指標上的提升為2.51%、3.88%和4.14%。算法在LFM數(shù)據(jù)集上的提升較RSC 1/64、RSC 1/4更高可能是由于LFM是音樂數(shù)據(jù)集,相比于電商數(shù)據(jù)集更容易捕獲短期的會話意圖,而電商數(shù)據(jù)集的短期會話意圖不確定性更強。經(jīng)過20輪訓練之后,模型性能基本趨于穩(wěn)定。

3.5.2 不同會話長度的比較

不同會話的會話長度,即一段時間內(nèi)用戶和項目的交互數(shù)量也不盡相同。而在會話中,當前會話最近的幾個點擊項目對用戶的興趣偏好有重要的影響,故本文希望比較不同會話長度的性能以分析本文的兩個編碼器對模型性能的影響。如圖4所示。

圖4 不同會話長度性能對比

隨著會話長度的增加,評價指標逐步增長并逐步趨于穩(wěn)定,這說明大部分會話長度很短,增加會話長度對模型精度影響不大,增加的會話可能多為用戶多次點擊的項目。基于圖4可以得出下列結(jié)論:在會話長度較短時(如1-10),由于缺乏中長期點擊流,不利于會話編碼器對用戶的偏好進行準確預測。此時用戶的意圖主要依賴于鄰域會話進行輔助推斷,在會話長度較長時(10-),歷史項目信息在鄰域會話的幫助下將更有利于模型捕捉用戶的興趣。因此,本文模型對長短會話均有較為準確的預測。

3.5.3 不同模型深度的比較

為評估不同深度的模型對于算法性能的提升,使用消融實驗基于本模型的不同網(wǎng)絡類型和深度與最佳基線CSRM進行比對。消融實驗見表4。

模型1:SNE中使用BiGRU作為全局和局部編碼器,融合MNE學習項目的特征。

模型2:SNE的局部編碼器中融合縮放點積自注意力,融合MNE學習項目的特征。

模型3:解碼器中使用改進的融合選通門進行項目特征的選擇。

模型4:使用圖卷積網(wǎng)絡改進MNE,增強會話注意,獲取用戶鄰域會話的興趣。

模型5:融合以上4個模型,并建模用戶興趣。

表4模型1可以看出,BiGRU對算法性能可以產(chǎn)生積極影響,模型2可以看出加入了自注意力的神經(jīng)網(wǎng)絡可以獲取用戶更細粒度的行為,而消融實驗的結(jié)果可以看出加入了縮放點擊自注意力的模型。相比于其它模型提升更大,在Recall@20和MRR@20兩個指標上相較于基線分別提升達2.17%、1.31%、2.94%和3.20%、3.41%,3.11%。這說明用戶當前會話的興趣對于用戶的下一次點擊影響更大,這說明短期興趣對用戶整體會話意圖的建模更加具有幫助性。模型3在MRR@20上提升明顯,同時也反映了改進的融合選通門能夠放大項目特征用以幫助模型提取用戶興趣。模型4說明使用圖卷積網(wǎng)絡可以增強鄰域信息對當前會話興趣的推斷以幫助模型找到與當前會話最相似的項目,但提升效果相較于其它模型較小。模型5說明本文模型的綜合改進對處理會話推薦的有效性。

表4 SRGM消融實驗性能比較/%

3.5.4 不同鄰域的比較

為探究鄰域信息對于算法捕獲用戶會話意圖的貢獻,根據(jù)經(jīng)驗分別取k為128、256、512和1024,比較了不同鄰居數(shù)對于SRGM的影響。根據(jù)表5發(fā)現(xiàn),對于RSC 1/64和RSC 1/4數(shù)據(jù)集,隨著k的提高,算法在Recall@20的性能逐漸增加并在k=512附近時達到最佳,在MRR@20的性能在k=256附近時基本達到最佳。對于LFM數(shù)據(jù)集,Recall@20的性能在k=512和256時較為接近,在MRR@20上k=512附近性能最佳。但k超過512時算法在3個數(shù)據(jù)集上性能均有不同程度的下降,這可能是由于鄰居數(shù)在256-512左右時鄰域信息整合程度較高,能夠較好提升模型的性能,但過大時引入了與會話意圖無關的噪聲會話導致推薦性能降低。實驗結(jié)果表明,鄰域信息的整合程度能夠影響模型對于用戶會話意圖的準確預測。

表5 SRGM的不同鄰居數(shù)(k)性能比較/%

3.6 時間復雜度分析

SRGM的模型時間復雜度[15]的計算力主要集中于圖卷積網(wǎng)絡和BiGRU部分。假設設會話長度為n,項目嵌入維度為d,層數(shù)為K,則通過出入度矩陣初始節(jié)點表示的時間復雜度為O(nd2), 通過BiGRU單元為O(nd2), 整個圖卷積過程的時間復雜度為O(Knd2+nd2)。

SRGM在GRU基礎上增加雙向結(jié)構,在時間復雜度少量增加的同時帶來了性能的巨大提升。有助于實現(xiàn)模型對會話意圖的預測。CSRM的時間復雜度為O(Kn2d+nd2), 在層數(shù)K接近的情況下,會話長度越長,SRGM相比于CSRM的時間復雜度越低。整體來看,本文提出的SRGM模型更加高效,具有一定的實用性。

4 結(jié)束語

本文提出一種融合BiGRU注意力機制和記憶網(wǎng)絡的模型SRGM來解決推薦系統(tǒng)中會話推薦的問題。使用BiGRU獲得用戶的歷史會話興趣,并用另一個融合縮放點擊自注意力的BiGRU捕捉用戶當前行為特征并將兩者融合作為SNE的會話表示,使用卷圖積網(wǎng)絡改進MNE以作為用戶鄰域會話表示,最后融合選通門將兩個編碼器會話表示特征融合的結(jié)果作為用戶最終會話興趣以預測下一個點擊。

3個數(shù)據(jù)集上的實驗結(jié)果表明,在不同的評估指標上本文模型相對于基線算法有了明顯改進,驗證了本模型在基于會話推薦上的有效性。在未來的工作中,還希望引入用戶評論等有關項目的信息來對模型進行改進。

猜你喜歡
融合用戶模型
一半模型
村企黨建聯(lián)建融合共贏
融合菜
從創(chuàng)新出發(fā),與高考數(shù)列相遇、融合
重要模型『一線三等角』
《融合》
重尾非線性自回歸模型自加權M-估計的漸近分布
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
3D打印中的模型分割與打包
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
主站蜘蛛池模板: 日韩欧美中文字幕在线韩免费 | 黄色网在线免费观看| 国产精品亚洲一区二区三区在线观看| 欧美一级黄色影院| 日韩毛片免费| 99国产在线视频| 中文字幕免费视频| 日日拍夜夜操| 强奷白丝美女在线观看| 亚洲嫩模喷白浆| 激情爆乳一区二区| 中文字幕有乳无码| 国产成人AV大片大片在线播放 | 中国国产一级毛片| 无码专区在线观看| 国产伦精品一区二区三区视频优播| 97在线公开视频| 欧美日韩中文字幕在线| 欧美精品v欧洲精品| 97国产精品视频人人做人人爱| aaa国产一级毛片| 欧美亚洲日韩中文| 茄子视频毛片免费观看| 久草中文网| 亚洲日韩久久综合中文字幕| 中日无码在线观看| 91欧洲国产日韩在线人成| 人妖无码第一页| igao国产精品| 亚洲国产av无码综合原创国产| 在线观看国产精美视频| 毛片一区二区在线看| 日韩区欧美国产区在线观看| 国产精品综合久久久| 日韩欧美国产精品| 亚洲天堂网在线视频| 国产精品综合色区在线观看| 999精品色在线观看| 中文字幕无码中文字幕有码在线| 国产白浆在线观看| 亚洲Av综合日韩精品久久久| 欧美啪啪一区| 青青草国产在线视频| 亚洲欧美成人在线视频| 亚洲精品无码久久久久苍井空| 久久国产精品影院| 香蕉久人久人青草青草| 99在线视频免费| 精品久久国产综合精麻豆| 久久精品亚洲热综合一区二区| 无码在线激情片| julia中文字幕久久亚洲| 乱人伦99久久| 国产午夜无码专区喷水| 国产拍在线| 国产精品手机视频一区二区| 国产色图在线观看| 国产又大又粗又猛又爽的视频| 波多野结衣一区二区三区四区视频| 朝桐光一区二区| 99re视频在线| 久996视频精品免费观看| 青青网在线国产| 91福利在线看| 特级做a爰片毛片免费69| 蜜臀av性久久久久蜜臀aⅴ麻豆| 日韩欧美中文| 无码又爽又刺激的高潮视频| 亚洲第一福利视频导航| 国产农村精品一级毛片视频| 国产精品白浆在线播放| 欧美一区二区三区不卡免费| 亚洲国产成人综合精品2020| 欧美激情视频二区三区| 亚洲精品无码不卡在线播放| 国产成人毛片| 激情综合五月网| 久草国产在线观看| www.99在线观看| 国产在线拍偷自揄观看视频网站| 精品黑人一区二区三区| 精品国产免费观看|