[发明专利]一种网络社区发现方法在审
申请号: | 201611002006.8 | 申请日: | 2016-11-14 |
公开(公告)号: | CN108074193A | 公开(公告)日: | 2018-05-25 |
发明(设计)人: | 赵龙;张宏 | 申请(专利权)人: | 北京航天长峰科技工业集团有限公司 |
主分类号: | G06Q50/00 | 分类号: | G06Q50/00 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100854*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 社区 网络社区 网络初始化 邻居 重复 构建 算法 归属 发现 | ||
一种网络社区发现方法,包括以下步骤:(1)基于Fast Unfolding算法,将包含N个节点的网络初始化,并将每个节点划分到不同的社区中;(2)逐一选择各个顶点,将待计算顶点划分到它的邻居社区中得到Modularity增益,如果增益大于0,则将它划分到对应的邻居社区;否则,保持归属于原社区;(3)重复步骤(2),直到节点的社区不再发生变化;(4)构建新图,新图中的点代表上一阶段产生的不同社区,边的权值为两个社区中所有节点对的边权值之和;(5)重复步骤(2),直到获得最大的Modularity值。
技术领域
本发明属于网络技术领域,具体涉及到复杂网络社区发现方法技术领域,更具体的说,是一种基于并行化模块度优化的网络社区发现方法。
背景技术
自然界中存在的大量复杂系统都可以通过形形色色的网络加以描述。一个典型的网络是由许多节点与连接两个节点之间的一些边构成,其中节点用来代表真实系统中的不同个体,而边用来表示个体之间的关系。这样的复杂网络系统包括社会网络、生物网络、引用网络、新陈代谢网络、信息网络、万维网等等。而在复杂网络系统中往往蕴含着一些潜在的社区结构,这些社区内的节点往往具有相似的特性。若从复杂网络中解析出模块化的社区结构,对网络分析具有关键的意义。目前,发现复杂网络中的社区结构已经成为了数据挖掘领域的一个热点研究方向。
社区发现作为网络科学的经典问题之一,近年来,很多有关复杂网络社区挖掘的方法被提出,如经典的GN算法、标签传播算法等。但这些算法都存在一定的不足,如GN算法求解介数时间复杂度高,在大图上不太实用;标签传播算法也可应用到重叠社区发现中,但会存在结果震荡等问题,性能不稳定。
GraphX是构建在Spark之上的图计算框架,它使用弹性分布式存储集(RDD)来存储图数据,并提供了一些实用的图操作方法。由于RDD与生俱来的特性,GraphX高效的实现了图的分布式存储和处理,可以应用于社交网络等大规模的图计算场景。而且,由于GraphX在图顶点信息和边信息做了优化,使得基于GraphX实现的并行社区发现算法在性能上具有较大的提升。
发明内容
本发明所要解决的技术问题是,提供一种社区发现的并行化实现算法,力图提高大规模网络社区发现的效率和稳定性。
一种网络社区发现方法,其特征在于包括以下步骤:
(1)基于Fast Unfolding算法,将包含N个节点的网络初始化,并将每个节点划分到不同的社区中;
(2)逐一选择各个顶点,将待计算顶点划分到它的邻居社区中得到Modularity增益,如果增益大于0,则将它划分到对应的邻居社区;否则,保持归属于原社区;
(3)重复步骤(2),直到节点的社区不再发生变化;
(4)构建新图,新图中的点代表上一阶段产生的不同社区,边的权值为两个社区中所有节点对的边权值之和;
(5)重复步骤(2),直到获得最大的Modularity值。
根据测评,本发明在包含三千万的用户数据上,可以在两个小时的级别,发现四万的社区,效率较高,所发现的社区质量也较好,较好的满足了生产预期。
具体实施方式
本发明包括以下步骤:
(1)将包含N个节点的网络初始化,并将每个节点划分到不同的社区中;
(2)逐一选择各个顶点,将待计算顶点划分到它的邻居社区中得到Modularity增益,如果增益大于0,则将它划分到对应的邻居社区;否则,保持归属于原社区;
(3)重复步骤(2),直到节点的社区不再发生变化;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航天长峰科技工业集团有限公司,未经北京航天长峰科技工业集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611002006.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:责任定义数据导入方法及装置
- 下一篇:数据处理方法和装置