文獻(xiàn)標(biāo)識碼:A
DOI: 10.19358/j.issn.2096-5133.2020.05.008
引用格式:陳細(xì)玉,林穗.一種融合注意力和記憶網(wǎng)絡(luò)的序列推薦算法[J].信息技術(shù)與網(wǎng)絡(luò)安全,2020,39(5):37-41.
協(xié)同過濾(Collaborative Filtering,CF),分為基于用戶的協(xié)同過濾(UBCF)、基于項(xiàng)目的協(xié)同過濾(IBCF)和基于模型的協(xié)同過濾?;谟脩舻膮f(xié)同過濾是根據(jù)用戶的歷史行為計算出用戶之間的相似度,將相似度高的用戶的歷史項(xiàng)目推薦給該用戶;基于項(xiàng)目的協(xié)同過濾是計算項(xiàng)目之間的相似度,推薦與該用戶歷史項(xiàng)目相似度高且歷史行為中沒有的項(xiàng)目?;谀P偷膮f(xié)同過濾如矩陣分解(Matrix Factorization,MF)通過用戶和項(xiàng)目的低維特征向量預(yù)測評分進(jìn)行推薦;EBESU T等人提出協(xié)同記憶網(wǎng)絡(luò),使用記憶網(wǎng)絡(luò)學(xué)習(xí)用戶項(xiàng)目對的特定鄰居,用戶和項(xiàng)目記憶共同利用鄰居來產(chǎn)生排名分?jǐn)?shù)。這些模型通常對靜態(tài)的用戶和項(xiàng)目交互進(jìn)行建模,所表示的用戶偏好是靜態(tài)的。
但在現(xiàn)實(shí)生活中,用戶的歷史行為是動態(tài)的,人們的興趣是隨著時間變化的。早先的基于馬爾科夫鏈的序列推薦將項(xiàng)目之間的轉(zhuǎn)移矩陣分解為兩個低秩矩陣,此序列推薦取得了良好的效果,然而k階馬爾科夫鏈只能根據(jù)有限的前k個行為預(yù)測下一個行為。近年來基于循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)的序列推薦能夠依賴更多用戶歷史行為。FU H等人使用雙向長短期記憶網(wǎng)絡(luò)(BiLSTM)捕獲項(xiàng)目的序列特征,取得了更好的推薦效果。下一個項(xiàng)目的預(yù)測并不取決于用戶所有的歷史項(xiàng)目,只與部分有關(guān)聯(lián),且對當(dāng)前的預(yù)測影響是不一致的。LUO A等人提出了自適應(yīng)注意感知門控循環(huán)單元(3AGRU),采用注意力機(jī)制來適應(yīng)用戶順序偏好的表示。LV F等人提出了一種新的順序深度匹配(SDM)模型,使用門控融合模塊結(jié)合長期和短期偏好特征,來獲取用戶的動態(tài)偏好。LIN X等人將K最近鄰算法(K-Nearest Neighbor,KNN)與RNN相結(jié)合,利用動態(tài)鄰居序列優(yōu)化用戶序列表示。
item2vec是BARKAN O等人借鑒自然語言處理中的Word2vec詞向量表示方法,學(xué)習(xí)項(xiàng)目的向量表示并計算項(xiàng)目的相似度進(jìn)行推薦。
RNN存在長距離依賴問題,且項(xiàng)目之間的影響主要取決于相對位置而不是項(xiàng)目的屬性。LSTM增加遺忘門和更新門優(yōu)化了長距離依賴問題,但仍舊沒有徹底解決。注意力機(jī)制能從全局模式上既解決長距離依賴問題,又能解決序列中各項(xiàng)目的區(qū)分度差問題。實(shí)際生活中,短期偏好的用戶會向資深固定偏好的用戶靠攏,興趣變化也會向這些用戶的興趣發(fā)展。
由此提出融合注意力和記憶網(wǎng)絡(luò)的序列推薦算法,使用Word2vec學(xué)習(xí)并初始化用戶和項(xiàng)目的固定表示,自注意力機(jī)制結(jié)合LSTM解決長距離依賴和區(qū)分度問題,學(xué)習(xí)用戶的初級動態(tài)表示,并利用記憶網(wǎng)絡(luò)獲取動態(tài)鄰居學(xué)習(xí)用戶的終級動態(tài)表示,拼接固定表示和終級動態(tài)表示作為用戶最終表示并進(jìn)行推薦,提高用戶的推薦效果并體現(xiàn)出可解釋性。
本文詳細(xì)內(nèi)容請下載:http://ihrv.cn/resource/share/2000003112
作者信息:陳細(xì)玉,林穗(廣東工業(yè)大學(xué) 計算機(jī)學(xué)院,廣東 廣州 510006)