国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

結(jié)合用戶長(zhǎng)短期興趣的深度強(qiáng)化學(xué)習(xí)推薦方法

2021-10-12 04:52:56閻世宏馬為之劉奕群馬少平
中文信息學(xué)報(bào) 2021年8期
關(guān)鍵詞:物品框架建模

閻世宏,馬為之,張 敏,劉奕群,馬少平

(清華大學(xué) 計(jì)算機(jī)系 北京信息科學(xué)與技術(shù)國家研究中心,北京 100084)

0 引言

隨著信息技術(shù)的快速發(fā)展,互聯(lián)網(wǎng)中的信息總量激增與用戶有限的認(rèn)知能力間的矛盾構(gòu)成了嚴(yán)重的信息過載問題。推薦系統(tǒng)作為一種個(gè)性化服務(wù),能夠向用戶主動(dòng)推薦其感興趣的信息、商品等(以下統(tǒng)稱“物品”)來緩解信息過載問題。近年來,推薦系統(tǒng)已被廣泛應(yīng)用于電子商務(wù)、電影音樂、新聞推薦、社交網(wǎng)絡(luò)等多個(gè)場(chǎng)景。

在推薦系統(tǒng)研究中,如何準(zhǔn)確刻畫用戶興趣是最重要的一步。在真實(shí)場(chǎng)景下,用戶興趣是非常復(fù)雜且多變的。一方面,用戶會(huì)有長(zhǎng)期的偏好與興趣,在相當(dāng)長(zhǎng)的一段時(shí)間內(nèi)保持穩(wěn)定。另一方面,用戶在一個(gè)時(shí)間段內(nèi)可能對(duì)部分內(nèi)容更感興趣,隨著時(shí)間推移產(chǎn)生實(shí)時(shí)的需求與興趣點(diǎn)。因此,從長(zhǎng)期與短期兩個(gè)角度學(xué)習(xí)用戶的潛在興趣對(duì)提高推薦系統(tǒng)的性能非常重要。

深度強(qiáng)化學(xué)習(xí)(DRL)[1-2]自提出以來在多種具有挑戰(zhàn)性的連續(xù)決策場(chǎng)景中展現(xiàn)出巨大優(yōu)勢(shì)。在推薦場(chǎng)景中,深度強(qiáng)化學(xué)習(xí)能夠?qū)崟r(shí)學(xué)習(xí)用戶的潛在興趣,并且能夠交互式地更新用戶的潛在興趣表示與推薦策略。除此之外,深度強(qiáng)化學(xué)習(xí)還有很強(qiáng)的長(zhǎng)期連續(xù)決策能力,能夠考慮未來推薦過程中累計(jì)的效益。近年來,強(qiáng)化學(xué)習(xí)的工作在推薦領(lǐng)域中得到應(yīng)用并被重視,獲得了良好的效果。

然而,我們注意到在現(xiàn)有的基于深度強(qiáng)化學(xué)習(xí)推薦方法中,絕大部分方法過于強(qiáng)調(diào)短期內(nèi)的用戶興趣,對(duì)長(zhǎng)期穩(wěn)定的用戶興趣學(xué)習(xí)不足。例如,DRN方法[3]使用用戶在不同時(shí)間段內(nèi)點(diǎn)擊新聞的特征統(tǒng)計(jì)信息來表示用戶狀態(tài),進(jìn)而學(xué)習(xí)用戶的短期興趣;Deep Page方法[4]與DEERS方法[5]通過門控循環(huán)單元(GRU)從用戶最近的交互歷史序列中學(xué)習(xí)用戶的短期興趣;在FeedRec方法[6]利用分層的長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)(LSTM)從用戶最近的交互記錄序列以及停留時(shí)間等附加信息中學(xué)習(xí)用戶的短期興趣。盡管這些方法能夠很好地學(xué)習(xí)用戶的短期興趣,但由于缺乏對(duì)用戶長(zhǎng)期興趣的學(xué)習(xí),可能會(huì)陷入用戶實(shí)時(shí)的興趣點(diǎn)中,導(dǎo)致嚴(yán)重的有偏推薦,使得給用戶推薦的內(nèi)容最終集中于很小的興趣點(diǎn),難以滿足用戶的真實(shí)信息需求。

針對(duì)這一問題,本文研究了如何在深度強(qiáng)化學(xué)習(xí)中同時(shí)學(xué)習(xí)用戶的長(zhǎng)期興趣與短期興趣,并提出了一個(gè)可以應(yīng)用于深度Q網(wǎng)絡(luò)(Deep Q-Network)及其后續(xù)變種的Q-網(wǎng)絡(luò)框架(Long andShort-term Preference Learning Framework based on DeepReinforcementLearning, LSRL)。該框架使用協(xié)同過濾技術(shù)[7]學(xué)習(xí)用戶的長(zhǎng)期興趣,并利用門控循環(huán)單元(GRU)[8]從用戶近期的正反饋和負(fù)反饋交互行為中得到用戶的短期興趣,再結(jié)合兩個(gè)模塊學(xué)習(xí)到的信息對(duì)用戶的反饋?zhàn)龀鲱A(yù)測(cè),最后生成面向用戶的推薦結(jié)果。

本文的主要貢獻(xiàn)是: ①提出在深度強(qiáng)化學(xué)習(xí)的推薦方法中應(yīng)當(dāng)引入用戶長(zhǎng)期興趣,從而更精準(zhǔn)地建模用戶興趣; ② 提出了基于深度強(qiáng)化學(xué)習(xí)的LSRL框架,實(shí)現(xiàn)了結(jié)合用戶的長(zhǎng)期興趣與短期興趣的模型; ③在真實(shí)數(shù)據(jù)集的實(shí)驗(yàn)表明,LSRL框架在歸一化折損累計(jì)增益(NDCG)與命中率(Hit Ratio)上比其他基線模型有顯著提升。

本文的組織結(jié)構(gòu)如下:第1節(jié)形式化地定義了推薦任務(wù)并介紹LSRL框架的結(jié)構(gòu)與訓(xùn)練方法;第2節(jié)給出實(shí)驗(yàn)設(shè)置,分析實(shí)驗(yàn)結(jié)果并探究不同因素對(duì)模型性能的影響;第3節(jié)介紹本文相關(guān)工作;第4節(jié)總結(jié)本文工作并展望未來的研究思路。

1 LSRL框架

在本節(jié)中,首先定義本文研究的推薦任務(wù),然后介紹LSRL框架的結(jié)構(gòu)與訓(xùn)練方法, 最后對(duì)比LSRL框架與其他基于深度強(qiáng)化學(xué)習(xí)方法的異同。

1.1 任務(wù)定義

本文將推薦過程視為推薦系統(tǒng)選擇待推薦物品與用戶給出對(duì)推薦物品的反饋的交互序列,并建模該交互序列為馬爾可夫決策過程(MDP),最大化推薦過程中的長(zhǎng)期累積獎(jiǎng)勵(lì)。建模后的馬爾可夫決策過程(MDP)包含形如(S,A,R,P,γ)的五元組,五元組中每個(gè)元素的定義如下:

(1)狀態(tài)空間S: 時(shí)刻t下狀態(tài)st∈S的定義是用戶在時(shí)刻t之前最后N個(gè)正反饋交互記錄與最后N個(gè)負(fù)反饋交互記錄分別構(gòu)成的序列,如果不足N個(gè)則使用虛擬物品補(bǔ)全。其中,N是模型超參數(shù)。

(2)動(dòng)作空間A: 時(shí)刻t下狀態(tài)at∈A的定義是推薦系統(tǒng)在時(shí)刻t時(shí)推薦給用戶的項(xiàng)目。

(3)獎(jiǎng)勵(lì)空間R: 時(shí)刻t下狀態(tài)rt∈R的定義是用戶在時(shí)刻t的反饋對(duì)應(yīng)的即時(shí)獎(jiǎng)勵(lì)值。本文中獎(jiǎng)勵(lì)值取值范圍為{0,1}:如果用戶給出正反饋,則rt=1;如果用戶給出負(fù)反饋,則rt=0。

(4)狀態(tài)轉(zhuǎn)移P: 時(shí)刻t下狀態(tài)轉(zhuǎn)移被定義為形如(st,at,rt,st+1)的四元組。

(5)衰減因子γ: 衰減因子γ的定義是每間隔一個(gè)時(shí)間步長(zhǎng),即時(shí)獎(jiǎng)勵(lì)值衰減到原值的γ倍。

1.2 框架結(jié)構(gòu)

LSRL框架基于深度Q網(wǎng)絡(luò)(DQN)[1]算法,本節(jié)首先簡(jiǎn)要介紹DQN算法并指出LSRL相對(duì)于DQN的主要改進(jìn),然后詳細(xì)描述LSRL框架的結(jié)構(gòu)。

1.2.1 深度Q網(wǎng)絡(luò)(DQN)

深度Q網(wǎng)絡(luò)是一種基于價(jià)值優(yōu)化的深度強(qiáng)化學(xué)習(xí)算法。該算法通過學(xué)習(xí)狀態(tài)—?jiǎng)幼髦岛瘮?shù)Q(s,a)(以下簡(jiǎn)稱“值函數(shù)”)來估計(jì)推薦系統(tǒng)在狀態(tài)s下向用戶推薦項(xiàng)目a的長(zhǎng)期累積獎(jiǎng)勵(lì)。最優(yōu)值函數(shù)Q*(s,a)是最佳推薦策略π*對(duì)應(yīng)的值函數(shù)。

根據(jù)強(qiáng)化學(xué)習(xí)的假設(shè),最優(yōu)值函數(shù)Q*(s,a)應(yīng)該遵循Bellman方程,如式(1)所示。

深度Q網(wǎng)絡(luò)的損失函數(shù)L(θ)定義為:

其中,在計(jì)算Qtarget時(shí),需要使用上一訓(xùn)練周期的參數(shù)θ—來降低訓(xùn)練的不穩(wěn)定性,通常使用兩個(gè)結(jié)構(gòu)相同的Q-網(wǎng)絡(luò)并定期同步參數(shù)來實(shí)現(xiàn)。

深度Q網(wǎng)絡(luò)的訓(xùn)練過程如圖1所示,帶底紋的兩個(gè)框代表兩個(gè)結(jié)構(gòu)相同的Q-網(wǎng)絡(luò),LSRL框架重新設(shè)計(jì)了該部分來同時(shí)學(xué)習(xí)用戶的長(zhǎng)期興趣與短期興趣表示。

圖1 深度Q網(wǎng)絡(luò)的訓(xùn)練過程

1.2.2 LSRL框架

LSRL框架分為長(zhǎng)期興趣模塊、短期興趣模塊與預(yù)測(cè)模塊。Zhao等人的工作[5]指出負(fù)反饋交互行為能夠提高深度強(qiáng)化學(xué)習(xí)推薦方法的推薦準(zhǔn)確度,因此在短期興趣模塊我們令其同時(shí)學(xué)習(xí)正反饋交互序列與負(fù)反饋交互序列中隱含的用戶短期興趣。LSRL框架結(jié)構(gòu)如圖2所示。

1.2.3 長(zhǎng)期興趣模塊

圖2中左側(cè)部分為長(zhǎng)期興趣模塊。用戶的長(zhǎng)期興趣是使用基于協(xié)同過濾的方法學(xué)習(xí)的,用戶的向量表示在學(xué)習(xí)過程中利用所有的交互歷史信息,能夠代表用戶長(zhǎng)期的興趣偏好特征。最底層為嵌入層,用戶u與待推薦物品i分別通過用戶嵌入層與物品嵌入層,得到用戶向量表示pu與物品向量表示qi。與傳統(tǒng)的協(xié)同過濾方法[9-10]做內(nèi)積運(yùn)算不同,為了更好地學(xué)習(xí)用戶向量表示pu與物品向量表示qi之間的交互,LSRL模型選擇使用與He等人工作[7]中類似的多層感知機(jī)(MLP)結(jié)構(gòu)。拼接pu、qi兩個(gè)向量作為第一層向量,并在該層向量后添加多層隱藏層。長(zhǎng)期興趣模塊的形式化如式(4)所示。

其中,Wk、bk、ak是第k層隱藏層的權(quán)重矩陣、偏置矩陣與激活函數(shù)。根據(jù)測(cè)試,激活函數(shù)設(shè)置為線性整流函數(shù)(ReLU)[11]。最后,得到長(zhǎng)期興趣模塊的輸出vlongL。

1.2.4 短期興趣模塊

圖2右側(cè)部分為短期興趣模塊。在短期興趣模塊中,對(duì)正反饋交互歷史序列的處理與負(fù)反饋交互歷史序列的處理是類似的,這里只介紹對(duì)正反饋交互序列的處理。用戶的最近N個(gè)正反饋交互記錄{i1,i2,…,iN}組成正反饋交互序列。為了降低模型復(fù)雜度與參數(shù)數(shù)量, 正反饋交互歷史 序列與負(fù)反饋交互歷史系列與待推薦物品共享同一個(gè)物品嵌入層。正反饋交互序列經(jīng)過物品嵌入層后得到物品表示向量序列{qi1,qi2,…,qiN}。Hidasi等人的工作[12]指出:門控循環(huán)單元(GRU)[8]在推薦任務(wù)中學(xué)習(xí)序列信息能力通常優(yōu)于長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)(LSTM)[13],且計(jì)算量更低。因此LSRL框架使用門控循環(huán)單元(GRU)從正反饋交互歷史序列中學(xué)習(xí)用戶的短期興趣。門控循環(huán)單元(GRU)引入了更新門控zn與重置門控rn控制循環(huán)神經(jīng)網(wǎng)絡(luò)的記憶能力,具體計(jì)算如式(5)~式(8)所示。

圖2 LSRL框架結(jié)構(gòu)

LSRL框架使用GRU的最后一個(gè)隱層向量hN+作為正反饋交互序列的向量表示。與長(zhǎng)期興趣模塊類似,將正反饋交互序列的向量表示hN+與待推薦物品向量qi拼接作為多層感知機(jī)(MLP)的輸入vshort+1,經(jīng)過多個(gè)隱層后,得到短期興趣模塊的正反饋輸出vshort+L。

LSRL框架使用結(jié)構(gòu)相同但是參數(shù)不同的門控循環(huán)單元(GRU)與多層感知機(jī)(MLP),從用戶的最近N個(gè)負(fù)反饋交互記錄{j1,j2,…,jN}組成負(fù)反饋交互序列中得到短期興趣模塊的負(fù)反饋輸出vshort-L。

1.2.5 預(yù)測(cè)模塊

預(yù)測(cè)模塊的作用是利用長(zhǎng)期興趣模塊與短期興趣模塊的輸出,計(jì)算當(dāng)前用戶正反饋交互序列與負(fù)反饋交互序列(狀態(tài))與待推薦物品(動(dòng)作)間的值函數(shù)Q(s,a)。

因?yàn)樵陂L(zhǎng)期興趣模塊與短期興趣模塊內(nèi)部用戶興趣向量都與待推薦物品向量間通過多層感知機(jī)(MLP)進(jìn)行了充分的交互,所以預(yù)測(cè)模塊的結(jié)構(gòu)比較簡(jiǎn)單。首先拼接長(zhǎng)期興趣模塊的輸出vlongL與短期興趣模塊的輸出vshort+L、vshort-L,接下來通過多層感知機(jī)(MLP)得到最終輸出Q(s,a)。

1.3 參數(shù)學(xué)習(xí)

如1.2節(jié)所述,LSRL框架通過重新設(shè)計(jì)深度Q網(wǎng)絡(luò)(DQN)中Q網(wǎng)絡(luò)的結(jié)構(gòu)來同時(shí)學(xué)習(xí)用戶的長(zhǎng)期興趣與短期興趣,即只更改了值函數(shù)Q(s,a)的計(jì)算方式。因此,我們可以繼續(xù)沿用深度Q網(wǎng)絡(luò)模型的損失函數(shù)與訓(xùn)練方法。

由于真實(shí)場(chǎng)景中的狀態(tài)空間S與動(dòng)作空間A通常規(guī)模巨大,式(2)中的期望值難以直接計(jì)算。實(shí)際訓(xùn)練中通常采用小批量梯度下降方法 (Mini-Batch Gradient Descent),隨機(jī)選取小批量狀態(tài)轉(zhuǎn)移過程集合P,然后計(jì)算該集合上的期望值,并使用Adam優(yōu)化器優(yōu)化模型參數(shù)。

深度Q網(wǎng)絡(luò)(DQN)中使用深度網(wǎng)絡(luò)擬合值函數(shù)Q(s,a),這通常會(huì)導(dǎo)致模型訓(xùn)練不穩(wěn)定。為了降低模型訓(xùn)練難度,用戶嵌入層與物品嵌入層使用預(yù)訓(xùn)練向量初始化,并在之后的訓(xùn)練過程中保持固定,不再隨反向傳播更新。經(jīng)過對(duì)比測(cè)試,選擇概率矩陣分解(PMF)方法[9]并使用二分類交叉熵(Binary Cross Entropy)損失函數(shù)訓(xùn)練得到的嵌入層權(quán)重。除此之外,為了限制模型表達(dá)能力,穩(wěn)定訓(xùn)練過程并防止過擬合現(xiàn)象,LSRL框架在損失函數(shù)中引入L2正則化項(xiàng)。

算法1中給出了LSRL框架的訓(xùn)練方法。

算法1:LSRL框架訓(xùn)練方法1:初始化回放緩存D2: 隨機(jī)初始化評(píng)估網(wǎng)絡(luò)參數(shù)并設(shè)置預(yù)訓(xùn)練嵌入層權(quán)重,同步評(píng)估網(wǎng)絡(luò)參數(shù)到目標(biāo)網(wǎng)絡(luò)3:對(duì)每一個(gè)會(huì)話(Session)循環(huán):4: 根據(jù)用戶之前的會(huì)話初始化狀態(tài)s05: 對(duì)每一個(gè)推薦項(xiàng)目循環(huán):6: 從離線數(shù)據(jù)中觀察狀態(tài)、動(dòng)作、反饋7: 根據(jù)反饋更新狀態(tài)8: 存儲(chǔ)狀態(tài)轉(zhuǎn)移(st,at,rt,st+1)到回放緩存D中9: 從回放緩存中采樣小批量狀態(tài)轉(zhuǎn)移集合P10: 在小批量狀態(tài)轉(zhuǎn)移集合P上最小化損失函數(shù)L(θ)11: 更新評(píng)估網(wǎng)絡(luò)模型參數(shù)12: 如果距離上次同步達(dá)到一定時(shí)間:13: 同步評(píng)估網(wǎng)絡(luò)參數(shù)到目標(biāo)網(wǎng)絡(luò)14: 結(jié)束條件判斷15: 結(jié)束循環(huán)16:結(jié)束循環(huán)

2 實(shí)驗(yàn)

2.1 實(shí)驗(yàn)設(shè)置

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

MovieLens[14]: MovieLens是一個(gè)被廣泛使用的電影評(píng)分?jǐn)?shù)據(jù)集,包含不同規(guī)模的評(píng)分記錄。本文選取MovieLens-100K、MovieLens-1M與MovieLens-10M三個(gè)規(guī)模的數(shù)據(jù)集,數(shù)據(jù)集的統(tǒng)計(jì)數(shù)據(jù)見表1。每一條評(píng)分記錄包括用戶與物品的序號(hào)、用戶對(duì)電影的評(píng)分與評(píng)分的確切時(shí)間。用戶對(duì)電影的評(píng)分范圍是1-5分,本文認(rèn)為小于等于3分為負(fù)反饋,大于3分為正反饋。數(shù)據(jù)集中每個(gè)用戶交互數(shù)量均大于等于20。

表1 數(shù)據(jù)集概況

對(duì)每一個(gè)用戶u,根據(jù)評(píng)分時(shí)間信息確定用戶交互記錄序列Su。將Su以如下方式劃分[15]:①用戶最后一次正反饋交互記錄用于測(cè)試,舍棄該記錄之后的負(fù)反饋交互記錄; ②用戶倒數(shù)第二次正反饋交互記錄用于驗(yàn)證,舍棄驗(yàn)證記錄與測(cè)試記錄間的負(fù)反饋交互記錄; ③所有剩余交互記錄用于訓(xùn)練。測(cè)試集的交互序列輸入中包含驗(yàn)證集的交互記錄。對(duì)于驗(yàn)證集與測(cè)試集中的每一個(gè)正反饋記錄,分別隨機(jī)從物品集合中抽樣出該用戶沒有交互過的99個(gè)物品作為負(fù)例,構(gòu)成長(zhǎng)度為100的候選物品集合。為了公平比較,在訓(xùn)練過程前采樣出候選物品集合,并應(yīng)用于所有模型的驗(yàn)證與測(cè)試過程。

2.1.2 基線方法

為了測(cè)試提出的LSRL模型的性能,選取了三組方法作為基線方法。

不考慮用戶交互記錄時(shí)間序列的推薦方法:

(1)PMF[9]:概率矩陣分解方法,是一種隱向量方法。將用戶交互矩陣分解為低秩的用戶隱矩陣與物品隱矩陣的乘積,從概率角度解釋矩陣分解過程。PMF只考慮存在記錄的用戶—物品對(duì)。

(2)SVD++[10]:SVD++改進(jìn)了概率矩陣分解方法,結(jié)合隱向量方法與鄰域方法的優(yōu)勢(shì),在預(yù)測(cè)函數(shù)中考慮用戶所有隱式交互行為。

(3)NCF[7]:神經(jīng)協(xié)同過濾方法,結(jié)合深度神經(jīng)網(wǎng)絡(luò)與協(xié)同過濾方法,使用多層感知機(jī)(MLP)學(xué)習(xí)用戶—物品交互信息。

基于用戶交互記錄時(shí)間序列的推薦方法:

(4)GRU4Rec[12];首個(gè)應(yīng)用循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)的推薦方法,使用門控循環(huán)單元(GRU)從短期的會(huì)話數(shù)據(jù)中刻畫序列信息,并提出新的排序損失函數(shù)。

(5)SASRec[16]:利用自注意力機(jī)制(Self-Attention Mechanism)學(xué)習(xí)用戶交互序列的方法,從相對(duì)較短的序列中學(xué)習(xí)歷史交互過的物品間的相關(guān)性并預(yù)測(cè)下一個(gè)物品。

基于深度強(qiáng)化學(xué)習(xí)的推薦方法:

(6)DQN[1];深度Q網(wǎng)絡(luò),首個(gè)結(jié)合深度神經(jīng)網(wǎng)絡(luò)的基于價(jià)值優(yōu)化的強(qiáng)化學(xué)習(xí)方法,使用神經(jīng)網(wǎng)絡(luò)擬合狀態(tài)—?jiǎng)幼髦岛瘮?shù)。

(7)DEERS[5]:首個(gè)同時(shí)從正反饋交互序列與負(fù)反饋交互序列中建模用戶狀態(tài)的基于深度強(qiáng)化學(xué)習(xí)的推薦方法。

表2中比較了LSRL框架與所有基線方法的異同。

表2 基線方法與LSRL框架比較

2.1.3 評(píng)價(jià)指標(biāo)

在驗(yàn)證與測(cè)試階段,對(duì)每個(gè)候選物品集合,排序其中的物品。為了評(píng)價(jià)排序后的推薦列表質(zhì)量,我們選擇命中率(Hit Ratio, HR)與歸一化折損累計(jì)增益(Normalized Discounted Cumulative Gain, NDCG)作為評(píng)價(jià)指標(biāo)。

如果使用a表示某個(gè)候選物品集合中用戶給出過正反饋的唯一物品的序號(hào),xi表示排序后推薦列表里第i個(gè)物品的序號(hào),那么推薦列表前k個(gè)物品的命中率(HR)可以通過式(9)計(jì)算:

其中,I(xi=a)是指示函數(shù),如果第i個(gè)物品是用戶給出過正反饋的物品,返回1,否則返回0。命中率(HR)衡量了用戶給出過正反饋的物品是否在推薦列表的前k個(gè)物品中。為了衡量該物品的位置,首先計(jì)算折損累計(jì)增益(DCG),如式(10)所示。

然后我們計(jì)算正反饋物品處于第一位的推薦列表的DCG并令其為理想折損累計(jì)增益(IDCG),則歸一化折損累計(jì)增益(NDCG)可以通過式(11)計(jì)算:

對(duì)驗(yàn)證集或測(cè)試集中的每一個(gè)候選物品集合計(jì)算排序后推薦列表的評(píng)價(jià)指標(biāo),并匯報(bào)所有候選物品集合的平均值。

2.1.4 實(shí)現(xiàn)細(xì)節(jié)(1)實(shí)驗(yàn)代碼在如下鏈接:https://github.com/THUyansh/LSRL

我們使用PyTorch實(shí)現(xiàn)了所有的推薦方法,并使用Adam優(yōu)化器學(xué)習(xí)模型參數(shù),直至驗(yàn)證集上NDCG@10評(píng)價(jià)指標(biāo)連續(xù)20輪次不再提升,最大訓(xùn)練輪次為100。對(duì)于每一種推薦方法,我們應(yīng)用驗(yàn)證集上NDCG@10最高的輪次對(duì)應(yīng)的模型參數(shù)在測(cè)試集上測(cè)試。每個(gè)推薦方法使用不同的隨機(jī)種子重復(fù)運(yùn)行5次,并匯報(bào)5次試驗(yàn)結(jié)果的平均值。

為了公平地對(duì)比不同的推薦方法,批量大小均設(shè)置為256,嵌入層維度均設(shè)置為64。特別地,所有基于深度強(qiáng)化學(xué)習(xí)的推薦方法,衰減因子γ設(shè)置為0.9。其他的超參數(shù)被設(shè)置為推薦方法論文作者的推薦值,或者根據(jù)驗(yàn)證集上NDCG@10的結(jié)果來選擇。

2.2 實(shí)驗(yàn)結(jié)果

表3~表5展示了LSRL框架與所有其他基線方法在不同數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果。其中,粗體的實(shí)驗(yàn)結(jié)果表示在該規(guī)模數(shù)據(jù)集下所有推薦方法中最高的評(píng)價(jià)指標(biāo)值,標(biāo)注下劃線的實(shí)驗(yàn)結(jié)果表示在該規(guī)模數(shù)據(jù)集下所有基線方法中最高的評(píng)價(jià)指標(biāo)值;標(biāo)注“*”符號(hào)的實(shí)驗(yàn)結(jié)果標(biāo)明該結(jié)果在雙側(cè)t檢驗(yàn)中比基線方法的最佳結(jié)果有顯著性的提升。顯著性檢驗(yàn)中p<0.01。

表3 MovieLens-100K實(shí)驗(yàn)結(jié)果

表4 MovieLens-1M實(shí)驗(yàn)結(jié)果

表5 MovieLens-10M實(shí)驗(yàn)結(jié)果

在不同規(guī)模的數(shù)據(jù)集上,每種推薦方法的表現(xiàn)都有所差異。

在不考慮用戶交互記錄時(shí)間序列的推薦方法中,NCF方法在三個(gè)規(guī)模的數(shù)據(jù)集上都獲取了最佳表現(xiàn)。這表明NCF方法在結(jié)合了深度神經(jīng)網(wǎng)絡(luò)之后,模型的表達(dá)能力比PMF與SVD++方法中的內(nèi)積運(yùn)算更強(qiáng),能夠從訓(xùn)練數(shù)據(jù)中學(xué)習(xí)出更多的信息。

所有基于用戶交互記錄時(shí)間序列的推薦方法的表現(xiàn)都比不考慮用戶交互記錄時(shí)間序列的推薦方法好。其中,SASRec方法在三個(gè)數(shù)據(jù)集上的表現(xiàn)始終是所有基線模型中最優(yōu)的。這說明了建模用戶短期興趣可以幫助推薦系統(tǒng)更準(zhǔn)確地推薦物品。

基于深度強(qiáng)化學(xué)習(xí)的三個(gè)推薦方法效果差異較大。DQN方法的表現(xiàn)與基礎(chǔ)的PMF模型類似。DEERS方法的表現(xiàn)要顯著好于DQN方法,這驗(yàn)證了在深度強(qiáng)化學(xué)習(xí)中引入用戶負(fù)反饋交互信息是有效的。LSRL方法的表現(xiàn)明顯優(yōu)于DEERS方法,這證明融合用戶長(zhǎng)期興趣與短期興趣能夠顯著提高推薦系統(tǒng)的性能。

綜合所有基線模型,LSRL方法只在MovieLens-1M數(shù)據(jù)集上的HR評(píng)價(jià)指標(biāo)上沒有獲得最佳數(shù)值,比SASRec方法稍差。這可能是因?yàn)镸ovieLens-1M數(shù)據(jù)集的數(shù)據(jù)特征與其他兩個(gè)數(shù)據(jù)集不同,橫向比較三個(gè)數(shù)據(jù)集上不同方法的實(shí)驗(yàn)結(jié)果,發(fā)現(xiàn)只有MovieLens-1M數(shù)據(jù)集上基于時(shí)間序列建模用戶短期興趣的推薦方法與能夠同時(shí)建模用戶長(zhǎng)期興趣與短期興趣的LSRL方法非常接近,這說明該數(shù)據(jù)集中用戶興趣以短期興趣為主導(dǎo)因素,LSRL方法中的長(zhǎng)期興趣模塊會(huì)引入一定程度的噪音,使得命中率(HR)指標(biāo)稍差。但在NDCG評(píng)價(jià)指標(biāo)上,LSRL方法依然優(yōu)于SASRec方法,根據(jù)兩個(gè)評(píng)價(jià)指標(biāo)的計(jì)算方式可以發(fā)現(xiàn),在推薦列表排序能力上,LSRL方法更有優(yōu)勢(shì),更傾向于將用戶感興趣的物品排序到靠近列表頭部的位置。LSRL方法在其他所有評(píng)價(jià)指標(biāo)上都相對(duì)所有基線模型有顯著性的提升,表現(xiàn)出了良好的排序能力與推薦準(zhǔn)確性。

2.3 消融實(shí)驗(yàn)與分析

為了驗(yàn)證LSRL框架中強(qiáng)調(diào)兩個(gè)因素(用戶長(zhǎng)期興趣與短期興趣)對(duì)框架推薦效果的影響,我們進(jìn)行了消融實(shí)驗(yàn),分別保留長(zhǎng)期興趣模塊、短期興趣模塊(正反饋)與短期興趣模塊(負(fù)反饋)中的一個(gè)或幾個(gè)模塊,在MovieLens-100K與MovieLens-1M數(shù)據(jù)集上測(cè)試推薦效果。表6直觀地給出不同模型使用的信息。

表6 消融實(shí)驗(yàn)中使用的模型

消融實(shí)驗(yàn)的結(jié)果如表7所示,表中只匯報(bào)NDCG@10的結(jié)果。其中,LSRL-P方法在三個(gè)數(shù)據(jù)集上都顯著優(yōu)于SRL-P方法,LSRL方法也顯著優(yōu)于SRL方法,這表明無論短期興趣模塊是否引入用戶的負(fù)反饋交互序列,融合長(zhǎng)期興趣模塊都會(huì)提高推薦準(zhǔn)確度。而LSRL-P方法與LSRL方法比LRL方法有更好的表現(xiàn),說明短期興趣模塊同樣重要。

表7 消融實(shí)驗(yàn)結(jié)果

3 相關(guān)工作

3.1 推薦系統(tǒng)中的用戶興趣建模

在推薦系統(tǒng)研究中,準(zhǔn)確刻畫用戶興趣是非常重要的。隨著推薦系統(tǒng)的發(fā)展,建模用戶興趣的方式也在不斷變化。用戶興趣建模方式大概可以分為三種:只建模用戶長(zhǎng)期興趣、只建模用戶短期興趣與同時(shí)建模用戶長(zhǎng)期興趣與短期興趣。

只建模用戶長(zhǎng)期興趣的代表性推薦方法有矩陣分解(Matrix Factorization, MF)方法與其變種[9-10]。矩陣分解方法將用戶交互矩陣分解為低秩的用戶隱矩陣與物品隱矩陣,通過訓(xùn)練學(xué)習(xí)出一個(gè)固定的用戶隱向量來表達(dá)用戶興趣。在預(yù)測(cè)時(shí),由于用戶向量表示固定不變,矩陣分解方法無法通過用戶實(shí)時(shí)的交互行為來推薦項(xiàng)目。

只建模用戶短期興趣的代表性推薦方法是僅利用用戶最近交互行為的模型。Covington等人的工作[17]利用平均池化(Average Pool)的方法從無序的用戶交互行為中學(xué)習(xí)用戶興趣。Hidasi等人提出的GRU4Rec模型[12]使用門控循環(huán)單元(GRU)從有序的用戶交互行為序列中建模用戶短期興趣。Zhou等人提出的DIN模型[18]利用注意力機(jī)制(Attention Mechanism)計(jì)算不同用戶交互行為的權(quán)重,獲得了比平均池化方法更好的表現(xiàn)。Kang等人提出的SASRec方法[16]使用自注意力(Self-Attention Mechanism)從有序的交互行為中挖掘用戶興趣。這些推薦方法的共同特點(diǎn)是利用用戶最近的交互行為進(jìn)行推薦,容易受用戶實(shí)時(shí)的興趣點(diǎn)影響,難以給用戶推薦更全面的物品列表。

除此之外,部分推薦方法可以同時(shí)建模用戶的長(zhǎng)期興趣與短期興趣。An等人提出的LSTUR模型[19]提出兩種方式融合用戶興趣并進(jìn)行新聞推薦:使用用戶嵌入向量初始化循環(huán)神經(jīng)網(wǎng)絡(luò)的隱藏層;將用戶嵌入向量與循環(huán)神經(jīng)網(wǎng)絡(luò)的輸出拼接。Hu等人提出的GNewsRec模型[20]結(jié)合了注意力機(jī)制與圖神經(jīng)網(wǎng)絡(luò)用于新聞推薦。Wu等人提出的LSPL模型[21]結(jié)合了注意力機(jī)制與循環(huán)神經(jīng)網(wǎng)絡(luò)。

3.2 基于深度強(qiáng)化學(xué)習(xí)的推薦方法

近年來強(qiáng)化學(xué)習(xí)算法在推薦領(lǐng)域中受到重視,一些基于深度強(qiáng)化學(xué)習(xí)的方法被提出。這些方法將用戶歷史交互行為視為環(huán)境狀態(tài),將推薦物品視為動(dòng)作用戶,根據(jù)模型訓(xùn)練方式的不同可以分為兩類:基于價(jià)值優(yōu)化的算法與基于策略優(yōu)化的算法。

基于價(jià)值優(yōu)化的算法在訓(xùn)練中學(xué)習(xí)狀態(tài)—?jiǎng)幼髦岛瘮?shù)Q(s,a),在所有的候選動(dòng)作中選出當(dāng)前用戶狀態(tài)下具有最大Q值的待推薦物品推薦給用戶。 Mnih等人提出的深度Q網(wǎng)絡(luò)模型(Deep Q-Network, DQN)[1],首次結(jié)合深度學(xué)習(xí)技術(shù)到強(qiáng)化學(xué)習(xí)中,使用深度網(wǎng)絡(luò)擬合狀態(tài)-動(dòng)作值函數(shù),并引入經(jīng)驗(yàn)回放技術(shù)與目標(biāo)網(wǎng)絡(luò)技術(shù)穩(wěn)定的訓(xùn)練過程。 Zheng等人提出的DRN模型[3],將DQN應(yīng)用到新聞推薦場(chǎng)景中,將用戶在不同時(shí)間段內(nèi)瀏覽新聞的統(tǒng)計(jì)信息作為用戶狀態(tài),并引入用戶活躍度信息。Zhao等人提出的DEERS模型[5],利用門控循環(huán)單元(GRU)同時(shí)從用戶正反饋與負(fù)反饋歷史交互序列中建模用戶短期興趣,并提出了引入成對(duì)排序正則化項(xiàng)的損失函數(shù)。Zou等人提出的FeedRec模型[6]使用分層的長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)(LSTM)從用戶的點(diǎn)擊、停留、重新訪問等多種行為中建模用戶短期興趣,并提出了一些新技術(shù)穩(wěn)定深度強(qiáng)化學(xué)習(xí)訓(xùn)練中的不確定性。

基于策略優(yōu)化的算法在訓(xùn)練中學(xué)習(xí)推薦策略,輸入用戶當(dāng)前狀態(tài)后,推薦策略輸出待推薦的物品。Zhao等人提出的DeepPage模型[4]擴(kuò)展了深度確定性策略梯度模型(DDPG)[22],并研究了推薦一個(gè)頁面的物品的排序優(yōu)化方法。

以上絕大多數(shù)方法僅使用循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)等方法學(xué)習(xí)用戶的短期興趣,忽略了用戶的長(zhǎng)期興趣,導(dǎo)致對(duì)用戶的興趣建模存在不足。因此我們?cè)贚SRL框架中引入了用戶長(zhǎng)期興趣,從而更精準(zhǔn)地建模用戶興趣。

4 結(jié)語

本文提出了基于深度強(qiáng)化學(xué)習(xí)的LSRL框架,成功地引入了用戶長(zhǎng)期興趣,更加準(zhǔn)確地建模用戶興趣。具體地,LSRL框架使用協(xié)同過濾技術(shù)(CF)與循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)分別建模用戶長(zhǎng)期興趣與短期興趣,并設(shè)計(jì)了新的Q-網(wǎng)絡(luò)融合不同模塊學(xué)習(xí)到的信息。在多個(gè)真實(shí)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,我們提出的LSRL框架能夠?qū)崿F(xiàn)同時(shí)學(xué)習(xí)用戶的長(zhǎng)期興趣與短期興趣,并比所有的基線推薦方法在不同的評(píng)價(jià)指標(biāo)上有顯著的性能提升。

猜你喜歡
物品框架建模
稱物品
框架
“雙十一”,你搶到了想要的物品嗎?
聯(lián)想等效,拓展建?!浴皫щ娦∏蛟诘刃?chǎng)中做圓周運(yùn)動(dòng)”為例
廣義框架的不相交性
誰動(dòng)了凡·高的物品
基于PSS/E的風(fēng)電場(chǎng)建模與動(dòng)態(tài)分析
電子制作(2018年17期)2018-09-28 01:56:44
不對(duì)稱半橋變換器的建模與仿真
WTO框架下
法大研究生(2017年1期)2017-04-10 08:55:06
一種基于OpenStack的云應(yīng)用開發(fā)框架
武夷山市| 洮南市| 五大连池市| 井研县| 九江市| 健康| 富锦市| 巴塘县| 旅游| 抚顺市| 河池市| 页游| 香港 | 灵台县| 中方县| 海丰县| 永顺县| 西峡县| 鸡西市| 库伦旗| 喀喇沁旗| SHOW| 新邵县| 青龙| 乐陵市| 务川| 延吉市| 临澧县| 剑川县| 平陆县| 沈丘县| 双峰县| 晴隆县| 朔州市| 宿州市| 奉新县| 休宁县| 盖州市| 谢通门县| 荔浦县| 平度市|