• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      融合用戶興趣漂移的Top-N推薦算法

      2021-08-04 03:20:48劉浩翰馬曉璐賀懷清
      關(guān)鍵詞:步長向量建模

      劉浩翰,馬曉璐,賀懷清

      (中國民航大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,天津 300300)

      當(dāng)今時(shí)代,互聯(lián)網(wǎng)技術(shù)的蓬勃發(fā)展促使大量龐雜無序信息的快速更迭,使得用戶興趣變幻不定,難以捉摸。因此,如何利用用戶興趣漂移的規(guī)律準(zhǔn)確建模,向用戶進(jìn)行滿足時(shí)間漂移特性的推薦,正成為目前個(gè)性化推薦研究中的熱點(diǎn)和難點(diǎn)。

      基于矩陣分解的推薦算法是推薦領(lǐng)域成熟、高效的算法,對(duì)用戶和項(xiàng)目信息中的隱含結(jié)構(gòu)進(jìn)行建模能夠挖掘更深層次的用戶和項(xiàng)目關(guān)系。Koren 等[1]認(rèn)為隱式反饋信息有助于用戶的偏好建模,從而提出了基于奇異值分解的SVD(sigular value decomposition)++方法,但該方法是基于用戶興趣和項(xiàng)目屬性是靜態(tài)的假設(shè),與現(xiàn)實(shí)不符。Koren[2]又提出了使用時(shí)間信息的Time SVD++(temporal dynamics at SVD++)方法,把4 類隨時(shí)間變化的用戶和項(xiàng)目因素建模成時(shí)間函數(shù),得到了很好的推薦效果,但該模型的計(jì)算成本很高,也不能夠預(yù)測(cè)用戶未來的行為。Steffen 等[3]提出的BPRMF(Bayesian personalized ranking matrix factorization)算法是基于貝葉斯后驗(yàn)優(yōu)化的個(gè)性化排序算法,針對(duì)兩個(gè)項(xiàng)目的相對(duì)偏好排序進(jìn)行建模,最終為每個(gè)用戶計(jì)算其負(fù)例項(xiàng)目的偏好排序。盡管矩陣分解非常有吸引力,但沒有明確考慮數(shù)據(jù)的時(shí)間變化,因此,更多研究者關(guān)注于使用循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN,recurrent neural network)來建模推薦系統(tǒng)中的時(shí)間動(dòng)態(tài),且獲得了高質(zhì)量的推薦效果。Wu 等[4]提出了基于RNN 進(jìn)行時(shí)序性建模,考慮到時(shí)間序列數(shù)據(jù)和現(xiàn)實(shí)中的因果關(guān)系,嚴(yán)格按照評(píng)分發(fā)生的時(shí)間順序劃分?jǐn)?shù)據(jù)集,根據(jù)歷史評(píng)分?jǐn)?shù)據(jù)預(yù)測(cè)將來的用戶偏好。Hidasi 等[5]提出的GRU4Rec(four gated recurrent unit for recommendation)是將RNN 運(yùn)用于基于會(huì)話的推薦,單純地使用門控循環(huán)單元對(duì)用戶的項(xiàng)目序列進(jìn)行訓(xùn)練,而沒有考慮到項(xiàng)目本身的動(dòng)態(tài)性。

      為了兼顧用戶的長期興趣和短期興趣漂移,提出一種新的推薦算法,以長短期記憶網(wǎng)絡(luò)(LSTM,long short term memory)為核心,使用矩陣分解對(duì)用戶的長期興趣進(jìn)行建模,通過LSTM 基于當(dāng)前趨勢(shì)預(yù)測(cè)用戶未來的短期興趣,將注意力機(jī)制納入LSTM 隱藏狀態(tài)的表示中來捕獲用戶長短期興趣的關(guān)系,從用戶歷史行為數(shù)據(jù)中獲取用戶長期興趣對(duì)短期興趣的不同影響,并在兩個(gè)公開數(shù)據(jù)集上通過與其他流行算法比較分析驗(yàn)證該算法的有效性和準(zhǔn)確性。

      1 推薦算法模型構(gòu)建

      用戶的興趣可分為即時(shí)變化的短期興趣和相對(duì)穩(wěn)定的長期興趣。基于LSTM 對(duì)用戶短期興趣漂移建模,用矩陣分解的固定向量來表示用戶的長期興趣,并加入注意力機(jī)制來獲取用戶長期興趣的隱向量因子對(duì)短期興趣的影響。最終為用戶生成一個(gè)Top-N 推薦列表(Top-N recommendation)。方法的整體結(jié)構(gòu)如圖1 所示,共分為模型輸入、矩陣分解、構(gòu)建加入注意力層的LSTM、模型輸出并生成Top-N 推薦列表4 步,具體描述如下。

      圖1 用戶興趣漂移推薦模型Fig.1 Recommendation model of user′s interest drift

      1.1 用戶的短期興趣

      用戶近期的交互數(shù)據(jù)反映了用戶當(dāng)前時(shí)期的興趣變化,因LSTM 特殊的結(jié)構(gòu),可以根據(jù)時(shí)序數(shù)據(jù)的歷史信息獲取其動(dòng)態(tài)變化的特征來預(yù)測(cè)未來狀態(tài),因此使用LSTM 對(duì)用戶近期的歷史行為數(shù)據(jù)進(jìn)行建模。

      1.1.1 用戶短期興趣表示

      定義用戶集合U={u1,u2,…,um}和項(xiàng)目集合V={v1,v2,…,vn},且|U|=m,|V|=n由此可以生成1 個(gè)稀疏的用戶-項(xiàng)目評(píng)分矩陣R∈Rm×n,評(píng)分矩陣R中的每項(xiàng)rij,t表示在時(shí)間步長t用戶ui給項(xiàng)目vj的打分,將評(píng)分rij,t視為用戶ui和項(xiàng)目vj在時(shí)間步長t的相關(guān)性。Pui t∈Rn表示給定用戶ui∈U在時(shí)間步長t的評(píng)分向量,xuivj,t =r表示用戶ui在時(shí)間步長t給項(xiàng)目vj的評(píng)分為r,則用戶ui的評(píng)分序列可以表示為。假定用戶ui在時(shí)間步長t的短期興趣可以從近期時(shí)間內(nèi)獲得,則用戶ui在時(shí)間步長t內(nèi)的短期興趣變化(從0 到t)可以表示如下

      在現(xiàn)實(shí)中,不僅是用戶的興趣會(huì)隨時(shí)間變化,項(xiàng)目的屬性也會(huì)隨時(shí)間變化,因此,對(duì)項(xiàng)目也采用相同的處理方式。Qvj t∈Rm表示給定項(xiàng)目vj∈V在時(shí)間步長t的評(píng)分向量,表示項(xiàng)目vj在時(shí)間步長t被用戶ui評(píng)分為r,則項(xiàng)目序列可以表示為。項(xiàng)目在時(shí)間步長內(nèi)的短期屬性變化為

      式中:Wa∈Rm×D和Wb∈Rn×D分別是用戶和項(xiàng)目的參數(shù)投影矩陣;D是低維稠密向量的維數(shù);τt表示對(duì)每個(gè)時(shí)間步長t的評(píng)分向量提取的特征向量。

      1.1.2 長短期記憶網(wǎng)絡(luò)

      基于RNN 的推薦算法可以根據(jù)用戶的歷史狀態(tài)預(yù)測(cè)未來的行為,使用RNN 的主要目的是捕獲用戶和項(xiàng)目的時(shí)變狀態(tài)[6]。RNN 中的LSTM 可以充分利用歷史信息提取到用戶和項(xiàng)目的最新狀態(tài)。LSTM 由1個(gè)存儲(chǔ)單元ct、1 個(gè)輸入門it、1 個(gè)遺忘門ft和1 個(gè)輸出門ot組成,這些門根據(jù)前一時(shí)刻的隱藏狀態(tài)ht-1和當(dāng)前輸入xt計(jì)算得出

      式中:σ 是激活函數(shù);W 是隱藏層之間的權(quán)重矩陣。

      存儲(chǔ)單元ct的更新一部分來自丟棄現(xiàn)有的信息,另一部分是新的候選向量的加入

      LSTM 單元更新后,t 時(shí)刻的隱藏狀態(tài)就變?yōu)?/p>

      因此,t 時(shí)刻的LSTM 的隱藏狀態(tài)更新為

      式中,hui,t和hvj,t分別表示用戶ui和項(xiàng)目vj在時(shí)間步長t 的隱藏狀態(tài)。由此可獲得用戶的短期興趣表示。

      1.2 用戶的長期興趣

      對(duì)于用戶的長期興趣和項(xiàng)目的靜態(tài)屬性使用矩陣分解算法。矩陣分解把用戶和項(xiàng)目都映射到一個(gè)K維空間上,每個(gè)用戶和項(xiàng)目都對(duì)應(yīng)一個(gè)隱向量,用戶隱向量代表用戶的長期興趣,而項(xiàng)目隱向量則表示其自身被關(guān)注的靜態(tài)屬性,用戶和項(xiàng)目隱向量的內(nèi)積就是用戶的長期興趣,即

      式中:Vj∈RK為項(xiàng)目vj的隱向量;Ui∈RK為用戶ui的隱向量;bui是用戶ui的興趣偏置;bvj是項(xiàng)目vj的屬性偏置。

      1.3 用戶長短期興趣關(guān)聯(lián)

      用戶的長短期興趣有一定相關(guān)性。用戶的長期興趣很大程度上決定了其短期興趣,而用戶的短期興趣也有可能發(fā)展為穩(wěn)定的長期興趣。注意力機(jī)制可高效地在眾多信息中獲取任務(wù)目標(biāo)最關(guān)鍵的信息,因此,加入注意力機(jī)制來獲取用戶長期興趣的隱向量因子對(duì)短期興趣的影響[7-9]。

      在t 時(shí)刻,對(duì)于RNN 的當(dāng)前隱藏狀態(tài),通過計(jì)算當(dāng)前隱藏狀態(tài)與目標(biāo)狀態(tài)的對(duì)齊可能性,得到每個(gè)隱藏狀態(tài)的權(quán)重系數(shù),然后對(duì)其進(jìn)行加權(quán)求和,即可得到最終注意力分配概率的分配數(shù)值。

      注意力機(jī)制的具體計(jì)算過程可分為兩步,第1 步是計(jì)算目標(biāo)狀態(tài)中各元素的匹配權(quán),即

      具體地,針對(duì)研究的問題,首先將hui,t-1和hvj,t-1輸入到激活函數(shù)中得到的結(jié)果sui,t-1和svj,t-1作為hui,t-1和hvj,t-1的隱含表示

      式中:Wc、Wd為神經(jīng)網(wǎng)絡(luò)中的權(quán)重矩陣;bc、bd為偏置項(xiàng)。

      αui,t和βvj,t分別是用戶ui和項(xiàng)目vj在時(shí)間步長t的歸一化權(quán)重矩陣,代表用戶長期興趣和項(xiàng)目靜態(tài)屬性中每個(gè)隱向量因子的權(quán)重,元素表示如下

      式中:K 是用戶和項(xiàng)目隱向量映射空間的維數(shù);σ 是激活函數(shù)。

      用cui,t和cvj,t分別表示時(shí)間步長t 的用戶ui和項(xiàng)目vj的上下文向量,即用戶長短期興趣之間的聯(lián)系。上下文向量cui,t和cvj,t更新LSTM 隱藏狀態(tài)的輸入計(jì)算來確保每個(gè)時(shí)間步長中LSTM 都能獲得完整的上下文信息,計(jì)算如下

      通過上一時(shí)間步長的隱層狀態(tài)獲取的上下文向量來更新當(dāng)前隱層狀態(tài),計(jì)算如下

      1.4 用戶長短期興趣模型

      前兩節(jié)中已經(jīng)獲取了用戶的長期興趣和短期興趣,將最終的打分函數(shù)定義如下

      式中:hui,t和hvj,t為通過式(19)和式(20)得到的用戶ui和項(xiàng)目vj在時(shí)間步長t由LSTM 學(xué)習(xí)到的隱藏狀態(tài),內(nèi)積hui,t·hvj,t表示用戶和項(xiàng)目的動(dòng)態(tài)相關(guān)性;Ui和Vj是通過式(10)得到的用戶ui和項(xiàng)目vj全局隱向量,內(nèi)積Ui·Vj是用戶ui和vj項(xiàng)目的靜態(tài)相關(guān)性;bui是用戶ui的興趣偏置;bvj是項(xiàng)目vj的屬性偏置。

      將得到的打分函數(shù)rij,t經(jīng)過Softmax 函數(shù)得到最終用戶ui和項(xiàng)目vj相關(guān)性的概率函數(shù)P(ui,vj|t),用來表示項(xiàng)目vj在時(shí)間步長t出現(xiàn)在用戶ui的項(xiàng)目列表中的概率,即

      采用Pairwise 方法來生成排名[10-11]。對(duì)于每個(gè)用戶ui,為其提供一個(gè)已標(biāo)注的項(xiàng)目集合Vn={〈vj,vk〉|vj>vk},vj>vk表示vj比vk有更大的相關(guān)性,vj來自用戶項(xiàng)目的正例集合,vk是針對(duì)每個(gè)正例vj的負(fù)例集合進(jìn)行采樣得到的負(fù)樣本。損失函數(shù)使用交叉熵來平衡正負(fù)樣本的分布差異,計(jì)算如下

      式中:n是項(xiàng)目個(gè)數(shù);yj表示用戶ui與vj項(xiàng)目是否發(fā)生交互,對(duì)于項(xiàng)目vj∈V,如果項(xiàng)目確實(shí)存在于真實(shí)數(shù)據(jù)集中,則yj=1,否則yj=0。Θ 表示模型中所有需要學(xué)習(xí)的參數(shù),Θ={U,V,Wa,Wb,Wc,Wd,bc,bd,bui,bvj}。參數(shù)選用L2 正則化項(xiàng)控制模型的復(fù)雜度,防止模型過擬合。

      2 實(shí)驗(yàn)評(píng)估

      2.1 數(shù)據(jù)集和參數(shù)設(shè)置

      為了驗(yàn)證模型的有效性,在ML-100K 和Yelp 兩個(gè)真實(shí)數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),如表1 所示。將整個(gè)數(shù)據(jù)集依據(jù)時(shí)間劃分訓(xùn)練集和測(cè)試集,給定時(shí)間步長分別析取出用戶和項(xiàng)目的交互序列來模擬需要預(yù)測(cè)未來評(píng)分的實(shí)際情況。

      表1 數(shù)據(jù)集統(tǒng)計(jì)特征Tab.1 Statistical characteristics of datasets

      ML-100K 和Yelp 的矩陣分解向量維數(shù)K分別設(shè)置為15 和20,LSTM 的神經(jīng)元個(gè)數(shù)為40,嵌入層向量維數(shù)D=10,采用7 d 的時(shí)間粒度,時(shí)間步長t=4,由此將1 mon 的用戶交互序列作為1 次會(huì)話輸入,正則化參數(shù)λ=0.2,采用隨機(jī)梯度下降(SGD,stochastic gradient descent)算法優(yōu)化參數(shù),學(xué)習(xí)速率為0.001。

      2.2 評(píng)估指標(biāo)

      為了評(píng)價(jià)模型的推薦效果,以準(zhǔn)確率、平均倒數(shù)排名(MRR,mean reciprocal rank)、平均精度均值(MAP,mean average precision)和歸一化折損累計(jì)增益(NDCG,normalized discounted cumulative gain)作為推薦結(jié)果的評(píng)估指標(biāo)。準(zhǔn)確率反映了用戶喜歡的項(xiàng)目命中的概率,MRR、MAP、NDCG 都反映了推薦結(jié)果中用戶喜歡的項(xiàng)目的占比和排名情況。

      1)準(zhǔn)確率

      式中:Relu是測(cè)試集中用戶u的項(xiàng)目集合;Recu是推薦給用戶u的Top-N 推薦列表;K表示Top-N 推薦列表中取前K個(gè)項(xiàng)目。

      2)平均倒數(shù)排名

      式中Rank(u)是用戶u的Top-N 推薦列表中第1 個(gè)命中的項(xiàng)目的排名。

      3)平均精度均值

      首先計(jì)算每個(gè)用戶的平均精度

      式中:I 為用戶u 的Top-N 推薦列表中命中的項(xiàng)目集合;Rec(u,v)是項(xiàng)目v 在用戶u 的Top-N 推薦列表中的排名;Rel(u,v)是測(cè)試集中項(xiàng)目v 在用戶u 的項(xiàng)目集合中的排名。

      然后對(duì)所有用戶的AP 求均值,即

      4)歸一化折損累計(jì)增益

      其中

      式中,Reli表示項(xiàng)目是否命中,取值為0 或1;K 表示Top-N 推薦列表中取前K 個(gè)項(xiàng)目。

      DCG 反映了Top-N 推薦列表中推薦結(jié)果中命中的項(xiàng)目排名情況,推薦結(jié)果中與真實(shí)數(shù)據(jù)集(測(cè)試集)相關(guān)性強(qiáng)的項(xiàng)目排名靠前的推薦效果越好,DCG 越大。IDCG 是理想化的DCG,即返回最好的推薦結(jié)果,即

      2.3 實(shí)驗(yàn)及結(jié)果分析

      為評(píng)估提出的用戶動(dòng)態(tài)行為建模算法,實(shí)驗(yàn)分為算法對(duì)比實(shí)驗(yàn)和模型參數(shù)實(shí)驗(yàn)。前者選取了3 個(gè)推薦算法BPRMF、GRU4Rec、RRN 與所提算法的推薦結(jié)果進(jìn)行比較,后者對(duì)所提算法在時(shí)間劃分的不同方式對(duì)推薦結(jié)果的影響進(jìn)行了測(cè)試。

      2.3.1 算法推薦性能對(duì)比

      實(shí)驗(yàn)中在兩個(gè)數(shù)據(jù)稠密度不同的數(shù)據(jù)集上采用P5、P10、NDCG5、NDCG10、MAP、MRR 評(píng)估算法,實(shí)驗(yàn)重復(fù)10 次,采用平均值作為最后的實(shí)驗(yàn)結(jié)果,如表2 所示。

      表2 算法推薦性能對(duì)比Tab.2 Comparison of recommending performance of algorithms

      由表2 可看出,所提算法在各個(gè)指標(biāo)的綜合性能上都要優(yōu)于其他算法。BPRMF 雖然引入了最大后驗(yàn)估計(jì)假設(shè)提高了用戶個(gè)性化推薦效果,但本質(zhì)上還是矩陣分解算法,是以用戶和項(xiàng)目狀態(tài)都是靜態(tài)屬性為前提。GRU4Rec 雖然利用了時(shí)間信息對(duì)用戶的點(diǎn)擊行為進(jìn)行建模,但僅考慮了用戶的興趣會(huì)發(fā)生漂移,而忽略了項(xiàng)目的狀態(tài)也隨時(shí)間動(dòng)態(tài)變化。RRN 綜合考慮了用戶和項(xiàng)目的狀態(tài)都隨時(shí)間動(dòng)態(tài)變化,對(duì)兩者分別建模,但是建模方法較為粗糙,沒有考慮到用戶和項(xiàng)目狀態(tài)的長短期關(guān)聯(lián)性。而所提算法結(jié)合用戶和項(xiàng)目的動(dòng)態(tài)和靜態(tài)屬性,并通過注意力機(jī)制平衡長短期屬性的相互制約,高效地對(duì)用戶和項(xiàng)目狀態(tài)進(jìn)行了動(dòng)態(tài)建模。

      2.3.2 時(shí)間劃分對(duì)推薦結(jié)果的影響

      所提算法是基于用戶最近時(shí)期的交互數(shù)據(jù)來獲取用戶的興趣漂移,時(shí)間粒度和時(shí)間步長對(duì)算法性能有重要的影響。因此進(jìn)行了兩項(xiàng)測(cè)試,一是時(shí)間粒度相同,不同時(shí)間步長對(duì)算法性能的影響,如圖2 所示(對(duì)于ML-100K 數(shù)據(jù)集,時(shí)間粒度相同,時(shí)間步長分別取1、4、6、10、12);二是相同時(shí)間窗口,不同時(shí)間步長和時(shí)間粒度對(duì)算法性能的影響,如表3 所示。

      表3 時(shí)間粒度和時(shí)間步長對(duì)推薦結(jié)果的影響Tab.3 Recommendation results with different time granularitites and time steps

      圖2 時(shí)間步長對(duì)推薦結(jié)果的影響Fig.2 Recommendation results with different time steps

      由圖2 可知,時(shí)間步長取值對(duì)推薦結(jié)果有重要影響。實(shí)驗(yàn)結(jié)果表明隨著LSTM 中輸入的時(shí)間信息增多,推薦精度也在升高,但是訓(xùn)練時(shí)間也相應(yīng)在增加,所以需要權(quán)衡時(shí)間開銷和推薦精度。

      由表3 可知,在每個(gè)時(shí)間步長內(nèi)時(shí)間粒度的劃分會(huì)使推薦結(jié)果大不相同。在相同時(shí)間內(nèi)采用較小的時(shí)間粒度結(jié)果較差,這是由于時(shí)間劃分過細(xì),在每個(gè)時(shí)間步長內(nèi)獲取的序列信息較少,LSTM 沒有充分的序列信息去學(xué)習(xí),從而無法獲得用戶和項(xiàng)目動(dòng)態(tài)變化的趨勢(shì)。用戶和項(xiàng)目采用不同的時(shí)間粒度,項(xiàng)目采用較大的時(shí)間粒度推薦結(jié)果比時(shí)間粒度小時(shí)要好,這是由于項(xiàng)目的屬性相對(duì)較穩(wěn)定,一定時(shí)期內(nèi)變化較小,對(duì)時(shí)間粒度劃分不敏感,時(shí)間范圍擴(kuò)大時(shí)才能體現(xiàn)出項(xiàng)目的動(dòng)態(tài)變化,而用戶的情況則相反,由于用戶的興趣變化較頻繁,采用較大的時(shí)間粒度會(huì)使推薦精度下降。

      3 結(jié)語

      基于LSTM 的推薦算法通過對(duì)用戶和項(xiàng)目狀態(tài)的靜態(tài)和動(dòng)態(tài)建模,增強(qiáng)了算法對(duì)用戶興趣的理解能力,引入了注意力機(jī)制增強(qiáng)了模型對(duì)用戶和項(xiàng)目靜態(tài)和動(dòng)態(tài)屬性時(shí)間關(guān)聯(lián)性的捕捉,在兩個(gè)真實(shí)數(shù)據(jù)集上進(jìn)行的實(shí)驗(yàn),結(jié)果表明,所提算法能夠有效改進(jìn)推薦結(jié)果,滿足用戶個(gè)性化需求。

      猜你喜歡
      步長向量建模
      向量的分解
      基于Armijo搜索步長的BFGS與DFP擬牛頓法的比較研究
      聚焦“向量與三角”創(chuàng)新題
      聯(lián)想等效,拓展建?!浴皫щ娦∏蛟诘刃?chǎng)中做圓周運(yùn)動(dòng)”為例
      基于PSS/E的風(fēng)電場(chǎng)建模與動(dòng)態(tài)分析
      電子制作(2018年17期)2018-09-28 01:56:44
      不對(duì)稱半橋變換器的建模與仿真
      向量垂直在解析幾何中的應(yīng)用
      向量五種“變身” 玩轉(zhuǎn)圓錐曲線
      基于逐維改進(jìn)的自適應(yīng)步長布谷鳥搜索算法
      一種新型光伏系統(tǒng)MPPT變步長滯環(huán)比較P&O法
      桓仁| 吉隆县| 林芝县| 瑞金市| 安陆市| 遂昌县| 江源县| 盐津县| 策勒县| 永德县| 湄潭县| 巴林右旗| 邓州市| 河曲县| 平罗县| 南汇区| 泌阳县| 全州县| 盐边县| 百色市| 云霄县| 将乐县| 丰台区| 多伦县| 洞口县| 西贡区| 西乡县| 永城市| 花垣县| 七台河市| 五家渠市| 交口县| 连平县| 汝阳县| 买车| 余庆县| 广河县| 沅江市| 韩城市| 浑源县| 呼和浩特市|