黨偉超,姚志宇,白尚旺,高改梅,劉春霞
基于圖模型和注意力模型的會話推薦方法
黨偉超,姚志宇*,白尚旺,高改梅,劉春霞
(太原科技大學 計算機科學與技術學院,太原 030024)(?通信作者電子郵箱S20190660@stu.tyust.edu.cn)
為解決基于循環神經網絡(RNN)會話推薦方法的興趣偏好表示不全面、不準確問題,提出基于圖模型和注意力模型的會話推薦(SR?GM?AM)方法。首先,圖模型利用全局圖和會話圖分別獲取鄰域信息和會話信息,并且利用圖神經網絡(GNN)提取項目圖特征,項目圖特征經過全局項目表示層和會話項目表示層得到全局級嵌入和會話級嵌入,兩種級別嵌入結合生成圖嵌入;然后,注意力模型使用軟注意力進行圖嵌入和反向位置嵌入融合,目標注意力激活目標項目相關性,注意力模型通過線性轉換生成會話嵌入;最后,SR?GM?AM經過預測層,輸出下次點擊的項推薦列表。在兩個真實的公共電子商務數據集Yoochoose和Diginetica上對比了SR?GM?AM方法與基于無損邊緣保留聚合和快捷圖注意力的推薦(LESSR)方法,結果顯示,SR?GM?AM方法的P20最高達到了72.41%,MRR20最高達到了35.34%,驗證了SR?GM?AM的有效性。
會話推薦;全局圖;會話圖;圖神經網絡;鄰域信息
推薦系統在各種在線平臺中發揮著關鍵作用,對用戶進行個性化推薦,可以解決信息過載問題。傳統的推薦方法(如協同過濾等)過度依賴用戶的長期交互信息,而會話推薦[1-2]可以根據用戶正在進行會話中的行為信息預測用戶的下一次點擊。
會話推薦的早期研究分為兩類,分別是基于協同過濾和基于馬爾可夫鏈的會話推薦,學者提出了許多基于深度學習的方法,取得了較好的效果,但也存在一些問題:基于圖神經網絡(Graph Neural Network, GNN)[3-4]的方法結合用戶的長期興趣和短期興趣進行會話表示從而完成推薦,但這些方法都基于當前會話信息,忽略了其他會話中的信息;神經注意力推薦機制(Neural Attentive Recommendation Mechanism, NARM)[5]和短時注意力優先(Short?Term Attention/Memory Priority, STAMP)方法[6]則只對連續項目間轉移關系建模,不能捕獲項目間復雜的依賴關系。上述方法獲取的用戶興趣偏好表示并不準確,因此推薦精度低。
針對上述問題,本文提出了基于圖模型和注意力模型的會話推薦(Session Recommendation based on Graph Model and Attention Model, SR?GM?AM)方法。該方法首先利用全局圖和會話圖挖掘用戶的多種興趣信息;其次,利用GNN捕捉項目間復雜的轉移關系,提取圖特征;最后,使用軟注意力和目標注意力,準確獲取用戶興趣偏好表示。
傳統的會話推薦方法包括基于協同過濾和基于馬爾可夫鏈的會話推薦。基于協同過濾的方法根據項目相似度做出推薦;基于馬爾可夫鏈的方法則將當前會話映射成馬爾可夫鏈,根據前一次點擊預測用戶的下一次點擊。
循環神經網絡(Recurrent Neural Network, RNN)可以處理包含時間順序的會話信息,也被用于會話推薦。Tan等[7]對會話序列進行處理時,引入數據增強的方法,提高了訓練模型的魯棒性。Li等[5]提出的NARM利用注意力機制獲取準確的項目轉移信息。Liu等[6]提出了一種基于注意力機制的短時記憶網絡(STAMP)捕捉用戶的當前興趣。NARM和STAMP都使用注意力機制,強調了最后一次點擊項目的重要性。之前的研究利用注意力機制[8-9],在會話推薦中引起了廣泛關注,基于自注意力的序列推薦[10],利用自注意力機制提高了推薦性能。基于興趣轉移和潛在因素的會話推薦(Interest Shift and Latent Factors, ISLF)[11]考慮了用戶興趣轉移,并采用可變自動編碼器和RNN捕捉用戶的序列行為信息。基于混合通道目的路由網絡的會話推薦MCPRN(Mixture?Channel Purpose Routing Network)[12]使用混合通道模型對給定會話進行建模。
GNN廣泛應用于推薦系統[13-14]、行人重識別[15]、分辨率重建[16]等領域,基于GNN的方法可以對會話圖進行操作,更好地捕捉項目之間的復雜轉移關系。Wu等[3]提出基于GNN的會話推薦方法(Session?based Recommendation with GNN, SR?GNN),結合當前會話信息和長期會話信息完成推薦。之后Qiu等[17]提出了變種方法,利用鄰域嵌入和多頭注意力生成會話表示。
上述方法只對當前會話中的項目轉移關系進行建模,忽略了其他會話中的信息,并且用戶興趣偏好表示不準確。為此,本文提出基于圖模型和注意力模型的會話推薦方法,在文獻[18]中方法的基礎上考慮了鄰域信息,能夠有效解決會話推薦問題。
基于圖模型和注意力模型的會話推薦模型如圖1所示。首先,會話序列經過預處理分別轉換成全局圖和會話圖,利用GNN得到項目嵌入;之后經過全局項目表示層和會話項目表示層分別生成全局級項目嵌入和會話級項目嵌入,圖模型經過信息融合生成圖嵌入;其次,注意力模型通過軟注意力進行圖嵌入和反向位置嵌入融合,得到全局嵌入,并且目標注意力生成目標嵌入,注意力模型經過線性轉換得到會話嵌入;最后,基于圖模型和注意力模型的會話推薦模型經過預測層,輸出下一次點擊的項推薦列表。
圖1 SR?GM?AM的總體框架
全局圖和會話圖分別利用GNN得到項目嵌入,項目嵌入經過全局項目表示層生成全局級嵌入,經過會話項目表示層生成會話級嵌入,最后圖模型經信息融合得到圖嵌入。
2.3.1全局圖
全局圖可以從其他會話信息中捕獲項目轉移信息,稱為全局項目轉移,是在鄰域的基礎上進行定義。
圖2 全局圖示例
2.3.2會話圖
圖3 會話圖
2.3.3圖神經網絡
式(1)表示不同節點之間的信息傳播,提取潛在向量,并將它們作為GNN的輸入;式(2)、(3)分別表示更新門和重置門,分別決定要保留和丟棄信息;式(4)表示候選狀態,通過前一個時間步的狀態、當前狀態和重置門來構建候選狀態;式(5)表示在更新門的控制下,最終狀態是前一個時間步狀態和候選狀態的組合。通過不斷更新,獲得最終的節點向量。
2.3.4全局項目表示
全局項目表示由信息傳播和信息聚合兩部分組成。一個項目包含在多個會話中,獲取有用的項目轉移信息,可以有效地提高預測精度。之前的方法是使用平均池化方法獲取項目的鄰域特征信息,但是并非鄰域集合中的所有項目都與當前會話的用戶偏好有關,因此之前的方法不適合獲取鄰域特征信息。本文方法利用會話感知注意力,區分鄰域集合中各個項目的重要性。
之后使用softmax函數進行歸一化:
2.3.5會話項目表示
會話圖中自身項目與其鄰域中各個項目之間轉移關系的權重是不同的,利用注意力機制表示不同節點之間的權重。注意力權重的公式為:
利用softmax激活函數對注意力權重進行正則化:
會話級嵌入表示為:
會話級項目嵌入由當前會話中項目本身及其鄰域的特征聚合而成,通過注意力機制,降低了噪聲對會話項目表示的影響。
2.3.6信息融合
圖嵌入向量則通過式(16)計算嵌入的平均值得到:
注意力模型通過軟注意力進行圖嵌入和反向位置嵌入融合得到全局嵌入,并且目標注意力生成目標嵌入,注意力模型經過線性轉換得到會話嵌入。
2.4.1反向位置嵌入
2.4.2軟注意力
注意力模型利用軟注意力機制融合反向位置嵌入向量和圖嵌入向量(式(18)),生成全局嵌入向量(式(19))。
2.4.3目標注意力
2.4.4線性轉換
目標嵌入向量和全局嵌入向量經過線性轉換生成會話嵌入向量:
項目嵌入向量和會話嵌入向量進行內積,使用softmax函數對所有目標項目推薦分數進行歸一化,其公式為:
本實驗分別在兩個真實的公共電子商務數據集Yoochoose和Diginetica上進行驗證。Yoochoose數據集的數據信息來源于RecSys Challenge 2015,它包含用戶在電子商務網站上6個月內的點擊信息;Diginetica數據集的數據信息來自CIKM Cup 2016的交易數據。為公平比較,本實驗嚴格遵循與Wu等[3]相同的數據集處理規則,在公共數據集中,刪除點擊次數不到5的項目和會話長度為1的會話。最終,Yoochoose數據集包含7 981 580條會話和37 483個項目,Diginetica數據集包含204 771條會話和43 097個項目。
表1 數據集信息統計
本實驗采用與Wu等[3]相同的評估指標,分別是精度(Precision, P)和平均倒數排名(Mean Reciprocal Rank, MRR)。
實驗選擇了以下五種對比方法:
NARM[5]:在傳統的RNN基礎上增加了注意力機制,改進了會話推薦的精度。
STAMP[6]:利用注意力取代RNN的編碼器,依賴用戶點擊的最后一次項目捕捉用戶興趣。
SR?GNN[3]:使用門控圖神經網絡獲得項目嵌入,應用注意力機制獲取用戶短期與長期興趣偏好。
基于無損邊緣保留聚合和快捷圖注意力的會話推薦(Lossless Edge?order preserving aggregation and Shortcut graph attention for Session?based Recommendation, LESSR)[19]:采用邊緣保留聚合層解決基于GNN的順序信息丟失問題,并且提出捷徑圖注意力層,該層通過沿捷徑連接傳播信息有效捕獲遠程依賴關系,通過將兩種類型的層組合在一起,完成推薦。
基于會話的多粒度圖神經網絡推薦(Session?based Recommendation model of Multi?granular GNN, SRMGNN)[20]: GNN分別學習項目信息和項目類別信息,提取更多的特征信息,然后使用注意力網絡,經過融合層,得到最終的會話表示,完成推薦。
3.5.1相關方法比較與分析
表2是幾種對比方法的P@20和MRR@20結果,最好結果加粗表示。由表2可以看出,SR?GM?AM在公共數據集上的P@20和MRR@20都有良好表現,驗證了所提出方法的有效性。基于神經網絡類方法具有更強捕捉復雜用戶行為的能力,NARM應用循環單元捕捉用戶整體興趣,STAMP利用最后一次點擊的項目改善短期記憶能力,這些方法獲得了優于傳統方法的性能;但是這些方法只考慮連續項目之間的單向轉移關系,它們的性能仍然不如SR?GNN。
SR?GNN進一步考慮了會話中項目之間的復雜依賴關系,該方法將每個會話建模為一個有向會話圖,該圖能捕捉用戶點擊項目之間的復雜聯系。該方法采用軟注意力機制生成全局會話表示,可以自動選擇相對重要的項目,并且忽略當前會話中的無效用戶行為。當用戶的行為是無目的的,或者用戶的興趣在當前會話中快速漂移時,傳統模型無法有效處理這種類型會話信息。LESSR和SRMGNN仍然不如本文方法SR?GM?AM。
SR?GM?AM利用全局圖和會話圖提取更多的特征信息,GNN獲取了復雜項目轉移關系。經過全局項目表示和會話項目表示,融合全局級嵌入和會話級嵌入,生成圖嵌入向量。之后經過注意力模型,利用軟注意力,生成全局嵌入向量,結合目標注意力生成的目標嵌入,得到會話嵌入,完成推薦。
表2 實驗結果比較 單位: %
3.5.2全局圖對模型的影響
為比較圖模型中的全局圖對實驗結果表現的影響程度,本實驗將與以下兩種嵌入方法進行比較:1)沒有全局級嵌入,只有會話級嵌入(記為L);2)具有全局級嵌入和會話級嵌入,跳數設置為1(記為1?hop);3)具有全局級嵌入和會話級嵌入,跳數設置為2(即本文的SR?GM?AM)。比較結果如表3所示,最好結果加粗表示。由表3可知,SR?GM?AM實現了更好的性能。通過實驗數據可以看出,SR?GM?AM以及1?hop都可以從其他會話中獲取項目轉移信息,提取更多的特征信息,做出準確預測,驗證了全局圖的有效性。還可以看出,在Diginetica數據集上,具有2跳的SR?GM?AM比具有1跳的SR?GM?AM表現更好,這表明跳數越高,可能從全局圖中獲取更多的有效信息,提高推薦的準確性。但是在Yoochoose 1/4上,具有1跳的SR?GM?AM比具有2跳的SR?GM?AM表現更好,這表明跳數如果設置太高,可能會引入噪聲,降低推薦的準確度。
表3 全局圖對模型的影響 單位: %
3.5.3注意力對模型的影響
本文方法在注意力模型中引入軟注意力機制和目標注意力機制,會話嵌入向量包括:全局嵌入向量、目標嵌入向量和項目嵌入向量。為比較注意力機制對實驗結果的影響,本實驗中與以下兩種方法進行比較:
1)基于圖模型和目標注意力的會話推薦(Session Recommendation based on Graph Model and Target Attention, SR?GM?TA),注意力模型中只有目標注意力機制,其會話嵌入向量包括目標嵌入向量和項目嵌入向量;
2)基于圖模型和軟注意力的會話推薦(Session Recommendation based on Graph Model and Soft Attention, SR?GM?SA),注意力模型中只有軟注意力機制,其會話嵌入向量包括全局嵌入向量和項目嵌入向量。
比較結果如表4所示,最好結果仍加粗表示。從表4可以看出,SR?GM?AM優于其他方法,驗證了該方法的有效性。SR?GM?SA在各項指標上優于SR?GM?TA,SR?GM?AM在性能上優于SR?GM?SA,表明利用軟注意力提取全局興趣偏好對于會話推薦的重要性,并且反向位置嵌入獲取離候選項目越近的項目信息,可以更好地提高推薦的準確度。SR?GM?AM在各項指標上都優于SR?GM?SA,驗證了融合目標嵌入的重要性,目標注意力進一步考慮了用戶興趣和目標興趣之間的關系,在給定不同目標項目的情況下,針對目標項目完成相關性推薦。實驗結果表明,本方法通過利用軟注意力和目標注意力,可以更好地完成個性化推薦。
表4 注意力對模型的影響 單位: %
3.5.4非線性激活函數對模型的影響
為比較不同激活函數對全局項目表示中信息聚合的影響程度,本實驗分別使用Sigmoid、Tanh和ReLU三種激活函數進行比較,結果如表5所示,最好結果仍加粗表示。由表5可以看出,在各項指標上,ReLU的整體表現最好,驗證了ReLU的有效性。
表5 激活函數對模型的影響 單位: %
3.5.5稀疏數據集對模型的影響
本實驗采用的兩個公共電子商務數據集Yoochoose和Diginetica都為稠密數據集,Sample數據集為稀疏數據集,表6為Sample數據集的詳細信息。
表6 Sample數據集統計
為比較稀疏數據集對模型的影響程度,本實驗分別在Yoochoose1/4、Difinetica和Sample三個數據集上進行實驗,結果如表7所示。由表7可以看出,在稀疏數據集上,模型的整體表現不好,表明模型訓練依賴于大量數據才可以得到更高的精度。
表7 稀疏數據集對模型的影響 單位: %
本文提出基于圖模型和注意力模型的會話推薦方法。全局圖和會話圖分別獲取會話中的鄰域信息和會話信息,利用GNN捕捉項目間復雜轉移關系得到項目嵌入,項目嵌入經過全局項目表示層和會話項目表示層分別得到全局級項目嵌入和會話級項目嵌入,兩個級別嵌入融合生成圖嵌入。注意力模型引入反向位置嵌入、軟注意力和目標注意力,提高會話嵌入的準確性,從而完成推薦。實驗結果表明,該方法在各項指標上均優于基準方法,另外通過消融實驗證明了本方法各組成部分之間的有效性。但是,由實驗結果可見,會話推薦的各項指標還存在很大的提升空間,在接下來的工作研究中,將考慮挖掘更多用戶的行為信息以及結合知識圖譜,以得到更高的推薦精度。
[1] 趙海燕,趙佳斌,陳慶奎,等.會話推薦系統[J].小型微型計算機系統,2019,40(9):63-69.(ZHAO H Y, ZHAO J B, CHEN Q K, et al. Session?based recommendation system[J]. Journal of Chinese Computer Systems, 2019, 40(9): 63-69.)
[2] 桂越.基于會話的推薦算法研究[D].北京:北京郵電大學,2019:7-16.(GUI Y. Research on session?based recommendation algorithm[D]. Beijing: Beijing University of Posts and Telecommunications, 2019: 7-16.)
[3] WU S, TANG Y, ZHU Y, et al. Session?based recommendation with graph neural networks [C]// Proceedings of the 33rd AAAI Conference on Artificial Intelligence. Menlo Park, CA: AAAI Press, 2019: 346-353.
[4] XU C, ZHAO P, LIU Y, et al. Graph contextualized self?attention network for session?based recommendation [C]// Proceedings of the 28th International Joint Conference on Artificial Intelligence. Menlo Park, CA: AAAI Press, 2019: 3940-3946.
[5] LI J, REN P, CHEN Z, et al. Neural attentive session?based recommendation [C]// Proceedings of the 2017 ACM on Conference on Information and Knowledge Management. New York: ACM, 2017: 1419-1428.
[6] LIU Q, ZENG Y, MOKHOSI R, et al. Short?term attention/memory priority model for session?based recommendation [C]// Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. New York: ACM,2018: 1831-1839.
[7] TAN Y K, XU X, LIU Y. Improved recurrent neural networks for session?based recommendations [C]// Proceedings of the 1st Workshop on Deep Learning for Recommender Systems. New York: ACM, 2016: 17-22.
[8] VASWANI A, SHAZEER N, PARMAR N, et al. Attention is all you need [C]// Proceedings of the 31st International Conference on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc., 2017: 6000-6010.
[9] WANG H, LIU G, LIU A, et al. DMRAN: a hierarchical fine? grained attention?based network for recommendation [C]// Proceedings of the 28th International Joint Conference on Artificial Intelligence. Menlo Park: AAAI Press, 2019: 3698-3704.
[10] KANG W?C, MCAULEY J. Self?attentive sequential recommendation [C]// Proceedings of the 2018 IEEE International Conference on Data Mining. Piscataway: IEEE, 2018: 197-206.
[11] SONG J, SHEN H, OU Z, et al. ISLF: interest shift and latent factors combination model for session?based recommendation [C]// Proceedings of the Twenty?Eighth International Joint Conference on Artificial Intelligence. California: IJCAI, 2019: 5765?5771.
[12] WANG S, HU L, WANG Y, et al. Modeling multi?purpose sessions for next?item recommendations via mixture?channel purpose routing networks [C]// Proceedings of the 28th International Joint Conference on Artificial Intelligence. California: IJCAI, 2019: 3771-3777.
[13] 南寧,楊程屹,武志昊.基于多圖神經網絡的會話感知推薦模型[J].計算機應用,2021,41(2):330-336.(NAN N, YANG C Y, WU Z H. Multi?graph neural network?based session perception recommendation model[J]. Journal of Computer Applications, 2021, 41(2): 330-336.)
[14] 孫鑫,劉學軍,李斌,等.基于圖神經網絡和時間注意力的會話序列推薦[J].計算機工程與設計,2020,41(10):2913-2920.(SUN X, LIU X J, LI B, et al. Graph neural networks with time attention mechanism for session?based recommendations[J]. Computer Engineering and Design, 2020, 41(10): 2913-2920.)
[15] SHEN Y, LI H, YI S, et al. Person re?identification with deep similarity?guided graph neural network [C]// Proceedings of the 2018 European Conference on Computer Vision, LNIP 11219. Cham: Springer, 2018: 508-526.
[16] 呼延康,樊鑫,余樂天,等.圖神經網絡回歸的人臉超分辨率重建[J].軟件學報,2018,29(4):914-925.(HU Y K, FAN X, YU L T, et al. Graph based neural network regression strategy for facial image super?resolution[J]. Journal of Software, 2018, 29(4): 914-925.)
[17] QIU R, LI J, HUANG Z, et al. Rethinking the item order in session?based recommendation with graph neural networks [C]// Proceedings of the 28th ACM International Conference on Information and Knowledge Management. New York: ACM, 2019: 579-588.
[18] 黨偉超,姚志宇,白尚旺,等.基于圖神經網絡和注意力機制的會話推薦[J]. 計算機工程與設計, 2022, 43(10): 2953-2958. (DANG W C, YAO Z Y, BAI S W, et al. Session recommendation based on graph neural network and attention mechanism [J]. Computer Engineering and Design, 2022,43(10): 2953-2958).
[19] CHEN T, WONG R C?W. Handling information loss of graph neural networks for session?based recommendation [C]// Proceedings of the 26th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. New York: ACM, 2020: 1172-1180.
[20] 任俊偉,曾誠,肖絲雨,等.基于會話的多粒度圖神經網絡推薦模型[J].計算機應用,2021,41(11):3164-3170.(REN J W, ZENG C, XIAO S Y, et al. Session?based recommendation model of multi?granular graph neural network[J]. Journal of Computer Applications, 2021, 41(11): 3164-3170.)
Session recommendation method based on graph model and attention model
DANG Weichao, YAO Zhiyu*, BAI Shangwang, GAO Gaimei, LIU Chunxia
(,,030024,)
To solve the problem that representation of interest preferences based on the Recurrent Neural Network (RNN) is incomplete and inaccurate in session recommendation, a Session Recommendation method based on Graph Model and Attention Model (SR?GM?AM) was proposed. Firstly, the graph model used global graph and session graph to obtain neighborhood information and session information respectively, and used Graph Neural Network (GNN) to extract item graph features, which were passed through the global item representation layer and session item representation layer to obtain the global? level embedding and the session?level embedding, and the two levels of embedding were combined into graph embedding. Then, attention model used soft attention to fuse graph embedding and reverse position embedding, target attention activated the relevance of the target items, as well as attention model generated session embedding through linear transformation. Finally, SR?GM?AM outputted the recommended list of theitems for the next click through the prediction layer. Comparative experiments of SR?GM?AM and Lossless Edge?order preserving aggregation and Shortcut graph attention for Session?based Recommendation (LESSR) were conducted on two real public e?commerce datasets Yoochoose and Diginetica, and the results showed that SR?GM?AM had the highest P20 of 72.41% and MRR20 of 35.34%, verifying the effectiveness of it.
session recommendation; global graph; session graph; Graph Neural Network (GNN); neighborhood information
This work is partially supported by Natural Science Foundation of Shanxi Province (201901D111266, 201901D111252).
DANG Weichao, born in 1974, Ph. D., associate professor. His research interests include intelligent computing, software reliability.
YAO Zhiyu, born in 1995, M. S. candidate. His research interests include session recommendation.
BAI Shangwang, born in 1964, M. S., professor. His research interests include digital intelligent software system.
GAO Gaimei, born in 1978, Ph. D., lecturer. Her research interests include network security, cryptography.
LIU Chunxia, born in 1977, M. S., associate professor. Her research interests include software engineering, database.
TP391.4
A
1001-9081(2022)11-3610-07
10.11772/j.issn.1001-9081.2021091696
2021?09?26;
2022?03?07;
2022?03?21。
山西省自然科學基金資助項目(201901D111266, 201901D111252)。
黨偉超(1974—),男,山西運城人,副教授,博士,CCF會員,主要研究方向:智能計算、軟件可靠性;姚志宇(1995—),男,山西朔州人,碩士研究生,主要研究方向:會話推薦;白尚旺(1964—),男,山西呂梁人,教授,碩士,主要研究方向:智能軟件系統;高改梅(1978—),女,山西呂梁人,副教授,博士,CCF會員,主要研究方向:網絡安全、密碼學;劉春霞(1977—),女,山西大同人,副教授,碩士,CCF會員,主要研究方向:軟件工程、數據庫。