基于位置社交网络中地点聚类推荐方法

在进行个性化地点推荐时,基于用户的协同过滤算法对冷启动问题没有很好的解决方案。为了解决这个问题,将社交网络中的朋友关系引入到其中。通过社交网络中朋友这一因素,计算新用户和朋友之间的相似度,把朋友去过的地点推荐给新进入系统的用户,从而解决冷启动问题。在这一推荐中涉及到计算用户间的相似性,分别用兴趣地点相似度以及好友亲密度2个指标考察,将2个相似度利用权重混合后,计算用户对候选地点的兴趣度,最后进行推荐。

利用余弦相似度进行计算,用户ui、uj的兴趣地点相似度

式中:pij为朋友关系因素,表示用户ui与用户uj之间的亲密度,pij越高则朋友之间关系的亲密度越高,反之,亲密程越低;ε为一个可调节的参数,用来调节权重;fij表示用户ui与用户uj是否为好友关系,fij=1是好友,fij=0不是好友;Fi为用户ui的好友数据集;$\frac{\left|{{F}_{i}}\cap{{F}_{j}}\right|}{\left|{{F}_{i}}\cup{{F}_{j}}\right|}$表示用户ui与用户uj共同好友的数量占两个用户所有好友数量的比例,即共同好友比例。

用户间的兴趣地点相似度与好友亲密度相混合的混合相似度

计算出用户间的兴趣地点相似度与好友亲密度相混合的相似度dij后,选取top-N个dij值最高的用户组成用户集U′,其中uj属于用户集合U′。利用混合相似度,计算用户ui对没去过的地方lk的兴趣度

将兴趣度排序,选取候选地点中兴趣度高的地点推荐给用户。

基于朋友关系的协同过滤推荐虽然对冷启动问题有很好的解决方案,但对数据稀疏问题却是无效的,引入聚类算法能在一定程度上解决这个问题。考虑位置的语义特征,利用聚类算法K-medoids对地点进行分类重组,形成地点组,从而解决数据稀疏问题。将两个算法集成,取两者优势进行互补,提出改进的地点推荐算法,从而解决数据稀疏和冷启动问题。

在日常生活中,地点有相似性,不能把在语义上不同的地点完全判定为不同的两个地点。在计算地点的语义相似度时,引入了地点标签概念,并且运用词频-逆文档频率(termfrequency-inversedocumentfrequency,TF-IDF)这个统计方法。具体步骤如下:

首先,需要对标签中的文本进行预处理,清理各种停用词、乱码等。

计算词频方法为:

式中:tfkv是词v在地点k的标签中所占比例;Zkv是词v在地点k的标签集合dk中出现的次数;$\sum\limits_{N\in{{d}_{k}}}{{{z}_{kn}}}$是地点k的标签集合dk中所有词出现的总次数之和。

计算逆文档频率的方法为:

式中:idfv为词v在地点库中的逆文档频率,最常见的词如“的”“是”“中国”,虽然出现频率较高,但意义不大,所以赋予较小的权重,而一些重要性较高的词,如地点词汇,应赋予较高的权重,这个权重称为逆文档频率,一个词越常见,分母越大,逆文档频率就越小;D为地点库;|D|是地点总数;|{d|tv∈d,d∈D}|表示在地点库中包含词v的地点数目。分母之所以要加1,是为了避免分母为0(即所有文档都不包含该词)。

每个地点标签中的每个词的综合权重

每个地点的标签文本中,地点的语义信息向量

式中:|t|为地点标签中词的总数量;Tagsk为地点k标签中的每个词的综合权值组成的向量。

地点与地点之间的语义相似度为2个向量的余弦相似度,语义相似度

改进的地点推荐算法过程需要7个步骤。

(1)使用聚类算法k-medoids对所有地点进行相似性聚类

式中:Similarity(pk,pj)是地点k和j的语义相似度。

(3)计算目标推荐用户与其余用户间的兴趣地点组相似度r′ij

利用式(5)得到所有用户在地点组空间上的向量后,由式(1),将目标推荐用户与其余用户之间对地点的兴趣相似度改为对地点组的兴趣相似度

(4)计算目标推荐用户与其好友亲密度pij

由式(2)计算好友亲密度。

(5)计算混合相似度

利用一个线性的融合框架集成,将步骤(3)的用户间的兴趣地点组相似度与步骤(4)的好友亲密度相集成,由式(3),可得混合相似度

展开后

(6)计算目标推荐用户对候选地点组兴趣度wigk

(7)取出兴趣度最高的一些地点作为推荐结果

对兴趣度wigk按降序进行排列,选取最前面的结果优先推荐给用户ui。

在试验中,有2个可调节参数。在好友亲密度中,是否是好友对于推荐用户的影响大于潜在好友的影响,故将ε设为0.7。

式中:P,R分别为准确率与召回率。mAP同时考虑了准确率和召回率。

本文针对基于位置的社交网络中地点推荐时面临的数据稀疏和冷启动问题,提出解决方案。利用朋友关系协同过滤推荐解决冷启动问题。再与聚类算法集成,利用其优势,从而解决数据稀疏问题。本文的重点在于相似度的计算,对于用户间相似度采用兴趣地点相似度、好友亲密度。对于地点间相似度采用地点语义相似度进行聚类。通过试验分析,改进的算法可以有效提高推荐效果,提高推荐质量。

THE END
1.相关商品推荐:基于协同过滤的推荐算法二、 协同过滤推荐算法的实现步骤 数据收集 首先需要收集用户的行为数据,比如购买记录、产品评分、点击记录等,构建用户-商品的行为数据集。 相似度计算 接下来需要计算用户或商品之间的相似度,可以采用余弦相似度、Pearson相关系数、Jaccard相似系数等方法进行计算,以找出相似的用户或商品。 https://www.jianshu.com/p/396b7c403ee4
2.前深度学习时代基于物品相似度进行推荐的协同过滤算法 ItemCF 通过计算共现矩阵中物品列向量的相似度得到物品之间的相似矩阵,再找到用户的历史正反馈物品的相似物品进行进一步排序和推荐,ItemCF的具体步骤如下: (1)基于历史数据,构建以用户(假设用户总数为m mm)为行坐标,物品(物品总数为n nn)为列坐标的m × n {m\times n}m...http://www.kwrg.cn/news/121236.html
3.协同过滤推荐研究综述AET目前,应用于推荐系统的算法主要分三类:基于内容的过滤推荐算法、协同过滤推荐算法及混合推荐算法。 基于内容的过滤推荐算法[2]是对用户的兴趣进行分析,构成用户配置文件,并将其和文件集中的文件用共同的特征变量表示。最后比较两者的相似度来为用户进行推荐。随后,通过用户的反馈信息,不断更新用户配置文件,以此来动态地...http://www.chinaaet.com/article/212308
4.推荐算法——基于物品的协同过滤算法基于用户的协同过滤算法在用户增长的时候,相似度计算的计算会越来越困难。基于物品的算法给用户推荐他们之前喜欢的物品相似的物品。 算法步骤 计算物品之间的相似度 根据物品的相似度和用户的历史行为给用户生成推荐列表 相似度公式如下: wij=|N(i)∩N(j)||N(i)||N(j)|?...https://www.imooc.com/article/27099
5.基于协同过滤算法图书推荐系统的设计与实现.pdf本系统分前台管理和后台管理两部分。前台用户在登录后执行的操作有查看 个性化推荐列表、收藏图书、阅读图书、评论图书、修改个人信息等。其中个性 化图书推荐列表应用了协同过滤算法,该算法根据用户收藏的图书类型,利用余 弦相似度公式计算出图书类型之间的相似度,统计当前用户收藏列表中每种图书 ...https://max.book118.com/html/2024/0217/7053136045006042.shtm
1.推荐系统前深度学习时代推荐算法(1):协同过滤(CF)以上两者分类的的依据是它们如何计算相似度和依据相似度做推荐的部分。(听到这你可能还有点懵,先别急~,继续往后面看) 基本思想: 基于用户的协同过滤推荐:通过计算用户相似度,找到与目标用户行为相似的其他用户,推荐相似用户正反馈交互过的物品。 https://blog.csdn.net/qq_58872188/article/details/143798469
2.协同过滤算法腾讯云开发者社区混合型协同过滤结合了基于用户和基于物品的协同过滤算法,充分利用它们的优点,以提高推荐系统的准确性和鲁棒性。 3.2 算法步骤 通过用户-物品矩阵,同时计算用户相似度矩阵和物品相似度矩阵。 综合两个矩阵的信息,生成最终的推荐列表。 3.3 优缺点 优点:综合了基于用户和基于物品的优势,提高了推荐系统的性能。 https://cloud.tencent.com/developer/article/2389581
3.线性化数学模型11篇(全文)实现协同推荐主要有三个步骤:步骤1:收集用户偏好数据。步骤2:计算相似度,找到相似用户群或者物品。步骤3:依据推荐策略,进行推荐计算。协同过滤推荐算法根据相似度比较对象的不同,可分为基于用户的协同推荐和基于物品的协同推荐。 (1)基于用户的协同推荐算法。根据历史数据,计算所有用户对产品的喜好程度,并由此找到目标...https://www.99xueshu.com/w/ikey77ax5ud4.html
4.java商城实现协同过滤推荐商品代码实现协同过滤推荐算法代码...基于用户的协同过滤算法主要包含以下两个步骤: A. 搜集用户和物品的历史信息,计算用户u和其他用户的相似度,找到和目标用户Ui兴趣相似的用户集合N(u) B.找到这个集合中用户喜欢的,且目标用户还没有听说过的物品推荐给目标用户。 适用性 由于需计算用户相似度矩阵,基于用户的协同过滤算法适用于用户较少的场合; 由于...https://blog.51cto.com/u_12855/8559622
5.基于改进RFM模型的直播平台用户细分及个性化推荐方法研究用户-主播价值偏好,构建用户评分矩阵,结合协同过滤算法开展推荐实验.基 于国内某主流直播平台的后台数据进行研究,结果表明,基于RFMT Segmentation的用户细分方法更适 用于实际应用的推荐,细分后的各类群体推荐效果大幅提升.RFMT模型增加了对用户粘性和长期价值 的考虑,更适应直播平台的特点,所提出的基于直播平台的用户细分...http://ci1st.istis.sh.cn/CN/PDF/954
6.相似度检测(精选十篇)在实际应用中, SOM网络的识别率与初始权值、网络的神经元个数、学习样本集、邻域定义等诸多因素有关, 而且在网络竞争的过程中, 由于是无监督算法, 会出现样本类别划分过细等问题, 为此本文提出了基于相似度检测的SOM网络模型。该模型从模拟人脑的工作方式出发, 依据相似度检测准则, 设置了包含多个获胜神经元的“兴...https://www.360wenmi.com/f/cnkeyuf6k6cp.html
7.内容算法时代,如何引爆用户流量?基于用户的协同,即切合了上面的例子,其基础思路分为两步:找到那些与你在某一方面口味相似的人群(比如你们都是新手爸妈,倾向于同一种教育理念),将这一人群喜欢的新东西推荐给你。 基于物品的协同,其推荐的基础思路是:先确定你喜欢物品,再找到与之相似的物品推荐给你。只是物品与物品间的相似度不是从内容属性的角度...https://36kr.com/p/1722509279233