客服电话:15682930301

计算机网络论文

当前位置: 毕业论文>计算机论文>计算机网络论文 > 正文

基于神经网络的兴趣点推荐的算法的设计与实现

发布时间:2019-12-05 15:22文字数:12980字

  摘 要:兴趣点(Point of Interest ,POI)推荐是基于位置的社交网络(location-based social networks,LBSN)中的一项重要服务。随着基于位置的社交网络的高速发展,网络中的数据呈现爆炸式增长,兴趣点推荐已成为一个重要的研究问题,它能够帮助人们从海量的数据中发现自己潜在的感兴趣地点。前人已经提出许多利用传统机器学习解决POI推荐的方法,然而,与很多传统的推荐问题(例如音乐,电影)相比,POI推荐面临着新的挑战,丰富的上下文信息以及数据稀缺问题。

  地理影响作为重要的上下文信息,对于兴趣点推荐有着至关重要的意义。例如,用户们通常会访问家附近或者工作地点附近的兴趣点。

  签到数据的稀缺问题使得现有的POI推荐方法面临着严峻的挑战。随着神经网络的兴起,神经网络在自动控制、模式识别、图像处理等领域已经取得很好的绩效。在本文中,我们提出使用RNN神经网络的变体LSTM网络,并且融入地理位置信息的方法实现兴趣点推荐,在本文中我们称此方法为Geo-LSTM。将上述方法运用在公开数据集Foursquare和Gowalla上的实验表明,该方法能够进行有效的POI推荐,在召回率和精确率指标方面,都体现出明显的优势。

  关键词:POI;推荐系统;神经网络;LSTM;

  前 言

  近年来,随着GPS设备、卫星通信等移动互联网技术的兴起和突破,人们日常使用的终端设备(例如手机,平板)的定位功能也越来越准确。在此大环境下,基于位置的社交网络(LBSN)迅速发展起来。

  POI(point-of-interest)推荐是推荐领域热门的研究内容。POI推荐面临着丰富的上下文以及数据稀缺的问题,用传统的方式实现POI推荐已经不能满足当前发展的需求。幸运的是,LBSN的快速兴起,极大的促进了POI推荐的发展,它为我们的实验研究提供了重要的信息,即地理位置信息。用户通常倾向于访问家附近或者工作地点附近的兴趣点,可见,将地理信息融入POI推荐是非常必要的。

  传统的机器学习进行推荐,广为人知的技术有矩阵分解模型,基于链接的模型等。虽然利用传统的机器学习做推荐在电影、音乐等推荐系统中取得了突出的成绩,但是在电影、音乐等推荐问题中,并不存在丰富的上下文和数据稀缺等问题,因而在POI推荐中,使用传统的推荐方法并不一定能获得令人满意的结果。用传统的机器学习方法做POI推荐有很大的局限性,迫使我们使用全新的方式解决。

  近十年来,随着人工神经网络(Artificial Neural Network,ANN)的研究工作不断深入,其在模式识别,预测估计,图像处理等领域已经取得巨大成就,并且表现出了优良的智能型。而其中的一种网络,循环神经网络(RNN)也取得了广泛应用。

  本文以循环神经网络(RNN)为主要研究对象,研究并分析,现有的循环伸进网络的原理以及其优缺点。在深入分析研究RNN网络变体LSTM的基础上,改变LSTM三门的结构,修改其cell结构,以实现POI推荐,并在公开数据集上进行实验验证。在此过程中完成的主要工作以及创新点列举如下:

  (1)对比前人们的算法模型,分析优缺点,在本实验中加入地理信息作为推荐的依赖之一。

  (2)分析RNN神经网络的特征,对比其两个著名变体LSTM和GRU,最终选取LSTM作为基础模型。

  (3)修改LSTM模型的核心cell部分,将地理信息作为第四个门进行修改。

  (4)在公开的数据集上面进行实验验证,将召回和精确率作为评估模型标准,并呈现实验结果。

  第一章 绪 论

  本章节首先介绍了兴趣点(point of interest,POI)推荐的研究背景和意义,其次简述了本文所完成的工作以及本文的创新点,最后呈现了本文的组织结构。

  1.1 研究背景及意义

  随着历史潮流的推进,人类已从工业时代进入了信息时代,信息时代的高速发展和互联网的迅速普及,影响着人们生活的方方面面,同时给人们的生活带来了巨大的便利。随着人们生活水平的不断提高,很多娱乐消费的地点日益增多,互联网提供了展示这些地点的平台,例如国内的美团、饿了么等。但正是因为繁多的地点,给人们带来了困扰。以饭店为例,饭店很多,因此人们可以品尝各种美味佳肴,然而并不是所有的地点都令人满意,有的地点很有人气,但是对于某一个特定用户,或者不能满足个性化需求。于是,迫切的需要兴趣点推荐算法的出现,帮助人们筛掉不感兴趣的地点,并将用户感兴趣的地点推荐给用户,它的出现便利了人们的生活,在繁忙的时代中节约了宝贵时间。很显然,这样的推荐需要具备个性化,不同的用户会有不一样的评价标准。

  传统的推荐算法大多基于协同过滤。基于协同过滤的算法虽然应用广泛,但是利用其进行兴趣点推荐存在很多弊端。第一,存在数据稀缺的问题。基于协同过滤的算法对于数据集的要求很高,应用的很广泛的公司,例如亚马逊,雅虎等均在其往年的经营中收集积累了大量的数据信息,因而得以获得较好的推荐成果,然而,如果应用到POI推荐上,由于兴趣点个数以及用户个数均繁多,且用户访问的兴趣点个数也是有限的,则会出现严重的数据稀缺问题,直白的说,其形成的用户评分矩阵会面临严重的稀疏问题。在此基础上不利于基于协同过滤算法的推荐。第二,存在冷启动问题,当在推荐网络中加入新用户时,新用户没有任何访问兴趣点的信息,我们既获取不到该新用户与兴趣点的相关性,也获取不到该新用户与其他用户的相关性。因此通常会推荐当前较为人们的兴趣点给改新用户,这种推荐不能够实现个性化。此外,还会出现长尾的弊端。用户对于不感兴趣地点的过多反应,可能会给POI推荐造成干扰。第三,基于协同过滤的方法,利用的信息有限,隐藏信息会被忽略,例如地理信息。近年来,由于移动手机、平板、智能手表等移动设备的不断普及,使得基于位置的网络服务不断壮大。由于位置感知型社交媒体的涌现,人们可以便捷容易地分享与获取位置相关的内容。 例如,Foursquare已经拥有了超过5000万的活跃用户,Yelp拥有约2100万用户和1.02亿条地理坐标的企业评论。LBSN的迅速兴起给POI推荐,带来了位置信息这一重要的隐藏信息,位置信息的利用,可以有效的提高推荐的精度以及召回。第四,用户的兴趣偏好并非一成不变的。Noulas等人已经发现60%-80%的用户当前所访问内容并不在过去的一个月访问过的兴趣点内[1]。随着时间的推进,用户的兴趣偏好会随之改变,如果一直沿用以前学习到的兴趣点推荐,会失去灵活性,换言之,传统的协同过滤不能随着时间的迁移,做出相应的推荐,因此在传统的推荐中需要引入时间因子,预测的用户兴趣偏好会随着该时间因子而相应改变。第五,对于新加入的兴趣点,由于历史数据集中并没有任何用户在该点签到的记录,但是这并不意味这该新的兴趣点是不受欢迎的。根据上述几点可见,迫切的需要新的方法出现,推陈出新。

  而神经网络便是一个很好的突破口。人工神经网络的发展较为曲折,它大致经历了三次发展高潮:二十世纪四十年代至二十世纪六十年代的控制论,二十世纪八十年代到二十世纪九十年代中期的联结主义以及2006年之后兴起的深度学习。使用神经网络进行POI推荐,在数据稀缺的问题上取得了较好的成绩,并且可以在网络中加入地理信息,充分利用隐藏信息进行推荐。在本文中也通过在公开数据集上的实验,证明了利用神经网络做POI推荐可以取得良好的推荐效果。

  1.2 工作内容及创新点

  本文主要采用近几年再次兴起的人工神经网络。神经网络的种类很多,在本文中是以循环神经网络(Recurrent neural network,RNN)为主要研究对象,深入学习,研究并分析其优缺点,在现有的RNN变体LSTM的基础上进行cell部分修改,以求达到POI推荐的更好效果。为了验证新提出的方法的有效性,将本文的方法应用在公开数据集上,进行POI推荐,并与其它现有算法进行比较,并且在数据上证明了本文提出的方法在POI推荐上优于许多现有算法。

  完成本文所做的工作主要有:

  (1) 对比现已提出的算法模型,深入理解并分析比较其优缺点。

  (2) 在网上检索有代表性的几个真实公开的数据集,并进行相应的格式处理。

  (3) 认真学习现有的先进算法并在公开数据集上实现,得出相应结论。

  (4) 深入理解神经网络。

  (5) 编码实现提出的新模型,并在公开数据集上运行,证明新模型的有效性。

  本文的创新点:

  (1) 将地理信息作为控制信息,融入算法中。

  (2) 修改经典的LSTM的cell部分的三门结构,除了输入门,输出门,遗忘门,额外增加地理信息门。将地理信息以控制门的形式融入算法中,在避免了过多放大地理信息的作用的基础上,仍然巧妙的利用的地理信息,通过实验中证明该方法增加了推荐的精度。

  1.3 文章组织结构

  本文一共分为五个章节,每一章节的具体内容概括如下:

  第一章为绪论部分,介绍了本文研究内容、研究背景以及研究意义,以及总体概要的说明为了完成本文所做的工作,并简单介绍了本文所提出模型的创新点。

  第二章阐述了POI推荐的难点,并对为完成本文所做的相关研究做了介绍,陈述了前人研究的POI算法的相关推荐模型。最后总结了现有模型的不足之处。

  第三章通过引言部分指出了采用RNN作为改进模型的基础模型的优势,并且给出了任务定义。在3.3小节中,详细的解释了本文所提出的模型,并给出了具体的计算公式以及新模型的优势。最后通过一个简短总结概括了新模型具有优势的原因。

  第四章中介绍了数据集,基本模型以及两个评估标准。并且展示了该模型在公开数据集上的运行结果,以及与基准模型结果的对比图,结合对比图对实验结果进行了分析与总结。

  第五章中对全文进行了一个总结,并且提出未来工作的着手点和展望。

  第二章 相关研究

  本章本章首先阐述了POI点推荐的难点,然后列举了部分现有先进的推荐算法,并仔细阐述了相关算法的具体模型,并且对现在模型进行分析,并总结利用现有技术进行POI推荐存在的问题。

  2.1 POI推荐难点

  POI推荐不同于传统的推荐算法,例如音乐,电影,购买商品等的推荐。以网购为例,类似亚马逊这类的公司,创业已经很久,掌握了大量的用户数据,因而不存在数据稀缺问题。而POI推荐则完全不同,由于兴趣点推荐是近些年兴起,掌握的数据也比较稀疏,而且不能与传统的经典推荐问题共同讨论。在做兴趣点推荐过程中遇到了许多挑战,具体挑战列举如下:

  第一,存在严重的数据稀缺问题。传统的一些推荐算法往往对数据集要求很高,由于现实生活中存在的地点很多,现实中存在的用户数目也是庞大的,导致对于每一个用户能够访问的地点是非常有限的,也就是说对于某一个用户,绝大部分的POI是没有签到记录的,也就导致了数据严重稀缺。此外,POI推荐兴起的时间也比传统的推荐晚,例如众所周知的亚马逊、雅虎等,这类大公司发展较为早,在其以往的公司运营过程中已经积累了大量的数据信息。亚马逊可以轻轻松松的获取用户购买过哪一些商品以及某商品被哪些用户购买过。使用协同过滤的算法便可以轻松获得较好的推荐效果。

  第二,存在冷启动问题。推荐网络中已经存在的用户,必然存在兴趣点访问记录,因此可以根据以往的访问记录做出个性化的推荐。而对于推荐网络中新加进来的用户,并没有任何访问记录,新用户与兴趣点之间的相似性,新用户与其他用户之间的相似性均无法获得。当遇到冷启动的问题时,通常会将当前较为受欢迎的POI推荐给新用户,然而这样并不能实现个性化推荐。此外,用户如果签到数不多,且对于喜欢的兴趣点没有去相应的频率,很有可能会出现长尾现象。这样也会对推荐结果造成负面影响。

  第三,传统的推荐大多是基于协同过滤的方法,而协同过滤的方法虽然具备简单的特点,但是其利用的信息非常有限,许多有价值的隐藏信息会被忽略,例如地理信息,用户社交网等。

  第四,用户的兴趣偏好会随着时间发生变化。用户的兴趣偏好并非一成不变,Noulas等人通过调研已经说明了这一点,他们发现60%-80%的用户访问的兴趣点与该用户过去一个月访问的兴趣点均不相同[1]。传统的方法很难有效的融入时间因子,我们可能需要颠覆性的改变。

  可见,虽然存在了较多推荐算法,但是仍然存在许多问题,仍有许多推荐过程中的难点需要被解决。

  2.2 矩阵分解模型

  2.2.1 LRT

  LRT[2]是基于基本分解模型MF的一个改进模型。它是一个时间增强的MF模型。根据实验数据观察到的用户签到行为,找寻其随时间变化的规律,该模型对每个用户进行建模。首先是根据不同的时隙对以及不同的潜在向量。最后根据所有潜在向量,计算得出最终推荐分数。为了在不同的时间对某一用户进行偏好建模,LRT模型分别为每个时间间隔进行签到矩阵的分解。

  2.2.2 IRenMF

  IRenMF [3]是基于加权分解模型(Weighted decomposition model,WMF)[4,5]的分解模型。该模型基于两个直观认识。第一,用户对于地理位置相近的地区的用户偏好较好[6]。第二,同一个地理区域的兴趣点可能具有相似的用户偏好。换言之,IRenMF模型中建模了位置级影响和区域级影响。

  2.2.3 GeoMF

  GeoMF [7]是基于地理影响的分解模型。Ye等人指出同一个用户访问的兴趣点很有可能会位于同一个地理区域[8]。GeoMF模型通过建模用户的活动区域和地理空间传播的影响巧妙的利用了该空间聚类现象,使得POI推荐更进了一大步,并且该地理影响的整合方式被广泛的引用。

  2.2.4 RankGeoFM

  RankGeoFM[9]是一种基于排名的分解模型。该模型是对GeoMF模型的一种改进,同样是基于地理影响,其不同于GeoMF模型之处在于,损失函数。GeoMF使用传统MF的损失函数并且加入地理影响。而RankGeoFM模型则是将预测评分与根据用户签到信息获得的评分矩阵的不相容性的累积和作为缺失函数,并且,Li等人通过在公开的数据及上的实验证明了,在部分数据集中,使用不相容性作为损失函数比使用传统的损失函数能获得更好的推荐效果。除此之外,Li等人还提出了该模型的快速学习方法,使得RankGeoFM模型能够迅速训练和测试。

  2.2.5 ASMF

  ASMF[10]是一个两步式的兴趣点推荐框架。该模型最大的亮点在于通过某种方法解决了冷启动问题。具体的解决方式是,首先从用户朋友处获取潜在的位置信息,然后将该用户可能感兴趣的地点的位置,最后将这些位置合并到WMF中。从而得以解决冷启动的问题。

  该模型,主要应用了社会潜在影响,分类影响,以及地理信息。ASMF中将社交网络中的朋友,位置相近的朋友以及邻居朋友访问的兴趣点的联合作为某新用户的潜在位置。ASMF模型在计算某一个具体的POI推荐分数时使用了基于分类的权重,因而巧妙的利用了分影响。ASMF模型同样融入的地理因子,将基于地理影响的得分与WMF的结果作为整体的推荐得分。

  2.3 泊松因子模型

  泊松因子模型(PFM)[11]是一类基于概率的模型,在用户-POI签到矩阵分解的基础上实现。

  2.3.1 MGMPFM

  MGMPFM [12]是一种融合模型,该模型结合了PFM输出以及地理建模方法。采用多中心高斯模型(MGM)作为地理建模方法。该模型基于直观思想——观察到的用户的签到通常分布在几个中心周围(例如家庭和工作地点)。MGM使用多个高斯分布来学习每个用户的活动区域。将PFM的输出以及MGM计算结果的联合作为推荐得分。

  2.3.2 GeoPFM

  GeoPFM [13]的主要思想是用户的地理偏好和兴趣偏好相互影响,并且用户的偏好与两者相关。 因此,GeoPFM共同学习用户的地理偏好和兴趣偏好。该模型使用空间上的二维高斯分布表示潜在区域,并且每个用户在区域上具有多项式分布,之后将其整合到PFM中。

  2.4 基于链接的模型

  LFBCA [14]是一个基于链接的模型。该模型的最大特点在于构建了一个图形来模拟LBSN用户及其关系。 在该图中,用户偏好和社交影响均由不同类型的边缘建模。 特别地,具有类似签到行为的用户被链接为“相似性关系”建模,并且添加表示“友谊关系”的边以连接图中的朋友。 在构建的图的基础上,对每个用户执行Bookmark-Coloring算法(BCA)[15],用于计算他/她与其他每个用户的相似度,然后根据相似性执行基于用户的协作过滤(UCF)[16]。

  2.5 混合模型

  混合模型将两种或更多推荐方法的输出和每种方法模型用户偏好或一种上下文信息相结合。 例如,MGMPFM(参见第2.2.1节)是PFM和MGM的混合模型。

  2.5.1 USG

  USG [17]为POI推荐同时建模用户偏好,社会影响和地理影响。

  该模型采用UCF对用户偏好进行建模,其中两个用户之间的相似度是根据他们的常用签到记录计算的。为了利用社会影响力,USG提出基于朋友的协作过滤(FCF),根据类似的朋友提出POI推荐。 朋友之间的相似性是基于他们常见的签到POI和共同朋友计算所得。USG利用用户的历史访问POI来计算地理影响作为访问某一个POI的概率。

  2.5.2 iGSLR

  iGSLR [18]利用POI推荐的地理偏好和社会影响力。

  该模型,与USG模型相似,使用FCF来使用朋友的签到,其中朋友之间的相似度根据他们的住所距离计算。对于每个用户,iGSLR使用Kernel Density Estimation(KDE)从他/她的登记历史记录中学习距离分布。 因此,用户访问新的POI的概率是基于POI与用户所访问的POI之间的距离的KDE值。

  2.5.3 LORE

  与上述模型最大的区别在于,LORE [19]除了考虑社会和地理影响外,还考虑了连续影响。

  该模型,采用FCF来模拟社会影响,其中社会相似性的定义与iGSLR相同。而对于每个用户,LORE模型使用KDE对二维空间上的登记概率分布进行建模。 然后基于其在登记概率分布上的位置来估计访问新POI的地理概率。而该模型最大的特色在于采用加性马尔可夫链(AMC)[20]来利用POI之间的顺序影响。 用户访问POI的顺序概率基于所有用户访问POI和目标POI之间的转换概率。

  2.5.4 GeoSoCa

  GeoSoCa [21]模拟三种类型的上下文信息,即地理、社会和分类相关性。

  GeoSoCa模型还使用二维KDE进行地理建模。 与LORE不同,其中σ被所有用户共享,此外,该模型还增加了一个本地(即用户相关)带宽,使地理建模更加个性化。GeoSoCa模型在利用社会影响力时估计了用户社交登记频率的幂律分布。 并使用累积分布作为推荐中的社会影响力。分类影响与社会影响建模类似,GeoSoCa为用户的分类登记频率估计幂律分布

  2.6 本章小结

  POI推荐问题不同于传统的推荐问题,虽然目前已经现存大量的兴趣点推荐算法,但是以上算法均没有考虑到时序问题。随着时间的流逝,用户的兴趣偏好会发生改变。例如,用户很可能随着季节的变化喜欢的食物不用,因而,对于POI的兴趣偏好也会随着改变。上述算法均没有考虑到,在计算用户兴趣偏好的时候应该考虑的时序问题,因此需要新的算法出现。

  第三章 基于神经网络的兴趣点算法研究

  本章首先通过引言部分阐述了本文提出模型的改进地方,随后详细讲解了问题定义,模型的核心部分算法。

  3.1 引言

  随着LBSN的兴起,人类地理位置与网络位置建立起的牢不可破的联系,给兴趣点推荐提供了巨大的信息,因而如何使用地理兴起,成了一个改进POI推荐效果的重要桥梁。

  传统的推荐大多是考虑用户与项目的之间的相似度,或是考虑用户与用户之间的相似度,或是项目与项目之间的相似度,只是静止的考虑用户的兴趣偏好。然而随着用户的兴趣偏好并非一成不变的,用户的兴趣偏好会随着时间季节而有所改变,如果一直以以往的兴趣偏好进行POI推荐,那么推荐结果可能难以让人满意。例如,用户可能在天气较冷的时候倾向于选择火锅,羊肉汤之类的饭店进餐,然而随着升温,用户可能会对这些地方不感兴趣了。可见,时序对于POI推荐存在一定影响。

  最近,推荐系统(RS)的递归神经网络(RNN)解决方案正在变得越来越受欢迎。有识之士认为,用户的序列中存在一些内在的模式。在序列数据建模中,RNN已被证明是很好的。在传统的任务,如语言建模,RNN解决方案通常只考虑顺序,没有考虑到以往的存储信息应该被保留部分,以及应该被丢弃部分,因为用户的兴趣偏好会随着时间而改变。并且会受到地理因素的影响。然而,在RS中,用户相互之间的地理位置是捕捉关系的重要因素,而使用传统的RNN体系结构并不擅长建模它们。在本文中,我们提出一种新的LSTM变体,即Geo-LSTM,模拟用户的顺序行为。在本模型中专门设计了地理信息门,来模拟地理信息。因此,与传统的RNN解决方案相比,利用了RNN有序性的优势,又利用了地理信息。从而能够更好的捕捉用户的兴趣偏好。在两个真实数据集Gowalla和Foursqare上的实验结果表明,采用该模型的推荐方法优于传统方法。

  3.3.1 RNN

  本文模型是根据循环神经网络(RNN)为基础进行改进的,故而在介绍模型之前,简单介绍一下RNN模型。

  RNN与传统的模型不同点在于,RNN考虑到了序列化。其模型如图二所示,最下面一层为输入层(Input Layer),中间的一层为隐藏层(Hidden Layer),最上面一层为输出层(Output Layer),该结构图,清晰的体现了RNN特点,输出层的结果会作为输入重新作用到隐藏层。

  之前已经提到RNN与传统的模型最大的区别便是其序列化,模型的训练与序列相关联,为了更好的说明这一点,下页图三显示了RNN的展开图。由图中可见,除了第一次训练,之后每一次训练都会受到上一个时间带来的影响,具有时序性。

  3.3.2 LSTM

  LSTM[22]是RNN的一种变体。LSTM结构不同于RNN的地方在于隐藏层。LSTM的隐藏层部分包含了多个存储块(memory blocks),简称block,而每一个存储块包含了多个存储细胞(memory cell),简称cell。而cell是一种三门结构。图四展示了LSTM的基础结构。从图中清晰可见,cell的三个门分别为输入门(Input Gate),遗忘门(Forget Gate),输出门(Output Gate)。

  下页图五展示了LSTM的工作过程。上一时刻同一个block输出加上当前的输入之和作为输入门的输入。在cell中进行计算之后,将同一个block中所有的cell数据和当前输入的数据的和作为遗忘门的输入,以上信息通过遗忘门之后选择记忆部分cell内容。而cell内部的计算是利用输入以及输入门的输出求乘积,以及遗忘门和上一时刻cell输出乘积作为cell计算的输入部分,将输入部分分别乘以权重求累加和作为输出。计算输出门时将当前时刻的输入以及cell分别乘以权重求累积和。 最后将输出门和cell数据进行乘运算,求得当前的输出。

  3.3.3 Geo-LSTM

  在LSTM模型的基础上我们在本文中提出了Geo-LSTM模型,该模型是四个门结构。该模型在LSTM模型的基础上加入了地理因子门,下页图六中展示了该模型的结构图。从图中清晰的显示出了模型的四个门结构,输入门(Input Gate),输出门(Output Gate),遗忘门(Forget Gate),地理因子门。

  模型需要计算的部分主要为四个门的计算,cell的更新,以及输出内容。接下来具体讲解四个门以及cell的更新计算方法。

  3.4 本章小结

  在本章中介绍了加入地理因子门的LSTM变体模型,在该模型中,地理因子在模型的训练过程中不断向后传播,因而以往访问兴趣点的地理信息会长期影响到后续的POI推荐。在下一个章节中会用实验证明该模型的有效性。

  第四章 实验与分析

  本章节将通过在公开数据集上的实验数据证明本文提出模型的有效性,并与其它现有先进的模型进行数据对比分析,总结本模型的优缺点。

  4.1 数据集与实验环境

  我们的实验是在两个公开数据集上进行的。

  Foursquare数据集。 Foursquare数据 [23]包括2012年4月至2013年9月的签到数据。在实验过程中我们对该数据集进行了预处理,将签到少于10的用户和被访问人数不足10的兴趣点删除了。处理过后的数据集包括24,941个用户,28,593个兴趣点和1,196,248条签到记录。

  Gowalla数据集。 Gowalla数据记录了从2009年2月至2010年10月全球范围内的签到数据。在实验过程中我们同样做了预处理,将签到次数少于10的用户已经被访问次数少于15的POI删除。 被处理过的数据数据集包括18,737个用户,32,510个兴趣点,1,278,274个签到记录。

  本文中提出的模型是利用python语言编写,并导入了TensorFlow库。而其他基准模型的实现环境则不一致,其中,RankGeoFM是在MatLab的环境中运行的。具体每一项基准模型的运行环境同提出该模型的作者使用环境相同。

  4.2 对比方法

  在本实验中,我们将提出的模型与目前较为流行的四种方法LRT、GeoMF、GeoPFM、RankGeoFM作为比较的基准模型。

  LRT、GeoMF、GeoPFM、RankGeoFM作为对比模型具体的算法,介绍请见本文的第二章节。

  4.3 评估度量

  在本文中我们使用精确率和召回率(也称查全率)作为模型的评价标准。精确率和召回率的详细介绍如下:

  精确率(Precision Rate):描述待测样本中的被预测为正例的样本中是真正正例的样本所占比例。

  召回率(recall Rate):描述待测样本中被预测为正例的样本中预测正确的正例样本占总正例样本的比例。  其中TP表示预测为正例的样本中是真正正例的样本数,FP表示负例样本中被预测为正例的样本数。因而TP+FP表示所有被预测为正例的样本数。 精确率在本实例中被解释为预测样本中被被推荐的兴趣点中用户真正感兴趣的兴趣点占总推荐数的比例。

  其中,TP表示预测为正例的样本中是真正正例的样本数,FN表示正例样本中被预测为负例的样本数。因而TP+FN表示整个样本中真正的正例。召回率在本实例中被解释为测试样本中被推荐的兴趣点中用户真正感兴趣的兴趣点占样本中用户总的感兴趣的兴趣点的比例。

  4.4 实验结果与分析

  首先我们将本模型运用到公开数据集Gowalla上进行实验。在实验过程中,我们将给用户推荐的POI个数分别设置为5、10、20、50进行实验。并利用先进的四个模型LRT、GFM、GeoPFM、RankGeoFM进行类似的实验,POI推荐个数也同样分别设为5、10、20、50进行实验。在Gowalla上的实验的精确度如图七所示,召回率如下页图八所示。

  随后我们将本模型运用到公开数据集Foursquare上进行实验。在实验过程中同样将推荐POI的个数分别设置为5、10、20、50,并在四个基准模型上运行。在Foursquare数据集上的POI推荐精确度如下页图九所示,召回率如下页图十所示。

  从实验数据中可以看出,本文中提出的模型,不论在哪个数据集上运行,精确度和召回率均赶超其他基本模型,而LRT表现则最差。

  从LRT输入分析,我们认为LRT效果比其他推荐算法推荐效果差的原因在于没有加入地理信息,而且其他模型均加入了地理信息。

  此外,我们数据结果中观察到除了本文中提到的模型以外,RankGeoFM模型也整体优于其他模型,我们分析原因在于RankGeoFM采用的损失函数与传统的损失函数不同,它使用了排序关系,利用序列的不相容的和作为损失函数,该模型在计算推荐得分时实际上是穷举了算有方法,因而其在计算模型时将要耗费大量的时间,好在作者在文中提出了模型的快速学习模型。

  最后,我们对比RankGeoFM模型和Geo-LSTM模型,RankGeoFM模型在小数据集时能够表现出良好的推荐效果,但是传统的机器学习方法往往受限于数据量,随着数据的增多,传统的机器学习方法的表现力则远不如神经网络。这也是深度学习如此受欢迎的原因之一。

  4.5本章小结

  在本章节中,我们通过详细的数据结果展示了Geo-LSTM模型在POI推荐方面优良的表现力,并从实验数据入手,分析不同模型进行POI推荐效果不同的原因。虽然Geo-LSTM模型在实验中表现最佳,但是并非最好,仍然可以更近一步完善,以求达到更好的推荐效果。

  第五章 总结与展望

  5.1 本文总结

  近年来随着移动互联网的快速兴起,越来越多的人加入到社交网络中,越来越多的人使用全球定位系统,这使得基于位置的社交服务迅速发展。国外有名的基于位置的社交服务有Gowalla、Foursqare等,国内也有不少,如美团、饿了吗、大众点评等。这些平台可以帮助人们随时分享自己的位置,评论自己喜欢或者不喜欢的事务,也可以帮助人们发现加入这些平台的商家,为人们的生活带来了极大的便利。但是随着加入的人群越多,掌握的数据量的剧增,存在的问题也浮现出来。由于数据的爆炸式增长,人们获取数据也出现了困扰。如何从海量的数据中获取自己感兴趣的地点,已经成为值得深入研究的问题。前人已经提出了很多解决方法,如基于协同过滤的一系列解决方法。但是前人的方法并不是完美的,本文中,在前人的基础上设计了新模型用于POI推荐。

  本文与传统模型相比最大的亮点在于基于循环神经网络,设计出了LSTM模型的变体Geo-LSTM模型。该模型,与传统机器学习模型相比,继承了RNN的优点,强大的数据表现力,以及数据的序列化的优势。与经典的LSTM模型相比,该模型多增加了一个地理因子门,地理信息通过地理因子门建模。地理信息最初同输入门数据一同传递给cell部分,随着cell的每一次更新,地理因子会随着传递到跟新之后的cell中。这样,地理因子对于用户便有了一个长期的影响。最后通过在两个真实数据集上的实验证明了本文中提出的方法的有效性。总体而言,本文的主要工作有以下内容:

  (1)通过阅读大量文献,了解POI推荐的研究背景和现状,学习前人实现POI推荐的方法模型,总结分析其优缺点,为之后的研究工作的推进打下理论基础。

  (2)学习并掌握神经网络相关理论知识,在此基础上提出Geo-LSTM模型。

  (3)对于Geo-LSTM模型进行相关公式推导。

  (4)对两个公开数据集Gowalla和Foursqare进行预处理,并在数据集上运行本文所提出的模型。

  (5)在上述两个数据集中运行基准方法,证明本模型优于其他模型,并分析Geo-LSTM模型优于四个基准模型的原因。

  5.2 工作展望

  本文中提出的方法虽然在实验中证明在Gowalla和Foursqare数据中表现力优于LRT、GFM、GeoPFM、RankGeoFM方法,但是仍然存在不足之处。

  在进行POI推荐算法研究时,我们考虑到用户行为的序列中存在一些内在的模式。故而选用了在RNN网络的变体LSTM的基础上进行改进。并且RNN已经被证明处理序列化问题效果很好,但传统的任务(如语言建模),一般情况下只需要考虑顺序问题,而没有间隔的概念。然而,在POI推荐中,用户上一次行为与当前行为之间的时间间隔成为建模用户兴趣偏好的重要依据。在本文提出的模型中仅仅考虑了签到的时间顺序,并没有考虑到前一次签到与当前签到的时间间隔。这一点也将成为之后继续研究的突破口之一。

  此外,在Geo-LSTM模型中,我们沿用了传统的LSTM的一个cell部分的结构,使用同一个cell进行存储和计算输出。在后续工作中,可以尝试,增加一个cell部分,使其功能专门化,一个cell部分用于存储信息,另外一个cell用于计算输出数据。

  以上两点是以后工作的方向,也希望大家能给出更好的改进方法。

移动版:基于神经网络的兴趣点推荐的算法的设计与实现

本文标签: