【论文阅读】Next Point-of-Interest Recommendation with Inferring Multi-step Future Preferences
Metadata
authors:: Lu Zhang, Zhu Sun, Ziqing Wu, Jie Zhang, Yew Soon Ong, Xinghua Qu container:: Proceedings of the Thirty-First International Joint Conference on Artificial Intelligence year:: 2022 DOI:: 10.24963/ijcai.2022/521 rating:: ⭐⭐⭐ share:: false comment:: 学习目标 POI 的左右上下文信息,将用户轨迹分为历史轨迹和当前轨迹,历史轨迹使用 Transformer 用以表示未来偏好,当前轨迹使用 LSTM 学习并进行多步预测,最后整合结果。
前言
2022 年 IJCAI 的一篇论文,POI 推荐:Next Point-of-Interest Recommendation with Inferring Multi-step Future Preferences
问题描述
OverView
论文认为,用户的下一个行为可能会受到过去和当前的行为外,还会受到多步的未来行为的影响,因为他们可能心里有活动计划。如下图所示,Alice 在轨迹 ① 中前往了距离公司l3l_3l3较近的餐厅l4l_4l4,这说明她的行为受到最近的行为影响;另一方面在轨迹 ② 中,Alice 在离开图书馆l6l_6l6之后,并没有前往较近的餐厅l5l_5l5,而是前往了较远的餐厅l7l_7l7,之后去了电影院l8l_8l8和购物l9l_9l9,这说明她在行动之前已经有了计划。
论文提出Context-aware Future Preference inference Recommender (CFPRec),联合对用户过去、当前和未来的顺序行为进行建模,以获得更具表现性的偏好表示。此外,论文设计了一个未来的偏好提取器,以一种自融合的方式从过去的行为偏好中推断出隐含的未来偏好。
说白了就是进行多步预测,再对多步预测的结果进行处理。
CFPRec
模型整体结构如下图所示:
Past Preference Encoder
为了从用户历史行为中学习用户偏好,论文采用了双向 Transformer 结构,主要基于两个原因:
- 在训练过程中,Transformer 能够同时学习目标 POI 左右两侧的上下文信息,对 POI 的表征能力强;
- 其次,它在捕获非连续签到和聚合轨迹中最相关的行为的上下文相关性方面具有强大的能力。
Current Preference Encoder
Future Preference Extractor
就像之前提到的,论文期望通过融合未来的行为捕获更准确的用户偏好。诚然,在实际的 POI 推荐中,用户的未来行为是不可知的,仍有一些基于双向的方法在模型训练中编码了过去和未来的行为,即对目标 POI 的左右上下文进行建模,但在预测任务中,由于无法获得未来行为,限制了捕获用户偏好的能力。
这篇论文根据用户日常行为的周期性提出了一个提取器,包含两层的 Attention,通过自融合的方式推断隐含的未来偏好行为。
Intra-sequence Attention Aggregation
由于用户通常在相同的时间上下文中表现出类似的偏好(即周期属性),因此论文设计了一个时间感知的注意力器,根据时间背景来识别在过去的轨迹中与未来最相关的行为。
Inter-sequence Attention Aggregation
序列内注意层(Intra-sequence)强调了未来时间上下文背景对轨迹内相关行为的影响。此外,用户的日常顺序偏好也在不断变化,因此,论文提出了一个序列间注意层(Inter-sequence)来模拟不同轨迹间的序列偏好演变过程。
使用动态的u作为查询向量(query)关注每一条轨迹偏好:
Model Training and Complexity Analysis
其中η∈[0,1]为超参数,平衡 POI 预测和辅助任务。
算法流程图如下所示:
实验
Datasets
论文的数据集为 Foursquare,从中选择了三个城市:Singapore(SIN),New York City(NYC),Phoenix(PHO)
Result
Ablation Study
- 去除 past preference encoder 中的辅助任务;
- 去除 future preference extractor;
- 只进行单步未来偏好预测;
- 将 future preference extractor 中的 Attention 替换为平均池化;
- 去除 past preference encoder 和 future preference extractor
总结
论文最主要的思路,也就是对目标 POI 的左右上下文进行建模,这一点其实并不复杂,但关键是如何表示用户在未来的偏好需求。这篇论文给出的方法是通过区分当前轨迹和历史轨迹,从历史轨迹中学习规律,作为未来偏好的依据。对于位置,时间,类别的处理,这篇论文单独提出来 3 个辅助任务,这样的方法就消融实验的结果来看似乎也算可行。
参考资料
- [1] Next Point-of-Interest Recommendation with Inferring Multi-step Future Preferences