欢迎来到天天文库
浏览记录
ID:31432821
大小:109.00 KB
页数:7页
时间:2019-01-09
《一种改进的基于位置的推荐算法》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、一种改进的基于位置的推荐算法 摘要:基于位置的推荐算法在根据位置信息划分数据子集时会产生数据稀疏问题,对此提出了一种改进的推荐算法。该算法充分考虑了不同位置所产生的推荐结果的差异性,分别为相应的推荐结果设置不同权重,然后线性求和。改进算法既解决了数据的稀疏问题,又考虑了用户兴趣的本地化。实验结果表明,改进的算法提高了推荐准确性。 关键词:基于位置;推荐算法;数据稀疏 DOIDOI:10.11907/rjdk.161555 中图分类号:TP312 文献标识码:A文章编号文章编号:16727800(2016)009003902 基金项目基金项目: 作者简介作者简
2、介:刘建东(1978-),男,湖南城步人,吉首大学张家界学院教学科研部讲师,研究方向为计算机应用技术。 0引言7 随着在线社交网络与智能手机技术的快速发展,用户不仅仅满足于在社交平台用文字和图片来分享经历,还希望分享更丰富的信息,如在何时何地做了哪些事情等。现在大部分智能手机都能提供基于地点的签到服务,在线社交网络如Foursquare、Gowalla等网站也支持基于地点的签到服务。因此,用户可利用智能手机在社交网络分享去过的地点。这些分享的地点构成了用户的运动轨迹。显然,经常去户外运动的用户与喜欢文艺的用户分享的地点是有差异的。因此,具有不同兴趣的用户分享的运动轨迹
3、是不一样的。换句话说,用户兴趣不同,分享的地点也就不同,地点与用户兴趣之间产生了关联。因此,如何根据用户的签到地点来提供个性化服务是研究人员感兴趣的课题。 目前,基于地点的推荐算法有两个方向:①根据用户之间的距离进行推荐。如Foursquare通过计算用户与好友之间的距离推出探索功能,该功能可以为用户推荐附近的好友,LBS软件也提供了推荐附近餐馆与商店的功能;②根据用户的签到地点为用户进行分类。因为用户的签到地点相同,用户兴趣可能相似,典型的是一个被称为LARS(LocationAwareRecommenderSystem)的推荐系统。该系统由明尼苏达大学的研究人员提出
4、,主要思想是将用户按兴趣相似度进行分类,为同类的用户推荐物品或者地点。评价兴趣相似度的标准有两个:①用户共同喜欢的物品越多,用户的兴趣越相似;②用户签到的地点越接近,用户的兴趣越相似。对于第①个标准而言,其实就是基于物品的协同过滤算法,该算法是经典的推荐算法,具体过程可参看文献。本文主要讨论第②7个标准。因为签到地点具有多级结构,所以LARS根据地点的范围从大到小逐级划分数据集,如签到地点具有国家、省、市的树状结构。LARS首先根据国家把数据集划分成不同的子集set1,set2,..seti..;接着按省份将数据集seti划分为(seti1,seti2,seti3,...
5、setil)等子集,然后依次按市划分。一般来说,seti1,seti2,seti3,...setil数据子集内用户兴趣的相似度比seti内用户兴趣的相似度更高,因此,划分子集提高了推荐准确性。但是按LARS划分数据子集的用户数据量可能不够,进而影响推荐效果。子集内用户数据量少的问题称为数据稀疏问题,本文主要工作是针对可能存在的数据稀疏问题提出解决办法,改善推荐效果。 1数据稀疏问题 用户在使用在线社交网络时喜欢分享自己的位置,从而会形成如下形式的数据记录:(用户,用户位置,物品,评分)。本文用(ui,pi,wk,si)表示第i个用户在位置pi评论第k个物品时所生成的数
6、据。用户兴趣不同,分享的位置会有差异,所以LARS会根据用户签到位置对用户数据集进行划分。但是位置信息是一个树状结构,比如,国家、省、市、县的结构。因此,数据集也会被划分成一个树状结构,本文把该树状结构称为树状数据集。树状数据集的节点包含了所有同一个位置的用户行为数据。 如图1所示,用户u的评论数据信息是:(u,p22,wk,sj),那么推荐算法就会根据位置信息依次找到“p”,“p2”,“p22”这3个节点,在找到节点后把该数据信息依次划分到“p”,“p2”,“p22”3个节点上。一般地,在划分数据集过程中,p节点上的数据被划分为i个子集(p1,p2,..pi),从概率
7、上来说,pk节点上的数据量只是p节点上的1i。而随着算法的进行,pk节点上的数据被划分为j个子集(pk1,pk2,..pkj)。同样的道理,子集pkl(1<=l<=j)节点上的数据量只是pk节点上的1j。更一般地,假设第n层节点的分支数是Nn,那么第n层上任一个节点的数据量只是总数据量上的1∏c=n-1c=1Nc。其中c表示层次。显然,层次越深的节点所表示的位置越准确,但是所得到的数据量越少。7 因为数据量降低的幅度很大,所以随着子集的划分,产生数据稀疏的可能性就越高。如果某个节点上的数据量太少,那么基于物品的协同过滤算法在
此文档下载收益归作者所有