基于时空上下文信息的POI推荐模型研究

2022-01-04 09:35叶继华杨思渝左家莉王明文
电子与信息学报 2021年12期
关键词:集上间隔效果

叶继华 杨思渝 左家莉 王明文

(江西师范大学计算机信息工程学院 南昌 330022)

1 引言

随着基于位置的社交网络(Location-Based Social Networking, LBSN)应用的迅速发展,Gowalla,Foursquare等平台作为一种媒介捕捉到了大量的行为信息。然而,随着信息量的爆炸式增长,如何提取用户的有效信息,解决社交网络所产生的数据冗余等问题也引起了该领域内各位专家学者的关注。基于此,POI推荐作为当前推荐研究领域内的热点,通过在LBSN中对不同用户的不同签到数据的挖掘及分析,为用户寻求下一个新的位置提供了更为便捷的服务,增加了用户体验。

目前,国内外学者研究发现用户行为会受到多种因素的影响,为了提高POI推荐的效果,可以通过对签到用户的活跃度[1]、时空迁移影响[2]、社交影响[3]和用户签到序列相关的上下文信息[4]等影响的分析进行个性化推荐,并且采用协同过滤[5]、矩阵分解[6]、深度学习[7,8]等方法来更好地挖掘用户行为的潜在偏好,为用户生成推荐列表。

在POI推荐研究中,将空间、时间的影响作为重要因素进行考虑,在POI推荐中有着不可替代的地位。文献[9]发现距离越近,相似度越高越能提高POI推荐性能,但由于构建二叉树的方法与空间上信息相关性较弱,因此仍需加入其他信息来提升预测效果。文献[10]通过POI之间可接受性和影响性的不对称性来分析不同地理影响对POI的推荐,由于仅仅着重对地理影响的深度研究,因此仍需综合考虑不同因素对POI的影响。同样,文献[11]通过张量因式分解,利用切分的时间片段通过两两交叉的方式进行建模。然而在现实世界中,用户访问的POI个数会因为时间及频率的影响而形成稀疏性的约束。因此,为了解决数据稀疏性问题,仍需增加相关信息。文献[4]研究发现签到的两个POI之间的转移概率是非均匀分布的,为此利用POI之间的内容语义和上下文关系进行建模,但由于提出的模型缺少对文本语义特征的考虑,因此并没有很好地突出个性化。

目前,随着对基于位置的感知社交数据可用性的深入研究,基于POI推荐的研究方向在各种算法及模型上也得到了不断的更新及拓展,而不再只是停驻在特征因素分析的层面。例如文献[6]将时间序列、空间两种因素进行融合,从而提出了基于矩阵分解的POI推荐模型。虽然该模型表现效果较好,但由于未能解决数据稀疏性,因此在用户与POI之间关联不强时,其推荐效果欠佳。文献[12]采用因式分解的方法通过对空间和时间建立模型,但是由于因式分解的算法难以自由灵活组合与用户相关的各项指标,因此仍存在一定不足。文献[7]通过对签到数据中的用户信息和评论信息的分析,采用矩阵分解和CNN的方式建立模型,虽然有效地避免了局部最优的问题,但是对样本的需求量较大。文献[8]通过RNN网络建立的模型,可以推导预测出用户下一个签到访问轨迹的深度表示。虽然该模型的表现效果较为不错,但仍未解决梯度消失的情况。

为了解决上述提出的问题,本文的主要工作如下:

(1)通过研究时间、空间上下文,探究用户潜在行为模式。并且把空间、类别及时间等异构信息编码整合,将融合后的上下文信息嵌入基于GRU[13]网络的模型中。基于时空上下文信息所建立的序列模型,不但可以较好地处理序列关系,打破因为单一信息所带来的局限性,还能通过增加对用户偏好的关联性来缓解由签到数据稀疏性所带来的困难,从而提高了预测精度。

(2)在时空上下文信息的POL模型推荐(Spatio-Temporal Context information of POI Recommendations, STCPR)模型中,引入时间注意力机制、全局和局部的空间注意力[14],获取用户的个性化偏好及移动行为,获得更好的个性化POI预测。

(3)基于两个真实数据集上的实验结果表明,与现有的几种方法进行对比,本文所提模型占据了相对优势,并且两种注意力机制对模型效果的提升是有帮助的。

2 时空上下文信息的POI推荐

2.1 问题定义

定义1 (check-in行为) 每条打卡签到纪录h由一个4元组(u,y,t,C)构成,其含义为用户u在t时刻基于用户上下文C对某位置y的签到行为。

定义2 (上下文信息) 用户上下文信息C主要由xcat和xct来表示其序列相关性。xcat描述POI的内在属性,主要考虑POI的类别属性;xct表示用户签到的时序相关转换信息,其中,通过相邻两次签到信息的时间间隔以此代表时间转换信息,通过当前签到POI与上一次签到POI之间的地理距离代表地理转换信息。

定义3 (问题描述) 令U和P分别表示用户集合和POI集合,对于用户u ∈U,在给出当前查询到的签到地点Yt ∈P和当前查询到的时间T的条件下,依据签到历史记录H,推测用户在t+1时刻可能感兴趣的POI,并向用户进行推荐。

2.2 融合空间注意力的GRU模型

由于不同用户签到信息长度不同,为了处理不同长度的序列信息,本文基于序列到序列(Sequence-to-sequence, Seq2seq)的框架进行建模。如图1所示,在编码框架(Encoder)中,主要将融合嵌入的异构数据输入基于空间注意力的GRU的序列模型,在解码框架(Decoder)中,通过对编码过程输入与输出的处理,从而生成指定的序列。本文通过GRU编码-解码框架来学习概率分布,根据预测概率大小排序生成POI推荐列表,从而对用户进行推荐。

图1 时空上下文信息的POI推荐(STCPR)模型框架图

对于编码阶段如图1左侧所示,首先通过对历史数据的采集,对POI信息、用户信息、类别信息以及上下文信息等信息都采用One-hot编码,以统一的方式整合异构数据后,将拼接好的向量输入编码器中。

由于用户对时间有着高度的敏感性,为了捕获时间特征对于用户行为的影响,通过时间的周期性和连续性两个隐含特征,来对时间进行多维度的划分。因此,我们将时间戳划分为小时与周的形式。对一天通过h ∈{0,1,...,23}来表示24小时;通过w=0或1来表示工作日和休息日,最后通过One-hot编码的拼接得到其潜在向量。

由于用户的高流动性,且两个POI之间的地理影响性和接受性是非均匀的,为了挖掘其上下文序列关系,本文通过时间间隔以及距离间隔来度量其上下文序列的影响。选择不同的间隔会生成不同的空间,因此,加入两个潜在向量cl,cs描述长、短两个间隔之间的转换。如

不可避免地,在不同POI之间存在或多或少的地理关联,为了能够更加准确地发现用户的动态行为关系,引入基于空间的宏观注意力层。考虑不同因素时空数据的相互关联,测量出不同POI之间潜在向量的决策影响。

2.3 基于时间注意力的GRU模型

在解码阶段,由于每个签到序列对下一个POI的贡献和偏好不同,并且随着编码长度的增长性能会有所下降,因此引入时间注意力机制的GRU模型自适应地选择相关的签入活动,从而获得更佳的推荐。

结束解码阶段后,通过一个全连接层,利用softmax函数输出t时刻POI概率的目标函数,如式(8),其中,u为用户,T为前查询时间,Yt为当前查询的签到地点,H为签到的历史数据。并且通过对目标函数的最大对数似然估计来对参数θ={u,H,Pt,T}进行学习。

3 实验和结果分析

3.1 实验设置

为了验证本文所提STCPR模型的有效性,本节使用来自LBSN签到的Gowalla和Foursquare数据集进行实验,并通过评价指标进行分析。在TensorFlow的框架下进行不同参数的实验对比,找到时间间隔阈值和地理距离阈值等参数最优的取值。通过召回率和归一化折损累计增益两种评价指标,对STCPR变体从时间注意力机制和空间注意力机制上的影响性能进行对比分析,用以说明考虑时空注意力机制方法的有效性。最后,通过与其他现有方法的实验和性能结果对比,分析STCPR模型有效性的原因。

3.2 数据集

本文在LBSN签到的真实数据集Gowalla和Foursquare上进行实验。将2009-2011年数据集中的POI通过7个类的基础上再划分为335个小类。基于此我们对两个数据集进行了预处理,将数据集的70%作为训练集,10%作为验证集,20%作为测试集,删除访问少于10个POIs的用户和少于10个用户访问的POIs,具体的信息如表1所示。

表1 数据集

3.3 评价指标

本文使用T召回率(Recall@N)和的归一化折损累计增益(NDCG@N)来衡量和评价搜索结果。召回率作为应用广泛的度量值,具体指推荐结果中用户实际去的地点值占推荐列表的比例。其中,R(u)表示POI推荐列表的数量,T(u)表示用户实际访问POI的数量。NDCG是最受欢迎的排名评价指标,对于关联度较高且排序靠前的对象,其NDCG指标会越高。其中,DCG是折损累计增益,IDCG为理想情况下最大的DCG。定义为

3.4 实验过程与结果分析

3.4.1 参数选择

本文实验基于TensorFlow框架,将推荐列表长度N的取值分别为2, 5, 10,并采用了随机梯度下降算法和Adam优化器对参数进行更新,将其隐藏层的维度设置为{20, 40, 60},并将批量大小设置为512。作为衡量地理相似度影响的超参数τ,通过经验固定取值在0.2~0.4。基于此,我们进行了多次的实验对比,确定了最优超参数的组合。

如图2所示,分别表示在Gowalla和Foursquare数据集上实验选择合适的学习率α。将学习率范围设置为0.001到0.1,在Gowalla数据集中当推荐列表长度N值取2, 5和10时,α=0.01的召回率分别是0.1526, 0.2121和0.2654,与其他值相比效果最好。同样地,在Foursquare数据集上,在相同推荐列表长度N值的情况下α=0.01时,相较于其他学习率效果更好。当N=10时学习率α效果最好,且为0.2703。

图2 在不同数据集上学习率α 对召回率的影响

为了研究序列长度的影响,如图3,考虑N=2,5,10时的召回率在其不同签到数据序列长度{5, 10, 15, 20, 25}的取值。随着签到序列长度的增加,模型的效果也在不断提升。当签到序列长度为15时,在两个数据集中归一化值为1表现效果最佳。但随着签到序列长度的增加,计算复杂度增加,使得模型的效果下降。特别是Gowalla数据集中下降的速度比Foursquare数据集下降得更快。因此,当序列长度为15时,模型的性能表现更佳。

图3 签到序列长度在不同数据集上的变化

为了更深入地探索时间对于用户移动行为的影响,通过将时间分片,来确定时间间隔对用户行为产生的影响。当时间间隔πt的分别取值为0, 3, 6,9及12时,以N取2, 5, 10的召回率来对时间间隔敏感性进行度量。

如图4可知,在Gowalla数据集上,发现当时间阈值πt=3h效果最佳,且随着时间的增长,阈值的趋势较为稳定。同样地,在Foursquare数据集中,当时间间隔增加到3 h时,其归一化值为1,模型的性能取得了更好的表现。但是3 h后,随着时间间隔的增大,模型的性能开始出现逐渐下降的趋势,其中,当时间间隔处于6~12 h范围内时,随着间隔的增大,Foursquare数据集中模型性能下降速度相较于Gowalla数据集幅度更大,因此设置最佳的时间间隔的阈值为πt=3。

图4 时间阈值π t在 不同数据集上的变化

为了确定用户的签到行为具有强烈的地理属性限制,通过对地理间隔的实验来确定其最佳阈值。在图5的Gowalla数据集中,当召回率为10时,其距离间隔πd=10时达到最佳。虽然召回率为10时,12的距离间隔是最佳,但在πd=10时其归一化值为0.998,接近最佳。因此在Gowalla数据集中将距离间隔阈值πd=10设置为10 km。同样地,在Foursquare中虽然在9 km时,Recall@2在模型中效果最佳。但随着地理距离阈值的变大,召回率也在增长,当距离间隔πd=10时达到最佳,且归一化值为1。因此,本文将距离间隔阈值πd设置为10 km。

图5 距离阈值π d在不同数据集上的变化

3.4.2 实验过程

为了评估POI推荐算法的性能,选取以下几组不同方法和本文提出的STCPR模型对比,以验证本文模型的有效性。

FPMC[15]:是个性化马尔可夫链模型的代表,通过在时间序列上观测和模拟用户偏好,来建立矩阵模型,解决其数据稀疏的问题。

Distance2Pre[16]:通过建立连续POIs之间的距离交互关系来获取基于空间的RNN模型。

ST-RNN[17]:通过考虑空间及时间的上下文影响,在签到序列中,将时间间隔和空间间隔以转移矩阵的方式表示一种特殊距离的设定。将空间及时间这两种特征导入到RNN的网络结构中。

GRU[18]:是RNN模型的一个变体,为了研究注意力的影响。

UCGSMF_GEN[19]:从用户签到的地理位置、社交网络数据和POI类别信息等方面建立一个通用的矩阵分解模型。

MFM-HNN[7]:基于扩展的矩阵分解模型融合评论信息特征和用户签到信息的初始值进行兴趣点推荐。

3.4.3 结果分析

为了验证本文模型的相关性能,对其STCPR模型通过不同的影响因素设置不同的变体并进行比较,结果如图6和图7所示。主要分为简单的GRU模型,考虑时间注意力机制的STCPR-T模型,考虑空间注意力机制的STCPR-S模型这3类变体。结果表明,简单的GRU网络,由于没有考虑随着时间增加而引起的衰减效果,因此效果最不明显。在STCPR-S和STCPR-T两个模型中,其性能效果比较接近,但是STCPR-T改进更加显著。对于STCPR模型来说,在考虑了时间、空间的上下文信息的同时,还对用户的空间意图进行了多层次分析。因此,STAPR模型在两个数据集上表现都明显较好。

图6 Gowalla数据集上STCPR不同变体对比

图7 Foursquare数据集上STCPR不同变体

为了观测各种模型在不同N值时Recall和NDCG的实验效果,通过在Gowalla和Foursquare上进行多次实验比较,结果如表2所示。在N值增加的情况下,各种模型的归一化损失和召回率都出现了一定程度的提高,但与其他模型相比,本文提出的STCPR模型的提高最为明显。

表2 不同方法在两个数据集上的实验结果(%)

当Recall@10时,与考虑了时间、空间影响的传统神经网络模型相比,STCPR模型性能表现分别要高出15.19%和16.16%。STCPR模型表现更高的主要原因在于RNN模型对实际序列数据的处理存在一定的局限性,如缺少长期依赖,短期记忆比长期记忆更具有影响力,从而出现梯度爆炸和梯度消失等情况。因此,在捕获用户兴趣方面GRU神经网络比RNN有着更优异的表现。当与最简单的GRU网络进行比较时,因其不对各种影响因素进行细粒度分析,相较于对用户偏好多样性分析的模型来说,其推荐效果略差。但与将矩阵分解和马尔可夫链结合起来的FPMC模型相比,效果要略好一些。以RNN网络为基础的基于个性化空间影响的Distance2Pre模型,由于深入全面地考虑用户与地理影响之间关系,减少了由数据稀疏所带来的问题。但由于在序列关系中,对长短期的记忆影响考虑不足,同STCPR相比其模型分别降低了12.6%和12.06%。UCGSMF_GEN模型由于综合考虑了用户自身偏好、地理位置和社交网络信息来建模用户签到行为,因此它的推荐效果优于GRU和FPMC模型。相比于UCGSMF_GEN,本文提出的STCPR模型的推荐性能提高了17.12%和17.68%,主要由于深度神经网络能够很好地将签到信息的特征和潜在特征向量融合起来,相比于矩阵分解模型在特征训练方面有着显著优势。对于MFM-HNN模型来说,由于Gowalla数据集没有提供评论信息,因此主要考虑评论信息的MFM-HNN模型仅在Foursquare数据集上进行方法对比。相对于考虑词序及上下文信息的MFM-HNN模型来说,STCPR模型性能效果高出13.14%左右,其原因在于,相比社交信息和地理信息对于POI推荐性能的影响,评论文本信息的影响较小。

同样地,当NDCG@10时模型性能达到最佳,在两个数据集中相对较好的是Distance2Pre模型,由于其基于序列的方式分析了地理信息的可接受性和影响性,因此获得较好的性能。但由于其既没有融入有效的上下文信息,又没有关注用户对不同POI签到序列的偏好差异,因此其效果略低于融合时空上下文信息的STCPR模型。MFM-HNN模型由于充分考虑词序及上下文信息对学习的潜在特征表示的影响,因此在Foursquare数据集上表现也较好,但相对于本文提出的STCPR模型来说,它没有挖掘用户的长期偏好。由于没有使用合适的排序技术,在召回率中表现较好的ST-RNN和UCGSMF_GEN模型在排序指标NDCG中的表现效果却不尽如人意。同样地,对于传统的FPMC模型来说,虽然在用户-项目的推荐模式下通过矩阵分解的方法有着较为不错的表现,但相对于其他基于序列影响的模型而言无法产生相对较好的效果。GRU网络作为本文模型的基础,通过在两个真实数据集下的实验对比,实验结果充分表明了结合空间及时间影响的注意力机制的重要性。

4 结束语

本文提出了一种基于时空上下文信息的POI推荐(STCPR)模型用于POI的推荐。为了缓解数据稀疏带来的困难和打破单个序列信息的有限性,基于Seq2seq的框架结构,将地理距离、时间和POI分类等上下文信息,利用嵌入方法来整合输入编码-解码器的GRU模型中。此外,还引入时间与空间注意力机制来挖掘与分析用户的动态行为与个性偏好,从而实现更有效的个性化POI预测。实验结果表明,本文提出的STCPR模型在召回率和归一化折损累计增益方面均优于现有的几种方法,并且两种注意力机制都能有效地提高推荐性能。

在未来的工作中,计划融合更多有效的多源数据,帮助克服单一信息所带来的不足。其次,通过实验来查看不同密集度数据集对POI推荐模型表现的限制,并针对数据稀疏问题提出相应的解决方案。最后,希望在提高推荐性能的同时增加其模型的可解释性,从而提升用户的体验感。

猜你喜欢
集上间隔效果
按摩效果确有理论依据
间隔问题
Cookie-Cutter集上的Gibbs测度
链完备偏序集上广义向量均衡问题解映射的保序性
间隔之谜
迅速制造慢门虚化效果
抓住“瞬间性”效果
复扇形指标集上的分布混沌
模拟百种唇妆效果
上楼梯的学问