CN108399189A - 基于社团发现的好友推荐***及其方法 - Google Patents
基于社团发现的好友推荐***及其方法 Download PDFInfo
- Publication number
- CN108399189A CN108399189A CN201810064199.2A CN201810064199A CN108399189A CN 108399189 A CN108399189 A CN 108399189A CN 201810064199 A CN201810064199 A CN 201810064199A CN 108399189 A CN108399189 A CN 108399189A
- Authority
- CN
- China
- Prior art keywords
- user
- registering
- data
- probability
- place
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明属于大数据和数据挖掘推荐***技术领域,尤其是一种基于社团发现的好友推荐***及其方法。本发明的***包括:数据获取模块、数据处理模块、数据存储模块、业务逻辑模块、显示模块等五个模块。提出了一种基于社团发现的计算方法,根据用户的签到地理位置信息和共同好友数计算用户距离相似度和熟识度,再加入到LMF算法中进行社团划分,在产生的好友社团中,根据用户离散签到时间时,采用核密度估计算法计算用户24小时整体签到概率密度。再计算用户签到地点的地点相似度,建立用户时空相似度模型实现推荐。本发明解决用户兴趣多样性推荐的问题以及用户兴趣不断变化带来的推荐运算复杂度增长的问题,得到较传统的推荐技术更加灵活的推荐技术,提高了推荐质量。
Description
技术领域
本发明设计大数据的数据挖掘推荐***技术领域,尤其是一种基于社团发现的好友推荐***及其方法。
背景技术
互联网的用户扮演起了越来越活跃的角色,特别是基于位置的服务与移动社会网络的发展,使得用户与用户之间的联系更加的紧密,也广泛的增加了人们的交际圈。用户趋向使用移动智能终端越发明显,如微信,微博和FaceBook等社交软件都有相应的移动端,且可以实时的分享当前位置信息和给出相应的评论。移动社会网络兼有社交网络和移动网络的特性,创造了一个新的社交方式,使网络和现实更为接近。移动社交网络主要特点在于增加了地理位置,用户可以对当前访问的兴趣点(如餐厅、电影院、旅游景点等)签到,并可以对好友分享自己的签到信息。兴趣点推荐服务旨在为用户推荐一些新的可能感兴趣的位置,根据用户的签到数据和好友关系来推荐与目标用户有相同偏好的用户。社交网络中的用户具有社会需求(拓宽朋友圈)和获取信息的需求。然而,传统的好友推荐算法很少有从用户活动时间相似性的角度考虑为目标用户推荐潜在好友。
目前个性化推荐技术在不同应用领域受到广泛关注,如电子商务网站为用户推荐商品、音乐平台为用户推荐音乐。随着社交网络和智能终端的普及,基于社交网络的推荐***和移动推荐***的研究得到越来越多的关注。推荐技术较好地解决了互联网信息过载的问题,方便用户快速且有效地找到自己所需要的信息和服务。由于兴趣点规模巨大,而每个用户访问的兴趣点数量有限,且每个人兴趣和习惯具有差异性,这也给用户好友推荐问题带来了新的挑战。
LFM算法是基于网络实际是由局部结构所组成这样一种假设,因此算法从局部社区开始,通过不断选取使得社区适应度函数fG最大的节点,来扩大局部社区的规模,直至所有节点都被划分到相应的社区中:
和代表局部社区G内部和外部节点的度的总数,α是一个正实数值参数,控制社团数目的大小,经过Lancichinetti等人的实验发现,当α取值在0~0.5时,网络中几乎只有一个社区,即网络本身。当α>2时,会形成许多小的社区结构。
有了社区的适应度函数,某个节点A对于局部社区G的适应度贡献值定义为子图G包含节点A和不包含节点A的适应度值的变化量,公式如下:
其中fG+{A}和fG-{A}分别代表子图G包含节点A和不包含节点A的适应度值。Lancichinetti等人认为,若表示节点A加入社区G中增大了社区适应度值,对社区做出正贡献,应当被社区G包含。当表示节点A加入社区G中减小了社区适应度值,对社区做出负贡献,应当被G移除。
核密度估计(Kernel density estimation),是一种用于估计概率密度函数的非参数方法,就是采用平滑的峰值函数“核”来拟合观察到的数据点,从而对真实的概率分布曲线进行模拟。在知道某一事物的概率分布的情况下,如果某一个数在观察中出现了,可以认为这个数的概率密度很大,和这个数比较近的数的概率密度也会比较大,而那些离这个数远的数的概率密度会比较小。基于这种想法,针对观察中的第一个数,可以用K去拟合想象中的那个远小近大概率密度。对每一个观察数拟合出的多个概率密度分布函数,取平均。如果某些数是比较重要的,则可以取加权平均。x1,x2,...,xn为独立同分布F的n个样本点,设其概率密度函数为f,核密度估计为以下:
K(·)称为核函数;h为预先给定的正数,通常称为窗宽或光滑参数。同时,核函数K(·)需要满足:
核密度估计就是通过核函数(如高斯)将每个数据点的数据+带宽当作核函数的参数,得到N个核函数,再线性叠加就形成了核密度的估计函数,归一化后就是核密度概率密度函数。
传统的好友推荐主要是基于内容的好友推荐和基于协同过滤的好友推荐。基于内容的好友推荐主要是用原有的评分方法替代了用户之间的偏序关系,以满足异构社交网络的需求,或者通过分析用户的共同位置数量,再基于与位置特性相关的特征集合,建立一个好友预测模型,基于协同过滤的好友推荐技术,设计了隐式评分模型,用于估计用户关系强度,且提出基于协同过滤的框架,利用用户偏好给目标用户推荐好友,或者将用户的好友数据加入到传统的协同过滤算法中,提高用户偏好预测和推荐结果的精确度。传统的算法和本发明的基于时空的好友推荐有着本质的区别,从用户的数据中发现隐藏的用户偏好,再结合显示的用户关系,可以更好的发现用户之间的关联。基于时空相识度计算好友相似度正逐渐成为当前的一个研究热点。
发明内容
本发明的目的就是提供一种基于社团发现的好友推荐***,它对用户偏好进行分析,为基于位置的社交网络的好友推荐提供技术支持。该推荐***包括数据获取模块、数据处理模块、数据存储模块、业务逻辑模块和显示模块。
所述的数据获取模块,根据用户的在移动设备上的签到数据,获取其地理位置和好友关系等数据,并将所述的用户数据发送给用户处理模块;
所述的数据处理模块,分析数据属性,将数据集中的数据根据用户关系和签到属性等信息发送给数据存储模块;
所述数据存储模块,接收到数据分析模块传输来的数据信息进行归纳整理,再利用数据挖掘技术找到用户对地点签到的地点的经纬度、签到时间和好友关系,并用矩阵表示,并将所述用户签到数据库的数据发送到所述数据存储模块模块;
所述的数据存储模块将获取到的用户数据分别存储在用户关系数据库和用户签到数据库,并将数据发送给业务逻辑模块;
所述的业务逻辑模块先将签到数据的数据进行属性分析,根据用户签到地理位置和好友关系,计算用户的熟识度和签到地理位置的距离计算用户相似度,加入LMF算法中作为社团划分的权值,根据社团划分的结果,在社团中计算离散的用户签到时间的24小时时间槽的签到概率,再根据信息熵处理签到概率,降低概率签到概率的影响,最后采用核密度估计算法,转换为24小时的连续签到概率密度,再根据用户对签到地点的签到概率,计算用户之间的对地点的签到兴趣,计算两者的相似性,最后发送给所述显示模块。
所述的显示模块将所述业务逻辑模块发送的用户时间相似度和签到偏好相似度根据一定的权值计算得到与目标用户相似性最高的用户,最后推荐给目标用户。
所述的业务逻辑模块对所述用户签到数据库发来的数据进行属性分析前,需判断用户是否为新用户并进行相应操作,具体步骤如下:
S11:判断用户是否为新用户;
S12:若用户为新用户,根据其签到的位置信息计算其与其他用户的地理位置的远近,加入到LMF算法中作为唯一权值进行社团划分,将得到的社团中的用户再采取核密度则采取核密度估计算法,则先对签到时间概率分析,在根据用户签到地点进行概率分析;
S13:若用户为老用户,则先根据用户之间的距离和好友关系计算用户距离相似度和熟识度,以此作为权值加入到LMF算法中进行社团划分,得到属性更加贴近的好友集合,再采取核密度估计算法对签到时间概率分析和用户签到地点进行概率分析。
本发明提供一种基于社团发现的好友推荐方法,其特征在于,包括以下几个步骤:
S1:获取用户的实时签到数据;
S2:先对S1得到的数据进行归纳处理,得到用户基础信息和签到时间和签到地点,并得到每个用户的签到时间和地点位置,并用矩阵表示;
S3:将得到的数据存入用户好友关系数据库和签到数据库;每当用户新签到一个地点时,签到数据库中相应的签到地点和签到时间也会发生动态的变化;
S4:分析用户好友关系,计算用户好友熟识度,根据用户签到地理位置的距离计算其距离相似度,将得到的好友熟识度和距离相似度作为权值再加入到LMF算法中,进行社团划分。再得到的社团用户中,分析用户的签到数据,根据用户的签到时间,计算其在24小时时间槽的签到概率,采用信息熵来减少低概率签到的影响,再采用核密度估计算出用户整体时间签到概率密度和根据用户对签到地点的签到概率度计算用户地点偏好相似度;
S5:根据S4得到的时间相似度和地点相似度,给相似度赋权值,找到相似度较高的用户集合,最后对用户进行推荐。
所述S4中计算用户相似度的具体步骤为:
S41:根据用户的好友关系,统计两用户之间的共同好友个数,分析用户共同好友数占该用户的总用户的数目,计算用户好友熟识度。且本文设定用户Ua和用户Ub之间的共同好友数达到1/3Ub时,认为Ua和Ub之间相似度为1,即熟识度为1,反之Ub和Ua熟识度为1。
S42:根据整体签到地点的经纬度信息,计算用户的签到中心位置,计算用户之间的签到距离,本方法为更贴切的体现用户地点的关系采取100KM以内距离作为用户的极限距离相似度。
S43:将熟识度和距离相似度作为权值加入到LMF算法中,进行社团划分。
S44:对于社团划分出来的用户群中的用户,将一天分成24个时间槽,由于用户的签到行为在24个时间槽的签到次数统计频率是稀疏的。采用核密度估计来估算用户在其他时间槽中的签到概率,并有效解决了数据稀疏问题。
S45:用户之间的相似的签到行为一般体现在24个时间槽中活动比较活跃的时间槽,所以在用户不活跃的时间槽做两个用户的签到行为相似性比较,会降低整体的签到行为相似性。采用信息熵处理,Timei=-pilog(pi),pi表示用户在第i个时间槽签到行为发生的概率。
S46:对于社团划分出来的用户群中的用户,用户之间在物理世界中的离线签到行为差别,通过比较他们分别的签到行为概率分布刻画签到行为的相似性。采用余弦距离计算用户之间的签到行为的相似性。
S47:用户U—共在r个不同的地点签到,其签到地点集Lu={l1,l2,...,lr}中,用户在每一地点上出现的概率记为{Pr(l1),Pr(l2),...Pr(lr)},则用户出现在每一地点的熵可以表示为:h(li)=log2Pr(li),其中h(li)表示用户在地点li(i=1,2,...r)签到的这个状态产生的摘;Pr(li)表示用户在地点li签到的概率。
S48:移动社交网络中的所有地点数为n,用户的签到行为便可以表示为一个“签到信息向量”:为后续计算表达式方便,将其简记为Hui表示地点li对用户M的地点信息熵。因此,通过计算用地点信息熵所表示成的签到信息向量间的相似性,可以反映用户兴趣的相似性,计算时选用经典的余弦相似性;
步骤S41所述的熟识度计算方法为:
其中,R(a,b)表示用户Ua和用户Ub的熟识度;|Fa∩Fb|表示用户Ua和Ub的共同好友数;|Fb|表示用户Ub的好友数。该公式表明,用户Ua和用户Ub之间的熟识度与Ua和Ub的共同好友数成正比,同时与用户Ua的好友数成反比。因此R(a,b)可以用来表示用户Ub相对于目标用户Ua熟识度的属性值,并且,R(a,b)中Ua和Ub的排列是有序的。
步骤S42所述的距离相似度计算方法为:
本方法为更贴切的体现用户地点的关系采取m=100KM以内距离作为用户的极限距离相似度,d(c,b)代表用户Ua和用户Ub的距离。
步骤S44所述的核密度估计算法为:
K(·)称为核函数;h为预先给定的正数,通常称为窗宽或光滑参数。同时,核函数K(·)需要满足:
步骤S46所述的余弦距离计算公式为:
tsim(a,b)表示用户Ua和用户Ub之间的相似度,ra,s表示用户在第s个时间槽的签到概率,Sa,b表示用户Ua和用户Ub在24个时间槽的签到概率集合。
步骤S48所述的余弦相似度计算公式为:
其中,S(u,v)为用户v和用户u的兴趣相似性;和分别表不用户u和用户v的签到信息向量;n为移动社交网络中的地点总数;Hui和Hvi分别表示点li对用户u和用户v的信息熵。
本发明的优点及有益效果:
本发明使用LMF社团划分算法,可以根据用户关系和用户签到位置将用户划分到相应社团,对社团中的好友计算其偏好相似度,因此非常适合于描述用户之间的关系。且使用的核密度估计算法,更加能体现用户24小时的整体签到时间概率,其中增加信息熵处理低概率签到时间,更加能体现出用户在签到时间上的相似性。
结合用户偏好的属性特点,从***级层面设计了利用用户关系和签到距离进行社团划分的处理框架,以较为精确、高效率的方式对用户进行划分。本发明的方法将有助于对用户进行精准推荐,以及在用户偏好发生变化同时,能及时的调整对用户的推荐结果,为用户提供更可靠的服务。基于用户时空相似度方法的步骤流程图,可以有效解决初始数据稀疏性的问题。
附图说明
图1是本发明中一种基于社团发现的好友推荐***模块示意图;
图2是本发明LMF社团划分图;
图3是本发明推荐方法的流程图。
具体实施方式
下面将结合发明实施例中的附图,对本发明实施例中的技术方案进行清楚、详细地描述。所描述的实施例仅是本发明的一部分实施例。
如图1所示,一种移动社交网络中好友的推荐方法,具体包括如下步骤:
S1:获取用户的实时签到数据(手机上基于位置服务的应用);
S2:先对S1得到的数据进行归纳处理,得到用户基础信息和签到时间和签到地点,并得到每个用户的签到时间和地点位置,并用矩阵表示;
S3:将得到的数据存入用户好友关系数据库和签到数据库;每当用户新签到一个地点时,签到数据库中相应的签到地点和签到时间也会发生动态的变化;
S4:分析用户好友关系,计算用户好友熟识度,根据用户签到地理位置的距离计算其距离相似度,将得到的好友熟识度和距离相似度作为权值再加入到LMF算法中,进行社团划分。再得到的社团用户中,分析用户的签到数据,根据用户的签到时间,计算其在24小时时间槽的签到概率,采用信息熵来减少低概率签到的影响,再采用核密度估计算出用户整体时间签到概率密度和根据用户对签到地点的签到概率度计算用户地点偏好相似度;
S5:根据S4得到的时间相似度和地点相似度,给相似度赋权值,找到相似度较高的用户集合,最后对用户进行推荐。
进一步,S3)中所述的数据库实时变化的具体方法包括以下步骤:每当用户新签到一个位置时,服务器端会检测到用户的数据变化,及时的更新签到数据库。
进一步,S4)中所述的对用户相似度的具体方法包括以下步骤:
S41:根据用户的好友关系,统计两用户之间的共同好友个数,分析用户共同好友数占该用户的总用户的数目,计算用户好友熟识度。本文设定用户Ua和用户Ub之间的共同好友数达到1/3Ub时,认为Ua和Ub之间相似度为1,即熟识度为1,反之Ub和Ua熟识度为1。
S42:根据整体签到地点的经纬度信息,计算用户的签到中心位置,计算用户之间的签到距离,本方法为更贴切的体现用户地点的关系采取100KM以内距离作为用户的极限距离相似度。
S43:将熟识度和距离相似度作为权值加入到LMF算法中,进行社团划分。
S44:对于社团划分出来的用户群中的用户,将一天分成24个时间槽,由于用户的签到行为在24个时间槽的签到次数统计频率是稀疏的。采用核密度估计来估算用户在其他时间槽中的签到概率,并有效解决了数据稀疏问题。
S45:用户之间的相似的签到行为一般体现在24个时间槽中活动比较活跃的时间槽,所以在用户不活跃的时间槽做两个用户的签到行为相似性比较,会降低整体的签到行为相似性。采用信息熵处理,Timei=-pilog(pi),pi表示用户在第i个时间槽签到行为发生的概率。
S46:对于社团划分出来的用户群中的用户,用户之间在物理世界中的离线签到行为差别,通过比较他们分别的签到行为概率分布刻画签到行为的相似性。采用余弦距离计算用户之间的签到行为的相似性。
S47:用户U—共在r个不同的地点签到,其签到地点集Lu={l1,l2,...,lr}中,用户在每一地点上出现的概率记为{Pr(l1),Pr(l2),...Pr(lr)},则用户出现在每一地点的熵可以表示为:h(li)=log2Pr(li),其中h(li)表示用户在地点li(i=1,2,...r)签到的这个状态产生的摘;Pr(li)表示用户在地点li签到的概率。
S48:移动社交网络中的所有地点数为n,用户的签到行为便可以表示为一个“签到信息向量”:为后续计算表达式方便,将其简记为Hui表示地点li对用户M的地点信息熵。因此,通过计算用地点信息熵所表示成的签到信息向量间的相似性,可以反映用户兴趣的相似性,计算时选用经典的余弦相似性;
进一步,S41所述的熟识度计算方法为:
其中,R(a,b)表示用户Ua和用户Ub的熟识度;|Fa∩Fb|表示用户Ua和Ub的共同好友数;|Fb|表示用户Ub的好友数。该公式表明,用户Ua和用户Ub之间的熟识度与Ua和Ub的共同好友数成正比,同时与用户Ua的好友数成反比。因此R(a,b)可以用来表示用户Ub相对于目标用户Ua熟识度的属性值,并且,R(a,b)中Ua和Ub的排列是有序的。
进一步,S42所述的距离相似度计算方法为:
本方法为更贴切的体现用户地点的关系采取m=100KM以内距离作为用户的极限距离相似度,d(c,b)代表用户Ua和用户Ub的距离。
进一步,S44所述的核密度估计算法为:
K(·)称为核函数;h为预先给定的正数,通常称为窗宽或光滑参数。同时,核函数K(·)需要满足:
进一步,S46所述的余弦距离计算公式为:
tsim(a,b)表示用户Ua和用户Ub之间的相似度,ra,s表示用户在第s个时间槽的签到概率,Sa,b表示用户Ua和用户Ub在24个时间槽的签到概率集合。
进一步,S48所述的余弦相似度计算公式为:
其中,S(u,v)为用户v和用户u的兴趣相似性;和分别表不用户u和用户v的签到信息向量;n为移动社交网络中的地点总数;Hui和Hvi分别表示点li对用户u和用户v的信息熵。
如附图1所示,本发明一种基于社团发现的好友推荐***主要包括但不限于5个部分:数据获取模块,数据处理模块,数据存储模块,业务逻辑模块,显示模块。
数据获取模块,根据用户的在移动设备上的签到数据,获取其地理位置和好友关系等数据,并将所述的用户数据发送给用户处理模块;
数据处理模块,分析数据属性,将数据集中的数据根据用户关系和签到属性等信息发送给数据存储模块;
数据存储模块,接收到数据分析模块传输来的数据信息进行归纳整理,再利用数据挖掘技术找到用户对地点签到的地点的经纬度、签到时间和好友关系,并用矩阵表示,并将所述用户签到数据库的数据发送到所述数据存储模块模块;
数据存储模块,将获取到的用户数据分别存储在用户关系数据库和用户签到数据库,并将数据发送给业务逻辑模块;
业务逻辑模块,先将签到数据的数据进行属性分析,根据用户签到地理位置和好友关系,计算用户的熟识度和签到地理位置的距离计算用户相似度,加入LMF算法中作为社团划分的权值,根据社团划分的结果,在社团中计算离散的用户签到时间的24小时时间槽的签到概率,再根据信息熵处理签到概率,降低概率签到概率的影响,最后采用核密度估计算法,转换为24小时的连续签到概率密度,再根据用户对签到地点的签到概率,计算用户之间的对地点的签到兴趣,计算两者的相似性,最后发送给所述显示模块。
显示模块,将所述业务逻辑模块发送的用户时间相似度和签到偏好相似度根据一定的权值计算得到与目标用户相似性最高的用户,最后推荐给目标用户。
其中,数据获取模块是采集用户地点签到数据,采用数据挖掘技术,实现对应用的签到地点和签到时间提炼,将用户签到数据存入数据库中。随着时间的推移,用户的签到数据不断的发生变化,其相应的数据库中的签到数据集合也会发生变化,以此实现对用户的精准推荐。
本发明采用加入熟识度和距离作为LMF算法实现社团划分的权值,其功能简述如下:
LFM算法是基于网络实际是由局部结构所组成这样一种假设,因此算法从局部社区开始,通过不断选取使得社区适应度函数fG最大的节点,来扩大局部社区的规模,直至所有节点都被划分到相应的社区中:
和代表局部社区G内部和外部节点的度的总数,α是一个正实数值参数,控制社团数目的大小。
有了社区的适应度函数,某个节点A对于局部社区G的适应度贡献值定义为子图G包含节点A和不包含节点A的适应度值的变化量,公式如下:
其中fG+{A}和fG-{A}分别代表子图G包含节点A和不包含节点A的适应度值。Lancichinetti等人认为,若表示节点A加入社区G中增大了社区适应度值,对社区做出正贡献,应当被社区G包含。当表示节点A加入社区G中减小了社区适应度值,对社区做出负贡献,应当被G移除。
因此,LFM算法执行的整体流程如下:
步骤一,初始化未被分配至任意社区的节点集合,并在此集合内随机选出一个节点a;
步骤二,利用上述局部最优化过程求得包含节点a的局部社区G{a},并从步骤一中的集合中移除G{a}中的节点;
步骤三,在未被分配到任意社区的集合中随机选出节点b,形成包含节点b的局部社区G{b},无论其邻居节点是否属于其他社区。
步骤四,重复步骤三,直至网络中所有节点都被划分到至少一个社区为止。
该算法在执行过程中会出现某个节点同时被划分至不同社区的情况,因此可以用于发现重叠社团结构,同时通过设置参数α取值的大小,控制社区的数量,体现网络的层次结构。
在LMF算法中加入用户的熟识度和距离等属性作为社团划分的权值。
熟识度采用如下公式计算:
其中,R(a,b)表示用户Ua和用户Ub的熟识度;Fa∩Fb|表示用户Ua和Ub的共同好友数;|Fb|表示用户Ub的好友数。该公式表明,用户Ua和用户Ub之间的熟识度与Ua和Ub的共同好友数成正比,同时与用户Ua的好友数成反比。因此R(a,b)可以用来表示用户Ub相对于目标用户Ua熟识度的属性值,并且,R(a,b)中Ua和Ub的排列是有序的。
距离相似度采用如下公式计算计算方法为:
本方法为更贴切的体现用户地点的关系采取m=100KM以内距离作为用户的极限距离相似度,d(c,b)代表用户Ua和用户Ub的距离。
本方法进行社团划分中社团中节点a、b之间的连边权重:
其中β称为平衡因子,取值范围为[0,1],针对不同类型的网络,用于平衡直接联系强度与间接联系强度对连边权值的影响。
为了能使LFM算法的局部最优化思想更好地适用于发现社会网络中高质量的社团结构,将运用到适应度函数中,可以得到:
其中表示局部社区G内包含的所有节点对利用所计算出的权重之和,表示局部社区内所有节点与其社区外的邻接节点连边利用计算出的权重之和,α依旧是一个正实数值参数,控制社团数目的大小。附图2中,就是将熟识度和距离作为LMF权值进行社团划分后的结果,图中表示的每个节点代表一位用户,经过社团划分算法后,将所有用户划分为4个重叠社团。
如附图3所示,本发明一种基于熟识度和用户签到距离的社团划分方法和时空相似度的好友推荐方法的步骤流程图,可以有效解决初始数据稀疏性的问题。该方法包括以下步骤:
S1:判断用户是否为新用户;
S2:若用户为新用户,根据其签到的位置信息,采取核密度则采取核密度估计算法,则先对签到时间概率分析,在根据用户签到地点进行概率分析;
S3:若用户为老用户,则先根据用户之间的距离和好友关系计算用户距离相似度和熟识度,以此作为权值加入到LMF算法中进行社团划分,得到属性更加贴近的好友集合,再采取核密度估计算法对签到时间概率分析和用户签到地点进行概率分析。
本发明结合用户偏好的特点,从***级层面上设计了基于社团发现的处理框架,以较高地效率完成了对用户的偏好的计算。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点看,均应将实例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (10)
1.基于社团发现的好友推荐***,其特征在于:包括数据处理模块、数据处理模块、数据存储模块、业务逻辑模拟和显示模块:
所述的数据获取模块,根据用户的在移动设备上的签到数据,获取其地理位置和好友关系等数据,并将所述的用户数据发送给用户处理模块;
所述的数据处理模块,分析数据属性,将数据集中的数据根据用户关系和签到属性等信息发送给数据存储模块;
所述数据存储模块,接收到数据分析模块传输来的数据信息进行归纳整理,再利用数据挖掘技术找到用户对地点签到的地点的经纬度、签到时间和好友关系,并用矩阵表示,并将所述用户签到数据库的数据发送到所述数据存储模块模块;
所述的数据存储模块将获取到的用户数据分别存储在用户关系数据库和用户签到数据库,并将数据发送给业务逻辑模块;
所述的业务逻辑模块先将签到数据的数据进行属性分析,根据用户签到地理位置和好友关系,计算用户的熟识度和签到地理位置的距离计算用户相似度,加入LMF算法中作为社团划分的权值,根据社团划分的结果,在社团中计算离散的用户签到时间的24小时时间槽的签到概率,再根据信息熵处理签到概率,降低概率签到概率的影响,最后采用核密度估计算法,转换为24小时的连续签到概率密度,再根据用户对签到地点的签到概率,计算用户之间的对地点的签到兴趣,计算两者的相似性,最后发送给所述显示模块。
所述的显示模块将所述业务逻辑模块发送的用户时间相似度和签到偏好相似度根据一定的权值计算得到与目标用户相似性最高的用户,最后推荐给目标用户。
2.根据权利要求1所述基于社团发现的好友推荐***,其特征在于:所述的业务逻辑模块对所述用户签到数据库发来的数据进行属性分析前,需判断用户是否为新用户并进行相应操作,具体步骤如下:
S11:判断用户是否为新用户;
S12:若用户为新用户,根据其签到的位置信息计算其与其他用户的地理位置的远近,加入到LMF算法中作为唯一权值进行社团划分,将得到的社团中的用户再采取核密度则采取核密度估计算法,则先对签到时间概率分析,在根据用户签到地点进行概率分析;
S13:若用户为老用户,则先根据用户之间的距离和好友关系计算用户距离相似度和熟识度,以此作为权值加入到LMF算法中进行社团划分,得到属性更加贴近的好友集合,再采取核密度估计算法对签到时间概率分析和用户签到地点进行概率分析。
3.根据权利要求1所述基于移动社交网络的好友推荐***,其特征在于:所述数据获取模块获取用户手机上的GPS数据,是用户对地点的实时签到数据,用于实时更新用户的签到数据。
4.基于社团发现的好友推荐方法,其特征在于,包括以下几个步骤:
S1:获取用户的实时签到数据;
S2:先对S1得到的数据进行归纳处理,得到用户基础信息和签到时间和签到地点,并得到每个用户的签到时间和地点位置,并用矩阵表示;
S3:将得到的数据存入用户好友关系数据库和签到数据库;每当用户新签到一个地点时,签到数据库中相应的签到地点和签到时间也会发生动态的变化;
S4:分析用户好友关系,计算用户好友熟识度,根据用户签到地理位置的距离计算其距离相似度,将得到的好友熟识度和距离相似度作为权值再加入到LMF算法中,进行社团划分。再得到的社团用户中,分析用户的签到数据,根据用户的签到时间,计算其在24小时时间槽的签到概率,采用信息熵来减少低概率签到的影响,再采用核密度估计算出用户整体时间签到概率密度和根据用户对签到地点的签到概率度计算用户地点偏好相似度;
S5:根据S4得到的时间相似度和地点相似度,给相似度赋权值,找到相似度较高的用户集合,最后对用户进行推荐。
5.基于社团发现的好友推荐方法,其特征在于,所述S4的具体步骤为:
S41:根据用户的好友关系,统计两用户之间的共同好友个数,分析用户共同好友数占该用户的总用户的数目,计算用户好友熟识度。且本文设定用户Ua和用户Ub之间的共同好友数达到1/3Ub时,认为Ua和Ub之间相似度为1,即熟识度为1,反之Ub和Ua熟识度为1。
S42:根据整体签到地点的经纬度信息,计算用户的签到中心位置,计算用户之间的签到距离,本方法为更贴切的体现用户地点的关系采取100KM以内距离作为用户的极限距离相似度。
S43:将熟识度和距离相似度作为权值加入到LMF算法中,进行社团划分。
S44:对于社团划分出来的用户群中的用户,将一天分成24个时间槽,由于用户的签到行为在24个时间槽的签到次数统计频率是稀疏的。采用核密度估计来估算用户在其他时间槽中的签到概率,并有效解决了数据稀疏问题。
S45:用户之间的相似的签到行为一般体现在24个时间槽中活动比较活跃的时间槽,所以在用户不活跃的时间槽做两个用户的签到行为相似性比较,会降低整体的签到行为相似性。采用信息熵处理,Timei=-pilog(pi),pi表示用户在第i个时间槽签到行为发生的概率。
S46:对于社团划分出来的用户群中的用户,用户之间在物理世界中的离线签到行为差别,通过比较他们分别的签到行为概率分布刻画签到行为的相似性。采用余弦距离计算用户之间的签到行为的相似性。
S47:用户U—共在r个不同的地点签到,其签到地点集Lu={l1,l2,...,lr}中,用户在每一地点上出现的概率记为{Pr(l1),Pr(l2),...Pr(lr)},则用户出现在每一地点的熵可以表示为:h(li)=log2Pr(li),其中h(li)表示用户在地点li(i=1,2,...r)签到的这个状态产生的摘;Pr(li)表示用户在地点li签到的概率。
S48:移动社交网络中的所有地点数为n,用户的签到行为便可以表示为一个“签到信息向量”:为后续计算表达式方便,将其简记为Hui表示地点li对用户M的地点信息熵。因此,通过计算用地点信息熵所表示成的签到信息向量间的相似性,可以反映用户兴趣的相似性,计算时选用经典的余弦相似性。
6.根据权利要求5所述的基于社团发现的好友推荐方法。其特征在于:步骤S41所述的熟识度计算方法为:
其中,R(a,b)表示用户Ua和用户Ub的熟识度;|Fa∩Fb|表示用户Ua和Ub的共同好友数;|Fb|表示用户Ub的好友数。该公式表明,用户Ua和用户Ub之间的熟识度与Ua和Ub的共同好友数成正比,同时与用户Ua的好友数成反比。因此R(a,b)可以用来表示用户Ub相对于目标用户Ua熟识度的属性值,并且,R(a,b)中Ua和Ub的排列是有序的。
7.根据权利要求5所述的基于社团发现的好友推荐方法,其特征在于:步骤S42所述的距离相似度计算方法为:
本方法为更贴切的体现用户地点的关系采取m=100KM以内距离作为用户的极限距离相似度,d(c,b)代表用户Ua和用户Ub的距离。
8.根据权利要求5所述的基于社团发现的好友推荐方法,其特征在于:步骤S44所述的核密度估计算法为:
K(·)称为核函数;h为预先给定的正数,通常称为窗宽或光滑参数。同时,核函数K(·)需要满足:
9.根据权利要求5所述的基于社团发现的好友推荐方法,其特征在于:步骤S46所述的余弦距离计算公式为:
tsim(a,b)表示用户Ua和用户Ub之间的相似度,ra,s表示用户在第s个时间槽的签到概率,Sa,b表示用户Ua和用户Ub在24个时间槽的签到概率集合。
10.根据权利要求5所述的基于社团发现的好友推荐方法,其特征在于:步骤S48所述的余弦相似度计算公式为:
其中,S(u,v)为用户v和用户u的兴趣相似性;和分别表不用户u和用户v的签到信息向量;n为移动社交网络中的地点总数;Hui和Hvi分别表示点li对用户u和用户v的信息熵。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810064199.2A CN108399189A (zh) | 2018-01-23 | 2018-01-23 | 基于社团发现的好友推荐***及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810064199.2A CN108399189A (zh) | 2018-01-23 | 2018-01-23 | 基于社团发现的好友推荐***及其方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108399189A true CN108399189A (zh) | 2018-08-14 |
Family
ID=63094278
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810064199.2A Pending CN108399189A (zh) | 2018-01-23 | 2018-01-23 | 基于社团发现的好友推荐***及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108399189A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109117889A (zh) * | 2018-08-23 | 2019-01-01 | 北京小米智能科技有限公司 | 标签预测方法及装置 |
CN109766478A (zh) * | 2019-01-08 | 2019-05-17 | 浙江财经大学 | 语义增强的大规模多元图简化可视化方法 |
CN109872242A (zh) * | 2019-01-30 | 2019-06-11 | 北京字节跳动网络技术有限公司 | 信息推送方法和装置 |
CN110189164A (zh) * | 2019-05-09 | 2019-08-30 | 杭州览众数据科技有限公司 | 基于信息熵度量和特征随机采样的商品—门店推荐方案 |
CN111104607A (zh) * | 2018-10-25 | 2020-05-05 | 中国电子科技集团公司电子科学研究院 | 基于签到数据的地点推荐方法及装置 |
CN111860866A (zh) * | 2020-07-24 | 2020-10-30 | 西华师范大学 | 一种具有社团结构的网络表示学习方法及装置 |
CN111966813A (zh) * | 2019-05-20 | 2020-11-20 | 阿里巴巴集团控股有限公司 | 一种信息挖掘方法及装置和信息推荐方法及装置 |
CN112184299A (zh) * | 2020-09-23 | 2021-01-05 | 中国建设银行股份有限公司 | 套利用户识别方法、装置、电子设备及介质 |
CN112395486A (zh) * | 2019-08-12 | 2021-02-23 | ***通信集团重庆有限公司 | 一种宽带业务推荐方法、***、服务器和存储介质 |
CN112699302A (zh) * | 2021-01-05 | 2021-04-23 | 汕头大学 | 一种基于测地距离的实时推荐方法 |
CN115422470A (zh) * | 2022-11-03 | 2022-12-02 | 中国传媒大学 | 基于新闻异构网络的关系感知新闻推荐方法、***、设备 |
CN116541617A (zh) * | 2023-06-29 | 2023-08-04 | 安徽大学 | 参会用户及地点推荐方法及*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104021233A (zh) * | 2014-06-30 | 2014-09-03 | 电子科技大学 | 一种基于社区发现的社交网络好友推荐方法 |
CN105389332A (zh) * | 2015-10-13 | 2016-03-09 | 广西师范学院 | 一种地理社交网络下的用户相似性计算方法 |
CN105678626A (zh) * | 2015-12-30 | 2016-06-15 | 南京理工大学 | 重叠社区挖掘方法与装置 |
CN106056455A (zh) * | 2016-06-02 | 2016-10-26 | 南京邮电大学 | 一种基于位置和社交关系的群组与地点推荐方法 |
US20170083522A1 (en) * | 2015-09-17 | 2017-03-23 | Yahoo! Inc. | Smart Exploration Methods For Mitigating Item Cold-Start Problem In Collaborative Filtering Recommendation Systems |
CN106776928A (zh) * | 2016-12-01 | 2017-05-31 | 重庆大学 | 基于内存计算框架、融合社交环境及时空数据的位置推荐方法 |
-
2018
- 2018-01-23 CN CN201810064199.2A patent/CN108399189A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104021233A (zh) * | 2014-06-30 | 2014-09-03 | 电子科技大学 | 一种基于社区发现的社交网络好友推荐方法 |
US20170083522A1 (en) * | 2015-09-17 | 2017-03-23 | Yahoo! Inc. | Smart Exploration Methods For Mitigating Item Cold-Start Problem In Collaborative Filtering Recommendation Systems |
CN105389332A (zh) * | 2015-10-13 | 2016-03-09 | 广西师范学院 | 一种地理社交网络下的用户相似性计算方法 |
CN105678626A (zh) * | 2015-12-30 | 2016-06-15 | 南京理工大学 | 重叠社区挖掘方法与装置 |
CN106056455A (zh) * | 2016-06-02 | 2016-10-26 | 南京邮电大学 | 一种基于位置和社交关系的群组与地点推荐方法 |
CN106776928A (zh) * | 2016-12-01 | 2017-05-31 | 重庆大学 | 基于内存计算框架、融合社交环境及时空数据的位置推荐方法 |
Non-Patent Citations (2)
Title |
---|
CHENG-HAO CHU ET AL.: "Friend Recommendation for Location-Based Mobile Social Networks", 《IEEE》 * |
孙晓晨,徐雅斌: "位置社交网络的潜在好友推荐模型研究", 《电信科学》 * |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109117889A (zh) * | 2018-08-23 | 2019-01-01 | 北京小米智能科技有限公司 | 标签预测方法及装置 |
CN111104607A (zh) * | 2018-10-25 | 2020-05-05 | 中国电子科技集团公司电子科学研究院 | 基于签到数据的地点推荐方法及装置 |
CN109766478A (zh) * | 2019-01-08 | 2019-05-17 | 浙江财经大学 | 语义增强的大规模多元图简化可视化方法 |
CN109872242A (zh) * | 2019-01-30 | 2019-06-11 | 北京字节跳动网络技术有限公司 | 信息推送方法和装置 |
CN109872242B (zh) * | 2019-01-30 | 2020-10-13 | 北京字节跳动网络技术有限公司 | 信息推送方法和装置 |
CN110189164B (zh) * | 2019-05-09 | 2021-06-01 | 杭州览众数据科技有限公司 | 基于信息熵度量和特征随机采样的商品—门店推荐方案 |
CN110189164A (zh) * | 2019-05-09 | 2019-08-30 | 杭州览众数据科技有限公司 | 基于信息熵度量和特征随机采样的商品—门店推荐方案 |
CN111966813A (zh) * | 2019-05-20 | 2020-11-20 | 阿里巴巴集团控股有限公司 | 一种信息挖掘方法及装置和信息推荐方法及装置 |
CN112395486A (zh) * | 2019-08-12 | 2021-02-23 | ***通信集团重庆有限公司 | 一种宽带业务推荐方法、***、服务器和存储介质 |
CN112395486B (zh) * | 2019-08-12 | 2023-11-03 | ***通信集团重庆有限公司 | 一种宽带业务推荐方法、***、服务器和存储介质 |
CN111860866A (zh) * | 2020-07-24 | 2020-10-30 | 西华师范大学 | 一种具有社团结构的网络表示学习方法及装置 |
CN112184299A (zh) * | 2020-09-23 | 2021-01-05 | 中国建设银行股份有限公司 | 套利用户识别方法、装置、电子设备及介质 |
CN112699302B (zh) * | 2021-01-05 | 2023-07-04 | 汕头大学 | 一种基于测地距离的实时推荐方法 |
CN112699302A (zh) * | 2021-01-05 | 2021-04-23 | 汕头大学 | 一种基于测地距离的实时推荐方法 |
CN115422470A (zh) * | 2022-11-03 | 2022-12-02 | 中国传媒大学 | 基于新闻异构网络的关系感知新闻推荐方法、***、设备 |
CN116541617A (zh) * | 2023-06-29 | 2023-08-04 | 安徽大学 | 参会用户及地点推荐方法及*** |
CN116541617B (zh) * | 2023-06-29 | 2023-09-19 | 安徽大学 | 参会用户及地点推荐方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108399189A (zh) | 基于社团发现的好友推荐***及其方法 | |
Yang et al. | On designing data quality-aware truth estimation and surplus sharing method for mobile crowdsensing | |
CN108460101B (zh) | 面向位置社交网络基于地理位置正则化的兴趣点推荐方法 | |
JP6367289B2 (ja) | オンライン・ソーシャル・ネットワークにおけるネットワーク指向の製品ロールアウト | |
CN108804551B (zh) | 一种兼顾多样性与个性化的空间兴趣点推荐方法 | |
KR102340463B1 (ko) | 샘플 가중치 설정방법 및 장치, 전자 기기 | |
CN109241405A (zh) | 一种基于知识关联的学习资源协同过滤推荐方法及*** | |
Ying et al. | A temporal-aware POI recommendation system using context-aware tensor decomposition and weighted HITS | |
CN107657015A (zh) | 一种兴趣点推荐方法、装置、电子设备及存储介质 | |
CN109948068A (zh) | 一种兴趣点信息的推荐方法和装置 | |
CN106960044B (zh) | 一种基于张量分解及加权hits的时间感知个性化poi推荐方法 | |
CN111444395A (zh) | 获取实体间关系表达的方法、***和设备、广告召回*** | |
CN107220312A (zh) | 一种基于共现图的兴趣点推荐方法及*** | |
CN109948066A (zh) | 一种基于异构信息网络的兴趣点推荐方法 | |
CN109508428A (zh) | 基于兴趣点真流行度与隐式信任挖掘的兴趣点推荐方法 | |
CN107391670A (zh) | 一种融合协同过滤和用户属性过滤的混合推荐方法 | |
CN111695046B (zh) | 基于时空移动数据表征学习的用户画像推断方法及装置 | |
CN106789338B (zh) | 一种在动态大规模社交网络中发现关键人物的方法 | |
CN107145541B (zh) | 基于超图结构的社交网络推荐模型构建方法 | |
CN109492076A (zh) | 一种基于网络的社区问答网站答案可信评估方法 | |
CN112131261B (zh) | 基于社区网络的社区查询方法、装置和计算机设备 | |
CN105917377A (zh) | 测量跨装置受众的方法和设备 | |
CN113360777A (zh) | 内容推荐模型训练方法、内容推荐方法及相关设备 | |
CN116244513A (zh) | 随机群组poi推荐方法、***、设备及存储介质 | |
Lang et al. | POI recommendation based on a multiple bipartite graph network model |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180814 |