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

?

基于會(huì)話的多粒度圖神經(jīng)網(wǎng)絡(luò)推薦模型

2021-12-07 10:08:58任俊偉曾誠(chéng)肖絲雨喬金霞何鵬
計(jì)算機(jī)應(yīng)用 2021年11期
關(guān)鍵詞:會(huì)話類別物品

任俊偉,曾誠(chéng),2,3*,肖絲雨,喬金霞,何鵬,2,3

(1.湖北大學(xué)計(jì)算機(jī)與信息工程學(xué)院,武漢 430062;2.湖北省軟件工程工程技術(shù)研究中心(湖北大學(xué)),武漢 430062;3.智慧政務(wù)與人工智能應(yīng)用湖北省工程研究中心(湖北大學(xué)),武漢 430062)

0 引言

隨著互聯(lián)網(wǎng)信息資源的爆炸式增長(zhǎng),在搜索、電子商務(wù)、視頻網(wǎng)站等許多的Web 應(yīng)用中,“信息過(guò)載”問(wèn)題也日益突出。如何快速有效地從紛繁復(fù)雜的數(shù)據(jù)中獲取有價(jià)值的信息成為了當(dāng)前的一大難題,而推薦系統(tǒng)作為解決“信息過(guò)載”問(wèn)題的有效方法[1],已經(jīng)成為學(xué)術(shù)界和工業(yè)界的關(guān)注熱點(diǎn)并得到了廣泛應(yīng)用。目前,推薦系統(tǒng)在很多領(lǐng)域得到了成功應(yīng)用,包括電子商務(wù)(如Amazon、eBay、Netflix、阿里巴巴等)、信息檢索(如iGoogle、MyYahoo、百度等)、社交網(wǎng)絡(luò)(Facebook、Twitter、騰訊等)、位置服務(wù)(如Foursquare、Yelp、大眾點(diǎn)評(píng)等)、新聞推送(如GoogleNews、GroupLens、今日頭條等)等各個(gè)領(lǐng)域[2]。

目前,大多數(shù)的推薦系統(tǒng)都是基于用戶的個(gè)人信息和歷史行為數(shù)據(jù)進(jìn)行推薦。然而,在許多服務(wù)中,用戶身份可能是未知的,并且只有當(dāng)前會(huì)話中的用戶行為數(shù)據(jù)是可用的。因此,在當(dāng)前會(huì)話中,根據(jù)用戶有限的行為數(shù)據(jù)進(jìn)行相應(yīng)的推薦是非常重要的,相較于傳統(tǒng)的推薦算法,基于會(huì)話的推薦不需要足夠的用戶-物品交互信息就可以進(jìn)行比較準(zhǔn)確的推薦。

近年來(lái),大多數(shù)研究工作關(guān)注如何更好地建模用戶的點(diǎn)擊序列,而推薦場(chǎng)景中的一些其他信息,例如類別信息,沒(méi)有得到足夠的重視,類別信息作為物品的一種屬性,對(duì)物品有聚合作用,可作為物品信息的一種重要補(bǔ)充。本文提出了一種多粒度圖神經(jīng)網(wǎng)絡(luò)模型來(lái)解決上述問(wèn)題,通過(guò)圖神經(jīng)網(wǎng)絡(luò)得到物品和物品類別的嵌入信息,然后使用注意力機(jī)制更好地捕捉用戶的注意力信息,減少噪聲數(shù)據(jù)的影響,最后使用循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)獲取會(huì)話時(shí)序信息進(jìn)行推薦。

1 相關(guān)工作

1.1 基于會(huì)話的傳統(tǒng)推薦方法

基于會(huì)話的傳統(tǒng)推薦算法分為矩陣分解、基于物品的鄰域方法和馬爾可夫決策過(guò)程等。

矩陣分解[3-4]是推薦系統(tǒng)的一種常見(jiàn)方法,其基本目標(biāo)是把用戶偏好和物品屬性投影到同一個(gè)隱因子空間,以用戶偏好和物品屬性的匹配程度來(lái)預(yù)測(cè)評(píng)分。由于基于會(huì)話的推薦只有一些用戶的點(diǎn)擊序列信息,因此,矩陣分解并不太適合基于會(huì)話的推薦?;谖锲返泥徲蚍椒ǎ?]根據(jù)同一會(huì)話中物品的共現(xiàn)情況來(lái)計(jì)算物品的相似性從而進(jìn)行推薦,但是這些方法卻很難考慮物品在會(huì)話中的順序,僅僅根據(jù)最后一次點(diǎn)擊的物品產(chǎn)生預(yù)測(cè)。Shani 等[6]將基于會(huì)話的推薦生成作為一個(gè)順序優(yōu)化問(wèn)題,采用馬爾可夫決策過(guò)程求解。而Gu 等[7]提出了一種馬爾可夫決策過(guò)程和潛因子模型的融合模型,模型不僅捕捉到用戶的長(zhǎng)期偏好,還捕捉到了物品交互的順序?qū)ν扑]結(jié)果所帶來(lái)的影響。

1.2 基于會(huì)話的深度學(xué)習(xí)推薦方法

循環(huán)神經(jīng)網(wǎng)絡(luò)由于具有記憶性、參數(shù)共享并且圖靈完備(Turing Completeness),因此在對(duì)序列的非線性特征進(jìn)行學(xué)習(xí)時(shí)具有一定優(yōu)勢(shì)。RNN 在自然語(yǔ)言領(lǐng)域取得了十分顯著的成績(jī),同時(shí)也成功地應(yīng)用于其他很多領(lǐng)域,例如順序點(diǎn)擊預(yù)測(cè)[8]、位置預(yù)測(cè)[9]。Hidasi 等[10]將RNN 運(yùn)用于基于會(huì)話的推薦,基于點(diǎn)擊和被點(diǎn)擊物品的特性對(duì)會(huì)話進(jìn)行建模,將一個(gè)會(huì)話中發(fā)生的一系列點(diǎn)擊行為當(dāng)作一個(gè)序列,預(yù)測(cè)該會(huì)話下一個(gè)最可能點(diǎn)擊的物品。Tuan 等[11]將會(huì)話點(diǎn)擊與內(nèi)容特性(例如物品描述和物品類別)結(jié)合在一起,通過(guò)三維卷積神經(jīng)網(wǎng)絡(luò),將所有類型的特征使用字符級(jí)表示,進(jìn)而生成推薦。Li等[12]提出了基于神經(jīng)注意力會(huì)話的推薦(Neural Attentive session-based RecomMendation,NARM)模型,利用RNN 上的注意力機(jī)制來(lái)捕捉用戶的順序行為特征和主要目的。Liu等[13]提出了短期注意力/記憶優(yōu)先級(jí)(Short-Term Attention/Memory Priority,STAMP)模型,該模型將注意力網(wǎng)絡(luò)與RNN融合,以有效地捕獲用戶的一般興趣和當(dāng)前興趣,在捕捉用戶會(huì)話中用戶的主要興趣的同時(shí)有效避免了因?yàn)橐馔恻c(diǎn)擊而引起的興趣偏移。Meng 等[14]將用戶的微行為和物品知識(shí)納入基于會(huì)話的推薦的多任務(wù)學(xué)習(xí)中,通過(guò)在微行為級(jí)別上建模,以充分捕獲會(huì)話中的過(guò)渡模式并減輕數(shù)據(jù)稀疏性問(wèn)題。

圖是一種結(jié)構(gòu)化數(shù)據(jù),包含著十分豐富的關(guān)系型信息,它是由頂點(diǎn)和邊構(gòu)成的一種數(shù)學(xué)關(guān)系。而圖神經(jīng)網(wǎng)絡(luò)(Graph Neural Network,GNN)是一種連接主義模型,它靠圖中節(jié)點(diǎn)之間的信息傳遞來(lái)捕捉圖中的依賴關(guān)系。近年來(lái),GNN 得到了廣泛的應(yīng)用,如腳本事件預(yù)測(cè)[15]、情景識(shí)別[16]和圖像分類[17]。

卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)是GNN 起源的首要?jiǎng)訖C(jī),另一個(gè)動(dòng)機(jī)就是圖嵌入,即如何將圖中的節(jié)點(diǎn)、邊和子圖以低維向量的形式表現(xiàn)出來(lái)?;诒硎緦W(xué)習(xí),無(wú)監(jiān)督的算法DeepWalk[18]被認(rèn)為是第一種使用圖嵌入技術(shù)的模型,該模型基于隨機(jī)游走學(xué)習(xí)圖節(jié)點(diǎn)的表示。此外,還有node2vec[19]、LINE(Large-Scale Information Network Embedding)[20]等。將經(jīng)典的神經(jīng)網(wǎng)絡(luò)CNN 和RNN 應(yīng)用在圖結(jié)構(gòu)數(shù)據(jù)上,Duvenaud 等[21]引入了可以直接對(duì)任意尺寸和形狀進(jìn)行操作的卷積神經(jīng)網(wǎng)絡(luò),Gori 等[22]以循環(huán)神經(jīng)網(wǎng)絡(luò)的形式,將圖神經(jīng)網(wǎng)絡(luò)用于處理有向圖。由于基于會(huì)話的推薦中用戶交互的物品信息能夠構(gòu)成圖結(jié)構(gòu),Wu等[23]提出了一種圖神經(jīng)網(wǎng)絡(luò)模型,將會(huì)話信息建模為圖結(jié)構(gòu)化的數(shù)據(jù),保留物品之間的關(guān)系結(jié)構(gòu)。Xu 等[24]提出了一種基于圖神經(jīng)網(wǎng)絡(luò)的圖上下文自注意力模型,利用自注意力網(wǎng)絡(luò)和圖神經(jīng)網(wǎng)絡(luò)之間的互補(bǔ)性來(lái)增強(qiáng)推薦性能。Song等[25]認(rèn)為用戶的興趣是動(dòng)態(tài)的,每個(gè)時(shí)段興趣不同,并且用戶的興趣容易受他們朋友的興趣影響,基于此提出了一種動(dòng)態(tài)圖注意力網(wǎng)絡(luò),用于對(duì)用戶動(dòng)態(tài)興趣和上下文相關(guān)的社交影響進(jìn)行建模。Yu 等[26]提出了一種目標(biāo)注意力圖神經(jīng)網(wǎng)絡(luò)(Target Attentive GNN,TAGNN)模型,自適應(yīng)地激活了用戶對(duì)不同目標(biāo)項(xiàng)目的不同興趣,學(xué)習(xí)到的興趣表示向量隨目標(biāo)項(xiàng)目的不同而變化,極大提高了模型的表達(dá)能力。Wang 等[27]提出了全局上下文增強(qiáng)圖神經(jīng)網(wǎng)絡(luò)(Global Context Enhanced GNN,GCE-GNN),利用會(huì)話圖和全局圖中的項(xiàng)目轉(zhuǎn)換,從而更好地推斷當(dāng)前會(huì)話的用戶偏好。

基于會(huì)話的傳統(tǒng)推薦方法大多未考慮會(huì)話序列的點(diǎn)擊順序,而基于會(huì)話的深度學(xué)習(xí)推薦方法往往忽視了物品類別這一重要信息?;诖?,本文提出了一種基于會(huì)話的多粒度圖神經(jīng)網(wǎng)絡(luò)推薦模型(Session-based Recommendation model of Multi-granular GNN,SRMGNN),通過(guò)圖神經(jīng)網(wǎng)絡(luò)不僅利用了會(huì)話序列的點(diǎn)擊順序信息,考慮了節(jié)點(diǎn)間的相互關(guān)系,而且使用了物品類別信息作為重要補(bǔ)充,極大提升了推薦的準(zhǔn)確率。

2 基于會(huì)話的多粒度圖神經(jīng)網(wǎng)絡(luò)推薦模型

2.1 模型提出動(dòng)機(jī)

在現(xiàn)實(shí)場(chǎng)景中,用戶在一次會(huì)話中點(diǎn)擊的物品之間是存在某種內(nèi)在聯(lián)系的,并且會(huì)話中用戶的興趣可能會(huì)發(fā)生偏移,例如用戶點(diǎn)擊物品的類別會(huì)發(fā)生變化。如圖1 所示,當(dāng)前會(huì)話中,用戶點(diǎn)擊了一雙運(yùn)動(dòng)鞋,然后查看了一部手機(jī)。接下來(lái)用戶又點(diǎn)擊了與手機(jī)相關(guān)的電子產(chǎn)品“耳機(jī)”,為了與之前查看的手機(jī)進(jìn)行比較,用戶又點(diǎn)擊了另一款手機(jī),最后用戶又選擇了另一款耳機(jī)與之前的一款進(jìn)行比較。在整個(gè)會(huì)話中,用戶的興趣發(fā)生了兩次偏移,從“運(yùn)動(dòng)鞋”到“手機(jī)”再到“耳機(jī)”,從類別上來(lái)看,用戶最感興趣的“手機(jī)”和“耳機(jī)”同屬于電子產(chǎn)品這一個(gè)類別,并且這兩個(gè)類別之間是存在某種內(nèi)在聯(lián)系的,用戶兩次點(diǎn)擊的手機(jī)或者耳機(jī)之間也是存在某種內(nèi)在的聯(lián)系。利用上述物品類別上的信息以及物品之間的內(nèi)在聯(lián)系,推薦系統(tǒng)得到如圖1中所示的推薦列表。

圖1 基于會(huì)話的推薦系統(tǒng)Fig.1 Session-based recommendation system

通過(guò)以上分析可以看出,物品之間存在某種內(nèi)在聯(lián)系,物品對(duì)應(yīng)的類別同樣也包含了一些內(nèi)在聯(lián)系,而當(dāng)前大多數(shù)的推薦系統(tǒng)卻忽略了物品的類別信息,因此本文提出了多粒度的圖神經(jīng)網(wǎng)絡(luò)模型,使用圖神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)物品的信息,同時(shí)學(xué)習(xí)物品的類別信息作為物品信息的補(bǔ)充,以提高推薦系統(tǒng)的推薦準(zhǔn)確度。

2.2 相關(guān)定義

基于會(huì)話的推薦問(wèn)題主要是根據(jù)用戶當(dāng)前會(huì)話的點(diǎn)擊序列信息,預(yù)測(cè)用戶下一次點(diǎn)擊的物品。如圖1 所示,用戶在當(dāng)前會(huì)話的一段時(shí)間內(nèi)點(diǎn)擊了一系列的物品,將此點(diǎn)擊序列信息作為模型的輸入,模型對(duì)序列信息進(jìn)行建模,預(yù)測(cè)用戶可能感興趣的物品,輸出top-K個(gè)物品的推薦列表。

基于會(huì)話的推薦問(wèn)題的形式化定義可以描述為,令I(lǐng)={i1,i2,…,im} 表示所有物品的集合,s={(ts,1,is,1),(ts,2,is,2),…,(ts,n,is,n)}表示用戶一次會(huì)話的點(diǎn)擊序列,其中,ts,n表示會(huì)話序列s第n次點(diǎn)擊發(fā)生的時(shí)間,is,n∈I表示會(huì)話序列s第n次點(diǎn)擊的物品。而基于會(huì)話的推薦問(wèn)題的任務(wù)就是構(gòu)建一個(gè)模型M,對(duì)于任意給定的一次會(huì)話序列sj的n個(gè)點(diǎn)擊物品的序列作為輸入,預(yù)測(cè)第n+1 個(gè)最可能點(diǎn)擊的物品isj,n+1。模型M 對(duì)所有的物品進(jìn)行打分,得到所有物品在會(huì)話序列sj中的分?jǐn)?shù)向量,然后對(duì)得分從大到小進(jìn)行排序,選取得分最高的k個(gè)物品作為會(huì)話序列sj的推薦物品列表。

2.3 解決方案

本文提出的基于會(huì)話的多粒度圖神經(jīng)網(wǎng)絡(luò)推薦模型(SRMGNN)主要由物品圖神經(jīng)網(wǎng)絡(luò)層(Item Graph Neural Network)、物品類別圖神經(jīng)網(wǎng)絡(luò)層(Item Category Graph Neural Network)、注意力網(wǎng)絡(luò)層(Attention Network)、向量表示融合層(Fusion Layer)以及門限循環(huán)單元(Gated Recurrent Unit,GRU)[28]層組成,模型結(jié)構(gòu)如圖2所示。首先使用物品圖神經(jīng)網(wǎng)絡(luò)層學(xué)習(xí)物品點(diǎn)擊序列中物品的嵌入向量Ei,物品類別圖神經(jīng)網(wǎng)絡(luò)層學(xué)習(xí)物品類別點(diǎn)擊序列中物品類別的嵌入向量Ti,然后使用注意力網(wǎng)絡(luò),通過(guò)對(duì)物品嵌入向量Ei和物品類別嵌入向量Ti賦予不同的注意力權(quán)重,使用向量表示融合層融合得到融合后的嵌入向量Vi,最后生成推薦列表,方案的詳細(xì)實(shí)施步驟如下。

圖2 多粒度圖神經(jīng)網(wǎng)絡(luò)推薦模型結(jié)構(gòu)Fig.2 Multi-granular graph neural network recommendation model structure

1)獲取用戶會(huì)話中的物品點(diǎn)擊序列信息,將其轉(zhuǎn)換成有向圖Gi=(vi,εi),圖中每個(gè)節(jié)點(diǎn)vi,k∈vi表示物品,每條邊(vi,k-1,vi,k)∈εi表示用戶在點(diǎn)擊了物品vi,k-1后點(diǎn)擊了物品vi,k。

2)獲取用戶物品點(diǎn)擊序列中的物品對(duì)應(yīng)的類別信息后,構(gòu)建出物品類別點(diǎn)擊序列信息,將其轉(zhuǎn)換成有向圖Gc=(vc,εc),圖中每個(gè)節(jié)點(diǎn)vc,k∈vc表示物品類別,每條邊(vc,k-1,vc,k)∈εi表示用戶在點(diǎn)擊了物品類別vc,k-1后點(diǎn)擊了物品類別vc,k。例如對(duì)于物品點(diǎn)擊序列(I1,I2,I3,I2,I4,I5)和物品類別點(diǎn)擊序列(C1,C2,C3,C2,C4,C5),可以轉(zhuǎn)換成如圖3 所示的有向圖。

圖3 用戶點(diǎn)擊序列與對(duì)應(yīng)的有向圖Fig.3 User click sequence and corresponding directed graph

3)為方便神經(jīng)網(wǎng)絡(luò)進(jìn)行處理,使用鄰接矩陣存儲(chǔ)有向圖數(shù)據(jù),并為每個(gè)有向圖構(gòu)建一個(gè)節(jié)點(diǎn)連接關(guān)系矩陣As,由出度矩陣和入度矩陣組成,同時(shí)對(duì)度值進(jìn)行歸一化處理[23]。以計(jì)算出度矩陣中A2,3的值為例,使用I2節(jié)點(diǎn)到I3節(jié)點(diǎn)的出邊的數(shù)量1 除以I2節(jié)點(diǎn)總出邊數(shù)量2 得到A2,3的值1/2。構(gòu)建節(jié)點(diǎn)連接關(guān)系矩陣可以讓模型學(xué)到豐富的雙向關(guān)系,而不是簡(jiǎn)單的單向轉(zhuǎn)移關(guān)系。例如對(duì)于物品點(diǎn)擊序列(I1,I2,I3,I2,I4,I5),節(jié)點(diǎn)連接關(guān)系矩陣如圖4 所示。同理,也可以生成物品類別點(diǎn)擊序列(C1,C2,C3,C2,C4,C5)的節(jié)點(diǎn)連接關(guān)系矩陣。

圖4 節(jié)點(diǎn)連接關(guān)系矩陣Fig.4 Node connection relationship matrix

4)將物品會(huì)話圖和物品類別會(huì)話圖同時(shí)輸入到對(duì)應(yīng)的圖神經(jīng)網(wǎng)絡(luò)(GNN)中,GNN 提取會(huì)話圖中節(jié)點(diǎn)信息以及節(jié)點(diǎn)的連接關(guān)系信息進(jìn)行學(xué)習(xí),得到物品嵌入向量Ei以及物品類別的嵌入向量Ti。學(xué)習(xí)以及更新過(guò)程的計(jì)算式如下:

5)將得到的物品嵌入向量Ei和物品類別嵌入向量Ti輸入到注意力網(wǎng)絡(luò)中,使用注意力機(jī)制,對(duì)不同的物品和物品類別添加不同的注意力獲取得到不同注意力級(jí)別的物品嵌入向量和物品類別嵌入向量。隨后將和輸入到向量表示融合層(Fusion Layer),通過(guò)融合相加得到增強(qiáng)后的物品嵌入向量Vi。

6)將物品嵌入向量Vi序列輸入到GRU 中,通過(guò)對(duì)用戶點(diǎn)擊序列時(shí)序信息的提取與學(xué)習(xí),得到嵌入向量Sh。將嵌入向量Sh與所有候選物品vi進(jìn)行計(jì)算,得到每個(gè)候選物品vi的得分,最后經(jīng)過(guò)softmax激活函數(shù)后得到模型的預(yù)測(cè)輸出:

模型使用交叉熵函數(shù)作為損失函數(shù),計(jì)算式如下:

3 實(shí)驗(yàn)與結(jié)果分析

3.1 數(shù)據(jù)處理

本文在公開(kāi)的Yoochoose 數(shù)據(jù)集和Diginetica 數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)。Yoochoose 數(shù)據(jù)集是在RecSys Challenge 2015上發(fā)布的一個(gè)公開(kāi)數(shù)據(jù)集,由英國(guó)的在線零售商提供的用戶在2014年的行為記錄,包括點(diǎn)擊、購(gòu)買等組成。數(shù)據(jù)集共包含了9249729 件商品的共計(jì)33003994 條用戶點(diǎn)擊記錄,每條記錄包含SessionID、商品ID、商品類別以及時(shí)間戳四個(gè)信息,數(shù)據(jù)集并未提供用戶的相關(guān)信息。Diginetica 數(shù)據(jù)集來(lái)自CIKM Cup 2016比賽,包含43097件商品共計(jì)204771條用戶點(diǎn)擊記錄,每條記錄包含SessionID、用戶ID、商品ID、商品類別ID、時(shí)間戳和日期六個(gè)信息,數(shù)據(jù)集中雖然有用戶ID 字段,但是字段值均為NA。

由于會(huì)話長(zhǎng)度過(guò)短或者物品瀏覽次數(shù)過(guò)少的數(shù)據(jù)可使用價(jià)值不高,故參照Li等[12]和Liu 等[13]的做法,本文過(guò)濾了會(huì)話長(zhǎng)度等于1和物品出現(xiàn)次數(shù)少于5次的會(huì)話數(shù)據(jù)。同時(shí),參照Tan 等[29]的做法,對(duì)于輸入的會(huì)話序列進(jìn)行了序列生成,通過(guò)對(duì)會(huì)話序列的拆分,生成了對(duì)應(yīng)的會(huì)話序列和標(biāo)簽。本文對(duì)數(shù)據(jù)集進(jìn)行了拆分:對(duì)于Yoochoose 數(shù)據(jù)集,使用最后一天的數(shù)據(jù)作為測(cè)試集,其他數(shù)據(jù)作為訓(xùn)練集;而對(duì)于Diginetica 數(shù)據(jù)集,使用最后7 天的數(shù)據(jù)作為測(cè)試集,其他的數(shù)據(jù)作為訓(xùn)練集。由于Yoochoose數(shù)據(jù)集數(shù)據(jù)量很大,為了便于模型的訓(xùn)練和測(cè)試,本文使用常用的切分方式,將數(shù)據(jù)集切分成了1/64和1/4兩個(gè)數(shù)據(jù)集。數(shù)據(jù)集的相關(guān)統(tǒng)計(jì)信息如表1所示。

表1 數(shù)據(jù)集統(tǒng)計(jì)信息Tab.1 Dataset statistics

3.2 基準(zhǔn)方法

為了評(píng)估本文所提出的模型的有效性,將該模型與相關(guān)工作中提出的8種模型進(jìn)行了對(duì)比。

1)POP[10]:是一種最簡(jiǎn)單的流行度預(yù)測(cè)方法,該方法將數(shù)據(jù)集中出現(xiàn)頻率最高的商品進(jìn)行推薦。該方法思想簡(jiǎn)單,實(shí)現(xiàn)也不復(fù)雜,在某些場(chǎng)景中仍然十分有效。

2)S-POP[10]:是一種基于當(dāng)前會(huì)話的流行度預(yù)測(cè)方法,該方法為用戶推薦當(dāng)前會(huì)話下出現(xiàn)頻率最高的商品,推薦列表會(huì)隨著會(huì)話的變化而不斷變化。

3)Item-KNN(Item-basedK-Nearest Neighbour)[5,30]:基于物品的K-近鄰算法,通過(guò)召回和會(huì)話最相似的物品進(jìn)行推薦。該方法主要通過(guò)計(jì)算物品與物品之間的余弦相似度來(lái)衡量物品之間的相似性,在會(huì)話推薦中主要根據(jù)物品的共現(xiàn)度來(lái)計(jì)算物品的相似度。

4)BPR-MF(Bayesian Personalized Ranking-Matrix Factorization)[31]:目前最常用的矩陣算法之一,主要通過(guò)隨機(jī)梯度下降法優(yōu)化pairwise排序損失函數(shù)。

5)FPMC(Factoring Personalized Markov Chains)[32]:該模型將馬爾可夫鏈模型和矩陣分解結(jié)合,為每個(gè)用戶生成單獨(dú)的轉(zhuǎn)移概率矩陣,然后生成轉(zhuǎn)移矩陣立方體。該模型主要用于推薦系統(tǒng)中預(yù)測(cè)未知物品引起用戶興趣的可能性,并以此排出物品推薦列表。

6)GRU4REC[10]:第一個(gè)提出將循環(huán)神經(jīng)網(wǎng)絡(luò)用于會(huì)話推薦任務(wù)的方法,利用循環(huán)神經(jīng)網(wǎng)絡(luò)建模用戶的點(diǎn)擊序列,并根據(jù)物品“熱門程度”進(jìn)行采樣,根據(jù)采樣結(jié)果劃分正負(fù)樣本,使用基于排名的損失函數(shù)。

7)神經(jīng)注意力模型(Neural Attentive session-based Recom Mendation,NARM)[12]:在循環(huán)神經(jīng)網(wǎng)絡(luò)會(huì)話推薦模型的基礎(chǔ)上,加入了注意力機(jī)制。該模型利用注意力機(jī)制從隱狀態(tài)捕獲用戶在當(dāng)前會(huì)話的目的,并結(jié)合用戶瀏覽時(shí)的序列行為進(jìn)行物品推薦。

8)STAMP[13]:該模型引入記憶力與注意力機(jī)制,同時(shí)考慮用戶長(zhǎng)/短期興趣,并通過(guò)提高短期興趣的權(quán)重來(lái)減輕興趣漂移對(duì)推薦結(jié)果的影響。

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

在推薦場(chǎng)景中,大多數(shù)基于會(huì)話的推薦能夠推薦的物品數(shù)量都受到一定因素的影響,因此大多數(shù)推薦問(wèn)題仍然是Top-K推薦問(wèn)題。本文在評(píng)測(cè)模型時(shí),采用Precision@K和MRR@K(Mean Reciprocal Rank@K)兩種評(píng)價(jià)指標(biāo),這兩種指標(biāo)也是目前基于會(huì)話的推薦場(chǎng)景中最常用的評(píng)價(jià)指標(biāo)。

Precision@K用于衡量基于會(huì)話的推薦系統(tǒng)的預(yù)測(cè)準(zhǔn)確性,表示推薦結(jié)果列表中排在前K個(gè)推薦物品中,有正確物品的樣本所占的比例,該算法的定義為:

其中:nhit表示前K個(gè)推薦物品中有正確物品的樣本數(shù)量;N表示測(cè)試集的總樣本數(shù)。

MRR@K表示平均倒數(shù)排名,在Precision@K方法的基礎(chǔ)上,加入了商品位置的影響。在推薦物品列表中物品的位置越靠前,則其值越大,反之越小,當(dāng)物品不在前20 個(gè)推薦物品中時(shí),該值為0。該算法的定義為:

其中:N代表測(cè)試集的總樣本數(shù);rank(i)表示第i個(gè)測(cè)試樣本的推薦列表中正確物品所在的排列位置。

本文在評(píng)價(jià)模型時(shí),取用K=20,因?yàn)樵诖蠖鄶?shù)的基于會(huì)話的推薦系統(tǒng)的實(shí)際場(chǎng)景中,大多數(shù)用戶僅僅關(guān)注出現(xiàn)在第一頁(yè)的推薦物品。

3.4 參數(shù)設(shè)置

本文模型的參數(shù)設(shè)定如下:初始學(xué)習(xí)率為0.001,學(xué)習(xí)率衰減系數(shù)為0.1,訓(xùn)練的Batch 大小為100,迭代次數(shù)為10。物品向量以及物品類別向量的維度均為100,物品圖神經(jīng)網(wǎng)絡(luò)嵌入表示層、物品類別圖神經(jīng)網(wǎng)絡(luò)嵌入表示層以及GRU 層的隱層節(jié)點(diǎn)個(gè)數(shù)均為100。所有權(quán)重矩陣均采用服從N(0,0.1)的高斯分布的隨機(jī)數(shù)初始化,L2 懲罰系數(shù)為10-5。模型的損失函數(shù)使用交叉熵?fù)p失函數(shù),使用Adam 優(yōu)化方法對(duì)模型參數(shù)進(jìn)行求解。

3.5 結(jié)果分析

為了驗(yàn)證本文提出的基于會(huì)話的多粒度圖神經(jīng)網(wǎng)絡(luò)推薦模型(SRMGNN)在加入了類別信息之后對(duì)模型效果的提升,本文將該模型與未加入類別信息的基于會(huì)話的圖神經(jīng)網(wǎng)絡(luò)推薦模型(Session-based Recommendation with Graph Neural Network,SRGNN)進(jìn)行了對(duì)比實(shí)驗(yàn),對(duì)比實(shí)驗(yàn)在Yoochoose 1/64、Yoochoose 1/4和Diginetica三個(gè)數(shù)據(jù)集進(jìn)行。

在Yoochoose 1/64 數(shù)據(jù)集上,模型SRMGNN 與模型SRGNN的Precision@20和MRR@20的效果如圖5所示。

在Yoochoose 1/64 數(shù)據(jù)集上,SRMGNN 和SRGNN 在第4個(gè)epoch 之后準(zhǔn)確率未出現(xiàn)較大波動(dòng),模型趨于穩(wěn)定。在模型達(dá)到穩(wěn)定狀態(tài)后,SRMGNN 相較于SRGNN,在Precision@20和MRR@20 兩種評(píng)價(jià)指標(biāo)上,均有更好的表現(xiàn),表明融合了物品類別信息后的模型能夠?qū)W習(xí)到點(diǎn)擊序列更多的信息,在推薦時(shí)有更好的表現(xiàn)。同時(shí)從圖5 中模型準(zhǔn)確率的走勢(shì)來(lái)看,SRMGNN效果提升更快更明顯。

圖5 Yoochoose 1/64數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果Fig.5 Experimental results on Yoochoose 1/64 dataset

在Yoochoose 1/4數(shù)據(jù)集上,模型SRMGNN 與模型SRGNN的Precision@20和MRR@20的效果如圖6所示。

在Yoochoose 1/4 數(shù)據(jù)集上,SRMGNN 和SRGNN 在第6 個(gè)epoch之后準(zhǔn)確率未出現(xiàn)較大波動(dòng),模型趨于穩(wěn)定。在模型達(dá)到穩(wěn)定狀態(tài)后,SRMGNN 在Precision@20 和MRR@20 兩種評(píng)價(jià)指標(biāo)上,效果明顯優(yōu)于SRGNN,峰值差達(dá)到了1.25 個(gè)百分點(diǎn)和1.54 個(gè)百分點(diǎn),且相較于Yoochoose 1/64 數(shù)據(jù)集的峰值差0.51 個(gè)百分點(diǎn)和0.55 個(gè)百分點(diǎn),效果提升更明顯。從圖6模型準(zhǔn)確率的走勢(shì)來(lái)看,SRGNN 在前幾次的迭代過(guò)程中,準(zhǔn)確率明顯有較大的波動(dòng)情況,而SRMGNN 的準(zhǔn)確率處于不斷上升的狀態(tài)??梢钥闯?,SRMGNN 在融合了類別信息后具有更強(qiáng)的魯棒性,更不容易受到其他因素的影響。

圖6 Yoochoose 1/4數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果Fig.6 Experimental results on Yoochoose 1/4 dataset

在Diginetica 數(shù)據(jù)集上,模型SRMGNN 與模型SRGNN 的Precision@20和MRR@20的效果如圖7所示。

在Diginetica 數(shù)據(jù)集上,SRMGNN 和SRGNN 在 第6 個(gè)epoch之后準(zhǔn)確率未出現(xiàn)較大波動(dòng),模型趨于穩(wěn)定。在模型達(dá)到穩(wěn)定狀態(tài)后,SRMGNN 在Precision@20 和MRR@20 兩種評(píng)價(jià)指標(biāo)上,效果均優(yōu)于SRGNN,峰值差達(dá)到了1.12 個(gè)百分點(diǎn)和0.36 個(gè)百分點(diǎn)。在模型效果的最佳效果上,SMRGNN 在Precision@20 的評(píng)價(jià)指標(biāo)上比SRGNN 高1.72 個(gè)百分點(diǎn),SMRGNN 在MRR@20 的評(píng)價(jià)指標(biāo)上比SRGNN 高0.49 個(gè)百分點(diǎn)。從圖7 模型準(zhǔn)確率的走勢(shì)來(lái)看,兩種模型在前幾次的迭代過(guò)程中,準(zhǔn)確率走勢(shì)比較類似,在后續(xù)的迭代過(guò)程中,SMRGNN 在兩種評(píng)價(jià)指標(biāo)上的結(jié)果均高于SRGNN,并且差距明顯且穩(wěn)定。綜合來(lái)看,SMRGNN 在Diginetica 數(shù)據(jù)集上相較于SRGNN有更好的表現(xiàn)。

圖7 Diginetica數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果Fig.7 Experimental results on Diginetica dataset

綜合在Yoochoose 1/64、Yoochoose 1/4和Diginetica數(shù)據(jù)集上的表現(xiàn)可知,融合物品類別信息,對(duì)模型的效果確實(shí)起到了提升作用,且在數(shù)據(jù)量較大的Yoochoose 1/4 數(shù)據(jù)集和Diginetica數(shù)據(jù)集上,效果提升更明顯。

在與其他8 個(gè)基準(zhǔn)方法的對(duì)比上,本文提出的SRMGNN同樣也有更優(yōu)異的表現(xiàn),具體結(jié)果如表2所示。表2中加粗的為本文所提出的模型的實(shí)驗(yàn)效果,由于內(nèi)存不足,無(wú)法初始化FPMC 模型,因此在Yoochoose 1/4 數(shù)據(jù)集上,F(xiàn)PMC 的實(shí)驗(yàn)結(jié)果并未公布。

表2 不同方法的實(shí)驗(yàn)結(jié)果對(duì)比 單位:%Tab.2 Experimental result comparison of different methods unit:%

從表2 可以看出,在Yoochoose 1/64 數(shù)據(jù)集上,STAMP 模型較NARM 模型,在Precision@20上提升了0.42個(gè)百分點(diǎn),在MRR@20 上提升了1.04 個(gè)百分點(diǎn),而本文所提出的模型SRMGNN 在STAMP 模型的基礎(chǔ)之上,在Precision@20 上進(jìn)一步提升了0.42 個(gè)百分點(diǎn),在MRR@20 上進(jìn)一步提升了0.13個(gè)百分點(diǎn)。在Yoochoose 1/4 數(shù)據(jù)集上,STAMP 模型相較NARM 模 型,在Precision@20 上提升了0.71 個(gè)百分點(diǎn),在MRR@20 上提升了0.77 個(gè)百分點(diǎn),而本文提出的模型SRMGNN 在STAMP 模型的基礎(chǔ)之上,在Precision@20 上進(jìn)一步提升了0.18 個(gè)百分點(diǎn),在MRR@20 上進(jìn)一步提升了1.28個(gè)百分點(diǎn)。在Diginetica 數(shù)據(jù)集上,本文提出的模型SMRGNN在NARM 模型基礎(chǔ)之上,在Precision@20 上進(jìn)一步提升了0.46個(gè)百分點(diǎn),在MRR@20上進(jìn)一步提升了0.87個(gè)百分點(diǎn)。

綜上,本文提出的基于會(huì)話的多粒度圖神經(jīng)網(wǎng)絡(luò)推薦模型(SRMGNN)在融合了物品類別信息后,模型更加穩(wěn)定,準(zhǔn)確率也進(jìn)一步提升,在數(shù)據(jù)量較大時(shí),模型效果提升更加明顯。

4 結(jié)語(yǔ)

在基于會(huì)話的推薦問(wèn)題中,目前大多數(shù)方法都只是使用點(diǎn)擊序列中物品的信息,而物品的其他信息如類別信息等沒(méi)有使用,導(dǎo)致模型學(xué)到的信息不夠充分。針對(duì)此問(wèn)題,本文提出了基于會(huì)話的多粒度圖神經(jīng)網(wǎng)絡(luò)推薦模型(SRMGNN),通過(guò)引入更粗粒度的物品的類別信息,模型可以學(xué)到更充分的信息,模型的泛化能力得到了提升。

但是,對(duì)于會(huì)話點(diǎn)擊序列的長(zhǎng)度對(duì)模型效果的影響,本文未作研究,后續(xù)可以針對(duì)點(diǎn)擊序列的長(zhǎng)度,進(jìn)行對(duì)比實(shí)驗(yàn),研究較長(zhǎng)會(huì)話點(diǎn)擊序列和較短會(huì)話點(diǎn)擊序列之間的差異。另外,用戶的長(zhǎng)期興趣和短期興趣對(duì)推薦的效果也有很大的影響,后續(xù)也可將用戶的長(zhǎng)短期興趣信息作為補(bǔ)充,進(jìn)一步研究用戶的長(zhǎng)短期興趣對(duì)模型泛化能力的影響。

猜你喜歡
會(huì)話類別物品
稱物品
“雙十一”,你搶到了想要的物品嗎?
誰(shuí)動(dòng)了凡·高的物品
有意冒犯性言語(yǔ)的會(huì)話含義分析
漢語(yǔ)教材中的會(huì)話結(jié)構(gòu)特征及其語(yǔ)用功能呈現(xiàn)——基于85個(gè)會(huì)話片段的個(gè)案研究
服務(wù)類別
找物品
論類別股東會(huì)
商事法論集(2014年1期)2014-06-27 01:20:42
中醫(yī)類別全科醫(yī)師培養(yǎng)模式的探討
沖突語(yǔ)的會(huì)話分析研究
朝阳区| 利辛县| 临高县| 洪雅县| 武威市| 太康县| 南投市| 麟游县| 确山县| 临夏县| 乾安县| 黄平县| 葵青区| 太和县| 盐边县| 福海县| 朝阳区| 治多县| 会理县| 和田市| 都江堰市| 阳朔县| 永寿县| 兴宁市| 夏邑县| 盘锦市| 洪湖市| 英吉沙县| 扶沟县| 大姚县| 永和县| 得荣县| 屏东县| 阳春市| 长岭县| 大悟县| 彝良县| 兴城市| 历史| 宁城县| 博野县|