POI(point of interest)的推薦氓奈,事實上就是興趣點的推薦,也就是對地理位置的推薦舀奶,在美團育勺,點評等業(yè)務(wù)場景比較適用,于是決定開始看幾篇相關(guān)的論文腹躁。最近在思考如何把看過的論文做個轉(zhuǎn)化南蓬,而不是處于那種看了就忘,忘了又看的狀態(tài)烧颖,所以決定開始寫博客炕淮。當然是比較簡單的。鳖悠。嘻嘻乘综。
1.引言
隨著web2.0時代的到來,location-based social networks (LBSNs)在最近幾年出現(xiàn)了胞皱。許多用戶都會在去玩去吃飯時進行簽到打卡九妈,所以將用戶的這些簽到信息用在個性化推薦萌朱,對于在特定地點對特定用戶進行廣告投遞,和對用戶進行新地點的探索有重要的意義酒贬。
不像傳統(tǒng)的桌面推薦翠霍,比如(電影,音樂等的推薦)零如,POI推薦是將移動用戶和物理地點(觀光地點)等融合起來的锄弱,所以棵癣,面臨了更多挑戰(zhàn):
1)數(shù)據(jù)稀疏:對POI地點的點評信息是要比對電影音樂等評價的花費要更昂貴的(畢竟你得實際去那一趟),并且很多用戶由于隱私,不愿意簽到河劝。使得POI中的數(shù)據(jù)很稀疏,這使得大部分的協(xié)同過濾方法都GG了牌里。
2)環(huán)境因素:POI推薦不僅要考慮用戶個人的偏好务甥,還有考慮時空上下文
3)冷啟動:無論什么推薦都會有的問題
4)用戶偏好的動態(tài)變化:用戶的喜好是會隨著時間的變化而變化敞临,而捕捉到這種興趣的遷移是十分有意義的。所以POI推薦是基于用戶最近的喜好和用戶所處的時空環(huán)境做推薦的奏黑。
為了應對以上四種挑戰(zhàn)编矾,我們提出了一種新的方法,來將以下四種因素融合起來蹂匹。
1)序列影響:事實證明人類的活動是存在序列模式的凹蜈,比如用戶一般會在機場和酒店間存在序列的check in信息踪区。
2)地理信息:人們趨向于訪問與他們目前所處的POI相近的POI
3)時間循環(huán)因素:人們在一天的活動模式中是存在規(guī)律的。比如早上九點到辦公室静尼,中午12點出現(xiàn)在飯店传泊。所以對于推薦而言眷细,他在午餐時間出現(xiàn)在飯店的概率是比出現(xiàn)在酒吧概率高的。
4)語義因素:Whrrl數(shù)據(jù)集證明同一用戶的check-in信息表現(xiàn)出了語義相似性普舆。
雖然目前很多方法都提出了將上述幾種因素進行融合,但是沒有這樣一種將所有都融合起來的方法(=祖能。=)养铸,并且不能很好擴展模型轧膘。另一方面,目前的方法不能夠很好的支持實時的推薦鳞滨,1)重新訓練模型非常耗費時間椿浓;2)不能夠很好的追蹤用戶喜好的變化扳碍,因為用戶最近的checkin信息會被淹沒在大量的數(shù)據(jù)中。雖然最近有markov-based的文章通過挖掘用戶時序行為模式來進行預測碱蒙,但是沒有考慮除了序列之外的其他幾個因素赛惩。
最近趁餐,embedding 技術(shù)被廣泛地使用到了各個領(lǐng)域,本文在embedding的基礎(chǔ)上季惯,提出了一種graph-based embedding called GE臀突,特別的候学,我們使用二部圖來捕捉POI-POI(序列影響),POI-地理位置(地理因素)隐圾,POI-time slots(時間因素),POI-content words(語義因素)硕盹,然后我們將這四種異質(zhì)的網(wǎng)絡(luò)圖embedding到低維空間中(how?)。最后啊胶,為了追蹤動態(tài)的用戶喜好變化焰坪,最后提出的模型是將用戶最近喜好和時空上下文的embedding結(jié)合起來進行推薦(原文是:To support real-time & context-aware recommendation, the final recommendations are made based on the embeddings of the user’s latest preferences and the spatiotemporal context in the shared latent space.)文章的主要貢獻如下:
1)就目前所知,我們是第一個將上述幾個因素全部考慮進來融合的儒恋。
2)我們提出了一種graph-based的embedding model來學習POI黔漂,時間炬守,地理位置,語義的表示酣藻,然后基于學習到的這些表示鳍置,提出了新奇(税产?感覺有點類似于attention)的模型來進行用戶喜好建模。
3)做了大量的試驗后撤卢,發(fā)現(xiàn)我們的很好放吩。
2.Graph-based embedding model
2.1 problem formulation
文章中用到的符號羽杰。
definition1:(POI)是一個特定的地點。有三個屬性:identifier莉测,geographical location and content唧喉,分別用v,lv,Wv來表示八孝。
definition2:(check-in activity)由五元組組成(u, v, lv, τ, Wv),其中τ代表用戶u在時間τ訪問了地點v
definition3:(user profile)這里面是一系列由與用戶相關(guān)的check-in activity組成的子姜,并且按時間戳順序排序
definition4:(POI-POI graph)denoted as Gvv = (V ∪ V哥捕,Evv)嘉熊,V是一系列check-in的POIs,Evv是他們之間的邊
definition5:(POI-Region)denoted as Gvr=(V∪R鸽捻,Evr)御蒲,當v在region時诊赊,兩個有連邊
definition6:(POI-time)denoted as Gvt = (V ∪ T, Evt)碧磅,連邊權(quán)重是指在某一時間片中POI訪問的越頻繁權(quán)重越大
definition7:(POI-word)denoted as Gvw = (V ∪ W,Evw)丰榴,
然后通過把這幾個圖embedding到低維的共享的空間四濒,我們就能得到~v, ~r, ~t and ~w的表示。
然后將問題也形式化一下戈二,在給定數(shù)據(jù)集D的情況下喳资,有一個query q=(u,l,τ)仆邓,然后給出topk的 POI。
2.2 模型描述和優(yōu)化
2.2.1 二部圖的表示
受LINE的啟發(fā)(很多都提到了LINE绒北,是時候?qū)W習一波了,好像是能夠從大型的異質(zhì)網(wǎng)絡(luò)中學習embedding)
首先定義一個條件概率(這個用底下的KL散度推一下贴汪,不難):
因為上述計算很麻煩扳埂,于是采用負采樣來優(yōu)化模型阳懂。
接下來開始將四張圖放在一起聯(lián)合學習embedding,目標函數(shù)和各部分的表示如下
最后進行對用戶喜好的動態(tài)建模 柜思。之前的一樣隱空間模型等對用戶喜好建模都十分耗時岩调,所以本文使用最近用戶訪問的POI的表示來建模,并且隨著時間τ越遠赡盘,該項POI的效果逐漸衰減号枕。
finally。來看下文章如何進行推薦的陨享。文章還是很巧妙的把上述幾種embedding融合在一起了葱淳。(但是文章推薦給用戶的是之前沒有訪問過的POI,這里感覺有點過于強硬赞厕,萬一用戶是呈周期性的想要訪問某個點,所以我感覺應該把之前訪問過的和未訪問過一起加起來計算定硝,并賦予不同權(quán)重給他們皿桑。個人見解哈哈。)
接下來就是實驗部分啦,文章的實驗部分進行的十分詳細唁毒。建議可以去看看蒜茴。不僅使用了基礎(chǔ)的baseline,還將自己提出的算法進行了變種浆西。分別驗證了不同因素對于推薦的影響因素粉私。很強~,就不一一貼了近零,可以自己去找論文看哇诺核。