CN109345403A - 一种基于局部模块度的层次重叠社区发现方法 - Google Patents
一种基于局部模块度的层次重叠社区发现方法 Download PDFInfo
- Publication number
- CN109345403A CN109345403A CN201811024092.1A CN201811024092A CN109345403A CN 109345403 A CN109345403 A CN 109345403A CN 201811024092 A CN201811024092 A CN 201811024092A CN 109345403 A CN109345403 A CN 109345403A
- Authority
- CN
- China
- Prior art keywords
- community
- node
- level
- max
- overlapping
- 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
- 230000008520 organization Effects 0.000 title claims abstract description 27
- 238000000034 method Methods 0.000 title claims abstract description 25
- 238000012360 testing method Methods 0.000 abstract description 4
- 238000002474 experimental method Methods 0.000 description 11
- 238000011160 research Methods 0.000 description 10
- 230000000644 propagated effect Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- YPMOAQISONSSNL-UHFFFAOYSA-N 8-hydroxyoctyl 2-methylprop-2-enoate Chemical compound CC(=C)C(=O)OCCCCCCCCO YPMOAQISONSSNL-UHFFFAOYSA-N 0.000 description 2
- 235000005156 Brassica carinata Nutrition 0.000 description 2
- 244000257790 Brassica carinata Species 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 229920000642 polymer Polymers 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种基于局部模块度的层次重叠社区发现方法,该方法首先选取网络中度数最大的节点作为初始社区,计算其邻居节点的局部模块度值,对产生极值的节点计算其层次区分度值,通过实验给出一个层次区分度的阈值,进行比较判断是否到达层次边界,得到网络的层次结构。然后将得到的层次社区与根据MC‑COPRA算法得到的重叠社区进行相似度对比,若高于给定阈值则将重叠节点加入对应的层次社区,最终得到网络的层次重叠社区。通过在人工网络和真实网络上的实验结果表明,该算法能准确的探测社交网络的层次重叠结构。
Description
技术领域
本发明涉及一种基于局部模块度的层次重叠社区发现方法,属于社会网络中的社区重叠和层次结构技术领域。
背景技术
随着社会信息化的加速发展,社交网络也日益成为人类社会关系的不可缺少的一部分,同时社交网络也是信息传播扩散的重要渠道和载体,是社会发展的重要影响因素。规模日益增大的社交网络中,每个人都代表着网络中的一个节点,而人与人之间的各种关系则是网络中的连边,这样的网络并不是杂乱无序,毫无规律可寻的,有许多研究都表明,社交网络中的节点之间的是可以按照一些不同的条件或规则,将它们合并或区分为相同或不同社区,这样的社交网络也就具有着社区结构,所以研究社交网络,对其社区结构的研究是必不可少的。在社区结构研究中,其重叠和层次结构不仅是其最基本的结构特征,也是最为重要的两种结构。通过对社交网络中的层次和重叠结构的发现,并以此作为基础性研究,对已发现的层次重叠社区中的人的兴趣爱好等行为信息进行分析,具有重要的现实意义,例如为用户生成更加精确的个性化推荐信息,对网络中的舆情传播进行更加准确的分析等,因此说社交网络中的社区结构的分析与研究已经成为研究社交网络的一个必不可少的组成部分。
近年来,信息技术的不断发展也加快了人们对社区结构的研究,特别是对社区的重叠和层次结构的研究,引起了越来越多的国内外学者对其的分析研究,这些年来有许多关于社区重叠和层次结构发现算法被提出,在层次社区发现算法中,最为常见的就是基于模块度的社区发现算法,但是这类算法基本都存在分辨率的问题,也就是通过计算社区的模块度得到的结果是无法发现该网络中规模更小的层次结构。
发明内容
发明目的:面对现有技术中的不足,针对层次社区发现算法LMHC算法中存在的随机性与通过模块度的最大值划分社区层次结构存在的不准确性,提出了一种基于局部模块度的层次重叠社区发现方法。
技术方案:一种基于局部模块度的层次重叠社区发现方法,包括如下步骤:
步骤一:将网络的节点度数进行排序,将度数最大的节点设定为初始社区C,同时令社区节点个数n=1,加入的节点i=1;
步骤二:将社区C中的节点的所有邻居节点加入到邻居节点的集合Nbs(C),并计算将各个邻居节点加入社区C时的局部模块度值R;
步骤三:比较计算得到的各个R值,将最大R值Rmax所对应的节点与该节点的所有邻居节点分别加进社区C和Nbs(C),同时n=n+1;
步骤四:计算R(n+1)-R(n),若R(n+1)-R(n)<0,记加入邻居节点后产生的局部模块度极大值Rmax(i)=R(n),同时回到步骤二,若R(n+1)-R(n)>0,记加入邻居节点产生的局部模块度极小值Rmin(i)=R(n);
步骤五:计算R极值之差,若Rmax(i)-Rmin(i)→0即Rmax(i)-Rmin(i)<0.01或者存在Rmax(i)-Rmin(i-1)→0即Rmax(i)-Rmin(i-1)<0.01时,则回到步骤二,否则令i=i+1,并计算社区层次区分度Hdif,进入步骤六;
步骤六:比较社区层次区分度Hdif与给定阈值的大小,若小于阈值,则判定未到达层次边界,则Rmax(i)到Rmax(i-1)之间的所有节点都认为是当前层次上的内部社区,反之若大于阈值,则表示发现了层次边界,并进入步骤七;
步骤七:比较当前产生极大值的节点的局部模块度值即Rmax(i),若大于0.9(这里的0.9是LMHC算法中通过实验比较所得),回到步骤一继续探测,反之回到步骤二继续进行社区凝聚。
步骤八:根据各个重叠节点所在的各个社区与层次结构中的各个社区进行相似度对比。
进一步的,所述步骤二中计算将各个邻居节点加入社区C时的局部模块度值R方式如下:
其中,Bin是社区C的内部连接边数,Bout是社区C的外部连接边数,局部模块度R则代表社区内部连接边数与社区内外连接边数之和的比值。如果一个社区的内部边越多,而外部边越少,则该社区的模块度值越大,说明社区内部连接越紧密。
进一步的,所述步骤四中R(n)的含义如下:R(n)表示加入节点前的局部模块度值,R(n+1)表示加入节点后的局部模块度值。
进一步的,所述步骤五中计算社区层次分度Hdif方法如下:
其中,arg(Rmax)和arg(Rmin)分别是产生局部模块度极大值时加人社区的节点个数与在这之后产生极小值时加入的节点个数。arg(Rmin)-arg(Rmax)表示在产生极大值之后再产生极小值之间加入的节点的个数,其实也就是在当前社区的紧密程度由高到低,直到不再继续降低的过程中加入的节点规模。
进一步的,所述步骤七中比较当前产生极大值的节点的局部模块度值即Rmax(i)具体步骤如下:若Rmax(i)大于0.9(这里的0.9是LMHC算法中通过实验比较所得),则将起始节点至当前产生最大R值的节点划分为一个社区,并作为网络中最高层次中的社区,移除这些节点,回到步骤一继续探测,反之,则将起始节点至当前产生最大R值的节点划分为一个层次社区,回到步骤二继续进行社区凝聚。
进一步的,所述步骤八中社区相似度计算公式如下:
其中|Ci|,|Cj|表示社区Ci,Cj中节点个数,|Ci|∩|Cj|则表示两个社区含有的相同节点的个数,将重叠节点加入相似度Sij大于给定阈值0.8(实验比较所得)的社区,最后得到网络的层次重叠社区。
本发明的有益效果在于:
以社区的层次结构为基础,首先,在初始化时选取度数最大的节点作为初始社区,计算其邻居节点的局部模块度值,排除了层次社区发现算法LMHC算法中存在的随机性;其次,通过大量实验比较得到层次区分度阈值,在判断新加入节点产生的极值后,通过比较层次区分度来确定是否达到层次边界,消除了基于局部模块度的社区层次结构发现方法(LMHC算法)中通过模块度的最大值划分社区层次结构存在的不准确性。最后,以得到的层次社区结构为基础,根据基于标签传播的重叠社区发现算法(MC-COPRA算法)得到的重叠社区与层次结构中的各个社区进行相似度对比,将重叠节点加入相似度高于给定阈值的社区,最终得到整个社交网络的层次重叠社区。
附图说明
图1是LMHC算法流程图;
图2是改进后的算法流程图;
图3是人工合成网络中不同Hdif值下的相似度对比图;
图4是真实网络中不同Hdif值下的相似度对比图;
图5是G1网络相似度对比图;
图6是G2网络相似度对比图;
图7是G3网络相似度对比图;
图8是G4网络相似度对比图。
具体实施方式
下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
基于局部模块度的层次重叠社区发现方法,首先初始化时选取度数最大的节点作为初始社区,其次就是对层次区分度阈值的选取,最后将得到的层次社区作为基础社区,与根据基于标签传播的重叠社区发现算法MC-COPRA算法得到的重叠社区进行相似度的比较,若高于阈值,则将其对应的重叠节点加入基础的社区。
根据Clauset所提出的R公式来对社区的局部模块度进行计算时,首先随机选取网络中任一节点作为起始社区C,分别计算将该节点的邻居节点加入社区C时的局部模块度值,通过比较选取能产生最大局部模块度值的节点加入社区。
当计算将节点vi加入社区C的局部模块度时,记当前社区C的局部模块度值则加入节点vi后,社区C内与节点vi相连的边都为其内部连接边,即为其内部连接边数,这时原本社区C内与节点vi相连的边有外部连接边变为内部连接边,与节点vi相连但边的另一端节点不在社区C内的连接边为节点vi的外部连接边,其个数记为这时局部模块度值为:
对公式(1)进行分析可得
根据强弱社区,通过分析可以得到,由于强社区要满足的条件,所以即k>1,也就意味着R值是不断增大的,而对于弱社区而言,由于无法判定k值是否大于1,也就是R值不一定是一直增大的,也有可能会减小,但其总体的变化趋势是一个上升的过程。
当将节点vi的邻居节点都加入社区C时,局部模块度值会产生一个极大值,即再加入任一其他节点时,R值会减小。当产生极大值时,说明社区的内部节点和边的连接非常紧密,而当产生极小值时,说明当前探测到的社区结构内部的连接程度比较疏松,但这也意味着下一个连接比较紧密的社区正在慢慢凝聚,对于极大值和极小值的获取,利用差分法来获取,即:
Rmax=R(i)if R(i+1)-R(i)<0
Rmin=R(j)if R(i+1)-R(i)>0 (3)
LMHC算法主要步骤为:首先从网络中随机选取一个节点作为初始社区,将其邻居节点依次加入该社区并计算局部模块度值,判断是否为极大值,若不是极大值,则继续加入节点进行社区凝聚,若产生极大值,则计算当前加入节点的层次区分度来判定层次边界,若到达层次边界,则判定当前产生的极大值是否大于0.9,若大于,则将起始节点至当前节点所组成的社区作为网络中最高层次的一个社区,并重新随机选取起始节点进行社区结构探测,若到达层次边界却不大于0.9,则发现新的层次,继续加入节点进行社区凝聚,依次迭代,直到网络中的所有节点都遍历过,最终得到整个网络的层次结构具体流程图如图1。
算法改进:
(1)LMHC算法是从网络中随机选取一个节点作为起始社区,这样不仅最终得到的层次社区结构存在随机性,同时随机选取的节点可能是一些并不重要也较为孤立的节点,这样会影响社区结构沿着准确的方向去发现其层次结构,所以改进后的算法首先选取度数最大的节点作为起始社区。
(2)其次,原有算法中对于产生极大值和极小值时计算的层次区分度,没有给出确定的阈值来判断是否到达边界。改进后的算法通过在不同阈值下比较算法得到的社区结构与原有社区结构之间的相似度对比,选取一个较为合适准确的值作为判断阈值,在通过多次迭代后,得到社区的层次结构。
(3)最后将得到的层次社区结构作为基础社区,与基于标签传播的重叠社区发现算法MC-COPRA算法得到的重叠节点所在重叠社区进行相似度对比,将重叠节点加入相似度大于给定阈值的社区,最后得到网络的层次重叠社区。具体改进流程图如图2所示。包括如下步骤:
步骤一:将网络的节点度数进行排序,将度数最大的节点设定为初始社区C,同时令社区节点个数n=1,加入的节点i=1;
步骤二:将社区C中的节点的所有邻居节点加入到邻居节点的集合Nbs(C),并计算将各个邻居节点加入社区C时的局部模块度值R;
计算将各个邻居节点加入社区C时的局部模块度值R方式如下:
其中,Bin是社区C的内部连接边数,Bout是社区C的外部连接边数,局部模块度R则代表社区内部连接边数与社区内外连接边数之和的比值。如果一个社区的内部边越多,而外部边越少,则该社区的模块度值越大,说明社区内部连接越紧密。
步骤三:比较计算得到的各个R值,将最大R值Rmax所对应的节点与该节点的所有邻居节点分别加进社区C和Nbs(C),同时n=n+1;
步骤四:计算R(n+1)-R(n),若R(n+1)-R(n)<0,记加入邻居节点后产生的局部模块度极大值Rmax(i)=R(n),同时回到步骤二,若R(n+1)-R(n)>0,记加入邻居节点后产生的局部模块度极小值Rmin(i)=R(n);
其中,R(n)表示加入节点前的局部模块度值,R(n+1)表示加入节点后的局部模块度值。
步骤五:计算R极值之差,若Rmax(i)-Rmin(i)→0即Rmax(i)-Rmin(i)<0.01或者存在Rmax(i)-Rmin(i-1)→0即Rmax(i)-Rmin(i-1)<0.01,则回到步骤二,否则令i=i+1,并计算社区层次区分度Hdif,进入步骤六;
计算社区层次分度Hdif方法如下:
其中,arg(Rmax)和arg(Rmin)分别是产生局部模块度极大值时加人社区的节点个数与在这之后产生极小值时加入的节点个数。arg(Rmin)-arg(Rmax)表示在产生极大值之后再产生极小值之间加入的节点的个数,其实也就是在当前社区的紧密程度由高到低,直到不再继续降低的过程中加入的节点规模。
步骤六:比较社区层次区分度Hdif与给定阈值的大小,若小于阈值,则判定未到达层次边界,则Rmax(i)到Rmax(i-1)之间的所有节点都认为是当前层次上的内部社区,反之若大于阈值,则表示发现了层次边界,并进入步骤七;
步骤七:比较当前产生极大值的节点的局部模块度值即Rmax(i),若大于0.9(这里的0.9是LMHC算法中通过实验比较所得),回到步骤一继续探测,反之回到步骤二继续进行社区凝聚。
比较当前产生极大值的节点的局部模块度值即Rmax(i)具体步骤如下:若Rmax(i)大于0.9(这里的0.9是LMHC算法中通过实验比较所得),则将起始节点至当前产生最大R值的节点划分为一个社区,并作为网络中最高层次中的社区,移除这些节点,回到步骤一继续探测,反之,则将起始节点至当前产生最大R值的节点划分为一个层次社区,回到步骤二继续进行社区凝聚。
步骤八:根据各个重叠节点所在的各个社区与层次结构中的各个社区进行相似度对比。
社区相似度计算公式如下:
其中|Ci|,|Cj|表示社区Ci,Cj中节点个数,|Ci|∩|Cj|则表示两个社区含有的相同节点的个数,将重叠节点加入相似度Sij大于给定阈值0.8(实验比较所得)的社区,最后得到网络的层次重叠社区。
基于局部模块度的层次重叠社区发现方法具体算法如下所示:
实验验证:
基于局部模块度的层次重叠社区发现方法实验结果及分析
(1)实验一:层次区分度阈值选择
由于并不是所有产生局部模块度的极大值时都会发生层次结构的变化,产生新的层次,对于一些加入节点而产生的细微的局部模块度值的波动而产生的极大值,就很可能只是同一个社区的内部波动,因此,利用层次区分度来判断当前产生局部模块度极大值时是否会产生层次结构变化,其定义如下所示:
其中,arg(Rmax)和arg(Rmin)分别是产生局部模块度极大值时加人社区的节点个数与在这之后产生极小值时加入的节点个数。arg(Rmin)-arg(Rmax)表示在产生极大值之后再产生极小值之间加入的节点的个数,其实也就是在当前社区的紧密程度由高到低,直到不再继续降低的过程中加入的节点规模。
实验中所用到的数据是人工合成网络数据集与真实网络数据集,由于所用算法需要通过实验来得到层次区分度的阈值,所以利用LFR基准程序来生成实验所需要的网络,如表4-1所示,分别生成N1,N2,N3和N4这四个网络,通过为它们的参数指定不同的数值来生成四个紧密程度和社区规模大小各不相同的四个网络,n表示网络中节点的总个数,其中k和Kmax表示网络中节点的平均度数与最大度数,H代表生成网络的层次数,h1、h2、h3和h4代表各个层次包含的社区的个数,Cin和Cout分别表示社区内的平均连接数和社区之间的平均连接数。t1和t2分别表示网络中节点度数的幂律分布指数和生成的社区规模大小的幂率分布指数,u代表网络中的社区结构的模糊程度,u越大,网络的社区结构越清晰,反之,网络的社区结构越模糊,On和Om则分别代表着最终生成的社区中重叠节点的个数,与所有重叠节点属于的社区的个数。社交网络数据集采用圣所迦利的空手道俱乐部的人际关系图Karateclub和一个科学家合作的真实网络CA-HepPH这两个社交网络。
表4-1 LFR基准网络生成的社区
由层次区分度公式可知层次区分度Hdif的取值范围为[0,1],本实验通过比较在不同的Hdif取值的情况下得到的层次社区与网络原有的层次社区的相似度,也就是利用归一化互信息NMI来评价探测到的层次社区结构与原有社区结构的一致性,实验结果如图3所示。
在真实社交网络圣所迦利的空手道俱乐部的人际关系图Karateclub和CA-HepPH这两个社交网络中,由于Karateclub网络只具有34个节点,可以简单以它为例,从度数最大的节点33开始加入邻居节点计算局部模块度值R,在不断迭代直到所有节点都已遍历到,在这个过程中,在节点27、9和26处产生极大值,这三个极值点处的层次区分度Hdif分别为0.036,0.057和0.167,也可以看出Hdif阈值取0.15还是比较合理的。具体两个社交网络在不同Hdif值下的对比实验如图4所示。
(2)实验二:与其他层次重叠社区发现算法的比较
为了验证算法的有效性和准确性,采用占文威等人提出的层次重叠社区发现算法HOMA算法与LMHC算法作为对比算法,在确定层次区分度阈值取0.15的条件下通过比较得到层次重叠社区结构的相似度NMI与最大模块度EQ函数对比各算法性能。
在人工合成网络中,G1、G2、G3和G4四个网络节点规模由小到大,指定了每个社区生成的层次数和每一层包含的社区数,重叠节点的个数及其属于的社区个数,实验中横坐标代表人工合成网络中最低层的社区编号,纵坐标则为NMI社区相似度。
在真实网络中,通过比较基于局部模块度的社区层次结构发现方法(LMHC算法)、基于层次聚类的社区发现算法(HOMA算法)和本发明提出的改进算法(OLMHC算法)三个算法在给出的两个真实网络中的EQ值和方差,来衡量社区发现质量,如表2所示。
表2层次重叠社区EQ值对比图
下面结合附图对实施例进行性能分析:
根据实验结果图3分析可以知道,当层次区分度值过小会导致将属于同一社区的节点分层,而过大则会导致在出现极大值的节点处应该产生新的层次,但由于Hdif的阈值过大而不认为出现新的层次,依旧属于同一社区。从实验结果图3也可以看出,在G1、G1、G3和G4四个网络中,在层次区分度值在0.1,0.15,0.2时,NMI社区相似度较高,其中在0.15时普遍最高,所以Hdif阈值取0.15比较合适。
图4中根据真实社交网络Karateclub和CA-HepPH在不同Hdif值下的NMI相似度对比也可以很明显的看出Hdif阈值在0.15时,得到的社区层次结构与原有社区结构的相似度最高。
由图5、图6、图7和图8的对比图可知,在节点个数规模由小到大的四个网络里,OLMHC算法得到的层次重叠社区结构明显要比其他两个算法得到的结果要更加准确。
从实验结果可以看出,算法MONC结果EQ值最小,说明算法的社区挖掘效果较差,而OLMHC在两个真实网络数据集上的发现效果都要比LMHC算法好一些,在一定程度上提高了社区的发现质量。
Claims (5)
1.一种基于局部模块度的层次重叠社区发现方法,其特征在于,包括如下步骤:
步骤一:将网络的节点度数进行排序,将度数最大的节点设定为初始社区C,同时令n=1,i=1;
步骤二:将社区C中的节点的所有邻居节点加入到邻居节点的集合Nbs(C),并计算将各个邻居节点加入社区C时的局部模块度值R;
步骤三:比较计算得到的各个R值,将最大R值Rmax所对应的节点与该节点的所有邻居节点分别加进社区C和Nbs(C),同时n=n+1;
步骤四:计算R(n+1)-R(n),若R(n+1)-R(n)<0,记Rmax(i)=R(n),同时回到步骤二,若R(n+1)-R(n)>0,记Rmin(i)=R(n);
步骤五:计算R极值之差,若Rmax(i)-Rmin(i)→0或者存在Rmax(i)-Rmin(i-1)→0,则回到步骤二,否则令i=i+1,并计算社区层次区分度Hdif,进入步骤六;
步骤六:比较社区层次区分度Hdif与给定阈值的大小,若小于阈值,则判定未到达层次边界,则Rmax(i)到Rmax(i-1)之间的所有节点都认为是当前层次上的内部社区,反之若大于阈值,则表示发现了层次边界,并进入步骤七;
步骤七:比较当前产生极大值的节点的局部模块度值即Rmax(i),若大于0.9,回到步骤一继续探测,反之回到步骤二继续进行社区凝聚;
步骤八:根据各个重叠节点所在的各个社区与层次结构中的各个社区进行相似度对比。
2.如权利要求1所述的基于局部模块度的层次重叠社区发现方法,其特征在于,所述步骤二中计算将各个邻居节点加入社区C时的局部模块度值R方式如下:
其中,Bin是社区C的内部连接边数,Bout是社区C的外部连接边数,局部模块度R则代表社区内部连接边数与社区内外连接边数之和的比值。
3.如权利要求1所述的基于局部模块度的层次重叠社区发现方法,其特征在于,所述步骤五中计算社区层次分度Hdif方法如下:
其中,arg(Rmax)和arg(Rmin)分别是产生局部模块度极大值时加人社区的节点个数与在这之后产生极小值时加入的节点个数;arg(Rmin)-arg(Rmax)表示在产生极大值之后再产生极小值之间加入的节点的个数。
4.如权利要求1所述的基于局部模块度的层次重叠社区发现方法,其特征在于,所述步骤七中比较当前产生极大值的节点的局部模块度值即Rmax(i)具体步骤如下:若Rmax(i)大于0.9,则将起始节点至当前产生最大R值的节点划分为一个社区,并作为网络中最高层次中的社区,移除这些节点,回到步骤一继续探测,反之,则将起始节点至当前产生最大R值的节点划分为一个层次社区,回到步骤二继续进行社区凝聚。
5.如权利要求1所述的基于局部模块度的层次重叠社区发现方法,其特征在于,所述步骤八中社区相似度计算公式如下:
其中|Ci|,|Cj|表示社区Ci,Cj中节点个数,|Ci|∩|Cj|则表示两个社区含有的相同节点的个数,将重叠节点加入相似度Sij大于给定阈值0.8的社区,最后得到网络的层次重叠社区。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811024092.1A CN109345403A (zh) | 2018-09-04 | 2018-09-04 | 一种基于局部模块度的层次重叠社区发现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811024092.1A CN109345403A (zh) | 2018-09-04 | 2018-09-04 | 一种基于局部模块度的层次重叠社区发现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109345403A true CN109345403A (zh) | 2019-02-15 |
Family
ID=65292266
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811024092.1A Pending CN109345403A (zh) | 2018-09-04 | 2018-09-04 | 一种基于局部模块度的层次重叠社区发现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109345403A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110275941A (zh) * | 2019-06-21 | 2019-09-24 | 福州大学 | 一种基于粗化与局部重叠模块度的邮件挖掘方法 |
CN111241414A (zh) * | 2019-12-02 | 2020-06-05 | 江苏海洋大学 | 一种融合兴趣主题与局部密度的重叠社区检测方法 |
CN111597665A (zh) * | 2020-05-15 | 2020-08-28 | 天津科技大学 | 一种基于网络分区的层次网络嵌入方法 |
CN111756568A (zh) * | 2020-05-06 | 2020-10-09 | 北京明略软件系统有限公司 | 一种实现社群发现的方法、装置、计算机存储介质及终端 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102819611A (zh) * | 2012-08-27 | 2012-12-12 | 方平 | 一种复杂网络局部社区挖掘方法 |
CN105243593A (zh) * | 2015-08-04 | 2016-01-13 | 电子科技大学 | 基于混合测度的加权网络社区聚类方法 |
CN107659467A (zh) * | 2017-09-26 | 2018-02-02 | 云南大学 | 动态社交网络中基于联盟形成博弈的社区检测方法 |
-
2018
- 2018-09-04 CN CN201811024092.1A patent/CN109345403A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102819611A (zh) * | 2012-08-27 | 2012-12-12 | 方平 | 一种复杂网络局部社区挖掘方法 |
CN105243593A (zh) * | 2015-08-04 | 2016-01-13 | 电子科技大学 | 基于混合测度的加权网络社区聚类方法 |
CN107659467A (zh) * | 2017-09-26 | 2018-02-02 | 云南大学 | 动态社交网络中基于联盟形成博弈的社区检测方法 |
Non-Patent Citations (1)
Title |
---|
陈羽中 等: "一种基于邻域跟随关系的增量社区发现算法", 《计算机学报》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110275941A (zh) * | 2019-06-21 | 2019-09-24 | 福州大学 | 一种基于粗化与局部重叠模块度的邮件挖掘方法 |
CN111241414A (zh) * | 2019-12-02 | 2020-06-05 | 江苏海洋大学 | 一种融合兴趣主题与局部密度的重叠社区检测方法 |
CN111756568A (zh) * | 2020-05-06 | 2020-10-09 | 北京明略软件系统有限公司 | 一种实现社群发现的方法、装置、计算机存储介质及终端 |
CN111597665A (zh) * | 2020-05-15 | 2020-08-28 | 天津科技大学 | 一种基于网络分区的层次网络嵌入方法 |
CN111597665B (zh) * | 2020-05-15 | 2023-05-23 | 天津科技大学 | 一种基于网络分区的层次网络嵌入方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109345403A (zh) | 一种基于局部模块度的层次重叠社区发现方法 | |
CN103678635B (zh) | 基于标签有向图的网络音乐聚合推荐方法 | |
Prat-Pérez et al. | Shaping communities out of triangles | |
CN109034562B (zh) | 一种社交网络节点重要性评估方法及系统 | |
CN105654548A (zh) | 一种基于大规模无序图像的多起点增量式三维重建方法 | |
CN103888541B (zh) | 一种融合拓扑势和谱聚类的社区发现方法及系统 | |
CN104657418B (zh) | 一种基于隶属度传播的复杂网络模糊社团挖掘方法 | |
Agarwal et al. | Parametric and kinetic minimum spanning trees | |
CN106709037B (zh) | 一种基于异构信息网络的电影推荐方法 | |
KR101556513B1 (ko) | 비디오들을 비교하는 방법 및 장치 | |
Li et al. | Identifying overlapping communities in social networks using multi-scale local information expansion | |
CN105483244A (zh) | 一种基于超长基因组的变异检测算法及检测系统 | |
CN105678590A (zh) | 一种面向社交网络基于云模型的topN推荐方法 | |
CN108509388A (zh) | 基于最大相关最小冗余和排序的特征选择方法 | |
CN104573036B (zh) | 一种基于距离的求解二维空间中代表性节点集的方法 | |
CN108287866A (zh) | 一种大规模网络中基于节点密度的社区发现方法 | |
CN103413027B (zh) | 一种社会网络重叠社区发现方法的评价方法 | |
CN110442800A (zh) | 一种融合节点属性和图结构的半监督社区发现方法 | |
CN111026919A (zh) | 一种基于双视图的自适应两级加权目标社区发现及检测方法 | |
Sheugh et al. | Merging similarity and trust based social networks to enhance the accuracy of trust-aware recommender systems | |
CN109218184A (zh) | 基于端口和结构信息的路由器归属as识别方法 | |
CN105813235A (zh) | 移动终端客户社团的划分方法和系统 | |
Chen et al. | Detecting overlapping community in complex network based on node similarity | |
CN109039716A (zh) | 一种复杂网络社区数量的估计方法 | |
Fang et al. | Fast detection of the fuzzy communities based on leader-driven algorithm |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190215 |