论文阅读——MCN4Rec Multi-level Collaborative Neural Network for Next Location Recommendation

15 篇文章 0 订阅
6 篇文章 0 订阅

MCN4Rec: Multi-level Collaborative Neural Network for Next Location Recommendation

MCN4Rec:用于下一个位置推荐的多级协作神经网络

概要

下一个位置推荐在各种基于位置的服务中发挥着重要作用,为用户和服务提供商都带来了巨大的价值。现有方法通常使用明确的时间间隔对时间依赖性进行建模,或者从具有丰富上下文信息的定制兴趣点 (POI) 图中学习表示,以捕获 POI 之间的顺序模式。然而,这个问题显然很复杂,因为需要一起考虑各种因素,例如用户的偏好、空间位置、时间上下文、活动类别语义和时间关系,而大多数研究缺乏对协作信号的充分考虑。为了实现这一目标,我们提出了一种新颖的用于下一个位置推荐的多级协作神经网络(MCN4Rec)。具体来说,我们设计了一种具有逐级对比学习的多级视图表示学习,从局部和全局角度协作学习表示,以捕获用户、POI、时间和活动类别之间复杂的异构关系。然后,将因果编码器-解码器应用于签到序列的学习表示以推荐下一个位置。对四个现实世界签到移动数据集的广泛实验表明,我们的模型显着优于下一个位置推荐的现有最先进基线。消融研究进一步验证了所设计的子模块协作的好处。源代码可在 https://github.com/quai-mengxiang/MCN4Rec 获取。

1 INTRODUCTION

基于位置的社会网络(LBSN)的流行使得大量用户通过移动设备分享他们对兴趣点(POI)的体验,从而产生了大量的用户移动性签到数据。这些数据使得下一个地点推荐系统变得更加强大。现有方法在建模时间依赖性、学习表示和图模型方面做出了努力,但仍然存在一些限制,如未能有效学习用户、POI、时间和活动语义之间的相关性,以及数据稀疏性和冷启动问题。

we propose a Multi-Level Collaborative Neural Network for next location Recommendation, called MCN4Rec.

作者提出了一种用于下一个位置推荐的多级协作神经网络,称为 MCN4Rec。

为了缓解冷启动,模型通过对整体的历史轨迹进建模,结合了多级表示学习模块 ,并利用丰富的合作信号来学习各种用户的偏好和POI语义信息。为了捕获复杂的异构关系,模型包含一个多级视图的组件 ,表示学习从多个角度对签到数据进行建模。一个逐级对比表示学习 ,用于鼓励学习统一的语义空间;以及一个类别感知时间表示 ,用于将 POI 类别合并到时间嵌入中。然后,签到序列的表示被发送到因果编码器 以进一步学习序列移动模式,并且下一个位置偏好的推断受到多个解码器的约束。

贡献:

  • 提出了一种新颖的多级协作神经网络模型 MCN4Rec,来解决下一个位置推荐的数据稀疏、冷启动和复杂的相关学习问题。模型有效地利用用户移动数据中的各种丰富的合作信号来提高推荐性能。
  • 设计了一种新颖的逐级对比表示学习框架。通过精心设计的三个子组件,模型实现了签到数据的有效表示学习,捕获用户移动数据中复杂的多种异构交互关系。
  • 对四个现实生活中的出行签到数据集进行了广泛的实验。结果表明,模型在 Acc@1 和 MRR 方面明显优于最先进的基线,平均提高了 11.70% 和 8.28%。

2 RELATED WORK

2.1 Next Location Recommendation

先介绍了基于序列模型的下一个位置推荐算法,如Markov chains。他们无法对高价序列模型进行建模,因为他们主要学习连续签到之间的转换规则。

其次,介绍了基于RNN方法的模型,包括STRNN、HST-LSTM、STGN、LSTPM等,然而这些方法关注于对用户的轨迹序列模型进行建模,而忽略了LBSN的多因素协作信号,因此无法全面捕获时空推荐中的多种复杂异构关系。

最后,介绍了对比学习,他将自监督信号与对比学习表示视图之间的对齐结合起来进行数据增强,如NCL。引出在本文的工作中,提出了一种新的多级对比表示学习框架,通过对比学习获得不同视图之间的潜在语义关联,从而进一步提高稀疏数据情况下下一个位置推荐的性能。

2.2 Multi Factors of LBSN for Recommendation

基于位置的社交网络(LBSN)是一个具有挑战的任务,因为数据间复杂的异构关系。最近,基于图的模型因其对复杂异构关系建模的能力而受到关注,并已应用于位置推荐领域。如SGRec、DRAN、GETNext等。还有的研究用知识图谱去捕获异构关系,如STGCAN、Graph-Flashback。然而,上述方法往往忽略了LBSN中存在的某些因素,并且没有明确强调多个因素的协作。

在我们的工作中,我们采取综合方法,通过构建多级协作神经网络 来考虑所有潜在因素。我们的模型旨在捕获各种因素之间的协作信号 ,这使其成为 LBSN 推荐中解决这一问题的首次尝试。

3 PROBLEM DEFINITION

给出了相关定义和公式。

4 METHODOLOGY

MCN4Rec 由四个主要组件组成:multi-level view representation learning, level-wise contrastive representation learning, category-aware temporal representation,andsequence modeling module.

4.1 Multi-level View Representation Learning

在这里插入图片描述

详细介绍了如何从多级视角学习用户、兴趣点(POI)和活动类别的表示。这个过程涉及以下几个关键步骤:

  1. User-POI-Category Knowledge Graph(UPC-KG)

    • 作者首先设计了一个名为用户-POI-类别知识图谱(UPC-KG)的新型知识图谱,如图1所示。这个图谱整合了传统的用户-POI交互和POI-类别关系,并加入了POI之间的语义关系。
    • UPC-KG是一个异构图,包含用户集合、POI集合和类别集合的并集作为节点,不同类型的边集合作为边,以及关系三元组集合作为关系。
    • 作者构建了四种类型的边,分别代表用户-POI交互关系、POI-类别功能关系(每个POI可以对应多个类别)、POI-POI语义关系(POI可以提供相同的服务,通过POI-类别-POI来体现)和POI-POI空间关系(如距离近等)。
  2. 关系路径感知聚合(Relational Path-aware Aggregation)

    • 为了捕捉用户-POI交互中包含的多种语义关系,作者设计了一种关系路径感知聚合机制[1],该机制在GNN中实现。
    • 该机制通过多层聚合在UPC-KG中的用户、POI和类别实体的连接,从而将全局视角的UPC-KG中的关系路径信息整合到实体表示中。
    • 通过这种方式,模型能够反映用户行为的意图,并在聚合过程中保持关系的完整性。
    • 公式详细请看论文,论文说的非常详细易懂。

    [1] Xiang Wang, Tinglin Huang, Dingxian Wang, Yancheng Yuan, Zhenguang Liu, Xiangnan He, and Tat-Seng Chua. 2021. Learning intents behind interactions with knowledge graph for recommendation. In Proceedings of the Web Conference. 878–887.

  3. 局部视角图表示学习

    • 为了加强用户和POI之间以及POI和类别之间的关系,作者从UPC-KG中提取了两个重要的局部视角图:用户-POI视图图和POI-类别视图图。
    • 用户-POI视图包含了用户和POI之间的显式交互,反映了用户的空间偏好和POI之间的协作关系。
    • POI-类别视图在语义活动层面起作用,保留了POI之间的类别相关性,并反映了POI之间的语义共性。
    • 作者进一步使用图卷积网络(GCN)在这两个局部视角图上学习用户、POI和类别的表示。
  4. POI-POI语义图的构建

    • 为了加强POI之间的语义相关性,作者基于从POI-类别局部视角图中学习的POI表示构建了一个POI-POI语义图。
    • 通过计算每对POI之间的余弦相似度,并执行基于kNN的稀疏化操作,得到了一个稀疏的POI-POI语义图。
    • 然后,使用多层GCN更新POI节点的表示。

通过这些步骤,MCN4Rec能够从多个层次和视角学习丰富的表示,这些表示捕捉了用户行为的复杂性和多维度的交互关系,为后续的下一个地点推荐任务提供了基础。

4.2 Level-wise Contrastive Representation Learning

介绍了如何在MCN4Rec模型中使用级联对比表示学习来进一步提升用户、POI和活动类别表示的质量。这一部分的内容主要包括以下几个关键点:

  1. 对比学习的目标

    • 对比学习的目标是通过最大化不同视角之间表示的一致性来提高表示的质量。这样可以使模型更好地捕捉和利用数据中的复杂关系和模式。
  2. 局部级对比学习(Local-level Contrastive Learning)

    • 在局部级别的对比学习中,作者提出了一种方法,使得同一节点在不同局部视图中学习的表示相互作为正样本,而其他不相连节点的表示作为负样本。收到InfoNCE模型的启发,它通过最大化anchor样本与正样本之间的相似度,同时最小化anchor样本与负样本之间的相似度来实现损失计算,设计了不同局部视图之间的局部对比学习方法
    • 通过这种方式,模型被鼓励在不同的局部视图之间学习到一致的表示,从而强化了节点间的协作信号和关系。
  3. 全局级对比学习(Global-level Contrastive Learning)

    • 全局级别的对比学习旨在进一步整合全局视角和局部视角的表示。通过这种方式,模型不仅学习局部视图中的表示,还要学习如何将这些表示与全局视角中的表示对齐。
    • 这有助于模型在全局层面上捕捉更广泛的语义关联,同时也能够更好地理解和利用局部视角中的信息。
  4. 注意力机制的表示融合(Attention-based Representation Fusion)

    • 作者使用注意力机制来融合局部和全局视角中的表示。通过这种方式,模型能够为不同视角中的表示分配不同的权重,从而得到一个综合的、更有信息性的表示。
    • 注意力权重通过一个非线性变换(例如,tanh)和一个共享的注意力向量来计算,然后通过softmax函数进行归一化。
  5. 损失函数

    • 为了实现上述目标,作者定义了两种对比学习的损失函数:局部级对比损失和全局级对比损失。这些损失函数用于指导模型在学习过程中优化表示,以便它们在不同视角之间保持一致性。

文中有很详细的公式介绍和方法介绍感兴趣的可以去看一下~

通过这种级联对比表示学习方法,MCN4Rec模型能够有效地从多个视角学习数据的表示,同时确保这些表示在不同视角之间具有一致性和互补性。这有助于提高模型对下一个地点推荐任务的预测性能,尤其是在处理复杂和多维的用户行为数据时。

4.3 Category-aware Temporal Representation

介绍了如何在MCN4Rec模型中整合时间信息和活动类别信息,以增强时间表示的能力。这一部分的内容主要包括以下几个关键点:

  1. 时间分割

    • 作者首先将一天分割成24个时间槽,每个时间槽为60分钟,然后将每个时间戳投影到这些时间槽中的一个。
  2. 时间表示学习

    • 为了考虑时间的周期性,作者采用了time2vec方法对时间进行编码。这个方法使用了一个周期性激活函数(例如正弦函数)和可学习的参数来表示每个时间槽。
    • 通过多层感知机(MLP)为所有时间槽生成时间嵌入,这些嵌入构成了时间表示。
  3. 活动类别融合

    • 作者使用一个密集层来融合时间嵌入和相应的活动类别嵌入。这样,每个签到记录的时间表示就包含了活动类别的语义信息。
    • 活动类别嵌入是通过一个带有泄露率的ReLU激活函数计算得到的,这个激活函数有助于引入非线性。
  4. 签到记录表示

    • 一个签到记录由用户嵌入、POI嵌入和类别感知的时间嵌入组成,这些嵌入通过拼接操作结合在一起。
    • 这样,每个签到记录都被表示为一个包含用户、POI和时间类别信息的向量。

通过这种类别感知的时间表示方法,MCN4Rec模型能够更好地理解和利用时间的周期性和活动类别信息,这对于预测用户的下一个地点至关重要。例如,人们在早晨高峰时段可能更倾向于前往交通设施,在中午可能更倾向于餐饮场所,而在晚上可能更倾向于娱乐场所。通过整合这些信息,模型可以更准确地预测用户的下一步行动。

4.4 Sequence Modeling Module

采用 Transformer 对签到序列进行编码,并使用三个 MLP 预测器对其进行解码,分别预测时间、POI 和类别。请注意,除了 POI 之外,还考虑时间和类别预测。

  1. Transformer编码器
    • 模型中使用了多个Transformer编码器层,每一层包括因果掩码多头自注意力模块和逐位置前馈网络(FFN)模块。
    • 因果掩码多头自注意力模块能够防止模型在序列建模过程中捕获到预测位置之后的序列信息,这对于序列生成任务非常重要。
    • 逐位置FFN模块会对每个位置的表示进行处理,输出一个表示序列,其中每个位置的表示预测序列中的下一个签到。
  2. 预测解码
    • 除了预测下一个POI,作者还考虑了预测签到时间和签到类别。这是因为用户在不同时间段可能对不同类型的POI有不同的偏好,而且时间信息可以作为时间建模的校准。
    • 为了进行这些预测,作者使用了三个多层感知机(MLP)解码器,分别用于预测时间、类别和POI。
  3. 模型学习
    • 对于序列建模模块中的每个MLP解码器,都预设了相应的损失函数,例如交叉熵损失用于POI和类别预测,均方误差(MSE)用于时间预测。
    • 模型的总损失由这些损失函数的和构成,同时还结合了全局和局部对比学习的损失。

Transformer编码器能够捕捉序列中的长期依赖关系,而MLP解码器则能够基于这些学习到的表示进行具体的预测。

5 EXPERIMENT

Datasets: New York City (NYC), Tokyo (TKY), Phoenix (PHO),andSingapore (SIN) in Foursquare, New York City in Gowalla, and Weeplaces

在这里插入图片描述

Baselines: MF、FPMC、STRNN、DeepMove、STGN、TALE、GeoSAN、STAN、Flashback、AutoMTN、GETNext、CFPRec

**Evaluation Metrics: ** Accuracy@K (Acc@K) and Mean Reciprocal Rank (MRR)

Overall Performance:

在这里插入图片描述

在这里插入图片描述

实验部分不详细展开了,论文中的消融实验和超参数研究都做的非常详细,其中还研究了模型在冷启动方面的有效性及其消融实验,并且分析了时间空间的复杂性。

  • 21
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值