CN108874877A - 一种面向位置社交网络的基于图链接分析的兴趣点推荐方法 - Google Patents

一种面向位置社交网络的基于图链接分析的兴趣点推荐方法 Download PDF

Info

Publication number
CN108874877A
CN108874877A CN201810415130.XA CN201810415130A CN108874877A CN 108874877 A CN108874877 A CN 108874877A CN 201810415130 A CN201810415130 A CN 201810415130A CN 108874877 A CN108874877 A CN 108874877A
Authority
CN
China
Prior art keywords
interest
user
point
value
recommendation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810415130.XA
Other languages
English (en)
Other versions
CN108874877B (zh
Inventor
金苍宏
尤明伟
吴明晖
朱凡微
刘泽民
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University City College ZUCC
Original Assignee
Zhejiang University City College ZUCC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University City College ZUCC filed Critical Zhejiang University City College ZUCC
Priority to CN201810415130.XA priority Critical patent/CN108874877B/zh
Publication of CN108874877A publication Critical patent/CN108874877A/zh
Application granted granted Critical
Publication of CN108874877B publication Critical patent/CN108874877B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种面向位置社交网络的基于图链接分析的兴趣点推荐方法,包括以下步骤:步骤1、构建基于个性化PageRank算法的用户模型;步骤2、构建基于幂律分布和PageRank算法的地理模型;步骤3、基于用户模型和地理模型的兴趣点混合推荐;对用户模型的推荐得分和地理模型的推荐得分进行带权重的线性相加,计算混合推荐的兴趣点推荐得分,将推荐得分高的兴趣点集合推荐给用户。本发明的兴趣点推荐方法采用图链接分析的方法来分析用户之间的影响和兴趣点之间的影响,一方面考虑到用户之间的影响在所有用户构成的图结构中的传播,另一方面考虑到兴趣点之间的相互影响在所有兴趣点构成的图结构中的传播。

Description

一种面向位置社交网络的基于图链接分析的兴趣点推荐方法
技术领域
本发明涉及兴趣点推荐方法,尤其涉及一种面向位置社交网络的基于图链 接分析的兴趣点推荐方法。
背景技术
近年来,移动互联网得到迅速发展,位置获取技术的日益成熟使得市场上 出现了很多基于地理位置的服务,特别是基于位置的社交网络(Location-Based SocialNetwork,简称LBSN),如Foursquare,Brightkite,GeoLife,Gowalla。 LBSN不仅提供传统的在线社交网络服务,也能够让用户能够以签到的形式发 布他们的地理标签信息和地理位置,记录自己的访问轨迹,并和自己的朋友分 享自己的旅游路线或者兴趣点,互相交流访问心得。推荐系统通过分析海量用 户签到数据,从中挖掘出有价值的信息,精准定位不同用户的个性化需求,分 析用户的活动轨迹找出规律,向用户推荐符合用户偏好的兴趣点,向兴趣点经 营者提供顾客的活动规律和购物习惯等从而改善经营。以Foursquare为例,Foursquare为商家提供针对顾客个性化的广告推荐,为不同的顾客推荐符合顾 客自己兴趣爱好的商家,通过分析顾客的消费习惯,有偿地提供给商家以便商 家及时了解目标客户的活动规律和购物习惯,商家据此可以对自己的经营行为 进行更好地设计、规划和改善,从而吸引顾客增加商家盈利。但传统的兴趣点 推荐方法并没有采用图链接分析的方法来分析用户之间的影响和兴趣点之间的 影响,一方面没有考虑到用户之间的影响在所有用户构成的图结构中的传播, 另一方面没有考虑到兴趣点之间的相互影响在所有兴趣点构成的图结构中的传 播。
发明内容
本发明的目的是提供一种面向位置社交网络的基于图链接分析的兴趣点推 荐方法。因此,本发明采用以下技术方案。
一种面向位置社交网络的基于图链接分析的兴趣点推荐方法,所述方法包 括以下步骤:
步骤1、构建基于个性化PageRank算法的用户模型;利用个性化PageRank 算法在针对用户个性化需求情况下的网页排名,来建模以用户为节点,以用户 之间的相似性为边的图结构中,给一个特定用户推荐兴趣点时受到其他所有用 户的影响,采用书签着色算法来计算对每个用户推荐兴趣点时受到其他用户的 影响力值PPRu,公式表示如下:
PPRu=(ppr1,u,ppr2,u,ppr3,u,...pprj,u...ppr|U|,u)
其中,pprj,i.表示用户j对用户i的推荐影响值,1<=j<=|U|,|U|表示用户 的总数;
设在兴趣点推荐上用户k对用户i的影响值为pprk.i,那么用户i访问兴趣 点j的推荐得分计算如下:
U_scorei,j=∑k∈U,k≠ipprk,i·norm_freqk,j
其中,Lk表示用户k的签到历史的兴趣点集合,norm_freqk,j是用户签到 历史中用户k对用户j的签到频次的规范化表示,频次的规范化计算公式表示 如下:
其中,freqk,j表示签到历史中用户k对兴趣点j的签到频次;
用户推荐得分U_scorei,j的规范化计算公式如下所示:
其中,U_scorei,j表示用户i访问兴趣点j的推荐得分,L表示兴趣点集合;
步骤2、构建基于幂律分布和PageRank算法的地理模型;首先基于幂律分 布来建模兴趣点对之间的距离分布;根据兴趣点之间的距离计算出用户在访问 过一个兴趣点i的情况下访问一个候选兴趣点j的概率分值,用户访问的兴趣点 对之间的距离在概率密度上近似符合幂律分布;假设dis(lj,li)表示为兴趣点lj和 兴趣点li之间的地理距离,wi(dis)表示用户在访问过一个兴趣点li的情况下访问 兴趣点li的可能性分值,采用以下公式建模wi和dis之间的函数关系:
wi(dis)=a*disk
其中a和k是幂函数的参数,根据用户的访问历史数据来估计这两个参数, 采用最大似然估计来估计参数的值,以上公式变换为:
ln(wi(dis))=lna+kln(dis)
设p(lj|li)为用户在访问过兴趣点li的情况下访问兴趣点lj的概率分值,计 算公式表示如下:
对于一个用户u签到历史的兴趣点结合Lu,计算用户在访问过历史兴趣点 集合Lu的条件下用户访问一个新兴趣点l的概率,也就是在用户u签到历史条 件下给这个用户推荐一个未访问过的兴趣点l的得分,设给一个用户u推荐兴 趣点l的推荐分值为G_SCORES,根据贝叶斯公式计算如下:
G_SCORES的规范化计算方法如下表示:
其中,P(l)是该兴趣点的先验概率,代表一个兴趣点的权威性或者流行程度;
步骤3、基于用户模型和地理模型的兴趣点混合推荐;对用户模型的推荐 得分和地理模型的推荐得分进行带权重的线性相加,计算混合推荐的兴趣点推 荐得分,将推荐得分高的兴趣点集合推荐给用户;计算公式表示如下:
REC_SCORE=(1-α)*U_SCORE+α*G_SCORE
其中,REC_SCORE表示混合推荐算法的最终推荐得分,U_SCORE表示用 户模型下的推荐得分,G_SCORE表示地理模型下的推荐得分,α表示两个模型 下的推荐得分的权重系数,即两个模型对最后推荐的影响因子;α范围在0和 1之间,α=0表示只考虑用户偏好模型推荐得分U_SCORE,α=1表示只考 虑地理模型的推荐得分G_SCORE,α越小表示用户偏好模型推荐得分的影响 越大,反之越小。
优选的,步骤1中进一步包括,采用书签着色算法来计算对每个用户推荐 兴趣点时受到其他用户的影响力值PPRu包括以下步骤:
a:根据用户的签到历史计算用户的相似性:
设pu表示用户u对各个兴趣点的签到频率向量,wu,i表示用户u对兴趣点 i的签到频次的规范化表示,L表示兴趣点集合,freq(u,i)表示用户u对兴趣点j 的访问频次,sim表示用户之间的相似性,公式如下:
pu=(wu,1,wu,2,wu,3,...wu,i...wu,|L|)
sim(ui,uj)=cos(pui,puj)
b:初始化一些变量:变量alpha=0.85,阈值epsilon=0.001;二维数组 edges表示根据步骤a计算出所有用户之间的相似性后每一个用户的相似性用户 列表,空队列q,空字典q_val,算法的返回值ppr数组表示每个用户推荐兴趣 点时受到其他用户的影响力值PPRu,将用户u加入队列q,将键值对(u,1.0) 加入字典q_val;
c:判断队列q是否为空,如果队列q为空,则执行步骤h;如果队列q非 空,则执行步骤d;
d:从队列q中取出队列头部的用户节点i,将字典q_val键值对中对应节 点i的值赋给w,将键为i的键值对从字典q_val中删除,数组ppr中索引为i 的值增加alpha*w,即ppr[i]+=alpha*w;
e:如果w大于阈值epsilon,则执行步骤f;否则执行步骤c;
f:遍历用户节点i的所有相邻的用户节点j,即遍历edges[i]这个数组中的 每一个元素j;
如果字典q_val中存在用户节点j这个键,键对应的值增加(1-alpha)*w* sim[i,j],其中sim[i,j]表示用户i和用户j的相似度;
反之,字典q_val加入键值对(j,(1-alpha)*w*sim[i,j]),并且队列q中加 入用户节点j;
g:返回步骤c;
h:返回ppr数组。
优选的,步骤2中进一步包括,采用PageRank算法来计算兴趣点的先验概 率,设兴趣点l在所有用户上的签到向量为ql,有如下表示:
ql=(w'1,l,w'2,l,w'3.l,...w'i,l...,w'|U|,l)
其中w'i,l表示用户i在兴趣点l上的签到频次的规范化表示,规范化方法计 算如下:
其中,freq(i,l)表示用户i在兴趣点l上的签到次数,U表示用户集合;
采用余弦相似性来计算兴趣点之间的相似性,公式表示如下:
sim(l1,l2)=cos(q1,q2)
采用PageRank算法来计算兴趣点的先验概率,包括以下步骤:
a:初始化变量,计算兴趣点两两之间的相似性得到相似性矩阵poi_sim, alpha=0.85,maxerr=0.0001,兴趣点个数为n,r0为长度为n的零元素列表, r为长度为n,所有值为1的列表,r表示初始化兴趣点图结构中所有兴趣点的 权威值都为1;
b:r0表示PageRank算法迭代计算中兴趣点权威值的上次迭代结果,r表 示此次迭代计算得到的权威值,如果列表r0和r的差所得到的列表的各元素绝 对值的和大于maxerr,执行步骤c;否则执行步骤f,表示PageRank算法的迭 代结果趋于稳定,收敛到稳定的值;
c:将列表r的副本赋值给r0,从0到n遍历i;
d:获取兴趣点图结构中兴趣点i的所有相邻兴趣点集合join_set, join_num为join_set的长度,兴趣点i的先验概率r[i]计算如下:
e:返回步骤b;
f:返回各个兴趣点的先验概率构成的列表pr。
优选的,步骤3中进一步包括,通过在签到历史数据集中随机取出一部分 用户数据集来调节权重系数α。
优选的,所述权重系数α取值为0.2。
本发明的有益效果是:本发明通过图链接的分析方法来研究基于地理位置 的社交网络中的兴趣点推荐问题,提出基于用户模型和地理模型的混合推荐算 法:以用户为节点,以用户之间的相似性关系看作带权重的边,在用户图结构 中采用个性化PageRank思想来建模用户访问一个候选兴趣点时受到其他用户的 影响值排名,采用bookmark-coloringalgorithm来实现用户访问兴趣点时受到其 他用户的影响值的有效计算,从而构建基于个性化PageRank算法的用户模型; 采用幂律分布来建模用户访问的兴趣点对之间的距离对用户访问意愿的影响, 采用带权重的PageRank算法来计算兴趣点的权威性,根据贝叶斯规则来计算用 户在访问历史记录的兴趣点集合下访问一个候选兴趣点的概率分值,从而构建 基于幂律分布和PageRank算法的地理模型。实验证明本算法提出的基于用户模 型和地理模型的混合推荐算法在推荐效果上的提升。
具体实施方式
下面对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述 的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的 实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
1、基于个性化PageRank算法的用户模型
传统的基于用户的协同过滤推荐算法根据用户之间是否有共同的兴趣点签 到来确定用户之间是否存在相似关系,根据用户之间对一个共同兴趣点的签到 频次来确定相似关系的强弱。但是两个用户之间即使没有签到任何共同的兴趣 点,这两个用户也有可能因为和某一个用户都存在着直接相似关系而表现出一 定的相似性。举个例子,一个用户A受到朋友B的影响去访问一些兴趣点,而 朋友B会受到自己的朋友C的影响,用户A和用户C不是朋友,但是用户C 会直接影响用户B,通过影响B去间接影响用户A,尽管用户C和用户A不是 直接的朋友关系,用户C和用户A因为都和用户B直接关联而存在着隐性的关 联关系,即用户之间的影响力随着朋友的朋友而传播。
同理,本发明认为,签到用户之间的关系不仅有签到共同兴趣点的直接关 联,还有因为这种直接关联在用户之间的相互传递影响而产生的间接关联。本 发明认为,在以用户为节点,以用户之间的是否存在签到相似性为边,形成图 的结构,用户之间因为签到相似性而存在着直接的关联关系,关联关系的强弱 用相似性值的大小表示,类似于网页之间的链接指向,只不过这种链接指向有 不同的权重大小。针对一个用户而言,给一个用户推荐兴趣点,会受到其他有 着签到相似性的相邻用户的影响,这种推荐上的影响会在图中传播下去,比如 用户A和用户B相似,用户A影响了对用户B的推荐,用户B和用户C相似, 用户A通过影响用户B来间接影响对用户C的推荐,以此类推。在这样的图结 构中,两个用户之间虽然没有直接相邻的边,但会因为用户A到用户B有一条 有向的可达路径,表示给用户B推荐兴趣点时会受到用户A的间接影响,这就 是给用户推荐兴趣点时用户之间的影响在图结构中的传播。
个性化PageRank(本发明简称PPR),由PageRank算法扩展而来,它的目 标是针对某个用户而言所有网页与该用户的相关度,即在某个用户个性化需求 下的网页排名。原始的PageRank算法中,用户以α的概率沿着当前网页上包含 的超链接浏览其他网页,以(1-α)的概率停止访问当前网页上的超链接,随 机浏览一个网页,这种情况并没有考虑到用户的个性化需求。而在个性化PageRank算法中,用户在访问网页时有一定的个性化偏好,用户从原始网页出 发,以α的概率沿着网页上的超链接访问其他网页,用户不再以(1-α)的概 率随机浏览一个网页,而是以(1-α)的概率重新回到原始网页,在原始网页 上按照均匀分布随机选择一个超链接访问,如此多轮游走后,每个网页被访问 到的概率值趋于稳定,从而得到满足用户个性化需求的网页排名。
对于节点i,个性化PageRank算法下的计算公式表示如下:
其中,PR(i)表示网页i的个性化PageRank值,in(i)表示链接指向网页i的 网页集合,out(j)表示网页j的出度数量,(1-α)ri表示针对用户的个性化项。
对于节点i,用概率转移的方式计算个性化PageRank值,公式表示如下:
PageRank算法中用户以(1-α)的概率停止点击当前网页i上的链接随机 访问一个新网页,而对于个性化PageRank算法而言,考虑到了用户的个性化需 求,用户不再以(1-α)的概率随机访问一个新网页,而是始终以(1-α)的概 率回到网页i,该模型也被称作重启动随机游走。当算法多次迭代会如同 PageRank算法一样收敛,最终πj包含各个节点的PPR值,其中πj反映了节点j 和节点i的紧密联系程度或者相关度。
书签着色算法(bookmark-coloring algorithm,简称BCA)是用来实现有效 计算个性化PageRank算法在网页节点上的PPR值。本发明借用该算法来计算 网络中节点的PPR值。BCA假设我们在节点u有固定数量的油漆,然后向邻近 的节点模拟油漆的喷洒,每个节点保留自己拥有的油漆的(1-α)比例部分, 将剩下的油漆分配给它的邻近节点(和该节点有边相连的节点),一直迭代执行 这个过程直到每个节点被重新分配给邻近节点的油漆数量不超过一个非常小的 常数值,结束迭代。该算法描述如下:
BCA(G,u,α,ε)
输入:图G=(U,E),其中U为节点集合,E为边的集合,u∈U,α是公式 中的常量值,ε是一个非常小的阈值;
输出:PPR向量π=(π12,...,π|U|)
因此本发明借鉴个性化PageRank算法在针对用户个性化需求情况下的网页 排名,来建模以用户为节点,以用户之间的相似性为边的图结构中,给一个特 定用户推荐兴趣点时受到其他所有用户的影响,借鉴研究者提出的bookmark- coloring algorithm对个性化PageRank算法的有效计算,采用bookmark-coloring algorithm算法来计算对每个用户推荐兴趣点时受到其他用户的影响力值,公式 表示如下:
PPRu=(ppr1,u,ppr2,u,ppr3,u,...pprj,u...ppr|U|,u)
其中,pprj,i.表示用户j对用户i的推荐影响值,1<=j<=|U|,|U|表示用户 的总数。
用户在签到历史上的相似性只代表了一个用户在访问候选兴趣点时受到其 他相邻用户的直接影响,没有考虑到这种影响在用户之间的传播,本发明借鉴 bookmark-coloring algorithm,在用户的图结构中,用户会保留一部分对相邻用 户的影响值,也会把一部分影响值随着相邻节点传播到其他非相邻的节点,类 似于bookmark-coloringalgorithm中的油漆保留和分配,因此采用bookmark- coloring algorithm来计算在个性化PageRank算法中针对给某个用户推荐兴趣点 时所有其他用户的影响值,本发明称作PPR值。
该算法计算给用户u推荐兴趣点时受到其他用户的影响值PPR,算法描述 如下:
a:根据用户的签到历史计算用户的相似性:
设pu表示用户u对各个兴趣点的签到频率向量为,wu,i表示用户u对兴趣 点i的签到频次的规范化表示,L表示兴趣点集合,freq(u,i)表示用户u对兴趣 点j的访问频次,sim表示用户之间的相似性,公式如下:
pu=(wu,1,wu,2,wu,3,...wu,i...wu,|L|)
sim(ui,uj)=cos(pui,puj)
b:初始化一些变量:alpha=0.85,阈值epsilon=0.001;二维数组edges表 示根据步骤a计算出所有用户之间的相似性后每一个用户的相似性用户列表, 空队列(先进先出队列)q,空字典q_val,算法的返回值ppr数组表示所有用 户对该用户u在兴趣点推荐上的影响值,将用户u加入队列q,将键值对(u, 1.0)加入字典q_val。
c:判断队列q是否为空,如果队列q为空,则执行步骤h;如果队列q非 空,则执行步骤d。
d:从队列q中取出队列头部的用户节点i,将字典q_val键值对中对应节 点i的值赋给w,将键为i的键值对从字典q_val中删除,数组ppr中索引为i 的值增加alpha*w,即ppr[i]+=alpha*w
e:如果w大于阈值epsilon,则执行步骤f;否则执行步骤c。
f:遍历用户节点i的所有相邻的用户节点j,即遍历edges[i]这个数组中的 每一个元素j
如果字典q_val中存在用户节点j这个键,键对应的值增加(1-alpha)*w* sim[i,j],其中sim[i,j]表示用户i和用户j的相似度;
反之,字典q_val加入键值对(j,(1-alpha)*w*sim[i,j]),并且队列q中加 入用户节点j;
g:返回步骤c;
h:返回ppr数组。
算法python代码表示如下:
以上算法可以计算得到给每个用户推荐兴趣点时受到其他用户的影响值向 量PPRu,设在兴趣点推荐上用户k对用户i的影响值为pprk.i,那么用户i访问 兴趣点j的推荐得分计算如下:
U_scorei,j=∑k∈U,k≠ipprk,i·norm_freqk,j
其中,Lk表示用户k的签到历史的兴趣点集合,norm_freqk,j是用户签到 历史中用户k对用户j的签到频次的规范化表示,频次的规范化计算公式表示 如下:
其中,freqk,j表示签到历史中用户k对兴趣点j的签到频次。
推荐得分U_scorei,j的规范化计算公式如下所示:
2、基于幂律分布和PageRank算法的地理模型
(1)幂律分布来建模兴趣点对之间的距离分布
用户签到的兴趣点对中,很大比例部分的兴趣点对之间有较小的距离,说 明用户的兴趣点签到活动呈现一种地理上的“群聚”现象,这种“群聚”现象 可以用来对用户签到行为的地理因素建模。这种现象很容易理解,我们凭直觉 能够意识到:用户倾向于访问他们居住地或工作地附近的兴趣点;用户访问一 个兴趣点之后,很大可能会再去访问这个兴趣点附近的兴趣点。结果,用户访 问的兴趣点集合在地理距离上相距不远,表现出地理上的“群聚”现象。
为了建模兴趣点在地理上的这种“群聚”现象,本发明首先根据兴趣点之 间的距离计算出用户在访问过一个兴趣点i的情况下访问一个候选兴趣点j的概 率分值,用户访问的兴趣点对之间的距离在概率密度上近似符合幂律分布。假 设dis(lj,li)表示为兴趣点lj和兴趣点li之间的地理距离,wi(dis)表示用户
在访问过一个兴趣点li的情况下访问兴趣点li的可能性分值,本发明用以下 公式建模wi和dis之间的函数关系:
wi(dis)=a*disk
其中a和k是幂函数的参数,需要根据用户的访问历史数据来估计这两个 参数,本发明采用最大似然估计来估计参数的值。以上变换为:
ln(wi(dis))=lna+kln(dis)
这样,函数关系变成线性函数,可以用最小二乘法来估计参数的值。
设p(lj|li)为用户在访问过兴趣点li的情况下访问兴趣点lj的概率分值,计 算公式表示如下:
由此可以看出,随着兴趣点之间的距离的增长,条件概率的值随之下降,反 映了用户倾向于访问比较近的兴趣点。
对于一个用户u和他的签到历史的兴趣点结合Lu,计算用户在访问过历史兴 趣点集合Lu的条件下用户访问一个新兴趣点l的概率,也就是在用户u签到历 史条件下给这个用户推荐一个未访问过的兴趣点l的得分,设给一个用户u推 荐兴趣点l的推荐分值为G_SCORES,根据贝叶斯公式计算如下:
G_SCORES的规范化计算方法如下表示:
其中,P(l)是该兴趣点的先验概率,代表一个兴趣点的权威性或者流行 程度,一般常识认为可以根据所有用户对这个兴趣点总的签到次数来反映这个 兴趣点的权威性,但是它忽视了兴趣点之间的相互影响,本发明借鉴PageRank 的思想来建模兴趣点的权威性。
(2)PageRank算法来建模兴趣点的权威性
PageRank算法在网页排名中的应用中,所有网页构成图的结构,网页之间 因网页上的超链接而存在着紧密的联系,一个网页被其他网页链接的次数越多, 被其他更重要的网页链接,说明这个网页更重要,先给每个网页赋以相同的代 表重要性的值,通过网页之间的链接关系来重新调整各个网页的重要性值,调 整过程最终收敛,此时所有网页的重要性就被计算出来。
在一个含有n个节点(网页)构成的图G中,每个节点的PageRank值定 义如下:
其中,πi表示网页i的排名值,dj表示指向网页i的网页j的出链数量,α 表示用户到达任意一个网页时点击该网页上超链接的概率,通常情况下α= 0.85。
由于一些网页是孤立网页,不链接其他网页,增加了(1-α)/n这一项, 表示用户停止点击当前网页上的超链接,随机访问一个新网页的概率,另外一 项代表该网页的重要性得分的计算。上面的公式2.9可以用向量形式表示如下:
其中P是图的基于行规范化的链接矩阵,该公式是一个递归算法,用幂法 计算PageRank值总是收敛的,即迭代的次数是有限的。相关研究已经证明不论 初始值如何选取,该算法都保证了网页排名的估计值最终收敛。该公式表明 PageRank值的求解遵循一个随机上网用户访问页面的马尔可夫链,用户在任何 一个节点,以α的概率访问该网页链接指向的网页,以(1-α)的概率停止访 问当前网页链接,随机访问一个新网页。
本发明认为,和网页中因为超链接指向反映了网页的重要性类似,用户访 问的兴趣点之间因为存在着相似性而最终反映了兴趣点的重要性。举个例子, 用户访问了杭州西湖,因为灵隐寺和西湖都是著名景点并且地理上非常接近, 用户很大可能去访问灵隐寺,去了灵隐寺有很大可能去附近的北高峰和法喜寺, 本发明认为,杭州西湖和灵隐寺有很大的相似性,杭州西湖影响了用户去访问 灵隐寺(类似于网页中的超链接指向),兴趣点之间不同程度的相似性就类似于 网页中的链接指向一样,通过兴趣点之间不同程度的相似性采用PageRank算法 可以计算出兴趣点的重要性,或者说兴趣点的权威性、流行度。
借鉴传统的基于项目的协同过滤算法,可以计算出兴趣点之间的相似性。 设兴趣点l在所有用户上的签到向量为ql,有如下表示:
ql=(w'1,l,w'2,l,w'3.l,...w'i,l...,w'|U|,l)
其中w'i,l表示用户i在兴趣点l上的签到频次的规范化表示,规范化方法计 算如下:
其中,freq(i,l)表示用户i在兴趣点l上的签到次数,U表示用户集合。
本发明采用余弦相似性来计算兴趣点之间的相似性,公式表示如下:
sim(l1,l2)=cos(q1,q2)
以兴趣点为图的节点,以兴趣点之间的相似性为节点之间的边,构成图的 结构,相似性大小代表边的权重,相似性值为0表示节点之间没有边。假设在 兴趣点图结构中,兴趣点A和兴趣点B相似,兴趣点B和兴趣点C相似,但兴 趣点A和兴趣点C不相似(没有用户访问了A又访问了C),但是兴趣点A会通 过和兴趣点B相似去影响兴趣点C的重要性,即一个兴趣点的权威值会通过边 去传播一部分自己的权威值,类似于网页之间通过超链接指向来体现网页的重 要性排名[37]。因此,本节借鉴PageRank算法在网页重要性排名中的应用,采用PageRank算法来计算兴趣点的重要性排名,即公式中兴趣点的先验概率。
算法步骤如下:
a:初始化一些变量,根据上文公式计算兴趣点两两之间的相似性得到相似 性矩阵poi_sim,alpha=0.85,maxerr=0.0001,兴趣点个数为n,r0为长度 为n的零元素列表,r为长度为n,所有值为1的列表(r表示初始化兴趣点图 结构中所有兴趣点的权威值都为1)。
b:r0表示PageRank算法迭代计算中兴趣点权威值的上次迭代结果,r1表 示此次迭代计算得到的权威值,如果列表r0和r的差所得到的列表的各元素绝 对值的和大于maxerr,执行步骤c;否则执行步骤f,表示PageRank算法的迭 代结果趋于稳定,收敛到稳定的值;
c:将列表r的副本赋值给r0,从0到n遍历i(即遍历兴趣点集合),对 于每一次遍历i
d:获取兴趣点图结构中兴趣点i的所有相邻兴趣点集合join_set(和兴 趣点i相似值大于0的兴趣点集合),join_num为join_set的长度,兴趣点i 的权威值r[i]计算如下:
e:返回步骤b
f:返回各个兴趣点的权威值构成的列表pr
用python语言描述如下:
3、基于用户模型和地理模型的兴趣点混合推荐方法
本混合推荐方法对用户模型的推荐得分和地理模型的推荐得分进行带权重 的线性相加,计算混合推荐的兴趣点推荐得分,将推荐得分高的兴趣点集合推 荐给用户。计算公式表示如下:
REC_SCORE=(1-α)*U_SCORE+α*G_SCORE
其中,REC_SCORE表示混合推荐算法的最终推荐得分,U_SCORE表示用 户模型下的推荐得分,G_SCORE表示地理模型下的推荐得分,α表示两个模型 下的推荐得分的权重系数,即两个模型对最后推荐的影响因子。α范围在0和 1之间,α=0表示PPRU_PRPG算法只考虑用户偏好模型推荐得分U_SCORE, α=1表示PPRU_PRPG算法只考虑地理模型的推荐得分G_SCORE,α越小表 示用户偏好模型推荐得分的影响越大,反之越小。通过在签到历史数据集中随 机取出一部分用户数据集来调节参数α,经过试验得出α最好的权重参数是0.2。
总之,通过用户的签到历史数据集可以根据该兴趣点混合推荐方法给用户 推荐适合的兴趣点。
将签到历史数据集按照随机的方法分为一定比例的两份:训练集和测试集。
用户模型下,先根据训练集计算用户之间的相似性,再以用户为节点,以 用户之间的相似性为带权重的边,借鉴个性化PageRank算法的思想来计算给一 个用户推荐兴趣点时受到其他用户的影响值,测试集包含用户对一些兴趣点的 签到和频次,对于一个特定用户,通过整合其他用户对该用户推荐上的影响值 和其他用户对一些兴趣点的签到频次(影响值乘以签到频次,再求和)来计算 该特定用户对特定兴趣点的推荐得分,最后得到用户模型下的推荐得分。
地理模型下,采用幂律分布对用户访问兴趣点对之间的距离分布建模,计 算出用户在访问过一个兴趣点的条件下访问一个新兴趣点的概率,根据贝叶斯 公式可以计算用户在历史签到的兴趣点集合下访问一个候选兴趣点的推荐得分, 其中需要计算一个兴趣点的先验概率,即兴趣点的权威性;借鉴PageRank算法 在网页排名重要性中的计算,先根据训练集来计算兴趣点之间的相似性,在获 得兴趣点之间的相似性后采用边带权重的PageRank算法来计算兴趣点的权威性, 通过以上方式来对兴趣点的地理因素建模,获得用户在一个候选兴趣点上的推 荐得分。
最后,对用户模型下的推荐得分和地理模型下的推荐得分进行线性权重相 加(权重系数为0.2,0.8倍的用户模型推荐得分加上0.2倍的地理模型得分), 得到给一个用户推荐兴趣点的得分,将分值高的一些兴趣点推荐给用户,从而 完成兴趣点推荐。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。 任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进 行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所 揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利 要求所涵盖。

Claims (5)

1.一种面向位置社交网络的基于图链接分析的兴趣点推荐方法,其特征在于,所述方法包括以下步骤:
步骤1、构建基于个性化PageRank算法的用户模型;利用个性化PageRank算法在针对用户个性化需求情况下的网页排名,来建模以用户为节点,以用户之间的相似性为边的图结构中,给一个特定用户推荐兴趣点时受到其他所有用户的影响,采用书签着色算法来计算对每个用户推荐兴趣点时受到其他用户的影响力值PPRu,公式表示如下:
PPRu=(ppr1,u,ppr2,u,ppr3,u,...pprj,u...ppr|U|,u)
其中,pprj,i.表示用户j对用户i的推荐影响值,1<=j<=|U|,|U|表示用户的总数;
设在兴趣点推荐上用户k对用户i的影响值为pprk.i,那么用户i访问兴趣点j的推荐得分计算如下:
U_scorei,j=∑k∈U,k≠ipprk,i·norm_freqk,j
其中,Lk表示用户k的签到历史的兴趣点集合,norm_freqk,j是用户签到历史中用户k对用户j的签到频次的规范化表示,频次的规范化计算公式表示如下:
其中,freqk,j表示签到历史中用户k对兴趣点j的签到频次;
用户推荐得分U_scorei,j的规范化计算公式如下所示:
其中,U_scorei,j表示用户i访问兴趣点j的推荐得分,L表示兴趣点集合;
步骤2、构建基于幂律分布和PageRank算法的地理模型;首先基于幂律分布来建模兴趣点对之间的距离分布;根据兴趣点之间的距离计算出用户在访问过一个兴趣点i的情况下访问一个候选兴趣点j的概率分值,用户访问的兴趣点对之间的距离在概率密度上近似符合幂律分布;假设dis(lj,li)表示为兴趣点lj和兴趣点li之间的地理距离,wi(dis)表示用户在访问过一个兴趣点li的情况下访问兴趣点li的可能性分值,采用以下公式建模wi和dis之间的函数关系:
wi(dis)=a*disk
其中a和k是幂函数的参数,根据用户的访问历史数据来估计这两个参数,采用最大似然估计来估计参数的值,以上公式变换为:
ln(wi(dis))=lna+kln(dis)
设p(lj|li)为用户在访问过兴趣点li的情况下访问兴趣点lj的概率分值,计算公式表示如下:
对于一个用户u签到历史的兴趣点结合Lu,计算用户在访问过历史兴趣点集合Lu的条件下用户访问一个新兴趣点l的概率,也就是在用户u签到历史条件下给这个用户推荐一个未访问过的兴趣点l的得分,设给一个用户u推荐兴趣点l的推荐分值为G_SCORES,根据贝叶斯公式计算如下:
G_SCORES的规范化计算方法如下表示:
其中,P(l)是该兴趣点的先验概率,代表一个兴趣点的权威性或者流行程度;
步骤3、基于用户模型和地理模型的兴趣点混合推荐;对用户模型的推荐得分和地理模型的推荐得分进行带权重的线性相加,计算混合推荐的兴趣点推荐得分,将推荐得分高的兴趣点集合推荐给用户;计算公式表示如下:
REC_SCORE=(1-α)*U_SCORE+α*G_SCORE
其中,REC_SCORE表示混合推荐算法的最终推荐得分,U_SCORE表示用户模型下的推荐得分,G_SCORE表示地理模型下的推荐得分,α表示两个模型下的推荐得分的权重系数,即两个模型对最后推荐的影响因子;α范围在0和1之间,α=0表示只考虑用户偏好模型推荐得分U_SCORE,α=1表示只考虑地理模型的推荐得分G_SCORE,α越小表示用户偏好模型推荐得分的影响越大,反之越小。
2.根据权利要求1所述的一种面向位置社交网络的基于图链接分析的兴趣点推荐方法,其特征在于,步骤1中进一步包括,采用书签着色算法来计算对每个用户推荐兴趣点时受到其他用户的影响力值PPRu包括以下步骤:
a:根据用户的签到历史计算用户的相似性:
设pu表示用户u对各个兴趣点的签到频率向量,wu,i表示用户u对兴趣点i的签到频次的规范化表示,L表示兴趣点集合,freq(u,i)表示用户u对兴趣点j的访问频次,sim表示用户之间的相似性,公式如下:
pu=(wu,1,wu,2,wu,3,...wu,i...wu,|L|)
sim(ui,uj)=cos(pui,puj)
b:初始化一些变量:变量alpha=0.85,阈值epsilon=0.001;二维数组edges表示根据步骤a计算出所有用户之间的相似性后每一个用户的相似性用户列表,空队列q,空字典q_val,算法的返回值ppr数组表示每个用户推荐兴趣点时受到其他用户的影响力值PPRu,将用户u加入队列q,将键值对(u,1.0)加入字典q_val;
c:判断队列q是否为空,如果队列q为空,则执行步骤h;如果队列q非空,则执行步骤d;
d:从队列q中取出队列头部的用户节点i,将字典q_val键值对中对应节点i的值赋给w,将键为i的键值对从字典q_val中删除,数组ppr中索引为i的值增加alpha*w,即ppr[i]+=alpha*w;
e:如果w大于阈值epsilon,则执行步骤f;否则执行步骤c;
f:遍历用户节点i的所有相邻的用户节点j,即遍历edges[i]这个数组中的每一个元素j;
如果字典q_val中存在用户节点j这个键,键对应的值增加(1-alpha)*w*sim[i,j],其中sim[i,j]表示用户i和用户j的相似度;
反之,字典q_val加入键值对(j,(1-alpha)*w*sim[i,j]),并且队列q中加入用户节点j;
g:返回步骤c;
h:返回ppr数组。
3.根据权利要求1所述的一种面向位置社交网络的基于图链接分析的兴趣点推荐方法,其特征在于,步骤2中进一步包括,采用PageRank算法来计算兴趣点的先验概率,设兴趣点l在所有用户上的签到向量为ql,有如下表示:
ql=(w'1,l,w'2,l,w'3.l,...w'i,l...,w'|U|,l)
其中w'i,l表示用户i在兴趣点l上的签到频次的规范化表示,规范化方法计算如下:
其中,freq(i,l)表示用户i在兴趣点l上的签到次数,U表示用户集合;
采用余弦相似性来计算兴趣点之间的相似性,公式表示如下:
sim(l1,l2)=cos(q1,q2)
采用PageRank算法来计算兴趣点的先验概率,包括以下步骤:
a:初始化变量,计算兴趣点两两之间的相似性得到相似性矩阵poi_sim,alpha=0.85,maxerr=0.0001,兴趣点个数为n,r0为长度为n的零元素列表,r为长度为n,所有值为1的列表,r表示初始化兴趣点图结构中所有兴趣点的权威值都为1;
b:r0表示PageRank算法迭代计算中兴趣点权威值的上次迭代结果,r表示此次迭代计算得到的权威值,如果列表r0和r的差所得到的列表的各元素绝对值的和大于maxerr,执行步骤c;否则执行步骤f,表示PageRank算法的迭代结果趋于稳定,收敛到稳定的值;
c:将列表r的副本赋值给r0,从0到n遍历i;
d:获取兴趣点图结构中兴趣点i的所有相邻兴趣点集合join_set,join_num为join_set的长度,兴趣点i的先验概率r[i]计算如下:
e:返回步骤b;
f:返回各个兴趣点的先验概率构成的列表pr。
4.根据权利要求1所述的一种面向位置社交网络的基于图链接分析的兴趣点推荐方法,其特征在于,步骤3中进一步包括,通过在签到历史数据集中随机取出一部分用户数据集来调节权重系数α。
5.根据权利要求4所述的一种面向位置社交网络的基于图链接分析的兴趣点推荐方法,其特征在于,所述权重系数α取值为0.2。
CN201810415130.XA 2018-05-03 2018-05-03 一种面向位置社交网络的基于图链接分析的兴趣点推荐方法 Active CN108874877B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810415130.XA CN108874877B (zh) 2018-05-03 2018-05-03 一种面向位置社交网络的基于图链接分析的兴趣点推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810415130.XA CN108874877B (zh) 2018-05-03 2018-05-03 一种面向位置社交网络的基于图链接分析的兴趣点推荐方法

Publications (2)

Publication Number Publication Date
CN108874877A true CN108874877A (zh) 2018-11-23
CN108874877B CN108874877B (zh) 2022-03-18

Family

ID=64327373

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810415130.XA Active CN108874877B (zh) 2018-05-03 2018-05-03 一种面向位置社交网络的基于图链接分析的兴趣点推荐方法

Country Status (1)

Country Link
CN (1) CN108874877B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108804551A (zh) * 2018-05-21 2018-11-13 辽宁工程技术大学 一种兼顾多样性与个性化的空间兴趣点推荐方法
CN110083767A (zh) * 2019-04-28 2019-08-02 广东工业大学 一种基于元路径的兴趣点推荐方法及相关装置
CN110659394A (zh) * 2019-08-02 2020-01-07 中国人民大学 基于双向邻近度的推荐方法
CN111177565A (zh) * 2019-12-31 2020-05-19 杭州电子科技大学 基于相关矩阵和词向量模型的兴趣点推荐方法
CN111324816A (zh) * 2020-03-05 2020-06-23 重庆大学 一种基于区域划分和上下文影响的兴趣点推荐方法
CN113032675A (zh) * 2021-03-26 2021-06-25 李蕊男 个性化推荐中的用户相似性多因素评定方法
CN114168465A (zh) * 2021-12-02 2022-03-11 天津大学 一种基于计算实验的推荐系统验证方法
CN116541617A (zh) * 2023-06-29 2023-08-04 安徽大学 参会用户及地点推荐方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170031996A1 (en) * 2015-07-28 2017-02-02 Microsoft Technology Licensing, Llc Virtual Tiles For Service Content Recommendation
CN107766462A (zh) * 2017-09-28 2018-03-06 重庆大学 基于用户偏好、社交信誉度和地理位置的兴趣点推荐方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170031996A1 (en) * 2015-07-28 2017-02-02 Microsoft Technology Licensing, Llc Virtual Tiles For Service Content Recommendation
CN107766462A (zh) * 2017-09-28 2018-03-06 重庆大学 基于用户偏好、社交信誉度和地理位置的兴趣点推荐方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108804551B (zh) * 2018-05-21 2021-06-04 辽宁工程技术大学 一种兼顾多样性与个性化的空间兴趣点推荐方法
CN108804551A (zh) * 2018-05-21 2018-11-13 辽宁工程技术大学 一种兼顾多样性与个性化的空间兴趣点推荐方法
CN110083767A (zh) * 2019-04-28 2019-08-02 广东工业大学 一种基于元路径的兴趣点推荐方法及相关装置
CN110659394A (zh) * 2019-08-02 2020-01-07 中国人民大学 基于双向邻近度的推荐方法
CN110659394B (zh) * 2019-08-02 2023-05-02 中国人民大学 基于双向邻近度的推荐方法
CN111177565B (zh) * 2019-12-31 2021-08-31 杭州电子科技大学 基于相关矩阵和词向量模型的兴趣点推荐方法
CN111177565A (zh) * 2019-12-31 2020-05-19 杭州电子科技大学 基于相关矩阵和词向量模型的兴趣点推荐方法
CN111324816B (zh) * 2020-03-05 2023-04-07 重庆大学 一种基于区域划分和上下文影响的兴趣点推荐方法
CN111324816A (zh) * 2020-03-05 2020-06-23 重庆大学 一种基于区域划分和上下文影响的兴趣点推荐方法
CN113032675A (zh) * 2021-03-26 2021-06-25 李蕊男 个性化推荐中的用户相似性多因素评定方法
CN114168465A (zh) * 2021-12-02 2022-03-11 天津大学 一种基于计算实验的推荐系统验证方法
CN114168465B (zh) * 2021-12-02 2024-05-17 天津大学 一种基于计算实验的推荐系统验证方法
CN116541617A (zh) * 2023-06-29 2023-08-04 安徽大学 参会用户及地点推荐方法及系统
CN116541617B (zh) * 2023-06-29 2023-09-19 安徽大学 参会用户及地点推荐方法及系统

Also Published As

Publication number Publication date
CN108874877B (zh) 2022-03-18

Similar Documents

Publication Publication Date Title
CN108874877A (zh) 一种面向位置社交网络的基于图链接分析的兴趣点推荐方法
Richardson et al. Mining knowledge-sharing sites for viral marketing
Ying et al. A temporal-aware POI recommendation system using context-aware tensor decomposition and weighted HITS
CN106484764A (zh) 基于人群画像技术的用户相似度计算方法
US9135308B2 (en) Topic relevant abbreviations
CN103853831B (zh) 一种基于用户兴趣的个性化搜索实现方法
CN108509551A (zh) 一种基于Spark环境下的微博网络关键用户挖掘系统及方法
CN107800801A (zh) 一种基于用户学习偏好的学习资源推送方法及系统
CN105389332A (zh) 一种地理社交网络下的用户相似性计算方法
CN103559252A (zh) 给游客推荐其很可能会浏览的景点的方法
CN109508428A (zh) 基于兴趣点真流行度与隐式信任挖掘的兴趣点推荐方法
CN105528395A (zh) 一种潜在消费者推荐方法及系统
US8639703B2 (en) Dual web graph
Goel et al. An efficient page ranking approach based on vector norms using sNorm (p) algorithm
CN104484365B (zh) 一种多源异构在线社会网络中网络主体之间社会关系的预测方法与系统
CN109684561B (zh) 基于用户签到行为变化的深层语义分析的兴趣点推荐方法
Yan et al. Policy evaluation and seeking for multiagent reinforcement learning via best response
Chung Estimation of sequential search models
US20160335678A1 (en) Collective Expansion of Bid-Terms for Campaign Optimization
Serrano Smart internet search with random neural networks
Yu et al. Mining location influence for location promotion in location-based social networks
CN111177565B (zh) 基于相关矩阵和词向量模型的兴趣点推荐方法
CN114065024A (zh) 基于用户个性化生活模式的poi推荐方法
Rong et al. Modeling bounded rationality for sponsored search auctions
Chen et al. Recommending interesting landmarks in photo sharing sites

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant