【论文阅读】ST-PIL: Spatial-Temporal Periodic Interest Learning for Next Point-of-Interest Recommendation
authors:: Qiang Cui, Chenrui Zhang, Yafeng Zhang, Jinpeng Wang, Mingchen Cai
container:: Proceedings of the 30th ACM International Conference on Information & Knowledge Management
year:: 2021
DOI:: 10.1145/3459637.3482189
rating:: ⭐⭐⭐
share:: false
comment:: 模型主体为 LSTM,分别学习长期和短期的用户行为模式,并通过 Attention 融合
前言
CIKM,2021:ST-PIL: Spatial-Temporal Periodic Interest Learning for Next Point-of-Interest Recommendation
问题描述
分别给定用户集合U={u1,u2,⋯,u∣U∣}, POI 集合P={p1,p2,⋯,p∣P∣}以及类别集合C={c1,c2,⋯,c∣C∣},其中每个位置pi都有一个对应的(lat,lon)坐标相关联。
(check-in)一个用户u在t时刻的 check-in 可以表示为ht=(pt,ct,wt,mt,gt),分别表示地点,类别,星期,小时以及地区。
(user trajectory)用户轨迹是由特定用户的一系列时间顺序的签到记录来定义的,即H={h1,h2,⋯,ht−1}。
(next POI recommendation)给定用户u的活动轨迹H,预测用户u最可能去的 POI top-k。
OverView
通过对用户 POI 访问轨迹及其上下文信息(如时间、空间)的研究,可以对 POI 的预测提供帮助:
- 用户的活动受到时间的限制,并表现出天和小时的模式。例如一些用户会在周末去度假;一些用户会在晚上去餐厅;
- 用户在不同区域经常表现出特定的行为模式;
- 用户会在一个特定的时间访问同一个 POI,即小时维度上的模式。
论文提出 Spatial-Temporal Periodic Interest Learning network (ST-PIL),分别学习长期和短期的用户行为模式。充分考虑周期性,学习空间、时间上下文信息,构建了日、小时、区域和小时区域粒度的周期性数据。
ST-PIL
模型架构如下图所示:
Embedding Layer
论文使用 Geohash-5 对 GPS 位置进行编码,得到G={g1,g2,⋯,g∣G∣}。时间信息表示为 day of weekW={w1,⋯,w7}以及小时时间M={m1,⋯,m24}。
Geohash 将 GPS 空间信息表示区域信息
Long-Term Module
在长期模块中,论文使用 day of week 作为时间上下文信息,并使用层内注意力来学习长期兴趣特征。
首先,论文构建与用户签到序列长度相同的每日掩码序列,并将所有签到序列按天划分,得到 daily embedding。例如,使用序列d=[1,0,1,⋯,0]表示用户在星期一发生的访问行为,以此进行按天为单位的划分。接着通过平均池化操作并进行全连接,得到 7 天的模式特征L=[l1;l2;⋯;l7]。
之后,论文应用 attention 获取每日模式的层次特征,query 向量为:
qt=[pt,ct,wt,mt,gt]
并应用 Bahdanau attention:
ejtetlt=veTtanh(V1qt+V2ljt)=softmax({e1t,e2t,⋯,e7t})=j=1∑7ejtljt
其中ve,V1,V2为可学习权重矩阵。
Short-Term Module
短期模块在捕获基本的顺序模式和上下文感知模式方面起着重要的作用,例如,小时、区域和小时区域周期模式。
上图展示了短期序列St={S1t,S2t,S3t,S4t}的生成过程。具体来说,当前时间步为t=36,小时时间为mt=23,区域为gt=47。
- S1为用户最近访问的 POI 序列;
- S2为用户最近访问的当前区域内的 POI;
- S3为用户最近访问的小时时间接近的 POI;
- S4为S2和S3条件的交集;
之后,对于每个短期序列应用 LSTM 获取特征信息:
skt=LSTM(Skt),k={1,2,3,4}
由于每个序列都意味着一个特定的移动模式,论文使用四个 LSTM 而不是一个来避免碰撞。
Inter-level Attention
经过以上步骤,在当前时间步中共获得了 5 个特征{lt,s1t,s2t,s3t,s4t},应用 Bahdanau attention:
alt=vaTtanh(V3qt+V4lt)
其中va,V3,V4为可学习权重矩阵,alt为lt的权重。类似地,可以得到其他特征的权重:
xt=[altlt,as1ts1t,as2ts2t,as3ts3t,,as4ts4t]
最后得到了层次间特征xt。
Prediction Layer
最后将 query 向量以及最终特征输入 MLP 得到输出:
yt=MLP([qt,xt])
损失函数为交叉熵损失函数:
L=−i=1∑Nyi⋅log(p(yi)+(1−yi)⋅log(1−p(yi)))
实验
Datasets
Results
Ablation Study
总结
模型主体仍是基于 LSTM,主要的创新点在于分别学习长期和短期的用户行为模式,即考虑每天,每小时的模式特征,同时从消融实验看,在短期模式中的 4 个特征也有一定帮助。
参考资料