孫明陽,馬玉亮,袁 野,王國仁
1.東北大學(xué) 計算機(jī)科學(xué)與工程學(xué)院,沈陽 110167
2.東北大學(xué) 信息科學(xué)與工程學(xué)院,沈陽 110819
3.北京理工大學(xué) 計算機(jī)學(xué)院,北京 100081
興趣點(diǎn)推薦任務(wù)通常是面向用戶個體推薦一組該用戶可能感興趣的地點(diǎn)。隨著互聯(lián)網(wǎng)數(shù)據(jù)信息的海量化和地理社交網(wǎng)絡(luò)(geo-social networks,GSNs)的不斷發(fā)展,人與人之間的聯(lián)系越來越緊密。以往的用戶個體活動也逐漸發(fā)展為群組活動,推薦問題的主體也從用戶個體向群組進(jìn)行延伸。興趣點(diǎn)群組推薦問題也逐漸成為很多學(xué)者的研究熱門課題之一,且在娛樂、社交媒體、文旅活動[1-3]等領(lǐng)域具有廣泛的應(yīng)用。
興趣點(diǎn)群組推薦問題是向一組用戶推薦他們可能感興趣的一組地點(diǎn),例如幾個朋友想找一個地點(diǎn)聚會。在現(xiàn)實(shí)生活中,群組決策的方式復(fù)雜多樣,例如聽從朋友的意見、聽從專業(yè)人士的意見、堅持自己的觀點(diǎn)等。群成員可能會因?yàn)槠渌蓡T的決定而對自己的選擇產(chǎn)生變化,也可能因其專業(yè)性對群組最終決策擁有較大的話語權(quán)?,F(xiàn)有研究主要致力于將深度學(xué)習(xí)[4-6]的相關(guān)技術(shù)應(yīng)用于群組推薦系統(tǒng),并取得了良好的效果。
然而,現(xiàn)有的群組推薦模型很大程度上只適合處理無特定相關(guān)上下文信息的群組推薦任務(wù)。興趣點(diǎn)推薦問題具有很強(qiáng)的上下文信息相關(guān)性。具體而言,興趣點(diǎn)推薦的上下文信息主要包括時間、地點(diǎn)上下文信息。時間上下文信息表示用戶在某一時間段內(nèi)的偏好,地點(diǎn)上下文信息多數(shù)反映用戶到達(dá)新地方的偏好變化。此外,興趣點(diǎn)群組推薦通常存在興趣本地化和活動本地化的現(xiàn)象,其中興趣本地化是指不同地方的用戶興趣存在很大差別,活動本地化是指用戶通常在周邊進(jìn)行活動。然而,現(xiàn)有的興趣點(diǎn)群組推薦模型的群組聚合策略往往是靜態(tài)的,無法模擬復(fù)雜的動態(tài)決策過程。因此本文對地理社交網(wǎng)絡(luò)中的動態(tài)興趣點(diǎn)群組推薦展開研究,將用戶多維度嵌入學(xué)習(xí)和注意機(jī)制相結(jié)合,考慮地理社交網(wǎng)絡(luò)的動態(tài)特征,提出基于神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的動態(tài)興趣點(diǎn)群組推薦模型。
本文的主要貢獻(xiàn)如下:
(1)提出了一種新穎的面向地理社交網(wǎng)絡(luò)的群組推薦模型,該模型基于用戶的多維度偏好建模和群組決策的動態(tài)過程相結(jié)合,實(shí)現(xiàn)動態(tài)興趣點(diǎn)群組推薦。
(2)為了刻畫地理因素對用戶偏好的影響,本文在用戶偏好建模階段進(jìn)行多維度嵌入學(xué)習(xí),即融合群組成員的偏好、興趣點(diǎn)的空間和時間特性、協(xié)同用戶的影響,增強(qiáng)用戶偏好的表示學(xué)習(xí)。
(3)利用神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)并以群組成員的增強(qiáng)嵌入表示為核心實(shí)現(xiàn)決策過程的動態(tài)性,提高興趣點(diǎn)群組推薦的準(zhǔn)確率。
(4)在真實(shí)數(shù)據(jù)集上進(jìn)行了一系列的實(shí)驗(yàn),結(jié)果表明本文提出的模型在推薦命中率等方面優(yōu)于現(xiàn)有的群組推薦模型,充分驗(yàn)證了本文提出模型的有效性。
群組推薦方法大致分為兩類,基于內(nèi)存(memorybased)的方法和基于模型(model-based)的方法?;趦?nèi)存的方法又可細(xì)分為基于偏好聚合的方法和基于分?jǐn)?shù)聚合方法。其中基于偏好聚合方法的主要思想就是提取每個成員的偏好信息和群組成員間的關(guān)系信息,并將偏好信息整合形成一個偽概要文件,根據(jù)概要文件進(jìn)行推薦。例如文獻(xiàn)[7]在推薦電視節(jié)目的問題中,通過提取用戶的偏好來構(gòu)建概要文件,然后通過用戶概要文件聚合算法,形成一個共同的用戶配置文件來反映群體大部分人的偏好信息?;诜?jǐn)?shù)聚合方法的主要思想就是計算群組中每個成員對于候選物品的偏好分?jǐn)?shù),最后將分?jǐn)?shù)聚合并排列完成推薦。通常包括三種常用策略,即平均策略[8]、最小痛苦策略[9]、最大滿意策略[10]。
基于模型的群組推薦方法的主要思想是模擬群組決策過程相結(jié)合,設(shè)計出能更好反映實(shí)際的模型。例如Wang 等人[11]提出了BTF-GR(bidirectional tensor factorization model for group recommendation)模型,在社會群體背景下,考慮用戶與群組之間雙向的影響關(guān)系,即用戶偏好和群組決策之間的相互作用;Guo等人[12]將社會影響放在首位來設(shè)計組推薦模型,將個性、專業(yè)程度、社交網(wǎng)絡(luò)、用戶偏好等因素綜合考慮;Yin等人[13]同樣以社交影響為核心,并模擬群體其他成員對于某個推薦項(xiàng)的容忍(愿意接受不喜歡的內(nèi)容)和利他(愿意接受朋友喜歡的內(nèi)容)因素進(jìn)行建模。從群組推薦問題的衍生至今,用戶偏好不再是單一的因素所決定的,與社交網(wǎng)絡(luò)、社會影響[6]等相關(guān)因素相結(jié)合來更好地模擬現(xiàn)實(shí)中所做出的決策過程是目前更多人所研究的方向。近些年它們在傳統(tǒng)的推薦中得到了廣泛的應(yīng)用。目前很多學(xué)者致力于將深度學(xué)習(xí)的相關(guān)技術(shù)和方法應(yīng)用于群組推薦系統(tǒng)。例如He 等人[4]提出了GAME(graphical and attentive multi-view embeddings)群組推薦模型,該模型是基于用戶、推薦項(xiàng)與群組之間相互表示、相互影響的思想[5],從多個視圖出發(fā),并利用表示學(xué)習(xí)和神經(jīng)交互學(xué)習(xí)兩個部分來完成群組對推薦項(xiàng)分?jǐn)?shù)的動態(tài)預(yù)測過程。Tran 等人[14]提出了MoSAN(medley of sub-attention networks)群組推薦模型,利用次級注意網(wǎng)絡(luò)中群組成員之間的相互作用來動態(tài)分配群組成員的注意力權(quán)值完成群組偏好聚合過程。Cao等人[15-16]提出了AGREE(attentive group recommendation)模型,該模型將注意機(jī)制首次引入應(yīng)用于群組推薦領(lǐng)域,根據(jù)每個用戶的歷史數(shù)據(jù)對每個組成員動態(tài)地分配注意力權(quán)重,并在預(yù)測階段通過多層神經(jīng)網(wǎng)絡(luò)完成推薦。
在興趣點(diǎn)群組推薦問題中,Zhu等人[17]以興趣點(diǎn)的距離為中心,充分考慮群組決策時興趣點(diǎn)的合理性,并采用基于距離的預(yù)過濾和基于距離的排名來調(diào)整群組滿意度。現(xiàn)有的興趣點(diǎn)[18]推薦方法通過考慮類別、距離等多個方面來建模,以興趣點(diǎn)為核心,忽略了用戶偏好的影響,很少有研究能將GSNs中的特性同用戶偏好相結(jié)合進(jìn)行統(tǒng)一建模。并且現(xiàn)有模型方法的聚合策略大多數(shù)都是靜態(tài)的,這些靜態(tài)的預(yù)定義策略在設(shè)置群組成員權(quán)重過程中缺乏靈活性,不能準(zhǔn)確地反映群組成員在群組決策過程中動態(tài)的變化過程。因此本文提出了基于多維度偏好建模的動態(tài)興趣點(diǎn)推薦算法,實(shí)驗(yàn)表明該算法能夠有效地提高推薦的準(zhǔn)確率。
本章介紹論文中所使用的主要符號、興趣點(diǎn)群組推薦問題中的相關(guān)定義。常用符號及其描述如表1所示。
表1 符號描述Table 1 Notation description
定義1(地理社交網(wǎng)絡(luò))地理社交網(wǎng)絡(luò)將傳統(tǒng)的社交網(wǎng)絡(luò)同地點(diǎn)相結(jié)合,加入了位置因素,以便在社會結(jié)構(gòu)中的用戶可以共享嵌入位置信息。在GSNs中,本文使用Users={u1,u2,…,un}表示用戶,用POIs={p1,p2,…,pm}表示興趣點(diǎn)信息,每個地點(diǎn)由一個二元組(lat,lon)唯一確定且對應(yīng)現(xiàn)實(shí)世界中的某個具體位置。對于GSNs中的每個用戶可以隨時在GSNs中簽到并產(chǎn)生一條簽到記錄,其中簽到記錄表示為三元組(ui,pj,time)的形式。
表2 為Foursquare 中部分簽到數(shù)據(jù)示例。其中用戶和興趣點(diǎn)通過UserID和POI唯一確定,每個興趣點(diǎn)都對應(yīng)唯一的坐標(biāo)信息lat、lon,每條用戶活動記錄對應(yīng)一條時間戳信息time。
表2 Foursquare中的簽到數(shù)據(jù)示例Table 2 Example of check-in data on Foursquare
定義2(群組-興趣點(diǎn)感知圖)群組-興趣點(diǎn)感知圖如圖1 所示,主要由兩層網(wǎng)絡(luò)組成,包括用戶層和地點(diǎn)層,將用戶偏好與時間特性和空間特性相結(jié)合用于群組成員與地點(diǎn)時間的建模階段。定義為Gg={Vg,Eg},具體規(guī)則構(gòu)建如下:
圖1 群組-興趣點(diǎn)感知圖Fig.1 Group-POI awareness graph
(1)頂點(diǎn)集Vg包含群成員頂點(diǎn)和興趣點(diǎn)頂點(diǎn);
(2)邊集Eg包含在群成員和興趣點(diǎn)頂點(diǎn)之間,即如果在給定的時間段內(nèi)群成員訪問過該興趣點(diǎn),則它們之間存在一條邊,并且將邊賦予相應(yīng)的權(quán)值。其中權(quán)值的大小由群成員訪問頻次最高的興趣點(diǎn)與該興趣點(diǎn)之間距離來決定,計算公式如下:
問題定義在GSNs中,對于任意給定群組g和時間節(jié)點(diǎn)time,動態(tài)興趣點(diǎn)群組推薦的目標(biāo)是學(xué)習(xí)一個預(yù)測函數(shù)F(g,time,p|Θ),其中p為某個候選的興趣點(diǎn),Θ表示函數(shù)F的模型參數(shù)。
本文將模型分為表示學(xué)習(xí)層、表示聚合層、預(yù)測優(yōu)化層三部分。模型的整體架構(gòu)圖如圖2所示,將用戶的嵌入信息和地點(diǎn)信息作為模型的輸入,群組對于推薦興趣點(diǎn)的預(yù)測分?jǐn)?shù)作為模型的輸出。在進(jìn)行表示學(xué)習(xí)之前,本文先將用戶和興趣點(diǎn)進(jìn)行向量表示,將其作為模型中的基本表示單元。本文首先使用one-hot 編碼來表示用戶u∈Users和興趣點(diǎn)p∈POIs的所有狀態(tài),即。然后使用兩個可訓(xùn)練的矩陣E∈Rn×d和F∈Rm×d來將它們轉(zhuǎn)變?yōu)橥S的嵌入表示向量,即ui∈Rd和pj∈Rd。
在該部分,本文將用戶偏好表示分為三部分:用戶嵌入表示Us、用戶-興趣點(diǎn)嵌入表示Up、協(xié)同用戶嵌入表示Uc。并通過聚合策略最終得到用戶的最終嵌入表示。
3.1.1 用戶嵌入表示
在該部分本文將用戶自身嵌入表示Us作為用戶表示向量的一部分,它表示用戶的歷史偏好信息,考慮的是用戶的原始偏好。
3.1.2 用戶-興趣點(diǎn)嵌入表示
在該部分本文充分考慮用戶與地點(diǎn)簽到關(guān)系,從空間影響和時間影響兩方面出發(fā)對其進(jìn)行建模。空間影響是分析用戶日?;顒拥囊粋€重要因素。在以往的研究[19]中表明用戶的出行簽到數(shù)據(jù)往往與用戶中心距離服從冪律分布的特征。根據(jù)對用戶簽到記錄分析可以直觀地感受到:用戶的簽到記錄往往反映了用戶的中心活動范圍。用戶的簽到往往更傾向于簽到中心活動范圍附近的興趣點(diǎn)。時間影響同樣也扮演著重要的角色,用戶在不同時間段的訪問地點(diǎn)會有較大的差異性,例如用戶在中午更有可能訪問的是餐館而不是酒吧。
基于以上分析,本文首先將一天中的時間分為五部分{T0,T1,T2,T3,T4},分別表示早上8 點(diǎn)—11 點(diǎn)、中午12 點(diǎn)—14 點(diǎn)、下午15 點(diǎn)—18 點(diǎn)、晚上19 點(diǎn)—23點(diǎn)、半夜24點(diǎn)—7點(diǎn),然后以時間段信息為基準(zhǔn),將群成員活動記錄進(jìn)行篩選和分類,從而完成構(gòu)建群組-興趣點(diǎn)感知圖。
在模型中,用戶地點(diǎn)嵌入表示的形式化表示如式(6)所示:
本文對群組成員在特定時間段內(nèi)所訪問過的興趣點(diǎn)進(jìn)行加權(quán)求和表示,其中系數(shù)α(u,t)表示用戶對于興趣點(diǎn)的偏愛程度,并將地理因素同群組成員的偏好相結(jié)合。pt表示興趣點(diǎn)的嵌入表示。Nl表示群組-興趣點(diǎn)感知圖中興趣點(diǎn)的索引。
在GSNs中,用戶的偏好與興趣點(diǎn)之間的距離呈負(fù)相關(guān),即表現(xiàn)為用戶通常會選擇距離自己范圍即中心距離較近的區(qū)域進(jìn)行活動,即如果用戶曾經(jīng)訪問過該地點(diǎn),且用戶中心距離與該地點(diǎn)的距離越近,用戶再次訪問的可能性越大。反之則越小。因此,本文將群組-興趣點(diǎn)感知圖中權(quán)值的倒數(shù)作為用戶對于興趣點(diǎn)偏好的權(quán)重大小,并使用softmax 函數(shù)對權(quán)值大小進(jìn)行歸一化處理。
3.1.3 協(xié)同用戶嵌入表示
協(xié)同過濾思想[20-21]在推薦系統(tǒng)中得到了很廣泛的應(yīng)用,其根據(jù)物以類聚、人以群分的思想進(jìn)行推薦,即和自己興趣相投的喜歡同樣的物品。因此在興趣點(diǎn)群組推薦中,本文將用戶的協(xié)同用戶的偏好作為用戶偏好表示的一部分。
首先,本文將與該成員用戶在相同時間段且簽入超過15 個相同興趣點(diǎn)的用戶看作它的協(xié)同用戶。通過隨機(jī)采樣8個用戶,并將這8個用戶的嵌入表示進(jìn)行連接,然后通過非線性轉(zhuǎn)換得到用戶的協(xié)同用戶表示向量。
其中,Uc1,Uc2,…,Ucx表示協(xié)同用戶的嵌入表示,W(1)為可訓(xùn)練的權(quán)值矩陣,即W(1)∈Rd×d,b(1)為可訓(xùn)練的偏置,即b(1)∈Rd。σ為激活函數(shù)。
在該階段的最后一步就是將用戶表示的三部分進(jìn)行聚合,本文通過將用戶、地點(diǎn)、協(xié)同用戶的嵌入表示向量進(jìn)行聚合,得到一個用戶的最終嵌入表示,它不僅包含用戶的偏好信息,還將用戶的偏好信息同距離和時間相結(jié)合,并利用協(xié)同過濾的思想將用戶偏好進(jìn)行擴(kuò)展,得到了最終的用戶向量表示。這里本文采取常用的聚合策略進(jìn)行聚合。
GraphSage聚合[22]:將用戶、地點(diǎn)、協(xié)同用戶的嵌入表示向量進(jìn)行連接操作,然后對其進(jìn)行非線性變換。
其中,Us,Up,Uc分別表示用戶、地點(diǎn)、協(xié)同用戶的嵌入表示,W(2)為可訓(xùn)練的權(quán)值矩陣,即W(2)∈R3d×d,b(2)為可訓(xùn)練的偏置,即b(2)∈Rd。σ為激活函數(shù)。
在上個階段本文得到用戶的最終嵌入表示,即與時間、空間、相似用戶相結(jié)合的用戶偏好建模。在群組偏好聚合階段,本文旨在最大程度地模擬群組在進(jìn)行決策過程中的動態(tài)過程。群組的嵌入表示通過加權(quán)和形式來進(jìn)行表示,公式如式(11)所示。這個群組嵌入表示可以解釋為動態(tài)地聚合群組中所有成員的特征表示,可以很容易地與某個興趣點(diǎn)的嵌入表示進(jìn)行交互得到最終的預(yù)測分?jǐn)?shù)。
本文采用神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)中的注意力網(wǎng)絡(luò)[23]來動態(tài)地決定群組成員的權(quán)重變化矩陣。如果群組中的用戶去過候選興趣點(diǎn),則可以理解為它對于這個興趣點(diǎn)有一定的了解,它在群組決策過程中的權(quán)重會占用較大的比重。在神經(jīng)網(wǎng)絡(luò)中,一般通過注意力網(wǎng)絡(luò)來將該權(quán)重量化,并通過歸一化函數(shù)來將動態(tài)的注意力權(quán)重量化。如式(13)所示:
其中,W(4)、Wu、Wv為可訓(xùn)練的注意層矩陣,b(3)、b(4)為可訓(xùn)練的偏置,σ為激活函數(shù)。對于上述計算出的群組成員的權(quán)重系數(shù)ω(i,j),本文得到了群組偏好聚合的表示向量。
到目前為止,本文得到了群組對于某個特定興趣點(diǎn)和興趣點(diǎn)的嵌入表示向量。在預(yù)測階段,本文通過將兩部分嵌入表示向量乘積運(yùn)算,對兩個嵌入向量之間的相互利用進(jìn)行建模。該方法已經(jīng)在文獻(xiàn)[24-25]中被證明在神經(jīng)結(jié)構(gòu)的低層特征交互建模是非常有效的。然后本文通過設(shè)置多層感知機(jī)來捕獲群組與興趣點(diǎn)之間的非線性特征和高階相關(guān)性,如式(14)所示:
其中,?表示兩個向量的元素乘積,el為經(jīng)過L層感知機(jī)后的輸出向量,W1,W2,…,Wl為可訓(xùn)練的注意層矩陣,b1,b2,…,bl為可訓(xùn)練的偏置。σ為激活函數(shù),本文使用非線性的ReLU 作為激活函數(shù)。最后將多層感知機(jī)的輸出向量el轉(zhuǎn)換為預(yù)測分?jǐn)?shù),如式(15)所示:
本文采取鏈路預(yù)測中常用的成對學(xué)習(xí)的目標(biāo)函數(shù)來進(jìn)行訓(xùn)練,大多數(shù)的鏈路預(yù)測任務(wù)的結(jié)果取值為0或1,為了能與鏈路預(yù)測總體結(jié)果保持一致,只需將正樣本的排名高于負(fù)樣本即可。本文沿用上述思想,使用Ο表示訓(xùn)練集,三元組(g,p,n)表示群組g曾經(jīng)訪問興趣點(diǎn)p,但未訪問過興趣點(diǎn)n。即p表示正樣本,n表示負(fù)樣本。因此正樣本與負(fù)樣本的預(yù)測分?jǐn)?shù)差值為1,則目標(biāo)函數(shù)如下式所示:
算法1基于多維偏好建模的動態(tài)興趣點(diǎn)群組推薦
本節(jié)對基于多維偏好建模動態(tài)興趣點(diǎn)群組推薦算法進(jìn)行闡述,其過程如算法1所示。具體地,第3~9行為模型的第一階段,其中包括群組-興趣點(diǎn)感知圖的構(gòu)造過程、嵌入表示學(xué)習(xí)的過程,最終得到多維度偏好建模后的用戶嵌入表示。第10~13 行為模型的第二階段,在該階段利用神經(jīng)結(jié)構(gòu)中注意力網(wǎng)絡(luò)動態(tài)聚合群組偏好信息,最終得到群組偏好的嵌入表示。第14~16行為模型的第三階段,其中包括利用多層感知機(jī)得到預(yù)測分?jǐn)?shù),并根據(jù)目標(biāo)函數(shù)計算梯度,然后進(jìn)行多輪反向傳播更新模型中的參數(shù),直至模型不再收斂,完成訓(xùn)練。
在數(shù)據(jù)集方面,本文使用來自Foursquare 和Gowalla 兩個真實(shí)地理社交網(wǎng)絡(luò)的簽到數(shù)據(jù)集來進(jìn)行實(shí)驗(yàn)。其中,F(xiàn)oursquare 數(shù)據(jù)集包含24 941 個用戶,28 593 個興趣點(diǎn),1 196 247 次簽到;Gowalla 數(shù)據(jù)集包含5 628 個用戶,31 803 個興趣點(diǎn),620 686 次簽到。簽到信息包含用戶ID、興趣點(diǎn)ID、時間戳和坐標(biāo)信息。這兩個數(shù)據(jù)集的統(tǒng)計信息顯示在表3 中。對于興趣點(diǎn)群組推薦問題,在本文實(shí)驗(yàn)中使用文獻(xiàn)[17]提出學(xué)術(shù)模擬中常用的方法來捕獲群組的簽到信息。具體而言,如果幾個用戶在1 h內(nèi)訪問同一興趣點(diǎn),并且這幾個用戶相互之間存在社交關(guān)系,則這些用戶和興趣點(diǎn)構(gòu)成一條群組簽入信息。
本文采用廣泛使用的命中率(hits ratio,HR)和歸一化折損累積增益(normalised discounted cumulative gain,NDCG)作為評價指標(biāo)。命中率強(qiáng)調(diào)預(yù)測的準(zhǔn)確性,是指滿足用戶的需求的興趣點(diǎn)在返回的推薦結(jié)果中所占的比率。歸一化折損累積增益關(guān)心找到的這些興趣點(diǎn)是否放在用戶更顯眼的位置里,根據(jù)測試項(xiàng)出現(xiàn)的位置來進(jìn)行評估而不僅僅考慮它的出現(xiàn),即強(qiáng)調(diào)順序性。在實(shí)驗(yàn)中,本文考慮HR@K和NDCG@K來表示測試集中所有記錄的平均命中率和平均歸一化折損累積增益。對應(yīng)公式為式(17)和式(18),本文將推薦序列k的長度分別設(shè)置為5、10、15、20。
本文選取三種算法進(jìn)行對比,其中包括傳統(tǒng)的推薦協(xié)同過濾算法和基于注意力機(jī)制的群組推薦算法。其中傳統(tǒng)的協(xié)同過濾算法采用平均策略、最小痛苦策略、最大滿意三種不同的聚合策略。本文對四種基線方法進(jìn)行了綜合比較。
CF+AVG[8]:基于用戶的協(xié)同過濾算法以用戶為中心,通過用戶與用戶的相似性來評估組中每個用戶對于不同興趣點(diǎn)的推薦分?jǐn)?shù),然后利用平均聚合策略來評估群組推薦的最終分?jǐn)?shù)。
CF+LS[9]:基于用戶的協(xié)同過濾算法以用戶為中心,通過用戶與用戶的相似性來評估組中每個用戶對于不同興趣點(diǎn)的推薦分?jǐn)?shù),然后利用最小痛苦聚合策略,著重于群組中每個成員得分最低的興趣點(diǎn)分?jǐn)?shù)作為群組推薦的最終分?jǐn)?shù)。
CF+MS[10]:基于用戶的協(xié)同過濾算法以用戶為中心,通過用戶與用戶的相似性來評估組中每個用戶對于不同興趣點(diǎn)的推薦分?jǐn)?shù),然后利用最大滿意聚合策略,著重于群組中每個成員得分最高的興趣點(diǎn)分?jǐn)?shù)作為群組推薦的最終分?jǐn)?shù)。
AGREE[15-16]:該模型將注意機(jī)制首次應(yīng)用于群組推薦領(lǐng)域,根據(jù)每個用戶的歷史數(shù)據(jù)對每個組成員動態(tài)地分配注意力權(quán)重,并在預(yù)測階段通過多層神經(jīng)網(wǎng)絡(luò)得到群組對于某個特定興趣點(diǎn)的預(yù)測分?jǐn)?shù)。
實(shí)驗(yàn)1(嵌入維度的影響)對于嵌入維度d的取值,本文通過設(shè)置不同d的取值并在兩個數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如圖3所示。在實(shí)驗(yàn)中d的取值為16、32、64、128、256,并以K=10 為例。當(dāng)嵌入維度d的取值在128時命中率達(dá)到最大值,隨后性能便出現(xiàn)下降的趨勢。這是因?yàn)楸疚幕趯τ脩羝玫亩嗑S度建模,需要較大的嵌入維度編碼更多的用戶信息,過小的d不能較好地整合用戶偏好的相關(guān)信息,而過大的d則會出現(xiàn)數(shù)據(jù)的過擬合現(xiàn)象,導(dǎo)致整體性能下降。
圖3 不同嵌入維度對本文模型的影響Fig.3 Effect of different embedding dimensions on proposed model
實(shí)驗(yàn)2(命中率分析)本組實(shí)驗(yàn)分別在Foursquare、Gowalla兩個數(shù)據(jù)集上對興趣點(diǎn)的命中率指標(biāo)進(jìn)行測試。當(dāng)嵌入維度d取值128時,通過與對照算法在命中率指標(biāo)上的結(jié)果進(jìn)行分析,以表明本文提出模型的有效性,實(shí)驗(yàn)結(jié)果如表4、表5所示。
表4 Foursquare數(shù)據(jù)集中HR@K 性能對比Table 4 HR@K performance comparison on Foursquare dataset
實(shí)驗(yàn)結(jié)果表明本文算法取得了最佳的效果,基于分?jǐn)?shù)聚合的算法例如CF+AVG、CF+LS 等在預(yù)測興趣點(diǎn)問題中表現(xiàn)較差,而AGREE算法是基于神經(jīng)網(wǎng)絡(luò)的算法,兩者的實(shí)驗(yàn)結(jié)果對比表明AGREE算法的整體性能明顯高于傳統(tǒng)的方法,證明了預(yù)定義的策略已經(jīng)不能準(zhǔn)確地反映群組成員在群組決策過程中動態(tài)的變化過程。在與AGREE算法對比過程中,本文算法獲得了最佳的效果。尤其是在K取值為5、10 時,HR 指標(biāo)明顯高于對比算法,但是隨著K的取值不斷增加,本文算法同AGREE算法的命中率相差越來越小。這是由于隨著K的增加,算法的容錯率也在逐漸增加,對比算法也會在命中率指標(biāo)上有著不錯的表現(xiàn)。
實(shí)驗(yàn)3(歸一化折損累積增益分析)本組實(shí)驗(yàn)分別在Foursquare、Gowalla 兩個數(shù)據(jù)集上對興趣點(diǎn)的歸一化折損累積增益進(jìn)行測試。當(dāng)嵌入維度d取值128時,通過與對照算法在NDCG指標(biāo)上的結(jié)果進(jìn)行分析,以表明本文提出模型的有效性,實(shí)驗(yàn)結(jié)果如表6、表7所示。
表6 Foursquare數(shù)據(jù)集中NDCG@K 性能對比Table 6 NDCG@K performance comparison on Foursquare dataset
表7 Gowalla數(shù)據(jù)集中NDCG@K 性能對比Table 7 NDCG@K performance comparison on Gowalla dataset
實(shí)驗(yàn)結(jié)果表明本文算法在K的所有取值上NDCG 指標(biāo)均取得了最佳效果,上文中提到隨著K的增加,本文算法的命中率與對比算法的結(jié)果越來越接近,但NDCG指標(biāo)仍然明顯高于對比算法,即目標(biāo)興趣點(diǎn)的預(yù)測分?jǐn)?shù)位于預(yù)測集的前列。表明本文算法能夠更加準(zhǔn)確地建模用戶和群組偏好,同時也證明了本文算法的有效性。
本文提出了一種解決興趣點(diǎn)群組推薦問題的新方法,首先本文從用戶的偏好表示出發(fā),以GSNs 中的特性為核心進(jìn)行多維度偏好建模并進(jìn)行表示學(xué)習(xí),增強(qiáng)用戶偏好的表示學(xué)習(xí)。然后利用神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)中的注意機(jī)制動態(tài)地進(jìn)行偏好的聚合。最后在兩個真實(shí)數(shù)據(jù)集上的實(shí)驗(yàn)表明本文算法的整體性能優(yōu)于現(xiàn)有算法,證明了本文算法的有效性。
在未來的研究中,本文提出了兩個可擴(kuò)展的方向。為了保證推薦的準(zhǔn)確性和高質(zhì)量,對用戶偏好建模得相對復(fù)雜,導(dǎo)致訓(xùn)練時間較長,因此在未來的研究中可以通過簡化用戶偏好模型,衡量訓(xùn)練時間和準(zhǔn)確率之間的關(guān)系,并設(shè)計出訓(xùn)練時間與準(zhǔn)確率的收益函數(shù),使得推薦的收益得到最大化。本文的研究重點(diǎn)是如何從已有的用戶記錄中挖掘有效的信息,然而冷啟動問題是推薦系統(tǒng)中面臨的挑戰(zhàn)之一,因此在未來的研究中,如何對沒有用戶記錄或者存在較少用戶記錄的用戶完成推薦是研究的重要方向之一。