1. 程式人生 > >【論文閱讀】POI2Vec: Geographical Latent Representation for Predicting Future Visitors

【論文閱讀】POI2Vec: Geographical Latent Representation for Predicting Future Visitors

《POI2Vec: Geographical Latent Representation for Predicting Future Visitors》

Shanshan Feng, Gao Cong, Bo An, Yeow Meng Chee. 2017,AAAI

Abstract

隨著位置感知型(location-aware)社交媒體應用的日益普及,興趣點(POI)推薦得到了廣泛的研究。然而現有的大部分研究是從使用者的角度出發,為使用者推薦POI。相比之下,我們考慮一個新的研究問題,即預測未來某個時期訪問特定POI的使用者。問題的難點在於難以有效地學習POI的序列轉換以及使用者偏好,並將其整合從而進行預測。我們提出了一個新的能夠結合地理因素影響的潛在表示模型POI2Vec,在建模使用者流動行為的過程中,這是非常重要的。我們注意到現有的表示模型沒有包含地理因素的影響,我們進一步提出一種方法來聯合建模使用者偏好和POI順序轉換的影響,以預測給定POI的潛在訪問者。我們在2個真實的資料集上進行實驗,證明我們提出的方法優於最新的POI預測和未來使用者預測方法。

Introduction

現有研究:

  • 關於使用者移動行為和POI推薦的建模問題,Cho, Myers, and Leskovec 2011; Ye et al. 2011
  • 使用者流動性受到其最近訪問點及個人興趣的高度影響,Cheng et al. 2013
  • word2vec,Mikolov and Dean 2013; Mikolov et al. 2013
  • 利用word2vec模擬使用者的連續簽到,Liu, Liu, and Li 2016
  • hierarchical softmax,Morin and Bengio 2005
  • 對於分層softmax的每一項,構造合適的二叉樹,Mnih and Hinton 2009

在POI2Vec中,每個POI被表示為一個潛在的低維空間中的向量,兩個向量之間的內積反映了兩個POI之間的相關性,利用分層的softmax來學習潛在的向量。
我們提出了一種新的能夠結合POI地理座標的構建二叉樹的方法,即將POI分到不同的區域中,在每個區域的POI上構建一個二叉樹。由於一個POI可能會影響領近地區的POI,因此我們將一個POI分配給多個鄰近區域。在生成的二叉樹中,一個POI可能會出現多次,來描述其和其他POI的關係。此外,我們還對使用者的偏好進行建模,即每個使用者用一個潛在向量表示。
我們通過考慮使用者偏好和順序遷移來共同學習使用者和POI的潛在表示。為了預測POI的潛在訪問者,我們考慮最近位置的使用者和最近位置未知的使用者。對最近位置已知的使用者,我們結合使用者偏好和序列遷移進行預測,對於最近位置未知的使用者,僅考慮使用者偏好。主要工作:

  • 結合POI的地理影響,預測未來幾小時內的潛在訪問者。
  • 結合使用者偏好和POI序列影響來預測POI的未來訪問者。
  • 位置推薦,Lian et al. 2014; Li, Ge, and Zhu 2016
  • 基於協同過濾方法的位置推薦,Yuan et al. 2013a; Ye et al. 2011
  • 基於因子分解模型,Cheng et al. 2012; Li et al. 2015
  • 對某個位置的使用者推薦問題,Yuan et al. 2013b; Zhao et al. 2015
  • 利用馬爾科夫鏈對序列的影響建模,Zhang, Chow, and Li 2014
  • 利用隱馬爾科夫鏈模型對序列的影響建模,Ye, Zhu, and Cheng 2013
  • 利用因式分解的個性化馬爾科夫鏈(FPMC)模擬個性化的POI遷移,Rendle, Freudenthaler, and Schmidt-Thieme 2010
  • 使用度量嵌入(Metric Embedding)來建模使用者偏好和POI遷移進行建模,Feng et al。2015
  • 考慮興趣點推薦的時間影響,Zhang and Wang 2015; Zhao et al. 2016; Liu et al. 2016
  • 合併類別轉換模式,He et al. 2016
  • 利用word2vec進行產品推薦,Wang et al. 2015
  • 利用word2vec對簽到序列進行建模,Liu, Liu, and Li 2016

Future Visitor Prediction Problem

我們用 U 來表示使用者的集合,用 L 表示POI的集合,則每個POI l 都與其地理座標 <lLat,lLon> H 表示歷史簽到資料集。每一個簽到元祖 (u,l,t) 表示使用者 u 在時間 t 時訪問地點 l 。給定POI,我們的目標是確定在幾小時內將會訪問POI的潛在訪問者,定義如下:
定義1: 考慮使用者集合 U 和POI集合 L ,給定POI l ,當前時間 t 和時間閾值 τ ,問題目標是確定在時間內訪問該POI的使用者集合 [t,t+τ]

POI2Vec Representation Model

POI2Vec序列轉換模型

潛在的表示方法 神經網路語言模型(Mikolov and Dean 2013; Le and Mikolov 2014)的最新進展表明,潛在表示方法可以有效地捕捉到單詞之間的順序語義關係,我們通過對兩個簽到資料集的分析得出,POI頻率分佈也遵循冪律分佈和詞頻分佈。我們可以據此用word2vec對簽到序列進行建模。

給定一個使用者 u 以及其當前的位置 luc ,上下文 C(luc) 是使用者 u 在訪問 luc 之前,在給定的時間域內訪問的POI。我們定義 C(luc)={luc,0<Δ(lui,luc)<τ} ,其中, Δ(lui,luc) 是訪問 lui luc 之間的時間間隔。POI序列建模的目標是給定POI的上下文,估計訪問一個POI的概率。
對於每一個POI l ,我們都用一個 D 維潛在空間的向量 w(l)RD 表示,我們採用連續詞袋模型(CBOW)(Mikolov and Dean 2013),即根據上下文預測某個詞的概率。概率 Pr(l|C(l)) 通過softmax定義如下:

Pr(l|C(l))=ew(l)Φ(C(l))/Z(C(l))
其中, Φ(C(l))=lcC(l)w(lc) 是上下文POI向量之和, Z(C(l))=liLew(li)Φ(C(l)) 是正則項。
我們採用分層的softmax,利用二叉樹進行計算。二叉樹的節點對應於每一個POI項。

納入地理影響 地理影響是建模序列遷移和使用者偏好的一個非常重要的因素,而現有的基於頻率的softmax結構不能捕捉到地理影響。因此我們為POI2Vec模型開發了一種地理二叉樹結構,將空間資訊合併到二叉樹中。由於附近的POI具有較高的相關性,因此應將它們在二叉樹中的位置也安排的更近。我們將POI劃分為二元區域的層次結構,使得附近的POI更可能聚集到同一個區域來。為構建POI的二叉層次結構,我們將每個區域遞迴地分割成兩個相同大小的子區域,知道區域至少有一邊的長度小於 2×θ ,其中 θ 是區域邊長大小的閾值。這樣,區域就是一個面積大於 θ×θ 平方的矩形。這些地域也應該以二叉樹的形式表示。如圖所示,我們首先將POI分成兩個相等的區域 R0 R1 。然後將 R0 分成 R00 R01 ,將 R1 分成 R10 R11

這裡寫圖片描述

為了將POI分配到其可能產生影響的多個區域,監獄使用者的移動受到空間距離的影響,因此我們考慮了每個POI的影響區域。影響區域定義為以每個POI為中心的 θ×θ 大小的正方形。如果POI l 的影響區域與二叉樹中的區域 R 重疊,則將 l 分配給區域 R 。例如,圖中以POI l1 為中心的正方形覆蓋到了區域 R01 R11