李 旭,李景文,2+,姜建武,2,俞 娜
(1.桂林理工大學(xué) 測(cè)繪地理信息學(xué)院,廣西 桂林 541006;2.桂林理工大學(xué) 廣西空間信息與測(cè)繪重點(diǎn)實(shí)驗(yàn)室,廣西 桂林 541006)
隨著智能移動(dòng)設(shè)備和信息技術(shù)的飛速發(fā)展,利用用戶的簽到信息為用戶推薦心儀的興趣點(diǎn)(point-of-interest,POI)已成為眾多學(xué)者研究的重點(diǎn)內(nèi)容[1,2]。POI推薦是根據(jù)用戶的地理位置、訪問時(shí)間和簽到數(shù)據(jù)等一系列帶有用戶行為標(biāo)簽的上下文信息為用戶推薦符合其個(gè)性化喜好的POI[3],其不僅為學(xué)術(shù)界和工業(yè)界研究用戶的個(gè)性化喜好和行為模式提供了新的切入點(diǎn),還能幫助商家挖掘用戶行為習(xí)慣,從而給商家?guī)砭薮蟮慕?jīng)濟(jì)效益[4]。然而,在實(shí)際應(yīng)用中用戶的簽到記錄與時(shí)間、地理位置和評(píng)論信息等因素密切相關(guān),這些因素來自不同的領(lǐng)域,有不同的組成結(jié)構(gòu)與表達(dá)方式,會(huì)對(duì)POI推薦造成不同程度的影響。因此,如何根據(jù)多種異構(gòu)類型的上下文信息挖掘用戶的潛在偏好,將時(shí)間、地理與用戶個(gè)人偏好等因素融入到POI推薦模型中,為用戶生成符合其個(gè)性化喜好的POI推薦列表,是POI個(gè)性化推薦服務(wù)的難點(diǎn)內(nèi)容。
為了解決以上問題,本文提出一種基于矩陣分解的上下文感知興趣點(diǎn)推薦方法,利用矩陣分解模型融合用戶偏好、地理位置和訪問時(shí)間等POI上下文信息,并通過隨機(jī)梯度下降法優(yōu)化矩陣分解模型的參數(shù),從而提高POI推薦的準(zhǔn)確度,滿足不同用戶的個(gè)性化喜好。
近年來,已有大量學(xué)者對(duì)POI推薦技術(shù)進(jìn)行了研究,大部分的POI推薦主要是利用各種推薦算法并結(jié)合上下文信息進(jìn)行推薦。
在地理位置信息的應(yīng)用方面,龔衛(wèi)華等[5]通過分析用戶的簽到數(shù)據(jù),發(fā)現(xiàn)用戶的簽到行為具有空間聚類現(xiàn)象,因此在POI推薦中特別強(qiáng)調(diào)地理影響力的作用,并通過矩陣分解對(duì)其進(jìn)行建模。Zhang等[6]通過引入社會(huì)正則化和使用歸一化函數(shù)來模擬社會(huì)影響和地理影響,并將其融入到矩陣分解模型中。在Zhang的基礎(chǔ)上,Lian等[7]提出一種聯(lián)合地理建模和基于隱式反饋的矩陣分解POI推薦模型,該模型利用二維核密度估計(jì)捕獲用戶移動(dòng)數(shù)據(jù)中的空間聚類現(xiàn)象,有效緩解了POI數(shù)據(jù)的稀疏性,提高了POI推薦的準(zhǔn)確性。Zhang等[8]提出一種對(duì)地理影響力進(jìn)行建模的POI推薦方法,該方法考慮用戶和POI的位置來模擬地理影響,并使用概率因子模型對(duì)其進(jìn)行建模,可以更準(zhǔn)確地預(yù)測(cè)用戶在位置上的偏好,從而更好的對(duì)POI進(jìn)行推薦。
在時(shí)間信息的利用方面,Ding等[9]為了研究評(píng)論文本中時(shí)間因素對(duì)用戶選擇POI的影響,提出了一種針對(duì)特定時(shí)間的時(shí)空距離度量嵌入模型(ST-DME),該模型利用簽入的時(shí)間和地理順序?qū)傩詠碛行У亟S脩魧?duì)于特定時(shí)間的偏好。Yin等[10]針對(duì)POI推薦中信息過載問題,在協(xié)同過濾算法中融入時(shí)間因素,通過對(duì)用戶進(jìn)行聚類和建立時(shí)間遺忘曲線反映用戶個(gè)性化喜好,從而提高算法運(yùn)行的效率。原福永等[11]提出了一種融合時(shí)間序列的動(dòng)態(tài)POI推薦算法,將地理位置與時(shí)間流行度相結(jié)合,預(yù)測(cè)POI的評(píng)分,從而提高POI推薦的準(zhǔn)確性。
除了地理位置信息與訪問時(shí)間信息,其它上下文信息對(duì)POI推薦也有著重要的影響。Yao等[12]利用高階張量來融合社會(huì)上下文信息,并通過基于Tensor因式分解的協(xié)作過濾方法建模用戶偏好。陳炯等[13]為提高POI推薦精度,綜合考慮了社交、內(nèi)容等多種POI上下文信息挖掘用戶行為偏好。Ma等[14]通過分析用戶的社交關(guān)系,提出一種具有社交正則化的矩陣分解框架,并取得了較好的推薦效果。
以上研究雖然在一定程度上考慮了上下文信息對(duì)POI推薦的影響,但只是通過協(xié)同過濾算法或者矩陣分解模型對(duì)上下文信息進(jìn)行簡單的線性組合,未充分挖掘用戶之間的相互關(guān)系,并且缺乏對(duì)時(shí)間因素以及推薦多樣性的統(tǒng)一分析,不能最大程度體現(xiàn)個(gè)性化推薦結(jié)果。
對(duì)于特定的POI點(diǎn),POI網(wǎng)絡(luò)M表示POI點(diǎn)序列
表1 用戶-POI偏好矩陣
傳統(tǒng)的基于用戶的協(xié)同過濾算法利用余弦相似度計(jì)算用戶之間訪問POI的相似性,本文在余弦相似度中引入時(shí)間變量,不同用戶在相同時(shí)間訪問同一興趣點(diǎn)的頻率越高,用戶之間的相似度越高。其計(jì)算公式如式(1)所示
(1)
其中,sim(ui,t,uj) 表示用戶ui與uj在t時(shí)間段訪問POI的相似度,Num(ui,t,p) 表示用戶ui在t時(shí)間段訪問興趣點(diǎn)p的次數(shù),Num(uj,t,p) 表示用戶uj在t時(shí)間段訪問興趣點(diǎn)p的次數(shù)。
令兩個(gè)時(shí)間序列之間的相似性為所有用戶Num(u)在任意兩時(shí)刻之間相似度的平均值,時(shí)間ti與tj的相似度sim(ti,tj) 如式(2)所示
(2)
為了解決融入時(shí)間因素后帶來的數(shù)據(jù)稀疏問題,增強(qiáng)時(shí)間序列的使用效率,提高POI的推薦效果,引入時(shí)間間隔d,使用平滑技術(shù)對(duì)時(shí)間相似度sim(ti,tj) 進(jìn)行處理。用戶ui在ti時(shí)刻訪問興趣點(diǎn)p的預(yù)測(cè)評(píng)分score(ui,ti,p) 如式(3)所示
(3)
根據(jù)式(1)、式(2)、式(3),得到融合時(shí)間序列的用戶之間相似度sim(ui,dt,uj) 如式(4)所示
(4)
融合時(shí)間序列基于用戶的協(xié)同過濾算法的評(píng)分公式如式(5)所示
(5)
實(shí)際生活中用戶訪問POI時(shí),熱門POI是最先吸引用戶關(guān)注的,只有在熱度相對(duì)較高的POI中根據(jù)用戶的喜好推薦相應(yīng)的POI,才能更好達(dá)到個(gè)性化推薦效果。因此,本文提出POI流行度的概念,根據(jù)某個(gè)POI的用戶訪問人數(shù)及用戶分享的POI的照片計(jì)算其受歡迎程度。某興趣點(diǎn)pi的流行度計(jì)算公式如下
(6)
在POI推薦的眾多上下文信息中,POI的地理信息是進(jìn)行推薦的核心內(nèi)容。由地理學(xué)第一定律(Tobler’s First Law of Geography)可知:任何事物都有相關(guān)性,POI間距越小,用戶訪問的概率越大[15]。而在用戶實(shí)際的訪問軌跡中,發(fā)現(xiàn)用戶對(duì)于POI位置的訪問服從冪律分布。冪律分布如式(7)所示
f(x)=a×x-k
(7)
其中,f(x) 為概率密度函數(shù),x為變量,a、k為參數(shù)。
基于冪律分布“POI離用戶越近,用戶訪問概率越大;POI離用戶越遠(yuǎn),用戶訪問概率越小”的原則,將式(7)變?yōu)橹笖?shù)函數(shù),得到式(8)如下
(8)
其中,simgeo(pi,pj) 表示興趣點(diǎn)pi與pj之間的相似性,lat、lng分別表示興趣點(diǎn)的緯度和經(jīng)度,δ為距離調(diào)節(jié)因子,調(diào)整興趣點(diǎn)間距離影響的大小。
在用戶實(shí)際訪問POI的過程中,大部分POI都有著明確的訪問時(shí)間要求,并且不同的POI其訪問時(shí)間要求也不同。比如,某POI規(guī)定在9:00~17:00這一時(shí)間段內(nèi)用戶能夠訪問,超出這個(gè)時(shí)間段則禁止用戶訪問。因此,針對(duì)POI訪問時(shí)間的問題,本文提出了基于POI最佳訪問時(shí)間的推薦。
(9)
其中,tmax表示POI禁止用戶訪問時(shí)間,tmin表示POI允許用戶開始訪問的時(shí)間。
POI的個(gè)性化推薦是一個(gè)受多種因素影響的復(fù)雜的決策過程,用戶的個(gè)性化偏好對(duì)于POI推薦的準(zhǔn)確性起主導(dǎo)作用,但是用戶所處場(chǎng)景的情景信息也對(duì)POI推薦有著至關(guān)重要的影響。本節(jié)提出一個(gè)融合上下文信息的矩陣分解模型(context-aware matrix factorization model,CAMF),在融合用戶偏好與情景信息對(duì)POI進(jìn)行個(gè)性化推薦的同時(shí),利用梯度下降法優(yōu)化CAMF模型參數(shù),從而更好擬合用戶偏好和情景信息,提高POI推薦的準(zhǔn)確性和個(gè)性化,為人們提供高效實(shí)時(shí)的智慧服務(wù)。
圖1為CAMF模型框架。CAMF模型將融合時(shí)間序列的協(xié)同過濾算法與基于POI流行度的推薦結(jié)合,體現(xiàn)用戶自身偏好,其計(jì)算公式如下
(10)
圖1 CAMF模型框架
根據(jù)用戶自身偏好和POI地理位置、訪問時(shí)間等情景信息,得到POI個(gè)性化評(píng)分如下
(11)
對(duì)于POI的個(gè)性化評(píng)分,利用CAMF模型對(duì)其進(jìn)行求解,有效降低時(shí)間和空間上的復(fù)雜度。CAMF模型的目標(biāo)函數(shù)如下
(12)
(13)
其中,yu,p為POI的真實(shí)評(píng)分。 Θ(U,P,T) 為正則表達(dá)式,防止目標(biāo)函數(shù)L過擬合,U、P、T分別為用戶u、興趣點(diǎn)p和訪問時(shí)間t的隱含特征矩陣。
為了求得CAMF模型的最優(yōu)解,本文采用隨機(jī)梯度下降法來更新模型參數(shù)[16,17]。利用隨機(jī)梯度下降法更新模型參數(shù)的訓(xùn)練過程如下
(14)
(15)
(16)
其中,γ是學(xué)習(xí)率,本文取0.001。
CAMF模型優(yōu)化過程中,首先要對(duì)隱藏特征矩陣U,P,T進(jìn)行初始化,然后對(duì)POI的上下文信息進(jìn)行建模,得到用戶偏好與POI情景信息的數(shù)學(xué)表示,最后利用矩陣分解模型融入用戶偏好與POI情景信息,并利用隨機(jī)梯度下降法得到最優(yōu)的模型參數(shù),從而獲得POI的個(gè)性化推薦結(jié)果。CAMF模型具體的優(yōu)化過程如算法1所示。
算法1:CAMF優(yōu)化算法
輸入:POI數(shù)據(jù)集R,用戶-POI時(shí)間偏好矩陣D,照片數(shù)量N,學(xué)習(xí)率γ,調(diào)節(jié)因子α,β。
輸出:隱含特征矩陣U,P,T
(1)初始化隱含特征矩陣U,P,T
(2)Repeat
(3)//計(jì)算POI個(gè)性化評(píng)分
(4) for u from 1:|U| do
(5) for i from 1:|P| do
(6)scoreU(ui,ti,p)←式(5)
(7)pop(pi)←式(6)
(8)simgeo(pi,pj)←式(8)
(11)//更新模型參數(shù)
(12) update {U,P,T}
(13) end
(14) end
2.運(yùn)用有效方法,銜接算理和算法。處理算理與算法的關(guān)系注意:一是算理與算法是計(jì)算教學(xué)中有機(jī)統(tǒng)一的整體,算理和算法并重;二是算理教學(xué)需借助直觀,引導(dǎo)學(xué)生經(jīng)歷自主探索、充分感悟的過程,要把握好算法提煉的時(shí)機(jī)和教學(xué)的“度”;三要防止算理與算法間出現(xiàn)斷痕或硬性對(duì)接,必要時(shí)進(jìn)行指導(dǎo)。
(15)Until 模型收斂
(16)ReturnU,P,T
從去哪兒網(wǎng)攻略庫中爬取桂林的POI數(shù)據(jù)(http://travel.qunar.com/travelbook/list.htm?order=hot_heat),數(shù)據(jù)集包括POI地理位置數(shù)據(jù)(經(jīng)緯度)、用戶分享的POI照片、用戶訪問時(shí)間數(shù)據(jù)和帶有情感色彩的POI評(píng)論信息。
為使實(shí)驗(yàn)數(shù)據(jù)更加真實(shí)可靠,對(duì)實(shí)驗(yàn)數(shù)據(jù)集進(jìn)行以下預(yù)處理:①刪除分享照片數(shù)量少于5張和用戶評(píng)論數(shù)少于2條的用戶;②刪除與評(píng)論信息不一致的照片;③構(gòu)建用戶-POI時(shí)間偏好矩陣。預(yù)處理后的實(shí)驗(yàn)數(shù)據(jù)集包含了2536位用戶訪問5676個(gè)POI分享的136 592條評(píng)論數(shù)據(jù)和252 327張照片,見表2。
本文采用推薦算法中最常用的評(píng)價(jià)指標(biāo)準(zhǔn)確率(precision@k)和召回率(recall@k)作為衡量算法推薦POI的性能。但是,僅根據(jù)準(zhǔn)確率和召回率來判斷算法推薦性能的優(yōu)劣,具有一定的片面性。例如,推薦的POI集合中存在多個(gè)屬于同一類型的POI,即使推薦的準(zhǔn)確率和召回率較高,用戶的個(gè)性化滿意程度也不會(huì)太高。因此,為了避免推薦的景點(diǎn)重復(fù),提高用戶的個(gè)性化需求,在準(zhǔn)確率和召回率之外,本文引入多樣性(diversity@k)對(duì)推薦POI的類型進(jìn)行評(píng)價(jià)。推薦性能評(píng)價(jià)指標(biāo)定義如下
(17)
表2 預(yù)處理后的實(shí)驗(yàn)數(shù)據(jù)集
(18)
(19)
其中,pr表示推薦的POI集合,pu表示用戶訪問的POI集合。準(zhǔn)確率和召回率的值越大,表明推薦的效果越好。typepr表示推薦POI集合中POI的種類,k為推薦POI集合中POI的數(shù)量。在準(zhǔn)確率和召回率相差不大的情況下,POI多樣性值越大,推薦的效果越好,用戶對(duì)推薦的POI滿意度越高。
由4.1節(jié)可知,POI個(gè)性化評(píng)分是由基于用戶偏好與地理位置、訪問時(shí)間等情景信息的評(píng)分公式融合得到的,而這種評(píng)分公式融合的關(guān)鍵在于調(diào)節(jié)因子α和β的取值。圖2表示不同的α取值對(duì)基于用戶需求的評(píng)分值的影響。從圖2可知,α取值的變化對(duì)基于用戶需求的評(píng)分值產(chǎn)生的影響并沒有一定的規(guī)律性,不能準(zhǔn)確判斷出α取值對(duì)評(píng)分影響的優(yōu)劣性。并且,若α取值過大,而用戶的相似性又很低時(shí),就會(huì)產(chǎn)生過度偏置;若α取值過小,用戶對(duì)某POI分享的照片數(shù)量又很少時(shí),也會(huì)對(duì)用戶相似性很高的用戶不公平。因此,本文采用式(20)對(duì)α的取值進(jìn)行動(dòng)態(tài)調(diào)整,以保證用戶需求的合理性
(20)
其中,Num(pi) 表示用戶訪問興趣點(diǎn)pi的次數(shù),N(pi) 表示用戶分享的照片數(shù)量。
圖2 不同α值對(duì)POI得分的影響
調(diào)節(jié)因子β用來確定POI推薦時(shí)用戶偏好與情景信息的權(quán)重分配。在推薦個(gè)數(shù)、調(diào)節(jié)因子α不變的情況下,不同β值對(duì)推薦準(zhǔn)確率與召回率的影響如圖3所示。
圖3 β值對(duì)推薦性能的影響
β=0時(shí)表示只考慮POI情景信息的推薦,β=1時(shí)表示只考慮用戶偏好的推薦。從圖3可以看出,當(dāng)β從0到1逐漸變化時(shí),POI推薦的準(zhǔn)確率和召回率會(huì)逐漸升高,達(dá)到一個(gè)最高值后又逐漸降低,這說明進(jìn)行POI推薦時(shí)綜合考慮用戶偏好與POI情景信息比單純只考慮其中一方面的推薦效果都好。隨著β值的不斷變化,推薦準(zhǔn)確率與召回率的下降趨勢(shì)比上升趨勢(shì)要平緩一些,這說明隨著生活質(zhì)量的提高,用戶的個(gè)性化需求在POI推薦中占據(jù)著越來越重要的地位,且當(dāng)β=0.6時(shí),POI推薦的準(zhǔn)確率與召回率達(dá)到最大值,即用戶偏好的權(quán)重值為0.6,POI情景信息的權(quán)重值為0.4時(shí)推薦效率最佳。
4.4.1 影響因素分析
本文提出的CAMF模型融合了用戶偏好、POI流行度、地理位置和時(shí)間等上下文信息,為了驗(yàn)證本文提出的CAMF模型的先進(jìn)性,詳細(xì)說明用戶偏好、POI流行度、地理位置和時(shí)間這4種因素對(duì)POI推薦性能的影響程度大小,設(shè)計(jì)了4個(gè)簡化的CAMF模型,分別移除其中一個(gè)影響因素對(duì)POI進(jìn)行推薦,具體如下:
(1)CAMF-U:從CAMF模型中移除用戶偏好特征;
(2)CAMF-P:從CAMF模型中移除POI流行度特征;
(3)CAMF-E:從CAMF模型中移除地理位置特征;
(4)CAMF-T:從CAMF模型中移除時(shí)間特征。
將這4個(gè)模型與CAMF模型在數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),設(shè)置POI推薦個(gè)數(shù)N為3、5、7、10,使用準(zhǔn)確率和召回率作為評(píng)價(jià)指標(biāo)來判斷各個(gè)模型的推薦效果。實(shí)驗(yàn)結(jié)果如圖4和圖5所示。
圖4 不同上下文因素推薦準(zhǔn)確率對(duì)比
圖5 不同上下文因素推薦召回率對(duì)比
從圖4和圖5可以看出,在POI推薦個(gè)數(shù)確定的情況下,CAMF模型的推薦效果好于其它4種模型,這說明融合用戶偏好和其它上下文信息有助于提高POI的推薦性能。并且,用戶偏好、POI流行度、地理位置和時(shí)間這4種因素對(duì)POI推薦的影響程度為:用戶偏好>地理位置>POI流行度>時(shí)間。具體地說,雖然地理位置、POI流行度等上下文信息都能影響用戶的簽到行為,提高POI的推薦效果,但隨著國民經(jīng)濟(jì)和通訊技術(shù)的飛速發(fā)展,用戶自身偏好已成為POI推薦的決定性因素,對(duì)POI推薦準(zhǔn)確率和召回率的提高有著至關(guān)重要的影響,因此用戶偏好對(duì)POI推薦的影響最大。其次,由于POI推薦的特殊性,地理位置會(huì)極大限制用戶對(duì)于POI的訪問,用戶會(huì)傾向于訪問活動(dòng)范圍之內(nèi)的POI,這也與地理學(xué)第一定律[15]得出的結(jié)論一致。由于用戶對(duì)于POI的訪問并沒有嚴(yán)格的時(shí)間限制,并且可能因?yàn)槟承┯脩艄室忮e(cuò)開一些高峰的時(shí)間點(diǎn),從而使CAMF模型學(xué)習(xí)時(shí)間特征時(shí)產(chǎn)生偏差,因此,POI時(shí)間因素對(duì)POI推薦性能的影響最小。
4.4.2 算法性能比較
為了更好地展現(xiàn)CAMF模型的推薦效果,將CAMF模型與下列主流POI的推薦算法進(jìn)行對(duì)比:
(1)PMF[18]:根據(jù)用戶的評(píng)分?jǐn)?shù)據(jù),利用概率矩陣分解模型對(duì)興趣點(diǎn)進(jìn)行推薦。
(2)Rank-geoFM[7]:同時(shí)考慮時(shí)間上下文和地理影響,并將其融入到排序的矩陣分解模型中對(duì)興趣點(diǎn)進(jìn)行推薦。
(3)UTPG[11]:將基于用戶的協(xié)同過濾算法與地理位置和時(shí)間流行度相結(jié)合,預(yù)測(cè)POI的評(píng)分,從而提高POI推薦的準(zhǔn)確性。
(4)GSRT[13]:綜合考慮了社交、內(nèi)容、地理和時(shí)間等多種POI上下文信息挖掘用戶行為偏好,并采用乘法法則進(jìn)行融合從而對(duì)興趣點(diǎn)進(jìn)行推薦。
本文數(shù)據(jù)集中用戶一天訪問的POI大多在10個(gè)以下,因此設(shè)定推薦POI個(gè)數(shù)N為3、5、7、10。圖6和圖7給出了5個(gè)算法在推薦不同數(shù)量POI時(shí)準(zhǔn)確率和召回率的變化情況。整體而言,隨著POI推薦個(gè)數(shù)的增加,各種算法的推薦準(zhǔn)確率會(huì)降低,這是因?yàn)镻OI推薦數(shù)量的增多會(huì)增加用戶與時(shí)間的復(fù)雜性和POI地理位置的多樣性;但POI推薦的召回率會(huì)提高,這是因?yàn)殡m然POI推薦數(shù)量的增多了,但用戶訪問過POI的數(shù)量卻沒變。
圖6 不同算法準(zhǔn)確率對(duì)比
從圖6和圖7可以看出,在推薦POI個(gè)數(shù)確定的情況下,PMF模型的推薦準(zhǔn)確率和召回率都最低,因?yàn)槠渲煌ㄟ^用戶的評(píng)分?jǐn)?shù)據(jù)進(jìn)行POI推薦,沒有充分考慮上下文信息。Rank-geoFM模型融合了時(shí)間上下文和地理位置影響,但由于未充分學(xué)習(xí)用戶偏好,導(dǎo)致其推薦效果不佳。GSRT模型融合了社交、內(nèi)容、地理和時(shí)間等多種POI上下文信息挖掘用戶行為偏好,重現(xiàn)了用戶訪問POI時(shí)的情景,但其采用乘法法則對(duì)上下文信息進(jìn)行融合,限制了其推薦性能。UTPG模型不僅融合了時(shí)間上下文和地理影響,還基于用戶的協(xié)同過濾算法來學(xué)習(xí)用戶和POI的特征矩陣,充分考慮了用戶偏好在POI推薦中的影響。因此,UTPG模型相對(duì)于PMF、Rank-geoFM和GSRT模型,有著更好的推薦效果。
本文提出的CAMF模型無論在準(zhǔn)確率還是召回率上都高于其它的POI推薦算法,并且在推薦個(gè)數(shù)逐漸增多時(shí),其優(yōu)勢(shì)更加明顯。這是因?yàn)镃AMF模型成功地利用矩陣分解模型將用戶的個(gè)性化偏好和地理位置、訪問時(shí)間等情景因素結(jié)合起來,緩解了數(shù)據(jù)稀疏性,能夠捕捉到興趣點(diǎn)靜特征之間的潛在關(guān)聯(lián),使得為用戶推薦的POI更加的科學(xué)準(zhǔn)確。
圖7 不同算法召回率對(duì)比
4.4.3 推薦結(jié)果多樣性評(píng)估
為了對(duì)多樣性評(píng)估式(19)進(jìn)行說明,本文假定從桂林火車站(25.2670,110.2898)出發(fā),設(shè)置推薦個(gè)數(shù)k=5,距離調(diào)節(jié)因子δ=0.7,β=0.6。根據(jù)表2中的實(shí)驗(yàn)數(shù)據(jù),得到各POI的類別和評(píng)分見表3。
表3 POI類別與得分
根據(jù)為用戶推薦得分最高的POI的算法規(guī)則,可以得到為用戶u1推薦的POI集合為G1={獨(dú)秀峰王城景區(qū),漓江,蘆笛巖,銀子巖,陽朔西街},G2={獨(dú)秀峰王城景區(qū),漓江,銀子巖,圖騰古道,陽朔西街}。 從表3可知,這兩個(gè)POI集合的評(píng)分只相差0.0095分,很難通過得分的高低判斷哪個(gè)POI集合更能符合用戶需求,因此需要對(duì)POI集合進(jìn)行多樣性分析。根據(jù)POI多樣性計(jì)算公式(19),得到POI集合的多樣性得分如下:
diversity(G1)@5=-(1/5×log51/5+1/5×log51/5+2/5×log52/5+1/5×log51/5)=0.8277
diversity(G2)@5=-(1/5×log51/5+1/5×log51/5+1/5×log51/5+1/5×log51/5+1/5×log51/5)=1
因?yàn)閐iversity(G2)@5>diversity(G1)@5, 所以我們認(rèn)為第二個(gè)POI集合更符合用戶的個(gè)性化需求,為用戶推薦的POI集合為G2={獨(dú)秀峰王城景區(qū),漓江,銀子巖,圖騰古道,陽朔西街}。
本文提出一種基于矩陣分解的上下文感知興趣點(diǎn)推薦方法,在基于用戶的協(xié)同過濾算法中融入時(shí)間序列,有效緩解了數(shù)據(jù)的稀疏性。通過利用CAMF模型融合不同的上下文信息,能更好建模用戶的個(gè)人偏好和訪問情景,并利用隨機(jī)梯度下降法更新CAMF的模型參數(shù),提高了模型的運(yùn)行效率。最后,在去哪兒網(wǎng)獲取的數(shù)據(jù)集中進(jìn)行了實(shí)驗(yàn),結(jié)果表明本文提出模型比其它主流的POI推薦算法有著更高的準(zhǔn)確率和召回率,能滿足用戶的不同需求。在未來的工作中,將對(duì)上下文信息的提取與融合做進(jìn)一步研究,以便提高推薦的準(zhǔn)確性與滿意度。