论文阅读——MMPOI- A Multi-Modal Content-Aware Framework for POI Recommendations

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

MMPOI: A Multi-Modal Content-Aware Framework for POI Recommendations

ABSTRACT

兴趣点(POI)推荐系统旨在根据用户的签到顺序推荐未来潜在的访问,但面临着数据稀缺的挑战。这一挑战主要源于数据稀疏问题,即用户仅与少量 POI 进行交互。大多数现有研究试图通过关注 POI 签到序列来解决这个问题,而不考虑通常与 POI 相关的大量多模态内容信息(例如文本和图像数据)。在本文中,我们提出了一种新颖的 POI 推荐(MMPOI)多模式内容感知框架。我们的方法通过从新的角度整合有关 POI 的多模式内容信息来解决数据稀疏问题。具体来说,MMPOI利用预训练模型进行模态间转换,并采用统一的预训练模型从每个模态中提取模态特定的特征,有效地弥合了不同模态之间的语义差距。我们建议建立一个多模态轨迹流图(MTFG),它将多模态语义结构与签入序列相结合。此外,我们设计了一个自适应多任务 Transformer,它可以对用户的多模式运动模式进行建模,并将其集成到下一个 POI 推荐任务中。对四个真实世界数据集的大量实验表明,MMPOI 的性能优于最先进的 POI 推荐方法。为了促进可重复性,我们发布了代码和我们收集的多模式 POI 推荐数据集。

INTRODUCTION

介绍了什么是POI,解释了 为什么POI推荐目前的挑战是数据稀疏性。
目前的方法倾向于结合辅助信息(side information)例如时间信息、地理信息、类别和社交关系;还有些方法利用超图和知识图谱来探索高阶用户 - POI 关系,或采用采样技术来减轻稀疏数据的挑战。然而,他们都没有考虑与POI相关的大量多模式内容信息(例如视觉和文字)。

受到多模态推荐方法和预训练语言模型的启发,作者提出使用预训练模型来有效利用POI的多模态内容信息,并将 此类多模态信息整合到签到序列中,来提高POI推荐的准确性。

挑战:

  1. 不同情态内容的语义空间存在显著差异。
  2. 多模态数据包含大量噪声,可能会给POI推荐任务引入大量噪声从而影响准确性。
  3. 多模态内容和用户签到序列之间存在着显著的语义差别。

作者提出:一种新颖的 POI 推荐(MMPOI)多模式内容感知框架。

  1. 对于挑战1,文本和视觉模态之间的不同表示空间,MMPOI采用 image2text 预训练模型将POI图像转换为自然语言描述。随后,应用统一的预训练语言模型从每种模态中提取特征,从而将多模态内容映射到共享语义表示空间

  2. 对于挑战2,作者建立特定于模态的 相似结构图来对POI的潜在语义相关性进行建模,并采用 kNN稀疏方法来过滤掉重要的关系。该策略有效减轻了多模态噪声对推荐准确性的影响

  3. 对于挑战3,作者提出了一种 多模态轨迹流图(MTFG) ,它将多模态潜在语义关系与签入序列集成在一起。此外,我们构建了 地理轨迹流图(GTFG)来捕获地理序列关系。

  4. 最后,作者通过考虑影响用户行为的各种因素来设计 自适应多任务 Transformer。

贡献:

  1. 我们提出了一种新颖的 MMPOI 模型,通过结合 POI 的多模态内容信息来解决数据稀疏问题。据我们所知,我们的研究代表了利用 POI 的多模态内容信息进行下一个 POI 推荐的首次尝试。
  2. MMPOI利用预训练模型将多模态内容映射到共享语义空间,并构建多模态轨迹流图,将去噪后的多模态知识与签到序列有效集成。此外,MMPOI 建立地理轨迹流图来提取地理序列模式,并采用自适应多任务 Transformer 来捕获用户的运动模式。
  3. 为了支持多模态 POI 推荐,我们收集了广泛使用的 Foursquare 数据集的多模态内容。在 Foursquare 和 Yelp 数据集上进行的实验表明,MMPOI 在推荐准确率方面比最强基线高出 8% - 11%。

RELATED WORK

Next POI Recommendation

早期工作基于Markov chains,重点是预测用户在POI之间的偏好来推荐下一次访问。

最近的研究经常使用RNN和自注意力机制。例如LSTPM、STAN。这些方法侧重于捕获单个签到序列中 POI 之间的时空关系,而没有很好地利用多个签到序列之间的关系。

为了解决这个问题,最近的一些研究结合了图表示学习技术。GETNext、AGRAN、STHGCN。然而,现有的 POI 推荐方法忽略了与 POI 相关的多模态内容信息。

本文介绍了一种用于 POI 推荐的多模式内容感知框架,标志着利用该框架的首次尝试。

Multi-Modal Recommendation

多模态推荐方法利用海量的多模态项目内容信息来提高推荐性能,在很多应用上都取得了成功,比如短视频平台、社交媒体平台、电商平台。

早期的方法倾向于将项目的多模态内容特征集成到矩阵分解框架中进行推荐。如VBPR、VECF。

近期大量方法整合GNNs去建模多模态特征,例如MMGCN、LATTICE。这些方法基于GCN建模并依赖 item 间的语义关系,但不能直接应用时空数据。

此外,一些方法介绍了用对比学习方法来融合多模态特征进行推荐。例如,BM3、MMSSL。

不同于这些多模态推荐方法,我们使用预训练模型将多模态数据映射到共享语义空间。然后使用KNN稀疏方法来滤除多模态数据中的噪声。此外,作者有效的将POI的多模态内容特征与签到序列列相结合已解决POI推荐任务。

THE PROPOSED METHOD

如图一,作者提出的MMPOI框架主要由4个主要的组成:

  1. image2text pre-trained model 被用来转换POI图像到文本描述,然后使用统一的预训练语言模型从每种模态中提取特定于模态的特征。
  2. POI 的模态特定特征被聚合并与用户签到序列相结合,构建用于 POI 表示学习的多模态轨迹流图
  3. 建立地理轨迹流图来建模地理序列关系。签到表示是从空间位置、多模式 POI 内容、用户偏好和时间模式中学习的。
  4. 提出了一种自适应多任务 Transformer 来对用户运动模式进行建模并提供 POI 推荐。

在这里插入图片描述

Preliminaries

定义了一些公式中的字母含义

Multi-Modal Feature Extraction

如图一所示,方法主要考虑来自三种POI模式的内容信息:图像,评论,元数据。作者使用预训练image2text模型 BLIP2 去转换POI图像到相应的文字描述。可以观察到模态转换后同一 POI 的不同模态之间存在明显的语义一致性。然后,我们采用统一的预训练语言模型 Sentence-BERT 从每种模态中提取模态特定的特征。具体来说,考虑到一个 POI 可以与多个图像相关联,我们通过将 $ v^{i’}_p \in \mathcal V’_p$

馈入 Sentence-BERT 并对嵌入结果求平均值来获得 POI p 的图像模态表示:

e p v = m e a n ( s u m ( B E R T ( v p 1 ′ ) , B E R T ( v p 2 ′ ) , . . . , B E R T ( v p ∣ V p ∣ ′ ) ) ) e^v_p=mean(sum(BERT(v^{1'}_p),BERT(v^{2'}_p),...,BERT(v^{|\mathcal V_p|'}_p))) epv=mean(sum(BERT(vp1),BERT(vp2),...,BERT(vpVp)))

与图像模态类似,POI的评论模态和元数据模态也是这样。

Multi-modal Trajectory Flow Graph

在本文中作者的目标是利用POI的多模态内容信息来缓解数据稀疏问题并提高推荐性能。然而,直接集成多模态特征信息不可避免地会引入大量噪声。因此受别人工作的启发,作者构建了一个模态特定结构图(modal-specific structure graph),它捕获 POI 之间特定于模态的 k 最近邻居 (kNN) 关系。该方法用于滤除噪声并捕获 POI 潜在特征之间的重要结构关系。

为了有效地整合 POI 的多模态特征和用户的签到序列特征,我们构建了一个去噪密集多模态轨迹流图(MTFG)来学习 POI 的多模态表示。

Learning Modal-Specific Structure Graph.

相似分数用余弦相似度函数。

S i j o = ( e i o ) T e i o ∣ ∣ e i o ∣ ∣ ∣ ∣ e j o ∣ ∣ S^o_{ij} = \frac {(e^o_i)^T e^o_i} {||e^o_i||||e^o_j||} Sijo=∣∣eio∣∣∣∣ejo∣∣(eio)Teio

考虑到多模态数据中存在大量噪声以及与全连接图相关的计算和存储成本,我们在 S o S^o So上采用 kNN 稀疏化 [1]。对于每个 POI 节点 p i p_i pi ,我们只保留具有前 k k k 个相似度分数的边:

S ^ i j o = { S i j o , S i j o ∈ t o p − k ( S i o ) 0 , o t h e r w i s e \widehat S^o_{ij} = \begin{cases} S^o_{ij}, S^o_{ij} \in top-k(S^o_i)\\ 0,otherwise \end{cases} S ijo={Sijo,Sijotopk(Sio)0,otherwise

S ^ o = S ^ i j o i , j ∈ [ 1 , N ] \widehat S^o = {\widehat S^o_{ij}}_{i,j \in [1, N]} S o=S ijoi,j[1,N] 是稀疏图邻接矩阵,表示模态 o o o 内 POI 之间的去噪相似性结构。在本文中,我们使用 S ^ o \widehat S^o S o 来表示 o o o 模态结构图。

[1] Jie Chen, Haw-ren Fang, and Yousef Saad. 2009. Fast Approximate kNN Graph Construction for High Dimensional Data via Recursive Lanczos Bisection. JMLR 10 (2009), 1989–2012.

Aggregating Multi-Modal Structure Graph.

作者假设了一个场景:当我们选择餐厅的时候,先考虑餐厅的种类(Meta),然后浏览餐厅的氛围和菜品图片(image)以形成感官评价。随后,他们可能会阅读其他用户对餐厅的批评(review)以避免潜在的不满和不必要的超支。

为了全面建模多模态因素的影响,我们结合获得的结构图 S ^ o \widehat S^o S o 对于每个模态 $ o ∈ O$ 创建一个多模态结构图 S M S^M SM

S M = ∑ o = 1 ∣ O ∣ S ^ o S^M=\sum ^{|O|}_{o=1} \widehat S^o SM=o=1OS o

为了缓解梯度爆炸或者消失的问题,作者标准化 S M S^M SM :

S M ~ = D − 1 2 S M D − 1 2 \widetilde {S^M} = D^{-\frac{1}{2}}S^M D^{-\frac{1}{2}} SM =D21SMD21

Building User Trajectory Graph.

考虑到不同用户之间可能存在相似的运动模式,并且同一用户可能多次重复某些历史行为。给定用户签到序列集合 C = { C u } u ∈ U C = \{{C_u }\}_{u∈U} C={Cu}uU*,*用轨迹可以定义有向加权图 G T = ( V T , E T , w ) G^T = (V^T , E^T , w) GT=(VT,ET,w) V T = P V^T=P VT=P 是所有POI节点的集合。 E T E^T ET 表示有向边的集合 ( p i , p j ) (pi,pj ) (pi,pj) ,表示在某些用户签到序列中POI p j pj pj 出现在POI p i pi pi 之后,即它们被连续访问。 G T G^T GT 的邻接矩阵可以表示为 S T = { S i , j T } i , j ∈ [ 1 , N ] S^T = \{S^T_{i,j}\}_{i,j ∈ [1,N ]} ST={Si,jT}i,j[1,N] ,其中

S i , j T = { w ( p i , p j ) , ( p i , p j ) ∈ C 0 , o t h e r w i s e S^T_{i,j} = \begin{cases} w(p_i,p_j),(p_i,p_j) \in C \\ 0,otherwise \end{cases} Si,jT={w(pi,pj),(pi,pj)C0,otherwise

其中 w ( p i , p j ) w (p_i, p_j ) w(pi,pj) 等于用户签到序列 C 中边 ( p i , p j ) (p_i, p_j ) (pi,pj) 出现的次数。与多模态结构图 S M S^M SM 类似,我们将用户轨迹图 S T S^T ST 归一化为:

S M ~ = ( D t ) − 1 2 S T ( D t ) − 1 2 \widetilde {S^M} = (D^t)^{-\frac{1}{2}}S^T (D^t)^{-\frac{1}{2}} SM =(Dt)21ST(Dt)21

Multi-modal Trajectory Flow Graph (MTFG)

为了弥合 POI 多模态特征和签到序列特征之间的语义差异,我们集成了多模态结构图结合用户轨迹图,创建多模态轨迹流图 G M T G^{MT} GMT 如下:

S M T = α S M ~ + ( 1 − α ) S T ~ S^{MT}=\alpha \widetilde {S^M}+(1- \alpha)\widetilde {S^T} SMT=αSM +(1α)ST

其中 S M T S^{MT} SMT G M T G^{MT} GMT 的邻接矩阵, α α α 是一个超参数,用于整合POI之间的多模态结构关系和签到顺序关系。值得注意的是,我们构建的 MTFG 是一个具有*有向边和无向边的混合图*,代表了前面讨论的两种类型的关系。由于多模态结构图中采用了 kNN 稀疏化,可以大大减轻噪声。因此,构建的 MTFG 不仅解决了数据稀疏问题,还强调了 POI 之间的多个关键关系。

Multi-Modal POI Representation Learning.

为了充分利用MTFG的拓扑结构,MTFG采用谱GCN方法[14]来学习多模态POI表示。学习到的多模态 POI 表示集成了多模态语义关系和 POI 之间的签到序列模式。这有助于更全面地理解 POI 推荐任务中的用户运动模式。

Check-in Representation Learning

提出了一种签入表示学习方法,该方法考虑了空间位置、时间信息、多模态 POI 特征和用户偏好等因素。

Geographic Trajectory Flow Graph.

用户的签到行为表现出很强的区域依赖性。例如,人们通常更喜欢在当地的杂货店购物,而不是长途跋涉到偏远的杂货店购物。为了有效地利用地理信息,作者提出了地理轨迹流图(GTFG)来对用户移动模式中的地理关系进行建模。具体来说,应用公开的地理编码系统Geohash2来对POI的空间位置进行编码。

Time and Category Embedding.

先前对用户移动模式的研究表明,用户访问时间与访问的 POI 类别之间存在显着相关性。例如,用户通常在夜间去酒吧和类似场所,而地铁站在通勤高峰时段更加繁忙。因此,为了对用户移动模式与时间和类别之间的关系进行建模,我们分别对访问时间和 POI 类别进行编码。对于参观时间,我们将一天24小时划分为48个时段,每个时段30分钟。然后,我们应用 time2vector [2] 方法来嵌入这些槽,从而获得时间嵌入表示。

[2] Seyed Mehran Kazemi, Rishab Goel, Sepehr Eghbali, Janahan Ramanan, Jaspreet Sahota, Sanjay Thakur, Stella Wu, Cathal Smyth, Pascal Poupart, and Marcus A. Brubaker. 2019. Time2Vec: Learning a Vector Representation of Time. CoRR abs/1907.05321 (2019), 1–16

在本文中,我们将类别视为文本内容,并使用预训练的自然语言模型 Sentence-BERT [3] 来获得所有 POI 类别的表示。

[3] Nils Reimers and Iryna Gurevych. 2019. Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks. In EMNLP. 1–11

Check-in Representation.

我们考虑了多模态内容、空间位置和时间信息等因素。然而,用户签到行为(与 POI 的主动交互)可能会受到多种潜在因素的影响。为了管理这些,我们训练嵌入层 f ( ⋅ ) f (·) f() 为每个用户 u u u 生成 d d d 维嵌入.

Adaptive Multi-task Transformer

Transformer Encoder.

为了限制过度平滑的风险,GCN 通常保持较低的深度,这意味着使用基于 GCN 的方法仅捕获签入序列中的局部特征。因此,我们采用 Transformer 编码器来对全局用户移动模式进行建模。除了预测下一个 POI 的主要任务之外,我们还开发了几个辅助任务来帮助训练我们提出的 MMPOI。在解码阶段,我们构建了基于多层感知器(MLP)的多头解码器来同时执行多个预测任务.

Adaptive Multi-task Learning.

在模型训练过程中,我们同时考虑多个解码器的预测损失。交叉熵被用作下一个 POI 和下一个网格单元预测任务的损失函数。此外,KullbackLeibler (KL) 散度用作类别预测性能的评估指标。为了平衡多个损失的权重,大多数 POI 推荐方法倾向于使用加权线性组合来总结每个单独任务的损失,这通常需要手动调整权重。尽管如此,模型性能受这些参数的影响很大,并且在实践中手动微调这些参数是一项耗时且具有挑战性的任务。

为此,我们引入了一种基于任务相关不确定性的多任务学习方法[4],该方法通过自适应调整多任务权重来有效地训练模型。最后,所提出模型的整体损失函数可以写为:

L = 1 2 σ 1 2 L p o i + 1 2 σ 2 2 L c a t + 1 2 σ 3 2 L g e o + l o g σ 1 σ 2 σ 3 \mathcal L = \frac{1}{2\sigma ^2_1} \mathcal L_{poi} + \frac{1}{2\sigma ^2_2} \mathcal L_{cat} + \frac{1}{2\sigma ^2_3} \mathcal L_{geo} + log\sigma_1 \sigma_2 \sigma_3 L=2σ121Lpoi+2σ221Lcat+2σ321Lgeo+logσ1σ2σ3

[4] Alex Kendall, Yarin Gal, and Roberto Cipolla. 2018. Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics. In CVPR. 74827491.

EXPERIMENTS

在这里插入图片描述

在这里插入图片描述

  • 13
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值