2021⁃02⁃10
计算机应用,Journal of Computer Applications 2021,41(2):398-406ISSN 1001⁃9081
CODEN JYIIDU http ://www.joca
基于动态和静态偏好的兴趣点推荐算法
杨
丽1*,王时绘1,朱
西班牙大学
博2
(1.湖北大学计算机与信息工程学院,武汉430062;2.中国船舶重工集团公司第709研究所,武汉420205)
(∗通信作者电子邮箱yangli_ )
摘要:针对大多数现有主流兴趣点(POI )推荐算法忽略了融合用户复杂动态偏好和一般静态偏好建模的复杂性
问题,提出一个融合复杂动态用户偏好和一般静态用户偏好的POI 推荐算法CLSR 。首先,在复杂动态偏好建模过程中,基于用户的签到行为及其中的跳过行为设计一个混合神经网络,实现用户的复杂动态兴趣的建模;其次,在一般静态偏好建模过程中,利用高阶注意力网络学习用户与POI 之间复杂的交互关系;然后,利用多层神经网络进一步学习和表示上述动态偏好和静态偏好;最后,基于统一的POI 推荐框架对偏好进行整合。在真实数据集上的实验结果表明,与个性化马尔可夫链和用户位置受限的推荐方法FPMC -LR 、基于个性化排名度量嵌入的推荐方法PRME 、基于排名的地理分解兴趣点推荐方法Rank -GeoFM 和基于时间和多级上下文注意力机制的下一个兴趣点推荐方法TMCA 相比,CLSR 的性能有了较大的提高,该算法的准确率、召回率和归一化折损累计增益(nDCG )和对比方法中较优的TMCA 相比,在Foursquare 数据集上分别提高了5.8%、5.1%和7.2%,在Gowalla 数据集上分别提高了7.3%、10.2%和6.3%,可以有效地改善POI 推荐的结果。
关键词:兴趣点;推荐算法;深度神经网络;多层投影;注意力网络中图分类号:TP311文献标志码:A
Point -of -interest recommendation algorithm combing dynamic and static preferences
YANG Li 1*,WANG Shihui 1,ZHU Bo 2
(1.School of Computer Science and Information Engineering ,Hubei University ,Wuhan Hubei 4
30062,China ;
2.709Rearch Institute of China Shipbuilding Industry Corporation ,Wuhan Hubei 420205,China )
Abstract:Since most existing Point -Of -Interest (POI )recommendation algorithms ignore the complexity of the modeling of the fusion of ur dynamic and static preferences ,a POI recommendation algorithm called CLSR (Combing Long Short Recommendation )was propod that combined complex dynamic ur preferences and general static ur preferences.Firstly ,in the process of modeling complex dynamic preferences ,a hybrid neural network was designed bad on the ur ’s check -in behaviors and the skip behaviors in check -in behaviors to achieve the modeling of complex dynamic interests of the ur.Secondly ,in the process of general static preference modeling ,a high -level attention network was ud to learn the complex interactions between the ur and POIs.Thirdly ,a multi -layer neural network was ud to further learn and express the above dynamic preferences and static preferences.Finally ,a unified POI recommendation framework was ud to integrate the preferences.Experimental results on real datats show that ,compared with FPMC -LR (Factorizing Personalized Markov Chain and Localized Region ),PRME (Personalized Ranking Metric Embedding ),Rank -GeoFM (Rank
ing bad Geographical Factorization Method )and TMCA (Temporal and Multi -level Context Attention ),CLSR has the performance greatly improved ,and compared to the optimal TMCA among the comparison methods ,the propod algorithm has the precision ,recall and normalized Discounted Cumulative Gain (nDCG )incread by 5.8%,5.1%,and 7.2%on Foursquare datat ,and 7.3%,10.2%,and 6.3%on Gowalla datat.It can be en that CLSR algorithm can effectively improve the results of POI recommendation.
Key words:Point -Of -Interest (POI);recommendation algorithm;Deep Neural Network (DNN);multi -layer projection;attention network
0引言
近年来,移动设备的日益普及和无线通信技术的进步促
使了基于位置的社交网络(Location Bad Social Network ,LBSN )的快速发展。LBSN 将互联网网络空间与物理世界联
微距照片系在一起,从而使用户可以轻松地基于智能设备通过发布签
到、评论以及地点图像来分享他们的经验,帮助其他用户找到有趣的位置地点。兴趣点(Point -Of -In
terest ,POI )推荐服务不仅可以通过为用户提供具有吸引力的场所来使其受益,而且还可以促进相关企业进行有针对性的广告投放,显著提高企
文章编号:1001-9081(2021)02-0398-09
DOI :10.11772/j.issn.1001-9081.2020050677
收稿日期:2020⁃05⁃21;修回日期:2020⁃08⁃12;录用日期:2020⁃08⁃13。基金项目:国家自然科学基金青年项目(11401187);国家自然科
学基金资助项目(61403132);湖北省教育厅科学技术研究计划青年人才项目(165301301003)。
作者简介:杨丽(1985—),女,山西长治人,讲师,博士,主要研究方向:智能推荐、深度学习;王时绘(1965—),男,湖北武汉人,教授,博士,主要研究方向:智能推荐、深度学习;朱博(1982—),男,湖北武汉人,高级工程师,硕士,主要研究方向:智能推荐、深度学习。
第2期杨丽等:基于动态和静态偏好的兴趣点推荐算法
业效益。这类服务利用LBSN中大规模用户-兴趣点交互式数据为用户提供丰富的推荐服务,也为工业界和学术界提供了一个很好的机会来获得对用户偏好和用户行为更深入的了解[1]。
近年来,已有大量基于时空序列模式的兴趣点推荐研究工作,精准挖掘了用户移动模式中隐含时空序列特征,然而这一问题并没有获得深入研究[2]。由于以下原因,兴趣点推荐仍然是一项具有挑战性的研究任务:
1)时空信息被认为是一种重要的信息类型,常常用于建模POI推荐系统中用户复杂的动态偏好。现有基于时空序列的兴趣点推荐模型中,主要利用循环神经网络(Recurrent Neural Network,RNN)模型或者马尔可夫链模型基于签到信息的时空序列特征来实现用户复杂动态偏好的建模。一阶马尔可夫链模型无法区分某些局部时空背景下用户的个性化签到,使得所有用户的签到行为最终建模为统一的签到位置序列模式,而基于n阶马尔可夫链模型的计算成本又极其高昂[3]。一些研究工作[4-6]偏好采用RNN模型建模时空序列信息。但是,现有基于RNN的兴趣点模型大多忽略了用户签到序列模式中的跳过行为,即签到行为的影响可能会跳过几个时间序列仍然影响用户正在进行的签到行为[7]。例如,游客在机场、酒店、餐厅,酒吧和旅游景点顺序进行签到。尽管在机场和酒店签到后不会立即去旅游景点签到,但它们与后面的酒吧、旅游景点之间存在着强烈的关联行为。另一方面,餐厅或酒吧的签到可能对景点的签到行为没有影响。
查生字2)注意力机制已经在各种机器学习任务中展示了自身的有效性。在推荐系统领域,文献[8]中融合两个基于注意力网络用于建模用户之间的社交影响从而精准捕获用户的复杂动态偏好和一般静态偏好;文献[9]通过在门控循环单元(Gated Recurrent Unit,GRU)网络中加入注意力机制,来模拟
音乐推荐中用户的短期兴趣。然而,上述这些常用的注意力方法大多是一阶的,它们无法捕获复杂签到序列之间的相互作用以及偏好引起的签到位置序列之间细微差别[10]。
在现实世界的推荐场景中,用户对兴趣点的偏好并不总是固定的,而是随着时间的变化而变化。然而,尽管用户的兴趣随时间变化,但仍有一些长期因素会影响用户的行为,这反映了他们的一般长期静态偏好。因此,现在大多数研究人员认为每个用户的偏好都由两部分组成:一部分是一般长期静态偏好,不会随着时间的变化而变化;另外一部分属于复杂的动态偏好,则很容易受到时空因素等的影响[11-12]。这就是为什么最近主流先进方法倾向于将一般长期静态偏好建模和复杂动态偏好相互作用结合在一起用于用户偏好精准建模的原因。
为了解决上述问题,本文提出一种基于注意力机制的动静偏好融合的兴趣点推荐算法CLSR(Combing Long Short Recommendation)。具体而言,首先利用一种混合GRU神经网络实现了基于用户时空签到序列和签到跳过行为的复杂动态偏好建模,同时利用高阶注意力网络学习用户的一般静态偏好;然后基于2个含有隐藏层的多层神经网络分别进行多层投影学习,以进一步学习和表示这些动态偏好和静态偏好的特征;最后,用户的复杂动态兴趣和一般静态兴趣都基于统一的框架融合,实现用户的偏好建模。基于2个真实数据集的实验结果表明,本文提出的兴趣点算法优于主流先进的兴趣点推荐算法。1相关工作
1.1兴趣点推荐算法
大多数兴趣点推荐模型模拟用户的长期偏好,这种偏好反映了用户偏好的固有特征,并且是静态的。基于因子分解的协同过滤方法[13]是实现这一目标的最有效方法之一。在现实世界中,用户对兴趣点的偏好并不是一成不变的,而是会随着时间而变化。因此,在推荐过程中获取用户兴趣的时间动态变化特征很重要。Cheng等[14]提出了一个基于一阶马尔可夫链模型建模用户的POI签到行为。Zhao等[15]提出了一个名为STELLAR的基于排序策略的成对张量因子分解框架。STELLAR结合了细粒度的时间上下文信息(即月、周日/周末和小时),并最终带来了推荐性能的显著改善。Xie等[16]提出了利用二分图的推荐方法,称为GE模型。该模型将兴趣点推荐的多个上下文因素在基于图模型的统一框架中实现融合建模提供兴趣点推荐服务。实际上,以上POI推荐模型都依赖于基于浅层线性潜在因子的模型,并且严重依赖于人工定义随时间变化的时间演化模式,因此,它们很难捕获用户动态偏好的内在复杂关系。随着基于神经递归网络的方法基于许多时空数据得到了成功应用,一些开创性的研究工作将深度学习方法——RNN模型用于基于时空序列模式的兴趣点推荐建模,并取得了不错的效果。Li等[4]基于GRU模型实现POI 推荐中的时空序列建模;文献[3]则利用RNN模型建模用户签到行为中的时间转变模式;而文献[11]则采用了递归神经网络模型用于POI推荐中POI签到时空序列轨迹的深度表示。
1.2注意力机制
注意力机制起源于神经科学研究,通过经验证明人类通常关注输入的特定部分而不是所有可用的信息
[17]。基于注意力机制的深度学习是人类视觉中的选择注意力机制与深度神经网络的结合产物,目前在计算机视觉、自然语言处理等领域取得了巨大成功,例如图像识别[18]和机器翻译[19],但它最近已被用于推荐任务[20-22]。Xiao等[20]提出了一个注意力因式分解机模型,其中特征交互的重要性是通过注意力网络来学习的。Zhou等[21]采用注意力网络来计算不同用户行为(如阅读评论、购物和订购)的权重,以对电子商务站点中的用户偏好进行建模。Chen等[22]提出了一个细粒度的协同过滤框架用于提供推荐服务,注意力网络被用于学习这些组件的注意力得分以获得更好的项目表示。注意力网络还应用于顺序推荐[23]、基于评论的推荐[24-25]等。
相比较而言,本文提出的CLSR算法与上述工作存在的区别有:
1)本文基于用户复杂动态偏好和一般静态偏好融合来精准建模用户的偏好。
2)鉴于用户签到行为中兴趣点与用户之间基于时空序列模式的复杂性,在建模复杂动态偏好过程中不仅仅考虑了用户的历史签到行为,还考虑了基于时序模式签到行为的跳过行为。唯有这样建模,才能更贴近现实场景。
3)在一般静态偏好建模过程中,本文提出基于高阶注意力网络来学习长期用户签到行为序列模式中依赖关系的重要偏好等细粒度特征。具体而言,将普通注意力机制通过高阶多项式进行高维度化,以更好地捕捉关联的细粒度表征。
399
第41卷
计算机应用
2
问题形式化与预备知识
2.1
形式化问题描述
令U ={}u 1,
u 2,…,u ||U 表示一组用户,而V ={}v 1,
v 2,…,v ||V 表示一组POI ,其中|⋅|表示相应集合的基数。对于用户u ,将其当前签到会话表示为Session u ={
}
()v 1,action 1,()v 2,action 2,…,()v ϑ,
action ϑ,其中,v i 是签到会话中的第i 个兴趣点,
action i 表示第i 个签到动作,ϑ表示当前签到行为会话中的行为数。同时,本文考虑用户的历史会话中与之交互的兴趣点,并将它们表示为History u =
{}v
check 1
,v check 2,…,v check ϕ。在此,ϕ表示用户与兴趣点的历史互
动中的签到数量。每个用户历史签到的集合基于V 得到。鉴
于用户对兴趣点签到的行为,本文的目标是给每一个用户推荐他(她)还没有访问过且感兴趣的兴趣点。2.2GRU 网络
GRU 网络是RNN 的变体,由在时间步骤t 具有对于状态h t 有影响的前一个单位h t -1的隐藏状态的门控机制组成,具体如下公式:
g t =σ()W g v j +W ′g h t -1(1)
s t =σ()W s v j +W ′s h t -1(2)h t =ReLU ()
W h v j +W ′h ()s t ⊙h t -1(3)h t =()1-g t h t -1+g t h t
(4)
其中:g t 和s t 分别是更新和重置门;h t 是候选隐藏状态;W g 、W ′g 、W s 、W ′s 、W h 、W ′h 是各个单元的权重参数;σ和tanh 分
别是Sigmod 函数和激活函数;
⊙是元素感知的内积。3CLSR 兴趣点推荐算法
本文算法的框架如图1所示。具体而言,首先,利用一种
混合GRU 模型学习用户偏好复杂动态变化时序特征;同时基于注意力机制提出基于高阶注意力网络的因子分解模型学习用户一般长期静态偏好;然后采用基于两个多层神经网络实现多层投影学习用户的时序、兴趣点等更加精准的特征;最后采用统一端到端推荐框架融合动态和静态用户偏好。
3.1
嵌入层
将原数据表征为单个的向量,从而映射到相应的向量空间中,公式如下:
u =R T ⋅U
仙楼山(5)
其中:
u 为标识映射后的结果,R 表示潜在因子矩阵。经过嵌入层后,可以得到δ维的特征向量。3.2
一般静态偏好建模
为模拟用户固有的或变化缓慢的一般静态偏好,采用了矩阵分解技术,它是学习一般静态偏好的最成功方法之一。受到文献[13]工作的启发,本文采用与用户交互的位置序列来表示用户的一般静态偏好:
p long u
=∑
j ∈History u
ςj v j
(6)
其中ςj 是签到action j 的权重得分。本文假定并非用户所有签到行为都对最终的推荐起到了同等重要作用,因此要为有些签到行为分配较高的权重,而为另一些签到行为分配较低权重。普通注意力机制无法捕获复杂的相互作用以及序列之间的细微差别,缺乏对细节性描述。为了更好捕获位置序列特征之间的复杂关系,受到文献[18]启发,基于高阶多项式的高阶注意力网络对比序列间的差异,提取更加重要的细粒度特征,同时实现权重按实际分布分配。具体而言,将普通注意力机制通过高阶多项式进行高维度化,能够进一步增强注意力表示知识的丰富性。
φr =softmax(u r )=
exp u r
∑r '∈N
exp u r
'
(7)
ìíî
ïïïïïïï
ïa i =∑r =1N
φ(W a ×u r +b a i )
b i =∑r =1N φ(W b ×u r +b b i )
c i =∑r =1N
φ(W c ×u r +b c i )
(8)
m H =3=u T ReLU(a 1+b 1⊙b 2+c 1⊙c 2⊙c 3)
(9)
其中:
W a 、W b 、W c 是注意力网络的权重参数;a i 、b i 、c i 分别是第一阶、第二阶和第三阶注意力权重的中间结果;i 是每阶需要计算的数目,如第三阶需要计算3次,即c 1、
c 2、c 3进行点积运算,然后通过多项式组合得到高阶权重,再与原特征相乘完成权重的重新分配。本文提出的高阶注意力网络使用ReLU 作为隐藏层的激活函数,将高阶组合的特征投影到m 中,得到如下公式:
ςj =softmax(m )=
exp m j
∑j ′∈N
exp m j
′
(10)
其中,基于m ,用Softmax 函数对得分进行归一化,得到本文提出的高阶注意力得分。同时,通过高阶注意力网络的优化与处理,一般静态偏好能够基于实际分布完成对位置序列等权重的重新分配,从而不再受制于固定的权重,使一般静态偏好建模拥有更好的鲁棒性。
3.3
复杂动态偏好建模
考虑基于GRU 网络建模用户签到行为以及签到行为中
的跳过行为,将2个建模进行自适应融合构成混合GRU
网络,规律的含义
图1
CLSR 算法的框架
Fig.1Framework of CLSR algorithm
400
第2期
杨丽等:基于动态和静态偏好的兴趣点推荐算法
从而精准捕捉用户偏好的动态变化性。
给定一个POI 的序列,每个序列与签到时间相关联,本文
计算相邻POI 之间的时间间隔为Δτt =τk -τk -1,k ∈[]1,
||t 。然后,基于式(1)~(4)得到新的候选隐藏状态。
T t =σt (
)
W j v j +σ()[]Δτv ;τt W t
(11)h t =ReLU (
)
W h v j +W ′h
()s t ⊙T t ⊙h t -1(12)
其中:[]
Δτt ;τt 是两次连续签到之间的时间间隔与当前签到时间的级联运算,
W j 、W t 是各个单元的权重参数。时间门T t 也被用于捕获用户的时空偏好。显然,如式(12)得到新的h t
,表示为h new t 。因此,利用这个h new t
,基于用户签到行为预测的用户偏好最后在隐藏状态h R
t
中被编码。
同时,本文基于GRU 建模用户签到过程中的跳过行为。具体地,如图1所示,在相邻时段中,在当前隐藏单元和相同相位的隐藏单元之间添加跳过行为建模,基于式(1)~(4),得到如下公式:
g t =σ()W g v t +W ′g
h t -1+λg (13)
s t =σ()W s v t +W ′s h t -p +λs (14)h 't =ReLU ()
W h v t +W ′h ()g t ⊙h t -1+λh ′
(15)h k
t
=()1-g t h t -β+g t h ′t
(16)
其中:
β是跳过的隐藏单元的数量,λh ′表示偏置向量。本文使用全连接层来整合上述2个的输出。全连接层的输入包括在时间戳t 处的隐藏状态(用h R
t
表示)和从时间戳t -β+1到t 处的β递归跳过的隐藏状态,由h S t -β+1,h S t -β+2,
…,h S t 表示。因此,基于式(11)~(16),全连接层的输出计算如下:
h β
t
=W R
h R t
+∑i =0
β-1W S i
h
S t -i
+λβ
(17)
因此,基于签到行为以及跳过行为建模用户偏好在隐藏
状态h βt 中被编码,
W R 、W S i 是各个单元的权重参数,λβ表示偏置向量。用户的复杂动态偏好用h βt 表示,公式如下:p short u =h βt
(18)3.4
多层投影神经网络
利用多层投影神经网络的多层特性学习用户和位置之间
的潜在特征,以进一步将用户特征投影到一个公共的低维空间中。在形式上,对于一个多层投影神经网络,设置z i (i =1,2,…,N )表示第i 个隐藏层的输出,ξi 和ιi 分别表示第i 层的
权重和偏置向量,ReLU 函数作为多层神经网络各层的激活函数,如果将输入向量表示为e ,将最终输出的潜在表示向量表示为q ,得到各层中的具体表示如下:
z 1=ξ1×e +ι1
(19)z i =ReLU ()ξi z i -1+ιi ;i =2,3,…,N (20)q =ReLU ()
ξN z N -1+ιN (21)
因此,本文输入向量分别设置为p short u
和p long
心灵禅语u
,则最终输出
的潜在表示向量分别表示为G short
u
和G
long
u
。
3.5
预测层
采用端到端的方式将两个多层神经网络的输出结果进行
融合,各自学习到的交互函数的输出在预测层融合在一起。预测层的输出结果即为整个CLSR 模型的输出,并根据这个
输出的结果,得到最终的推荐结果列表。预测层的输出为如下:
r uv =η(
)
éëêù
ûúG long
u G short u (22)η(x )=1
1+e -x
(23)
二元交叉熵损失函数是基于神经网络优化参数训练的一
个很好的选择。因此,CLSR 算法的目标损失函数如下:
L ()
r uv
=-1||V éëêùû
úr uv ∑i =1V log r uv +()1-r uv ∑i =1V
log (1-r uv )(24)本文采用Adam [26]对上述损失函数进行优化,从而得到最终输出推荐列表。
兴趣点推荐算法CLSR 步骤描述如下:
输入
用户U ,兴趣点V ,历史签到交互兴趣点数据History u ,当前
签到会话表示Session u ,时间T ;
输出每个用户的top -k 兴趣点列表。
//构造训练数据1)for each ur u in U do
2)for each POI v in V do
3)for historical check -in ssions in History u do
怀孕吃鹅蛋对胎儿有什么好处
4)for current ssion in Session u do Equation (24)
5)end for
6)end for 7)
end for
8)end for
//基于模型最优参数得到输出推荐列表9)Initialize the optimal parameter t 10)for each ur u in U do 11)Minimizing the objective function (24)
12)
运营总监
Update the gradient using Adam algorithm
13)end for
14)Output the final recommended list
4
实验与分析
为了验证本文模型的性能,主要在真实数据集下将本文模型与其他主流先进兴趣点推荐模型进行对比和分析。
4.1
实验数据集
实验在两个公开数据集Foursquare [27]和Gowalla [28]上进
行,而且清除了Foursquare 数据集中少于10条签到记录的用户和兴趣点(签到时间范围从2012年4月至2013年9月),而对签到数据分布在全球范围的Gowalla 数据集则清除了少于10条签到记录的用户
和少于15条签到记录的POI 。相关特征统计如表1所示。在这两个数据集中,一个用户应该至少访问5个不同的兴趣点。在本文的实验中,随机选择数据集的70%的数据集作为训练数据集,使用接下来的10%作为验证集,同时所有模型采用最佳超参数设置,其余20%作为测试数据集。
表1
过滤前后数据集的特性统计
Tab.1Statistical characteristics of datats before and after filtering 处理状态过滤前过滤后
数据集Foursquare
Gowalla Foursquare Gowalla
用户数量113261965912494118737
兴趣点数量18296812809692859332510
签到数量1385223644289011962481278274
稀疏度/%99.87299.71399.90099.865
401
第41卷
计算机应用4.2
评估指标
本文采用了准确率Precision (P @K )、召回率Recall (R @K )
和归一化折损累积增益(normalized Discounted Cumulative Gain ,nDCG )作为评估指标。其中,准确率和召回率的计算
公式中,I rec
u
是用户u 的top -k 推荐兴趣点列表,而I
test u
是用户u 在测试集中的访问兴趣点列表,
K 表示兴趣点推荐的个数。P @K =1K
||I rec u ∩I test
u (24)R @K =1
|
|I test
u ||I rec u ∩I test u (25)对于这两个评估指标,设置K =5,10,20进行实验。对于目标用户u ,其推荐列表排在位置v order 的兴趣点的nDCG 值计算公式:
nDCG @v order =∑u 1Y u ∑
i =1v order
2
rel i -1
lb (v order +1)
(26)
其中:
Y u 表示用户u 的最大DCG 值;rel i 表示第i 个兴趣点与用户的相关度,rel i 为1表示相关,否则rel i =0。实验设置推
荐列表的长度v order =5,10。4.3
实验方案设计为了验证本文算法的有效性与先进性,从以下方面对CLSR 算法进行测试。
1)将本文提出混合GRU 的方法与以下三个主流的时序
建模方法进行对比,从而验证本文提出考虑用户签到过程中的跳跃行为的有效性和先进性。
a )基于卷积序列嵌入的推荐方法Car (Convolutional
Sequence Embedding )[7]
:此方法基于CNN 模型建模时空序
列。将L 个先前项目的嵌入矩阵视为“图像”,因此,基于CNN 模型使用水平卷积层和垂直卷积层分别捕获点级和联合级序列模式。
b )基于前k 个收益的循环神经网络序列推荐方法
GRU4REC (Recurrent Neural Networks with Top -k Gains )[29]:此
方法基于RNN 模型建模时空序列。大多数采用RNN 模型建模时空序列模型都是以此模型为基础。
c )基于马尔可夫链融合相似度模型的序列建模方法
Fossil (Fusing similarity models with Markov chains )[30]
:此方法基于一种高阶马尔可夫链模型建模时空序列。
2)基于高阶注意力网络、普通注意力机制与没有注意力机制的三种情况对CLSR 的性能进行对比,从而验证本文提出的高阶注意力网络的有效性和高效性。a )没有注意力机制(No -attention ):代表在CLSR 算法中
忽略掉高阶注意力网络;
b )普通注意力机制Vanilla (General attention )[8]
:代表在
CLSR 算法中将高阶注意力网络替换成普通注意力机机制。3)将本文模型与以下四个主流先进POI 推荐方法进行对比,从而验证本文方法的有效性和先进性。a )个性化马尔可夫链和用户位置受限的推荐方法
FPMC -LR (Personalized
Markov
Chain
and
Localized
Region )[14]
:该模型提出了一种基于局部区域约束的扩展因子
分解个性化马尔可夫链且考虑邻域位置的兴趣点模型。
b )基于时间和多级上下文注意力机制的下一个兴趣点
推荐方法TMCA (Temporal and Multi -level Context Attention )[4]
:该模型采用基于LSTM 的编码器-解码器框架来自动学习用
户历史签到活动的深度时空表示,并集成了多个上下文因素;此外,该模型还使用多级上下文注意力机制来自适应地选择相关的签到活动和对应的上下文因素。
c )基于个性化排名度量嵌入的推荐方法PRME
(Personalized Ranking Metric Embedding )[31]
:是一种个性化排
名度量模型,联合建模序列信息和个人偏好,通过将每个兴趣点映射到对象的低维欧氏空间,然后使用度量嵌入算法有效地计算马尔可夫链模型中的位置转换。
d )基于排名的地理分解兴趣点推荐方法Rank -GeoFM
(Ranking bad Geographical Factorization Method )[32]
:是一种
基于排名的地理分解方法,通过适合用户的POI 签到频率来学习用户兴趣点的嵌入;同时,时间上下文和地理影响都基于加权方案纳入了最终的推荐框架。
4)分析一般静态偏好建模组件(L -CLSR )、复杂动态偏好建模组件(S -CLSR )对于本文CLSR 算法推荐性能的影响。。
5)讨论CLSR 算法不同组件的影响,以及多层投影神经网络的潜在维度和神经网络层数对于CLSR 算法推荐性能的影响。4.4
实验设置
实验中所有算法都基于最优参数进行设置。GRU 网络
的隐藏维度是32,嵌入维度为32。对于Foursquare 数据集和
Gowalla 数据集,“跳过”的长度设置为6,从{0.001,0.01,0.1,1,10}中选择正则化系数,以获
得最佳性能。梯度下降超参数学习率设定为0.001。使用含有4个隐藏层的神经网络,4个隐藏层都使用ReLU 函数作为激活函数。对于Fossil 、Car 和GRU4REC ,马尔可夫阶L 为{1,2,…,9}。实验中CLSR 算法的多层投影神经网络的隐藏层的结构是(128,64,32,16),潜在维度是64。Adam 算法被用来优化CLSR 算法的参数。除了输入层和输出层,在每一层后采用dropout ,速率设置为0.1到0.2。全连接层的dropout 的比例为0.5。本文模型通过在配置Nvidia GeForce GTX 1080显卡的机器上运行PyTorch 实现。其他对比算法都参照各自参数的最佳设置。4.5实验结果分析
4.5.1
时空建模方法对比分析
从图2可以得到如下结论:
1)在两个数据集上,Spatio -SR 模型的所有指标均表现得
更好。具体而言,首先Spatio -SR 模型显著优于传统基于高阶马尔可夫过程的方法Fossil ,验证了神经网络方法的强大。这
也与前面的讨论一致,即由神经网络模型提供的非线性变换操作能够实现更好的高级空间意图学习。此外,Spatio -SR 始终优于其他两种方法,这表明在Spatio -SR 中采用混合GRU 模型是有效的。原
因如下:本文基于混合GRU 模型对用户签到过程中典型的短期动态变化个性化签到现象及其跳过现象进行建模,很好地弥补了Car 模型和RNN 模型在建模序列信息中无法精准捕获用户个性化签到时空序列信息的各种不足,这一点和文献[5,7]所指出的一致。
2)在两个数据集上,Fossil 的所有指标均表现最差,因为
该方法对于最终长期时间变化和短期时间动态变化的融合仅
仅采用了简单的线性加权,不足以捕获特征之间复杂的交互关系;同时高阶马尔可夫链模型随着阶数的增大,噪声和无用的相关信息也逐渐变多,从而影响了最终的性能。
3)Car 方法作为典型的基于CNN 建模,采用将最近的项
402