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

基于鄰域感知圖神經網絡的會話推薦

2022-05-15 06:35:04何倩倩孫靜宇曾亞竹
計算機工程與應用 2022年9期
關鍵詞:用戶信息模型

何倩倩,孫靜宇,曾亞竹

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

互聯網的發展和普及給人們生活、工作帶來了極大的便利,但與此同時人們不得不面對數據量激增導致的信息過載現象。推薦系統能夠根據用戶的歷史交互和興趣偏好設置等信息推薦合適的內容,有效緩解了信息過載問題。然而在實際應用中,用戶資料往往是不可知的,因此出現了基于會話(session-based)的推薦[1-2]。

會話(session)指的是用戶在一段時間內與項目交互的記錄,例如用戶30 min內連續點擊的物品。會話推薦根據匿名行為序列預測用戶下一個可能感興趣的項目,從而產生有效的推薦。推薦的關鍵是根據會話序列評估項目或產品之間的關系,而序列中可利用的信息是有限的:(1)會話中的用戶通常是匿名的。由于信息保護和新用戶等影響,用戶身份和偏好設置幾乎不可用;(2)序列中僅包含用戶的點擊和購買行為。這些交互數據不等價于用戶的主觀意見(如用戶評價和評分等),根據客觀的交互行為間接推測用戶興趣是有難度的。因此僅通過當前會話信息不足以準確預測用戶真實的興趣偏好,如何發現和利用更多會話信息捕獲用戶隱含興趣是推薦的難點。

用來做序列推薦任務的方法中表現較好的一類是圖神經網絡(graph neural network,GNN)模型[3]。GNN模型當前的研究主要是利用會話內項目之間交互和轉移關系捕獲用戶興趣,進而實現推薦任務。但僅利用當前會話不僅缺乏對物品間全局關系的捕獲和利用,無法捕獲有效的協同信息,還忽略了會話之間用戶興趣的相關性,難以表現出良好的性能。實際上會話之間不是獨立存在的,鄰域信息往往是有價值的補充信息,引入不同會話中的鄰域信息可以輔助預測用戶的下一個行為。因此,本文提出基于鄰域感知圖神經網絡的會話推薦(neighborhood awareness graph neural networks for session-based recommendation,NA-GNN)。模型從會話和鄰域兩個角度建模捕獲項目特征,然后通過注意力機制聚合節點信息并得到會話表示,預測下一個交互項目。模型組成部分如下:

(1)構建圖結構:根據當前會話和全局會話構建會話圖和鄰域圖。

(2)生成節點表示:會話圖通過融合自注意力的GNN網絡生成會話層的節點表示,鄰域圖利用鄰域感知的注意力遞歸地合并全局層每個項目的鄰域節點特征。

(3)表示聚合:通過注意力機制聚合會話層和鄰域層的節點表示,全面訓練項目表征。

(4)預測模塊:根據聚合得到的序列表示和節點的初始表征預測下一個交互項目。

本文的主要任務如下:

(1)提出了會話圖和鄰域圖相結合的模型,充分利用鄰域信息輔助下一次點擊預測,提高推薦性能。

(2)提出融合自注意力的GNN 模塊和鄰域感知的注意力機制,在會話層和鄰域層項目表示時對項目給予不同程度的關注。

(3)在真實數據集上進行實驗,證明了NA-GNN 模型的有效性和合理性。

1 相關工作

會話推薦作為推薦系統的新分支,在電子商務、社交網絡等多個領域體現出很高的實用價值,會話推薦的研究因此得到越來越多學者的關注。本章概述了幾種會話推薦模型。

1.1 傳統推薦方法

傳統的推薦方法憑借可解釋性強和輕量的訓練部署等優勢,在推薦領域中占有一席之地。其中CF[4]算法是驅動個性化推薦機制的基本算法。早期的CF模型如基于用戶的CF[5]和基于項目的CF[6],將用戶/項目相似矩陣的行或列向量作為用戶和項目向量表示,并根據相似度函數計算推薦用戶或推薦項目之間的相似度。為了從矩陣中提取潛在的語義,研究人員從潛在因子模型[7-9]中探索了學習的用戶和項目向量表示。不過CF模型通常具有很高的計算復雜度,因此在推薦中往往優先考慮用戶最近一段時間的興趣偏好而忽略之前的行為,不能很好地分析出用戶真正喜歡哪些類別的商品。馬爾可夫過程改進了CF方法。Rendle等人[10]將推薦任務視為一個序列優化問題,分解用戶的個性化偏好矩陣,并與馬爾可夫鏈相結合,對相鄰點擊之間的順序行為建模來捕獲長期用戶偏好。模型單純地從序列前后捕獲用戶的興趣偏好進行預測,過分地依賴數據獨立性,忽略了序列數據中蘊含的項目間的轉移關系。近兩年的研究較好地改善了這個問題。文獻[11]通過序列信息和馬爾可夫鏈因子對一般表示和序列表示建模,將一般相似性和兩個連續項之間的序列關系統一起來進行序列表示學習。從全序列的角度建模更好地捕獲用戶的長期興趣,避免對局部序列信息的依賴。文獻[12]則改變了從數據中學習的模式,利用因果關系建模。在觀察客觀數據的同時獲取用戶個性化信息,更好地建立用戶模型。但是模型不可避免的對用戶的歷史行為和興趣偏好產生依賴,因此在匿名的會話推薦中不能發揮出最優的推薦性能。

1.2 深度學習推薦方法

不同于傳統的推薦方法,基于深度學習的推薦算法通過神經網絡模型訓練用戶的偏好表示,以此進行下一次的點擊預測。

RNN 模型在神經網絡基礎上增加了橫向聯系,將上一個時間序列的神經單元的值傳遞至當前的神經單元,從而使神經網絡具有記憶能力,在自然語言領域和時間序列訓練的任務中有很好的應用性。Hidasi等人[13]提出基于門控循環單元的GRU4Rec(gated recurrent unit for recommendation)模型,在訓練項目特征時結合了項目的排名損失(ranking loss),使模型對用戶可能感興趣的項目獲得更高的貢獻值,推薦效果有了明顯的改進。但是同樣較多地忽略了序列中蘊含的用戶偏好,對信息利用不夠充分。之后RNN模型與注意力機制結合,模型預測的準確性進一步提高。NARM(neural attentive recommendation machine)模型[14]融合RNN 模型與注意力機制,同時關注用戶的行為和興趣偏好,突出了注意力機制在捕獲節點特征時的重要作用。之后文獻[15]提出STAMP(short-term attention/memory priority)模型,從會話上下文的長期記憶中獲取用戶的一般興趣,同時通過最后一次點擊的短期記憶獲取用戶的當前興趣,有效地捕獲了用戶偏好信息,但該方法舍棄了會話序列行為信息。文獻[16]假設歷史會話中包含的信息能提高當前會話的推薦性能,提出將協作鄰域信息應用于基于會話推薦的框架CSRM(collaborative session-based recommendation machine),將RNN 網絡和注意力機制結合,同時利用協作信息預測用戶偏好。近兩年提出了循環卷積結構,文獻[17-18]利用卷積運算提取復雜的局部特征,然后通過迭代的RNN 網絡從會話序列中訓練用戶長期偏好。在建立用戶當前興趣時將循環運算和卷積運算的輸出串聯起來產生推薦,提高了模型的性能。但由于模型本身的限制,上述算法只能對項目之間的連續單向轉移關系進行建模,而忽略了會話中其他項目之間的轉移關系,使得預測難以取得更好的性能。

圖神經網絡的表示最早由Gori等人[19]提出,2009年Scarselli 等人[20]定義了GNN 的概念并由Gallicchio 等人[21]進一步闡述。2013 年Bruna 等人[22]提出了譜域卷積,首次將圖像處理中的卷積操作簡單地用到圖結構數據處理中來。研究人員受到啟發,在圖卷積的基礎上不斷改進,GNN 網絡[23-24]在會話推薦研究中大放異彩。SR-GNN(session-based recommendation with graph neural network)模型[25]將會話序列建模為圖結構,保留了項目之間的關系結構,充分利用交互和轉移信息,同時通過注意力機制區分用戶的長短期偏好。之后GC-SAN(graph contextual self-attention model based on graph neural network)模型[26]在此基礎上融合自注意力機制的優勢,捕捉相鄰項的交互信息和全局依賴關系,將訓練的局部和全局興趣偏好線性加權來預測。文獻[27]發現目前的方法無法捕獲用戶更細粒度的偏好,提出多分量的協同過濾算法分析用戶行為動機,首先分解用戶行為的潛在分量,之后對分量重新組合,獲得統一的用戶/物品表示;文獻[28]從重復推薦的重要性入手,提出重復探索機制,結合圖神經網絡,對用戶的重復探索行為模式建模;文獻[29]提出需求感知的圖神經網絡,從用戶行為角度發掘用戶潛在需求,構建會話需求圖訓練需求感知以提高項目表征的質量。但是以上GNN 模型都只關注會話的內部信息,忽略了鄰域相關信息對當前會話預測任務的輔助作用。為此,本文提出基于鄰域感知圖神經網絡的會話推薦NA-GNN 模型,對當前會話建模的同時將鄰域信息作為補充信息,提高推薦任務的性能。

2 模型結構

2.1 GNN工作原理

GNN的網絡結構設置為三層:分別是輸入層、隱藏層和輸出層。早期的GNN 網絡[19-21]以迭代的方式傳播鄰近節點的信息來學習目標節點的表示,直到得到穩定的固定點,因此基于循環結構的GNN 網絡以不動點(the fixed point)理論為依據。之后研究人員基于圖信號處理領域[22](譜域)取得的一系列成果推導出了圖神經網絡的基本思路:首先輸入圖形結構和節點內容信息,在節點之間進行信息的傳播、聚合以及變換,最終根據輸出的新的節點表示進行圖形分析任務,其中:

(1)輸入層:以圖形結構和節點內容信息作為網絡的輸入,即網絡的拓撲結構和節點的初始表征。

(2)隱藏層:通過聚合當前節點的鄰居特征信息進行節點的隱式表示。然后對所有節點的隱式表示結果進行一個非線性轉換。堆疊多層最終得到節點表示能夠獲得更深層的特征。

(3)輸出層:得到最終的節點表征,然后進行圖形分析任務。

圖1 GNN網絡結構Fig.1 Network structure of GNN

GNN 網絡能非常好地利用圖的結構,以一種自然而靈活的方法獲取圖上鄰居節點的特征。這樣得到的節點表征刻畫了節點的低頻信息,也就是當前節點與臨近節點之間一些共性和相似的信息,這些信息適用于大多數的推薦任務,如電商平臺、社交網絡等。

2.2 問題描述及符號表示

NA-GNN 模型的目標是從會話和鄰域兩個角度來建模獲取用戶偏好,以此預測用戶行為。

預測流程如圖2所示,用戶與項目的歷史交互過程被記錄下來,模型對輸入的當前會話和全局會話序列分別建圖,利用圖結構捕獲會話層次和全局層次特征。表示聚合模塊匯聚兩張圖中學習到的節點和鄰域節點表征,得到當前會話的序列表示。預測模塊根據項目的概率預測下一次交互行為。通過對模型預測流程分析,得到圖3的NA-GNN模型結構框架組成。

圖2 模型預測流程Fig.2 Forecasting process of model

圖3 NA-GNN模型結構框架Fig.3 Model framework of NA-GNN

現對文中用到的符號進行如下定義。集合V={v1,v2,…,vm}表示所有會話中出現過的項目集合,m表示項目數量。序列表示一個會話序列,其中表示在會話序列S中,用戶與項目發生了交互,并按交互的時間戳進行順序排列,i表示交互順序,l表示會話長度。NA-GNN 模型的任務是給定會話,從所有項目集合V中預測用戶第t+1 時刻將要點擊的項目。模型會輸出所有可能物品的概率,用得分Y={Y1,Y2,…,Ym}表示,其中Yi表示第t+1 時刻物品vi被點擊的可能性,Y值越高,被點擊的可能性越大,在候選物品中的位置越靠前,模型最終選擇得分最高的N(1≤N≤m)個物品構成推薦列表。

2.3 構圖模塊

本節構建會話圖和鄰域圖,分別從會話層次和鄰域層次捕獲項目交互信息,充分利用當前會話中項目轉移關系和鄰域信息進行表示。

會話圖為帶權有向圖,表示為Gs=(Vs,Es),目的是基于當前會話中項目的交互信息,學習會話層次的項目表示。其中節點集Vs(Vs?V)表示在會話S中出現過的所有項目的集合,邊集Es是會話S中出現的所有項目Vs轉移關系的表示,邊∈Es表示會話S中,用戶點擊物品vi-1后的下一時刻點擊了物品vi。邊集Es的權值按如下規則生成:(1)重新定義節點出度和入度。設出(入)度為當前節點的出(入)度值+1(1是節點到自身的邊,即自環);(2)計算權重。每條邊的權重為邊的出現次數除以度值。圖4 的示例展示了會話圖的構造及權重生成過程。由于當前節點是距離前后交互最近的節點,因此蘊含更多有效的信息,更能代表項目轉移關系。

圖4 會話圖Fig.4 Session graph

鄰域圖構建為帶權無向圖,目的是捕獲鄰域節點表示。首先利用鄰域的概念建立全局序列的項目轉移關系,鄰域是集合上的一種拓撲結構,直觀理解就是鄰近的區域,通過定義一段“距離”表示靠近“目標”的程度。本文定義鄰域集Nα(v) 為鄰域節點集合。鄰域圖構建規則如下:設有會話序列表示為,會話上任一物品∈Vp(會話Sp的點集),α為鄰域的階數,選取Sp上序號為[i-α,i+α]的序列段構造子集Sq,則鄰域集為序列Sq上所有節點的集合。

鄰域集生成示例如圖5 所示。基于此將鄰域圖構建為Gg=(Vg,Eg),Vg是所有會話上項目構成的節點集合,,vi∈V,vj∈Nα(vi)}表示當前會話的節點與其他會話中項目之間的轉化關系構成的邊集。圖中邊集Eg權重wij的生成規則如下,對每個節點,其相臨邊的權重由兩部分組成:(1)每條邊在所有會話中出現的頻率。(2)鄰域感知系數γ。在鄰域圖中,將物品類別屬性是否相同表示為節點間的關聯關系,鄰域感知系數則強化并量化了這種關系。當兩個節點類別相同時,鄰居節點對目標節點的預測產生積極的輔助作用,因此賦予正向的(γ>1)系數值強化鄰居節點的影響。對邊來說,每次連接都是關聯關系的強化,因此γ對邊的作用是累加的,最終邊的權重wij為頻率與感知系數的乘積。鄰域圖的邊集綜合考慮了節點間信息的相關性和對應邊出現的頻次,將全局序列項目交互過程的有效信息得到最大化的利用。

圖5 構造鄰域集Fig.5 Construct neighborhood set

圖6 鄰域圖Fig.6 Neighborhood graph

2.4 表示學習模塊

本節對上述兩種圖進行節點表示訓練。通過融合自注意力機制的GNN模塊捕獲并更新會話圖上節點的表示,鄰域圖則設計鄰域感知模塊進行學習。

在會話圖中,節點向量的學習過程如下:

公式(6)是自注意層,其中WQ,WK,WV∈R2d×d是可訓練的參數,是當前會話節點vi的向量表示,d表示維度。首先計算K(Keys)和Q(Querys)的相關性,然后對所得的相關度值通過softmax 函數歸一化,得到每個節點向量的權重系數,也就是每個節點在當前會話中的重要程度。節點向量與相應的權重相乘得到自注意的節點向量。之后通過一個改進的前饋神經層將節點信息向下層傳輸。公式(7)中Wf,Wh∈Rd×d,bf,bh∈Rd是可訓練的參數,利用ReLU 激活函數捕獲有效信息,考慮到前向傳輸過程會產生信息損失,因此在前饋網絡之后對ReLU函數未激活的信息連接,充分利用會話中所有節點的有效信息。重復以上公式可以捕獲會話層更復雜的節點轉移關系,但是多次提取可能導致節點向量“過度平滑”。

構建鄰域圖的最終目的是既要從全局序列中選擇有用信息,又不能引入噪聲。鄰域感知的注意力模塊通過計算鄰域圖上當前節點與鄰域節點的相關度ω(vi,vj)衡量鄰域集節點對節點預測的影響。計算規則如下:

公式(8)中,ω(vi,vj)表示當前節點與鄰域節點的相關度,也即相似程度,ω值越高,表示兩者對應的用戶偏好和行為越相似,則該鄰域節點對預測結果影響越大。qω和Wω是可訓練的參數;wij是邊的權重。公式考慮權重的同時,也考慮了會話S和鄰域集節點vj的相關程度,使注意力在兩者之間作一個衡量,最終得到更全面的節點信息。式(8)中s表示當前會話S的特征向量,是對會話S中所有節點進行均值池化的結果,即公式(9)。公式(10)對相關度歸一化,利用softmax函數得到當前節點的所有鄰域節點概率。公式(11)將節點的鄰域集Nα(vi) 的每個鄰域節點的概率值線性組合得到鄰域節點的向量表示。公式(12)對當前節點向量hv和鄰域向量表示進行向量聚合,其中Ws∈Rd×2d是聚合權重,全局層節點向量表示為當前節點和鄰域節點的向量融合。多次聚合可以把相關的全局信息更多地匯聚到中以提高預測性能。

2.5 表示聚合模塊

本節聚合會話圖和鄰域圖的向量表征得到節點的最終表達,最終得到序列表征。

公式(13)對兩個層次的節點向量做最大值池化,將更多有效信息整合到節點的表征,從而形成序列表征。過程中對節點向量增加dropout 層,防止提取高階節點信息可能帶來的“過擬合”問題。公式(14)對S中所有節點采用均值池化方法初步得到各種有效信息融合后的序列表示。公式(15)根據節點的貢獻值分配不同的關注度:公式中用序列信息s′作為注意力機制的觸發信息,利用注意力機制獲得節點相應的關注權值。其中qβ,bβ∈Rd,是可訓練的函數。最后通過公式(16)將節點表示線性加權得到序列向量表示。

由上述過程得到的會話表示S融合了不同層次的節點信息,充分挖掘了會話層次和全局層次可用的轉移關系,更有效地預測用戶的興趣偏好。

2.6 預測模塊

本節基于序列向量和節點初始向量,獲得下一個節點的推薦列表。

公式(17)對序列向量和節點初始向量做點積運算,通過softmax 函數得到該物品是下一次交互節點的概率,其中表示所有物品的概率分布。模型訓練使用交叉熵損失計算,定義為公式(18),其中yi為one-hot向量。

3 實驗與分析

3.1 數據集和預處理

實驗中用到兩個公開的數據集:Diginetica 和Yoochoose。Yoochoose 是RecSys 2015 挑戰賽的數據,通過http://2015.recsyschallenge.com/challenge.html 獲取。這些數據是實驗中收集的,反映了歐洲某在線零售平臺上用戶的會話點擊和購買行為,其中若會話中出現用戶的購買活動,表示會話結束。Diginetica 來源于https://competitions.codalab.org/competitions/11161,由CIKM 2016 支持,是從搜索引擎日志中提取的用戶會話,記錄了查詢詞、產品描述、用戶點擊和購買行為等。對兩個數據集的預處理工作參考了文獻[25],首先過濾掉長度為1 的會話、出現次數少于5 的物品以及僅在測試集中交互的物品,然后將最新一周的會話設置為測試集,其余會話設置為訓練集。之后對會話序列進行拆分預處理生成序列和相應的標簽。由于預處理后的Yoochoose 數據量巨大且時間間隔相對較長,因此選用離測試集時間最近的1/64 會話序列作為訓練集。經過預處理后的數據集統計數據如表1所示。

表1 預處理數據統計Table 1 Preprocessed data statistics

3.2 評價指標

實驗采用了精確率P@N(Precision)和平均倒數排名MRR@N(mean reciprocal rank,MRR)作為結果度量指標。P@N廣泛應用在基于會話的推薦領域,是對預測準確度的度量,指的是前N項中預測正確的物品所占百分率。MRR@N將預測正確物品的排序的倒數作為預測準確度,然后對所有預測的準確度取平均值。當預測列表中推薦正確的物品位置越靠前時,預測的準確性越高。實驗中設置N值為20。

3.3 對比模型

為了驗證NA-GNN 模型的性能,實驗用以下幾種推薦模型作為對比模型:

(1)POP(popularity):根據物品在會話中的流行度進行推薦。

(2)Item-KNN(item based K-nearest neighbor)[30]:基于物品相似度進行推薦。模型通過計算目標物品與相鄰物品的相似度,推薦與當前物品屬性相同或相似的物品。

(3)FPMC(factorizing personalized Markov chains)[10]:是一種融合了矩陣分解和馬爾科夫鏈的混合模型,在捕獲用戶長期偏好的同時考慮了序列的時間信息。

(4)GRU4Rec[13]:設計了GRU單元對小批量的序列組進行訓練,并引入了基于排名的損失函數,利用了整個序列中物品交互信息。

(5)NARM[14]:在GRU4Rec 上引入注意力機制,合理分配模型注意力,捕獲用戶的主要興趣。

(6)STAMP[15]:同樣是引入了注意力機制的推薦模型,該模型從會話上下文的長期記憶中捕獲用戶的一般興趣,根據最后點擊的短期記憶來捕獲用戶的當前興趣。

(7)CSRM[16]:假設歷史會話中包含與目標會話相似的用戶偏好并將這種協作信息應用于推薦任務。

(8)SR-GNN[25]:首次提出將會話序列建模為圖結構,通過門控GNN模型提取物品間的轉移關系。

(9)GC-SAN[26]:將普適的注意力機制替換為自注意力機制,通過注意力機制自適應地捕獲物品的交互和轉移關系。

3.4 參數設置

為保證實驗可信性,實驗設置與對比模型相同的維度和批處理大小:隱向量的維度d固定為100,批處理大小為100。由于學習率、訓練迭代次數等模型參數的初始化方式對模型收斂速率以及最后的準確率都有影響,因此需要通過輔助實驗找到最優的超參數組合。本模型對超參數的設置參考了文獻[25]、[26]的方法:使用均值為0,標準差為0.1 的高斯分布初始化。學習率為0.001,每3 個訓練周期學習率衰減0.1,正則化系數λ=10-5,設置訓練周期為30并在訓練集上隨機選取10%的子集進行驗證。根據經驗并結合不同優化器優缺點,本實驗選擇計算高效且能自動調整學習率的Adam 算法優化模型參數。此外,關于鄰域圖參數采用網格參數尋優法選擇:鄰居數Nα∈{10,11,12,13,14}、階數α∈{1,2,3}、鄰域感知系數γ∈{0.95,1.0,1.01,1.05,1.2}。在驗證集上取最優的參數組合:Nα=12,α=2,γ=1.05。

3.5 結果分析

首先將提出的模型與基準模型在兩個數據集上進行對比實驗,結果如表2。由此可以總結出:

表2 不同模型在公開數據集上性能對比Table 2 Performance comparison of different models on two datasets %

(1)在所有的推薦模型中,POP 只考慮物品的流行度,推薦性能是最差的。與POP 相比,FPMC 和Item-KNN 在準確率上有了極大的提升。FPMC 通過一階馬爾可夫鏈和矩陣分解捕獲用戶偏好來提升預測準確性,Item-KNN 利用物品之間的相似度進行推薦,結果顯示出很好的性能。但是沒有綜合會話中項目的時間信息,因此無法捕獲項目之間的復雜交互關系。

(2)GRU4Rec 在性能上再次提升。這表明深度學習方法能挖掘有效的高階信息,生成更符合用戶興趣的推薦列表。與GRU4Rec相比,NARM、STAMP和CSRM的性能明顯提高。說明注意力機制能有效關注用戶真正的興趣偏好,同時證明會話中項目的時間順序和鄰域節點信息蘊含用戶的長短期興趣,用戶的近期物品交互信息和相似行為對提取當前興趣十分重要。

(3)實驗證明了SR-GNN和GC-SAN的有效性。它們將會話序列建模為圖結構,并結合注意力機制訓練用戶偏好,體現了GNN 強大的節點表示能力。本文模型與GC-SAN 相比:在Yoochoose 上P@20 提高了1.85%,MRR@20 提高了0.48%;評價指標在Diginetica 上分別提升了7.19%和8.36%。證明鄰域節點信息對預測下一次交互任務有很好的輔助作用。

3.6 消融實驗

消融實驗從以下幾個方面入手:

(1)NA-GNN-1:只有會話圖的NA-GNN模型,即只對當前會話節點建模。

(2)NA-GNN-2:只有鄰域圖的NA-GNN模型,即只對鄰域節點信息建模。

(3)NA-GNN-3:采用SR-GNN 模型方法構建會話圖的NA-GNN模型。

(4)NA-GNN-4:構造鄰域圖邊集權重時不考慮節點屬性的NA-GNN模型。

由表3 結果可知,NA-GNN-1 模型通過構造自注意力節點表征獲得了較好的性能,NA-GNN-2模型中基于鄰域感知的注意力對全局鄰域信息的學習和訓練起到了一定的輔助作用,協助會話層節點向量提取復雜的節點交互和轉移關系,有助于提高模型的預測性能。對比NA-GNN-3、NA-GNN-4 和NA-GNN 的實驗結果,可以觀察到會話圖增加節點到自身的邊,充分考慮節點本身對當前會話的影響,同時引入注意力機制更有效地捕獲節點信息;鄰域圖中增加項目屬性信息,可以更準確地挖掘節點間蘊含的隱含轉移關系。通過上述分析,表明NA-GNN模型中的各個模塊的設計都是合理有效的。

表3 NA-GNN模型消融實驗性能對比Table 3 Performance comparison about ablation experiment results of NA-GNN model %

另外針對NA-GNN 模型中構造鄰域圖的參數,節點鄰居數和鄰域階數設計了對比實驗,結果如圖7 所示。結果表明合理利用鄰居節點的數量和階數可以從全局層次提取更有效的節點轉換信息,提高模型的預測能力,但是高階的鄰域圖信息也可能會引入噪音,以Yoochoose1/64數據集為例,隨著鄰居數量增多,模型的性能在達到峰值之后逐漸下降,而一階的鄰域比高階的鄰域圖表現出更好的效果。由此可知鄰域圖在構建時需反復實驗,確定合理的參數值,避免聚合無關的鄰居節點特征。

圖7 不同鄰域參數下NA-GNN模型性能對比Fig.7 Performance comparison under different neighborhood of NA-GNN

3.7 復雜度分析

本文中模型的復雜度[31]從兩個指標度量:

計算量(floating point operations,FLOPs):對單個樣本,模型進行一次完整的前向傳播所發生的的浮點運算個數,用來衡量模型的時間復雜度。計算公式為:

公式(19)描述了卷積層浮點運算數量。其中:H、W和Cout表示輸出特征表示的高度、寬度和通道數,K、Cin表示卷積核寬度和輸入特征通道數。式(20)是全連接層上計算過程。I、O分別表示輸入維度和輸出維度。

訪存量(Params):是指對于單個樣本,模型一次前向傳播過程中所發生的的內存交換總量,也即模型的空間復雜度。

在離線方式下對模型復雜度進行評估,包括模型的計算量、訪存量和訓練時間。實驗中得出計算量為每秒53.64 GB,訪存量為3.97 MB,在表4中的軟硬件環境下訓練Yoochoose1/64 的單個周期為2 640 s,因此不會占用太多服務器和內存資源,且沒有通過服務器頻繁導入導出數據,是輕便可靠的模型。

表4 NA-GNN模型復雜度Table 4 Complexity of NA-GNN model

由于模型最終的訓練速度,不僅和計算量和訪存量有關,與其他因素如內存帶寬、優化程度、運算器算力等因素也有很大的關系,因此對模型的復雜度進行了如下理論分析。

分析結果如表5所示,本模型的計算量主要集中在GCN部分。設會話長度為n,隱向量維度為d,層數為K,則通過出入度矩陣初始節點表示的時間復雜度為O(n2d),通過GRU單元為O(nd2),整個圖卷積過程的時間復雜度為O(Kn2d+Knd2)。若物品數量V比較大時模型的參數主要體現在物品的嵌入矩陣,此時參數量為O(KVd+Kd2)。與新算法的對比分析發現:模型在空間復雜度上的差別不大。對于長會話進行推薦時,由于CSRM 模型基于RNN 迭代地訓練項目特征,空間上需要更多的內存。時間復雜度上SR-GNN 更優,說明GNN 模型是更適合會話推薦的算法。ReGNN 重復探索機制不能與訓練同步進行,時間花費更高。整體上,本文提出的模型從復雜度分析是簡便高效的模型,具有一定的實用性。

表5 不同模型復雜度對比Table 5 Complexity comparison about different models

4 結束語

為解決基于匿名用戶的會話推薦問題,本文提出了基于鄰域感知圖神經網絡的會話推薦模型NA-GNN。模型構造了會話圖,利用自注意機制提取節點信息;并設計了鄰域圖,融合鄰域感知的注意力捕獲鄰域節點的復雜交互作為輔助信息。生成的序列表示則包含了會話層次和全局層次的節點信息,在此基礎上進行預測任務。通過實驗表明,模型在各項指標上均表現出好的推薦性能。NA-GNN 考慮了物品類別給提取鄰域信息帶來的影響,然而鄰域信息是否有效需要從多個角度考量,通過節點的單一屬性無法準確捕獲有效信息。除節點的類別屬性外,時間信息同樣是一個重要因素,一般來說用戶在自己感興趣的物品上往往花費更多的時間,因此圖上節點的時間信息對用戶偏好有一定體現。在下一步的工作中,需要在NA-GNN 模型的基礎上綜合考慮節點交互的時間間隔等信息對推薦的影響,研究融合用戶交互的時間信息捕獲用戶偏好的方法,進一步提升推薦準確性。

猜你喜歡
用戶信息模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
3D打印中的模型分割與打包
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
主站蜘蛛池模板: 婷五月综合| 制服无码网站| 极品私人尤物在线精品首页 | 97久久超碰极品视觉盛宴| 久久精品亚洲热综合一区二区| 国产三级成人| 日韩在线成年视频人网站观看| 日韩黄色在线| 伊人国产无码高清视频| av免费在线观看美女叉开腿| 91精品啪在线观看国产60岁| 无码中文AⅤ在线观看| 女人爽到高潮免费视频大全| 无码日韩视频| 99热这里只有成人精品国产| 97se亚洲综合| 91亚洲免费| 国产乱人视频免费观看| 在线日韩一区二区| 免费一级毛片| 色屁屁一区二区三区视频国产| 又爽又黄又无遮挡网站| 亚洲人成成无码网WWW| 国国产a国产片免费麻豆| 国产成人1024精品下载| 国产AV无码专区亚洲A∨毛片| 国内精品久久久久久久久久影视| 丁香五月亚洲综合在线| 国产91蝌蚪窝| 国产精品无码影视久久久久久久| 2020最新国产精品视频| 日韩乱码免费一区二区三区| 找国产毛片看| 成人一级免费视频| 国产精品久久久久久久久久98| 欧美97色| 99在线视频免费| 国产打屁股免费区网站| aa级毛片毛片免费观看久| 久久久久九九精品影院| 成人年鲁鲁在线观看视频| 午夜视频日本| 国产精品女同一区三区五区| 成人夜夜嗨| 狠狠五月天中文字幕| 真实国产乱子伦高清| 成人伊人色一区二区三区| 中文字幕在线免费看| 欧美亚洲香蕉| 18禁黄无遮挡免费动漫网站| 亚洲色图在线观看| 亚洲色图欧美一区| 操美女免费网站| 国产青青操| 58av国产精品| 国产欧美成人不卡视频| 亚洲av色吊丝无码| 无码一区二区波多野结衣播放搜索| 92精品国产自产在线观看| av一区二区三区高清久久| 亚洲成年人网| 伊人狠狠丁香婷婷综合色| 欧美日韩精品一区二区在线线| 亚洲 成人国产| 久久综合丝袜日本网| 国产午夜精品一区二区三| 亚洲91精品视频| 亚洲精品无码抽插日韩| www.亚洲色图.com| 超碰精品无码一区二区| 亚洲国产清纯| 91精品小视频| 欧洲欧美人成免费全部视频 | 91精品啪在线观看国产91九色| 亚洲欧美日韩色图| 九九九精品成人免费视频7| 亚洲视频黄| 亚洲综合色婷婷| 国产精品免费福利久久播放| 亚洲三级网站| 国产精品太粉嫩高中在线观看| 97超碰精品成人国产|