亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        融合序列局部信息的日期感知序列推薦算法*

        2024-04-23 12:46:38曹浩東汪海濤賀建峰
        計算機工程與科學 2024年4期
        關鍵詞:過濾器注意力卷積

        曹浩東,汪海濤,賀建峰

        (昆明理工大學信息工程與自動化學院,云南 昆明 650500)

        1 引言

        現(xiàn)如今,推薦系統(tǒng)在電子商務、視頻音樂和新聞媒體等在線平臺扮演著至關重要的角色[1]。序列推薦旨在通過用戶的歷史交互序列來抽取有意義的用戶偏好,從而預測用戶未來的行為演化趨勢[2]。這些用戶偏好通常會隨著時間的推移而迅速變化,并且不同的用戶之間是異構的,因此在歷史交互序列中精準地捕獲用戶的偏好是很困難的[3]。隨著用戶、項目和用戶-項目交互數(shù)量的激增,獲取這些用戶偏好變得越來越具有挑戰(zhàn)性?,F(xiàn)有的研究表明[4],基于自注意力機制的序列推薦算法可以較好地捕獲這些復雜的、多樣化的、不斷演化的用戶偏好。

        但是現(xiàn)有的基于自注意力機制的序列推薦算法都存在3個問題:(1)使用點積計算得到的注意力權重在感知項目上下文信息方面存在局限性[5],將用戶的交互序列嵌入矩陣直接輸入自注意力結構不能有效地利用各個交互項目在序列中的局部關聯(lián)信息。(2) 只依賴用戶交互序列中最近的交互項目的潛在特征計算目標項目的得分,這種方法顯著降低了先前交互項目對推薦結果的影響。(3)依照自然語言處理領域的簡單位置嵌入來探索用戶交互序列中的順序行為模式,這對于建模用戶行為的序列關系存在一定限制[6]。

        基于以上問題,本文提出融合序列局部信息的日期感知序列推薦算法,命名為Flida。該算法首先將當前交互項目及其部分前項作為輸入,通過垂直卷積獲得與序列局部信息融合的當前交互項目的表示。垂直卷積使用不同的垂直過濾器融合交互項目在交互序列中的多種局部關聯(lián)信息,隨后作為自注意力結構的輸入。為了捕獲用戶所有的歷史交互項目和目標項目的關系,Flida沒有使用傳統(tǒng)的利用用戶交互序列中最近的行為表征和目標項目嵌入的點積來計算項目得分的方式,而是利用交叉注意力機制[7],基于所有歷史交互項目的行為表征計算目標項目的最終得分,從而進行項目推薦。與此同時,為了更好地建模用戶行為的序列關系,Flida充分利用用戶交互發(fā)生的日期信息?,F(xiàn)有研究指出,交互發(fā)生的時間戳的值充滿了信息[8]。因此,Flida將用戶交互行為發(fā)生的時間戳轉化為日期融入自注意力的運算中。

        本文的主要工作有以下幾點:

        (1)本文提出了序列推薦算法Flida,利用垂直卷積充分融合各個項目在交互序列中的局部關聯(lián)信息。

        (2) Flida利用交叉注意力機制聯(lián)合用戶所有的歷史交互項目做出下一項推薦,同時使用各交互行為的時間戳作為絕對時間嵌入。

        (3)本文展示了Flida算法在多個公開數(shù)據(jù)集上的實驗結果,并與具有代表性的基線算法進行比較。實驗結果表明,該算法在不同的評估指標上較基線算法均有一定程度的提升。本文還進行了全面的消融實驗,用以展示算法中各組件對算法預測性能的影響。

        2 相關研究

        現(xiàn)有推薦算法大致可以分為以下3類:

        (1)傳統(tǒng)推薦算法。協(xié)同過濾CF(Collaborative Filtering)是推薦算法領域的經(jīng)典算法之一,基于協(xié)同過濾的算法從用戶的歷史交互行為推斷用戶偏好[9]。矩陣分解MF(Matrix Factorization)是一種成功的協(xié)同過濾算法,它使用一個共享空間來表示用戶和項目,并通過用戶和項目嵌入之間的向量內(nèi)積來估計交互的可能性[10]。然而,傳統(tǒng)的協(xié)同過濾方法雖然有結構簡單和易于訓練的優(yōu)點,但忽略了用戶偏好的多變性,且在數(shù)據(jù)稀疏的情況下易受影響。

        (2)序列推薦算法。序列推薦算法旨在抽取用戶交互的項目序列中的項目轉換模式,避免了傳統(tǒng)推薦算法的弊端?;隈R爾科夫鏈MC (Markov Chain)的序列推薦算法最先開始捕獲這種轉換模式,這種算法假設用戶的下一個行為與之前的一個或幾個行為相關[11],因為最后訪問的項目通常是影響用戶下一個行為的關鍵因素。但是該算法顯然無法捕獲用戶的長期偏好。Hidasi等人[12]提出的基于循環(huán)神經(jīng)網(wǎng)絡RNN (Recurrent Neural Network)的GRU4Rec(Gated Recurrent Unit for Recommender system)在每個時間步將最后一個步驟的隱藏狀態(tài)和當前的交互項目作為輸入,這種依賴關系可以使算法捕獲用戶的長期偏好,但卻導致GRU4Rec無法并行訓練,并且難以權衡用戶長期偏好和短期偏好。Tang等人[13]提出的基于卷積神經(jīng)網(wǎng)絡CNN(Convolutional Neural Network)的Caser進一步提升了序列推薦的準確性。Caser將最近的交互序列按照時間順序嵌入到“圖像”的潛在表示空間中,分別使用水平過濾器和垂直過濾器學習交互序列中的局部特征,提取項目轉換關系,該算法提供了一個統(tǒng)一且靈活的網(wǎng)絡結構,可以同時捕獲用戶的長期偏好和短期偏好,并在二者之間做出權衡。

        (3)基于自注意力機制的序列推薦算法。自注意力機制由于其良好的性能和可解釋性在許多領域(如機器翻譯)得到了廣泛的應用。Kang等人[4]提出的SASRec(Self-Attentive Sequential Recommendation)不使用任何循環(huán)神經(jīng)網(wǎng)絡或卷積神經(jīng)網(wǎng)絡結構,而是將自注意力機制引入到序列推薦,達到了較好的效果。但是,SASRec只對序列進行從左到右的單向建模,這限制了對用戶行為序列進行表示的能力[14]。Sun等人[14]提出的BERT4Rec(sequential Recommendation employing the deep Bidirectional Encoder Representations from Transformer to model user behavior sequences)使用深度的雙向自注意力機制建模用戶的行為序列,同時為了避免信息泄露使用了填空任務(Cloze Task)來代替單向模型中的預測目標。Gholami等人[15]提出的算法將循環(huán)神經(jīng)網(wǎng)絡與SASRec相結合,去除了對交互序列長度的限制,同時由于利用了RNN建立順序關系,也使其省略了位置嵌入的步驟,相對于SASRec和BERT4Rec,較大幅度地提升了性能。此外,Li等人[6]在SASRec的基礎上,將時間間隔納入自注意力機制,實現(xiàn)了序列推薦算法的時間感知,但后來Cho等人[8]提出的MEANTIME(MixturE of AtteNTIon mechanisms with Multi-temporal Embeddings)指出,其對時間信息的使用受限于單一的時間嵌入方案。因此在其基礎上,MEANTIME引入了多種絕對時間嵌入和相對時間嵌入來捕獲用戶行為序列中不同的行為模式[8]。它為每個注意力頭注入不同的時間嵌入,利用不同的注意力頭分別處理不同的時間嵌入,這使得每個注意力頭可以分別專注于特定的用戶行為模式,以更好地編碼用戶交互序列中交互項目的序列模式[8]。

        各序列推薦算法利用不同的神經(jīng)網(wǎng)絡和算法結構對用戶的交互序列進行建模,同時輔以各種優(yōu)化策略,并利用時間戳等信息作為輔助,達到了為用戶推薦感興趣的物品這一目的,展現(xiàn)出了優(yōu)秀的性能。但是,在用戶交互序列當中,各交互項目在局部的上下文關聯(lián)信息也至關重要。與此同時,基于用戶所有的歷史交互計算目標項目的得分更有利于統(tǒng)籌用戶的全局偏好。本文提出的Flida算法針對這2點,首先使用不同的垂直過濾器融合項目在交互序列中的多種局部關聯(lián)信息;其次利用交叉注意力機制,基于所有歷史交互項目的行為表征計算目標項目的偏好得分;最后為了更好地建模用戶行為的序列關系,Flida充分利用用戶交互發(fā)生的時間,將用戶交互行為發(fā)生的時間戳轉化為日期融入到注意力的運算中。

        3 Flida算法

        在本節(jié),首先描述序列推薦的目標任務,隨后介紹Flida的各個組件,包括項目嵌入、垂直卷積、注意力結構以及參數(shù)更新方法。Flida算法整體結構如圖1所示,其中,B表示自注意力結構的最大層數(shù),Add&Norm表示殘差連接和層歸一化,FFN(Feed-Forward Network)表示2層前饋神經(jīng)網(wǎng)絡。

        Figure 1 Flida algorithm structure

        3.1 問題描述

        3.2 項目嵌入

        3.3 融合序列局部信息

        在獲得交互序列的嵌入矩陣后,利用垂直卷積為每一個交互項目融合該項目在序列中的局部關聯(lián)上下文信息。如圖2所示,將交互項目的嵌入Ei與其前k-1個項目的嵌入Ei-k+1:i∈Rk×d作為垂直卷積運算的輸入,卷積結果即為該項目與序列局部信息融合的項的表示。垂直卷積運算使用垂直過濾器F∈Rk×1融合交互項目在序列中的局部關聯(lián)信息,如式(1)所示:

        (1)

        Figure 2 Fusing local information of sequence

        (2)

        其中Fj是F中的元素。

        為了融合各個交互項目的多種局部關聯(lián)信息,Flida采用多個不同的過濾器Fl∈Rk×1進行多次卷積,其中,1≤l≤L,L為垂直過濾器的個數(shù)。以此獲得不同維度之間更豐富的關聯(lián)信息,如式(3)所示:

        (3)

        (4)

        (5)

        將各個交互項目通過垂直卷積獲得的與局部關聯(lián)信息融合的表示堆疊起來,就得到了一個表示更豐富的新嵌入矩陣,如式(6)所示:

        C=concat(Ci)i=1:N

        (6)

        3.4 自注意力結構

        通過垂直卷積獲得了交互序列融合局部信息的表示,按照圖1所示,Flida算法將其作為自注意力結構的輸入,通過自注意力機制建模用戶動態(tài)行為偏好。自注意力機制使用的縮放點積自注意力機制[18]定義為式(7)所示:

        (7)

        先前的研究已經(jīng)表明,共同關注來自不同位置的不同表示子空間的信息是有益的[18],因此Flida采用多頭注意力機制。具體來說,多頭注意力機制首先通過不同的線性投影將項目表示投影到h個子空間中。但是,值得注意的是此處僅將融合局部信息的項目表示線性投影到查詢 (Q)和鍵 (K),而針對值(V)則使用項目嵌入產(chǎn)生的原始項目表示,如式(8)所示:

        (8)

        與此同時,Flida還維護一個可學習的時間嵌入表MD∈R|D|×d,其中包含了數(shù)據(jù)集交互時間跨度內(nèi)所有的日期嵌入。綜合衡量時間嵌入表的大小以及時間嵌入的有效性,選擇日期作為時間嵌入的尺度是合理的[8]。如果將時間嵌入精確到小時甚至分鐘,將會產(chǎn)生大量沒必要的計算。因此,Flida將用戶交互序列中交互的時間戳的日期按照時間嵌入表轉化為時間嵌入矩陣ED∈RN×d,然后將其線性投影到h個子空間中,如式(9)所示:

        (9)

        傳統(tǒng)的基于自注意力機制的算法采用簡單的絕對位置嵌入,即將項目嵌入矩陣和可學習的位置嵌入矩陣相加[4,14,17],而本文算法改為將時間嵌入矩陣投影到查詢和鍵之后再與項目嵌入的對應投影相加,如式(10)所示:

        (10)

        其中,Sm∈RN×(d/h),表示不同的注意力頭計算得出的用戶行為表征。隨后將不同的注意力頭輸出拼接起來,如式(11)所示:

        S=[S1;S2;…;Sh]

        (11)

        簡要來說,多頭注意力首先使用不同的、可學習的線性投影將項目和日期的嵌入投影到h個子空間中,然后并行地應用h個注意力頭來產(chǎn)生輸出表示,隨后將這些輸出表示拼接起來[14]。

        雖然自注意力機制能夠自適應地聚合之前所有的項目嵌入,但它仍然是一個線性算法,為了賦予算法非線性特性,并考慮不同潛在維度之間的相互作用[4],對所有Si輸入到參數(shù)共享的2層前饋神經(jīng)網(wǎng)絡FFN,如式(12)所示:

        Fi=FFN(Si)=

        ReLU(SiW1+b1)W2+b2

        (12)

        其中,W1,W2∈Rd×d為2層前饋神經(jīng)網(wǎng)絡的權重矩陣,b1,b2∈Rd為其相應的偏差向量,Si和Fi分別表示S和F中第i個項目的行為表征。

        最終,為了捕獲更具表現(xiàn)力的用戶行為表征,將堆疊多層自注意力結構[4],定義SA(F)=Attention(FWQ,FWK,FWV),第b(1≤b≤B)層自注意力結構定義如式(13)和式(14)所示:

        S(b)=SA(F(b-1))

        (13)

        (14)

        其中,S(1)=S,F(1)=F,且各自注意力結構的投影參數(shù)是不跨層共享的[14]。同時本文為了簡單起見,在此處省略了多頭注意力的表達式。與此同時,如圖1所示,Flida依照SASRec的操作,使用殘差連接[19]、層歸一化[20]和Dropout[21]來緩解算法過擬合和不穩(wěn)定的問題。

        3.5 交叉注意力結構

        受到自然語言處理領域Transformer[18]和圖像領域CrossViT[7]的啟發(fā),不同于以往只通過用戶交互序列中最近的行為表征和目標項目的點積計算相關性得分的方法,Flida使用一個單獨的交叉注意力結構來預測目標項目的偏好得分(如圖1所示),旨在捕獲用戶所有歷史交互項目的行為表征和目標項目之間的項目相關性。

        (15)

        其中,Om∈R|O|×(d/h)。該操作允許算法為目標項目生成不同的潛在表示,以捕獲用戶所有歷史交互項目的行為表征與目標項目嵌入之間的相互作用。隨后按照式(11)的方式將不同的注意力頭輸出拼接起來得到O∈R|O|×d。

        交叉注意力結構仍使用多頭注意力機制,是因為不同的注意力頭可以從不同的表示子空間中學習相關信息,實現(xiàn)不同的注意力分配,增加算法表達目標項目和用戶歷史行為之間相關性的能力,避免了單一注意力可能存在的局限性。

        最后將交叉注意力機制為各目標項目生成的潛在表示輸入一個前饋神經(jīng)網(wǎng)絡,并通過激活函數(shù)計算它們的項目相關性得分,如式(16)所示:

        (16)

        其中,權重矩陣WO∈Rd×1,如式(16)所示偏差向量bO∈R1,σ(·)表示Sigmoid激活函數(shù)。

        3.6 參數(shù)更新

        Flida的參數(shù)更新策略依照SASRec和RETR(REcommender TRansformer)[17]的參數(shù)更新方法,但與之不同的是,Flida的目標項目集由真值項和負值項2個等長的集合組成,真值項為輸入序列的右移位版本,負值項由隨機抽選的用戶從未交互的項目組成。值得注意的是,負值項的時間嵌入與其對應真值項的時間嵌入相同。

        最終,Flida使用二元交叉熵損失函數(shù)來進行參數(shù)更新,如式(17)所示:

        (17)

        3.7 算法描述

        Flida算法如算法1所示。

        算法1 融合序列局部信息的日期感知序列推薦算法Flida輸入:用戶交互序列Su,目標項目集O,交互時間戳。輸出:Top-N推薦列表。步驟1 將用戶交互序列轉換為固定長度為N的序列,并生成嵌入維度為d的項目嵌入矩陣;步驟2 使用垂直過濾器F∈Rk×1獲得交互項目的嵌入Ei與其前k-1個項目的嵌入融合后的嵌入矩陣C;步驟3 對步驟2得到的嵌入矩陣C和原始嵌入矩陣E使用不同的線性投影矩陣得到Qm,Km和Vm,并將交互時間戳的日期轉化為時間嵌入矩陣,并投影為QmD,KmD;步驟4 將項目嵌入及其時間嵌入投影得到的查詢和鍵對應相加,并進行縮放點積自注意力機制計算,然后將h個注意力頭輸出拼接后進行前饋神經(jīng)網(wǎng)絡計算;步驟5 在步驟4的基礎上堆疊多個注意力結構;步驟6 將目標項目嵌入及其時間嵌入投影為QmO和QmDO,相加后作為交叉注意力的查詢,將步驟5的輸出進行不同的投影后分別作為鍵和值,進行多頭注意力計算后拼接;步驟7 將步驟6所得結果輸入前饋神經(jīng)網(wǎng)絡,然后調(diào)用Sigmoid激活函數(shù)對其結果進行激活,最終得到目標項目的得分,生成Top-N推薦列表。

        4 實驗

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

        本文實驗分別在3個公開數(shù)據(jù)集上進行。Yelp是一個商業(yè)推薦數(shù)據(jù)集,由于它過于龐大,本文只使用2019年1月1日及其之后的交易記錄。Beauty和Sports都屬于亞馬遜評論數(shù)據(jù)集[22],是其中的2個子類。

        對于全部的數(shù)據(jù)集,本文按照用戶將交易記錄進行分組,并根據(jù)時間戳按照先后順序進行排序[4]。同時遵循其他研究中的操作,過濾掉不流行的項目和交互項目小于5個的用戶[23],并采用留一策略(leave-one-out),將每個用戶最近的2個交互項目分別作為測試集和驗證集,將之前的交互項目作為訓練集[24]。表1概括了各個數(shù)據(jù)集的統(tǒng)計數(shù)據(jù),值得注意的是,這3個數(shù)據(jù)集都有較高的稀疏性。

        Table 1 Dataset statistics

        4.2 對比算法

        將本文所提出的算法與以下算法進行對比:

        (1)GRU4Rec[12]:使用循環(huán)神經(jīng)網(wǎng)絡捕獲交互項目的順序依賴關系,并預測用戶的下一次交互。

        (2)Caser[13]:同時使用水平卷積和垂直卷積建模用戶的動態(tài)偏好。

        (3)HGN(Hierarchical Gating Network)[25]:采用分層的門控神經(jīng)網(wǎng)絡來獲取用戶的長期偏好和短期偏好。

        (4)SASRec[4]:使用單向的基于Transformer的結構建模用戶交互序列,進行下一項推薦。

        (5)BERT4Rec[14]:使用雙向的基于Transformer的結構并使用Cloze任務建模用戶交互序列,完成序列推薦任務。

        (6)FMLP-Rec(all-MLP model with learnable Filters for sequential Recommendation task)[23]:借鑒信號處理領域中的過濾算法來減少序列中的噪聲,緩解算法的過擬合問題。

        4.3 實現(xiàn)細節(jié)

        為了公平對比,所有的對比算法都使用對應作者提供的源代碼,各超參數(shù)和初始化策略均采納作者的建議,以便獲得最佳的結果。對于本文提出的算法,使用PyTorch來實現(xiàn),令最大序列長度N=50,嵌入維度d=64,在融合序列局部信息時令k=3,L=4,并且堆疊2層自注意力結構,同時令每層的注意力頭數(shù)h=4。每個數(shù)據(jù)集的隨機失活率都設置為0.5,使用Adam優(yōu)化器并令學習率為0.001,批大小設置為256。

        4.4 評估指標

        參照以往的研究方法,本文采用在該領域被廣泛使用的命中率HR@k(top-kHit Ratio)和歸一化累積增益NDCG@k(top-kNormalized Discounted Cumulative Gain)進行算法性能評估[24]。HR@k統(tǒng)計真值項目出現(xiàn)在前k個排序項目中的比例,而NDCG@k在HR@k的基礎上增加了位置感知的特性,真值項目在前k個項目中位置越靠前得分就越高。由于HR@1和NDCG@1是等價的[23],因此本文只給出HR@{1,10}和NDCG@10下的實驗結果。為了避免產(chǎn)生過大的計算量,針對每個用戶u∈U,此次實驗將真值項和隨機采樣的99個用戶沒有交互過的負值項一起排序,然后根據(jù)這100個項目的排序計算所有的評估指標[24]。

        4.5 實驗結果

        不同的算法在各數(shù)據(jù)集上的結果如表2所示?;谶@些實驗數(shù)據(jù),可以發(fā)現(xiàn):

        Table 2 Experimental results

        首先,SASRec和BERT4Rec利用自注意力機制,大幅提高了推薦準確度(通過評估指標HR@{1,10}和NDCG@10體現(xiàn))。相比基于循環(huán)神經(jīng)網(wǎng)絡的算法GRU4Rec、基于卷積神經(jīng)網(wǎng)絡的算法Caser和基于門控的算法HGN,無論是在歸一化HR和NDCG上性能均得到提升。一個廣泛認同的原因是,基于自注意力的算法能夠自適應捕獲不同用戶的行為演化模式,具有更強的序列特征建模能力[4]。

        其次,FMLP-Rec相比于SASRec和BERT4Rec,在一定程度上提升了推薦準確度。不同于SASRec和BERT4Rec,FMLP-Rec使用了全感知機結構編碼用戶交互序列,可以緩解噪聲信息對最終推薦結果的影響[23],在各個評估指標上均有較大幅度的提升。

        最后,通過將本文提出的Flida與對比算法進行比較,可以很明顯地觀察到,在各個數(shù)據(jù)集上,Flida的各個評估指標均優(yōu)于其他對比算法的。不同于其他算法,Flida使用不同的垂直過濾器融合交互項目的局部關聯(lián)信息,并使用交叉注意力機制基于用戶所有歷史交互的行為表征得到目標項目的得分,同時使用日期作為絕對時間嵌入。實驗結果表明,本文提出的算法Flida是有效的,可以在一定程度上提高序列推薦的準確度。

        4.6 消融實驗

        本節(jié)通過消融實驗對本文算法的各個模塊進行有效性驗證。

        首先構造Flida-1,移除垂直卷積,將序列嵌入直接輸入自注意力結構,同時保持其他設置不變。然后構造Flida-2,移除交叉注意力結構,通過計算目標項目與最近行為表征之間點積的方式計算項目得分,并保持其它設置不變。最后構造Flida-3,移除本文使用的基于日期的嵌入方式,改為使用普通的可學習的位置嵌入,并保持其它設置不變。

        將以上方式構造得到的算法變體分別在數(shù)據(jù)集Yelp上進行實驗,分別得到評估指標HR@10和HDCG@10的實驗結果。如表3所示,在移除垂直卷積模塊之后,Flida-1的2個評估指標均大幅下降,驗證了序列中每個項目融合局部信息對提升推薦準確度的有效性。Flida-2的實驗結果顯示,用戶先前的交互行為對當前的交互行為仍然有影響,利用用戶所有的歷史交互行為進行推薦是合理的。Flida-3只是利用了交互序列的順序性,并假設各交互序列之間的時間間隔是相等的,導致算法性能出現(xiàn)了輕度的下降。這說明在缺少時間戳信息的時候,可以使用位置嵌入作為替代方案。

        Table 3 Ablation experimental results表3 消融實驗結果

        4.7 算法細節(jié)分析

        為了研究超參數(shù)對算法的影響,本文將其中較重要的超參數(shù)設置為不同的值后進行一系列實驗。

        4.7.1 嵌入維度分析

        本節(jié)保持其它最優(yōu)超參數(shù)不變,將嵌入維度d的取值設置為16,32,64,128,256,在數(shù)據(jù)集Yelp上進行嵌入維度分析,給出在不同嵌入維度下各算法評估指標HR@10的變化趨勢圖,探索嵌入維度d對算法性能的影響,實驗結果如圖3所示。由于本文提出的算法是基于注意力機制和卷積神經(jīng)網(wǎng)絡的,所以此處只給出基于注意力機制和卷積神經(jīng)網(wǎng)絡的算法的實驗結果。

        Figure 3 Embedded dimension analysis

        觀察圖3可以發(fā)現(xiàn),隨著嵌入維度d的增加,算法的性能指標呈整體上升的趨勢。當嵌入維度d增加到一定程度后,算法的性能指標整體趨于收斂。由于存在過擬合現(xiàn)象,部分算法的實驗結果甚至出現(xiàn)了略微的下降。Flida在嵌入維度大于64之后命中率便不再出現(xiàn)明顯的增加,因此本文在4.3節(jié)采用64作為嵌入維度的大小。

        4.7.2 注意力頭數(shù)分析

        本節(jié)探索Flida中注意力頭數(shù)對推薦準確度的影響。保持其他超參數(shù)不變,將注意力頭數(shù)h的取值設為1,2,4,分別在各個數(shù)據(jù)集上依次進行實驗,獲取評估指標HR@10的值,實驗結果如表4所示。

        Table 4 HR@10 of Flida with different number of attention heads and filters

        從表4中可以看出,在數(shù)據(jù)集Sports和Yelp上,算法的推薦準確度隨著注意力頭數(shù)的增加而增加,在h=4時達到最高;但是在數(shù)據(jù)集Beauty上,則是在h=3時達到了最高,繼續(xù)增加反而造成了推薦準確度的略微下降。即除了數(shù)據(jù)集Beauty以外,其余的數(shù)據(jù)集均在h=4時達到最高性能,這也許是由于數(shù)據(jù)集的稀疏性造成的,因為數(shù)據(jù)集Beauty的數(shù)據(jù)稀疏性要略低于其余2個數(shù)據(jù)集。本文將算法的h默認值設置為4。

        4.7.3 垂直過濾器個數(shù)分析

        本節(jié)研究Flida中融合序列多種局部信息的垂直過濾器個數(shù)對推薦準確度的影響。保持其他超參數(shù)不變,將垂直過濾器的個數(shù)L分別設置為2,4,8,在各數(shù)據(jù)集上進行實驗,獲取評估指標HR@10的值,實驗結果如表4所示。

        從表4中可以看出,算法的推薦準確度隨著過濾器個數(shù)的增加而增加。但是,當過濾器的個數(shù)達到8 時,算法的性能并沒有大幅增長,但是卻造成了訓練時長的大幅增加。這是因為隨著過濾器個數(shù)增加,融合各個過濾器卷積結果的前饋神經(jīng)網(wǎng)絡中的權重矩陣維度也大幅增加,因此本文算法中L的默認值設置為4。

        5 結束語

        本文充分考慮用戶交互序列中的局部關聯(lián)信息,利用垂直卷積融合各個交互項目在交互序列中的局部關聯(lián)信息,并利用交叉注意力機制基于用戶所有歷史交互的行為表征做出下一項推薦,同時使用各交互行為發(fā)生的日期作為絕對時間嵌入,充分挖掘用戶交互序列中隱藏的用戶偏好,使推薦結果更加準確,提升推薦系統(tǒng)的用戶體驗。本文最后的實驗結果驗證了本文算法的有效性。在未來的工作中,針對用戶的不同行為(例如點贊、添加購物車、收藏等行為)進行建模也是一個有價值的研究方向。

        猜你喜歡
        過濾器注意力卷積
        讓注意力“飛”回來
        基于3D-Winograd的快速卷積算法設計及FPGA實現(xiàn)
        從濾波器理解卷積
        電子制作(2019年11期)2019-07-04 00:34:38
        支持過濾器的REST模型研究與實現(xiàn)
        電子測試(2018年9期)2018-06-26 06:45:56
        聲音過濾器
        趣味(語文)(2018年2期)2018-05-26 09:17:55
        基于傅里葉域卷積表示的目標跟蹤算法
        “揚眼”APP:讓注意力“變現(xiàn)”
        傳媒評論(2017年3期)2017-06-13 09:18:10
        A Beautiful Way Of Looking At Things
        一種基于卷積神經(jīng)網(wǎng)絡的性別識別方法
        電視技術(2014年19期)2014-03-11 15:38:20
        基于LOGO!的空氣過濾器自潔控制系統(tǒng)
        自動化博覽(2014年6期)2014-02-28 22:32:20
        在办公室被c到呻吟的动态图| 69精品免费视频| 国产手机在线αⅴ片无码| 亚洲AV秘 无码一区二区久久| 国产免费人成网站在线播放| 在线久草视频免费播放| 内射爆草少妇精品视频| 人妻诱惑中文字幕在线视频| 男女猛烈拍拍拍无挡视频| 99国产精品无码| 毛茸茸性xxxx毛茸茸毛茸茸| 久久免费大片| 玖玖资源站无码专区| 五十路一区二区中文字幕| 日本亚洲中文字幕一区| 精品国产品香蕉在线| 国产成人亚洲精品无码av大片| 在线亚洲欧美日韩精品专区| 国产成人国产在线观看入口| 69天堂国产在线精品观看| 国产高清一区在线观看| 国产精品久久三级精品| 精品国产自在现线看久久| 亚洲 卡通 欧美 制服 中文| 97se亚洲国产综合自在线图片 | 少妇无套裸按摩呻吟无呜| 免费a级毛片无码a∨男男| 亚洲日韩区在线电影| 亚洲一道一本快点视频| 偷拍一区二区三区四区| 7777色鬼xxxx欧美色妇| 另类内射国产在线| 亚洲公开免费在线视频| 久久91精品国产一区二区| 亚洲人成无码区在线观看| 久久aⅴ无码一区二区三区| 日韩av在线不卡一二三区| 国产小视频在线看不卡| 免费大黄网站| 亚洲精品美女久久久久久久 | 偷看农村妇女牲交|