一种基于随机块的社交网络交友推荐方法和系统技术方案

技术编号:25397124 阅读:25 留言:0更新日期:2020-08-25 23:02
本发明专利技术公开了一种基于随机块的社交网络交友推荐方法和系统,涉及计算机数据处理领域。本发明专利技术中的系统功能主要由以下四部分组成:数据处理模块、社区分类模块、好友推荐模块以及结果生成模块。基于随机块的社交网络交友推荐方法,包括以下步骤:步骤一,从数据库中获取用户好友列表,对获得的数据进行处理;步骤二,基于层次聚类算法BIRCH对数据进行聚类,划分多个社区;步骤三,根据社区分类结果,计算社区相关性指标;步骤四,基于社区相关性指标的计算结果,进行好友推荐,展示好友推荐结果。该系统通过随机块以及社区发现分析社交网络的方法,来识别并推荐用户潜在好友,提高用户体验。

【技术实现步骤摘要】
一种基于随机块的社交网络交友推荐方法和系统
本专利技术涉及计算机数据处理
,具体涉及一种基于随机块的社交网络交友推荐方法和系统。
技术介绍
随着计算机技术的飞速发展,社交网络不断壮大,涵盖了大量的用户信息,构成了复杂的网络结构,同时也吸引了越来越多关于社交网络好友推荐的研究。目前大量社交软件如QQ、微博等,其好友推荐方法主要基于社交网络中的用户相似性,该方法的特点为:用户之间的共同好友数越多,越有可能被推荐。但是,在实际应用场合,基于共同好友的推荐方法效果欠佳,主要原因是这一类方法只是考虑了网络中的局部信息,忽视了整个社交网络的整体拓扑结构。比如,甲和乙两人都是科幻电影迷,看过众多类似的科幻片,那么他们两人就很可能有共同话题,能够成为好友。但由于两人互不相识,社交软件上没有共同好友,那么这种基于共同好友的推荐方法就无法在甲和乙之间建立朋友关系。显然,单纯聚焦于网络局部信息而忽视社交网络全局信息的推荐算法显然无法在推荐准确性上满足实际应用的需求。
技术实现思路
本专利技术针对上述现有技术存在的缺陷,提供了一种基于随机块的社交网络交友推荐方法和系统。本专利技术是通过以下技术方案来实现的:本专利技术公开了一种基于随机块的社交网络交友推荐方法和系统,包括以下步骤:步骤一,从数据库中获取用户好友列表,对用户数据进行预处理;步骤二,应用基于层次聚类算法BIRCH对数据进行聚类,划分具有稠密性的多个社交子网络;步骤三,根据社交子网络结果,计算社区隶属度指标;步骤四,基于社区隶属度指标的计算结果,进行好友推荐,展示好友推荐结果。步骤一所述从数据库中获取用户好友列表,对获得的数据进行预处理,具体操作为:1)收集社交平台中用户数据,获取各用户的好友列表;2)处理收集的原始数据,得到由0和1构成的二维矩阵以表示用户间已知的社交网络。在该网络中,点表示用户,二两点之间的边则表示用户间的链接,若两用户是好友则边为1;反之,则为0。步骤二对社交网络进行聚类分析,具体操作如下:1)基于层次聚类算法BIRCH对社交网络进行聚类分析;2)根据聚类的结果划分K个社交子网络,每个社交子网络中包括了多个用户之间的好友关系,并且这些用户在该子网络中的连接较为稠密。步骤三所述的根据社交网络聚类分析的结果,计算社区隶属度指标,具体操作为:1)为每个用户分配混合隶属度向量πi,服从狄利克雷分布,πi~Dirichelet(α),具体公式如下所示:2)为社交子网络中每个社区分配权重βk,服从贝塔分布,βk~Beta(η),具体公式如下所示:3)使用随机变分推理对上述参数进行更新;4)最终得到两个重要的社区相关性指标:混合隶属度向量π和社区权重向量βk。步骤四所述基于社区隶属度指标的计算结果,进行好友推荐,展示好友推荐结果,具体操作为:1)根据两个用户的混合隶属度和所在社区的权重计算两个用户成为好友的概率。具体的概率计算方法如下:a)基于每对用户的混合隶属度向量πi和πj,为他们分配社区隶属度指标zi→j和zj→i,并服从多项式分布:zi→j~Multinomial(πi),zj→i~Multinomial(πj),具体公式如下所示:b)经过抽样确定zi→j和zj→i的值。若两个用户所属的社区相同,那么他们成为好友的概率便是他们所在社区的权重;反之,概率为0。3)展示好友推荐结果,向用户推荐所有潜在好友;把可能成为好友的用户们,按照成为好友的概率大小由高到低排序。当两个用户成为好友的概率大于0.5时,向相关用户推荐。反之,暂时不予推荐。本专利技术还公开了一种基于随机块的社交网络交友推荐系统,该系统包括:数据处理模块,用于从数据库中获取用户好友列表,对获得的数据进行处理;社区子网络聚类模块,用于对数据进行聚类,划分具有稠密性的社区子网络;好友推荐模块,用于计算社区隶属度指标;结果生成模块,根据社区隶属度指标的计算结果,展示好友推荐结果。与现有技术相比,本专利技术具有以下有益的技术效果:本专利技术公开的基于随机块的社交网络交友推荐方法和系统,首先从数据库中获取用户好友列表,对获得的数据进行预处理,构成社交网络;其次,基于层次聚类算法BIRCH对该社交网络进行聚类分析,以获得多个具有稠密性的社交子网络;然后,根据社区分类结果,为每个用户计算社区隶属度指标;最后,基于社区隶属度指标的计算结果,进行好友推荐,展示好友推荐结果,提高用户体验。本方法可以避免给用户推荐不符合的好友关系,同时可以利用社区发现方法对整体社交网络进行分析,针对用户感兴趣的领域进行精准好友推荐。与现有的基于共同好友的推荐算法相比,推荐的准确度有了明显的改善。本专利技术还公开了能够实现上述交友推荐方法的系统,系统功能主要由以下四部分组成:数据处理模块、聚类分析模块、好友推荐模块以及结果生成模块。首先,从数据库中获取用户好友列表,对获得的数据进行处理。然后,对处理后的数据进行聚类,划分社交子网络。接着,计算社区相关性指标。最后,结果生成模块根据社区隶属度指标的计算结果,展示好友推荐结果。附图说明图1为本专利技术基于随机块的社交网络交友推荐方法和系统的逻辑结构图;图2为本专利技术所涉及的数据处理说明图。具体实施方式下面结合具体的实例对本专利技术作进一步的详细说明,所述是对本专利技术的解释而不是限定。本专利技术公开了一种基于随机块的社交网络交友推荐方法和系统,其功能结构如图1所示。其中,101为数据处理模块;102为聚类分析模块;103为好友推荐模块;104为结果生成模块。系统功能主要由以下四部分组成:数据处理模块、聚类分析模块、好友推荐模块以及结果生成模块。基于随机块的社交网络交友推荐方法,包括以下步骤:步骤一,从数据库中获取用户好友列表,对获得的数据进行预处理,获得社交网络;步骤二,基于层次聚类算法BIRCH对社交网络进行聚类,划分多个具有稠密性的社交子网络;步骤三,根据聚类分析的结果,计算每个用户的社区隶属度指标;步骤四,基于社区隶属度指标的计算结果,进行好友推荐,展示好友推荐结果。下面对各模块工作进行具体举例说明:1、数据处理模块第一步,收集社交平台中众多用户数据,获取各用户的好友列表,如图2中上图的A、B、C、D。第二步,处理收集的原始数据,用0和1代表用户之间的好友关系。如果两个用户是好友,那么他们之间的边设为1,反之,设为0。如图2中下图所示,然后以此构建邻接矩阵。2、聚类分析模块步骤二对社交网络进行聚类分析,具体操作如下:第一步,基于层次聚类算法BIRCH对社交网络进行聚类。第二步,聚类后形成K个具有稠密性的社交子网络,每个子网络中包括多个用户的好友关系。3、好友推荐模块根据聚类分析的本文档来自技高网...

【技术保护点】
1.一种基于随机块的社交网络交友推荐方法,其特征在于,包括以下步骤:/n步骤一,从数据库中获取用户好友列表,对用户数据进行预处理;/n步骤二,应用基于层次聚类算法BIRCH对数据进行聚类,划分具有稠密性的多个社交子网络;/n步骤三,根据社交子网络结果,计算社区隶属度指标;/n步骤四,基于社区隶属度指标的计算结果,进行好友推荐,展示好友推荐结果。/n

【技术特征摘要】
1.一种基于随机块的社交网络交友推荐方法,其特征在于,包括以下步骤:
步骤一,从数据库中获取用户好友列表,对用户数据进行预处理;
步骤二,应用基于层次聚类算法BIRCH对数据进行聚类,划分具有稠密性的多个社交子网络;
步骤三,根据社交子网络结果,计算社区隶属度指标;
步骤四,基于社区隶属度指标的计算结果,进行好友推荐,展示好友推荐结果。


2.根据权利要求1所述的基于随机块的社交网络交友推荐方法,其特征在于,步骤一所述从数据库中获取用户好友列表,对获得的数据进行处理,具体操作为:
1)收集社交平台中用户数据,获取各用户的好友列表;
2)处理收集的原始数据,得到由0和1构成的二维矩阵以表示用户间已知的社交网络。在该网络中,点表示用户,二两点之间的边则表示用户间的链接,若两用户是好友则边为1;反之,则为0。


3.根据权利要求2所述的基于随机块的社交网络交友推荐方法,其特征在于,步骤二所述应用基于层次聚类算法BIRCH对数据进行聚类,划分具有稠密性的多个社交子网络,具体操作为:
1)基于层次聚类算法BIRCH对社交网络进行聚类分析;
2)根据聚类的结果划分K个社交子网络,每个社交子网络中包括了多个用户之间的好友关系,并且这些用户在该子网络中的连接较为稠密。


4.根据权利要求3所述的基于随机块的社交网络交友推荐方法,其特征在于,步骤三所述的根据社交子网络结果,计算社区隶属度指标,具体操作为:
1)为每个用户分配混合隶属度向量πi,服从狄利克雷分布,πi~Dirichelet...

【专利技术属性】
技术研发人员:张能锋王小娟许明胡伦
申请(专利权)人:深圳市万佳安人工智能数据技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1