CN103413027B - 一种社会网络重叠社区发现方法的评价方法 - Google Patents
一种社会网络重叠社区发现方法的评价方法 Download PDFInfo
- Publication number
- CN103413027B CN103413027B CN201310308950.6A CN201310308950A CN103413027B CN 103413027 B CN103413027 B CN 103413027B CN 201310308950 A CN201310308950 A CN 201310308950A CN 103413027 B CN103413027 B CN 103413027B
- Authority
- CN
- China
- Prior art keywords
- community
- node
- overlapping nodes
- overlapping
- division
- 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.)
- Expired - Fee Related
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提出一种社会网络重叠社区发现方法的评价方法,属于社会网络技术领域。本发明利用无相无权图表示社会网络,获取各重叠节点对所属各社区的贡献度以及所属各社区对各重叠节点的吸引度,再确定各重叠节点对各所属社区的归属系数,重叠节点的多个归属系数越接近,则说明该节点可以合理地成为重叠节点,否则,说明该节点的社区划分不合理;根据误差率获得一条重叠节点误差率分布曲线。本发明方法可以用于评价重叠社区划分方法将节点划为重叠节点是否合理,可根据判定结果来对某些重叠节点进行调整,同时也通过判断重叠节点划分的合理性来评价所使用的社区划分方法的优劣,帮助用户选择更加合适的社区划分方法进行社区划分。
Description
技术领域
本发明提出一种社会网络重叠社区发现方法的评价标准,属于社会网络技术领域。
背景技术
近年来对于重叠社区发现的研究非常热,研究者也提出了一些切实可行的发现方法。对于任何一种方法,都需要有一种方式来评价它的效果如何。目前,在重叠社区发现领域还没有一套公认的较好的对社区划分结果进行评价的标准。
现有的社区发现评价标准主要有NCPplot(NetworkCommunityProfileplot,网络社区剖面图),Q函数(又称模块性函数),NMI(NormalizedMutualInformation)等,它们都可以在一定程度上用来描述社区划分的好坏。前两种评价标准都没有考虑社区的重叠特征,其着重点在于社区内部与社区之间的不同特征。NMI指标是基于集合相似度的度量,可以用来比较不同社区划分方法划分结果的相似程度,若想知道某种社区划分方法对某个网络的社区划分效果,需要有一个先验条件,即该网络的“完美”划分或者称之为“基准”划分,然后才能将该社区划分方法的划分结果用NMI指标做比较。NMI的值在0和1之间,值越大表示两种划分相似度越高,即社区划分方法的划分结果越接近于“完美”划分。
但NMI存在明显的缺陷:针对现实世界中的复杂社会网络,这种“完美”划分是不存在的。NMI仅适用于一些特定的人造网络和一些现实中一些小型、容易手工划分的网络,它的出发点也不是基于重叠社区的特征。
发明内容
针对现有社区划分结果评价方法未考虑或基于社区的重叠特征,以及存在明显缺陷的问题,本发明提供了一种社会网络重叠社区发现方法的评价方法。
本发明提供的一种社会网络重叠社区发现方法的评价方法,利用无相无权图表示社会网络,图中节点表示社会网络中的个体,边表示个体之间的关系,具体本方法包括如下步骤。
步骤1:获取各重叠节点对所属各社区的贡献度;设节点a为重叠节点;
节点a对所属社区A的贡献度DoC(a,A)为:
其中,L(a,A)in为社区A中的节点a在社区A内的边数,L(a,A)out为节点a到社区A外的边数,d(a)为节点a的度数。
步骤2:获取所属各社区对各重叠节点的吸引度;
社区A对节点a的吸引度DoA(A,a)为:
其中,社区A'=A-a,nA'为社区A'的节点总数,mA'为nA'个节点之间形成的边总数,m2(a,A)为节点a在社区A中二度朋友的数量。
步骤3:确定各重叠节点对各所属社区的归属系数;
节点a对所属社区A的归属系数CoB(a,A)为:
CoB(a,A)=(1-λ)DoC(a,A)+λDoA(a,A)
其中,λ为影响因子。
步骤4:针对各重叠节点,确定该节点划分的误差率,并与误差率的阈值T比较,判断对该节点的划分是否合理;
获取节点a对所属各社区的归属系数,CoBmax表示其中最大的归属系数,CoBmin表示其中最小的归属系数,则节点a划分的误差率RoE(a)为:
当获得的误差率小于阈值T时,表示对该重叠节点的划分合理,否则,表示对该重叠节点的划分不合理。
同时,根据各重叠节点划分的误差率,生成一条重叠节点误差率分布(EDOV,ErrorDistributionofOverlappingVertices)曲线,利用该曲线可评价对应社区划分方法的优劣。
本发明方法的优点和积极效果在于,所提供的评价方法可以用于评价重叠社区划分方法将节点划为重叠节点是否合理,可根据判定结果来对某些重叠节点进行调整,同时也通过判断重叠节点划分的合理性来评价所使用的社区划分方法的优劣,帮助用户选择更加合适的社区划分方法进行社区划分。
附图说明
图1为本发明的评价方法的整体步骤流程图;
图2为本发明的节点对社区的贡献度的示意图;
图3为社区对节点的吸引度示意图,(A)和(B)为两个社区实例;
图4为用本发明评价方法对COPRA对空手道俱乐部的划分实例进行分析的示意图;
图5为利用本发明方法对社区划分方法对人造网络划分结果的评价曲线图。
具体实施方式
下面将结合附图说明本发明的评价方法,并通过具体实施例验证本发明的评价方法。
在充分研究重叠社区结构、非重叠社区结构以及各种社区发现方法后发现:重叠社区发现方法的不同之处在于需要决定处于社区边界的节点是否可以同时划分到多个社区。由此,针对节点能否划分到某个社区,本发明定义了一种归属系数,节点如果被划分到多个社区则存在多个归属系数,这些归属系数之间如果越接近,则说明该节点可以合理地成为重叠节点,如果归属系数之间差别太大,则不满足可以作为重叠节点的条件,对此,本发明使用误差率来衡量。对于任何一种重叠社区发现方法所给出的社区划分结果,根据本发明提出的方法可以生成一条重叠节点误差率分布(EDOV,ErrorDistributionofOverlappingVertices)曲线。
定义无向无权图G=(V,E)来表示一个社会网络,图中节点总数为|V|=n,每个节点表示社会网络中的一个个体,例如某个人,边总数为|E|=m,每条边表示两个节点之间的关系。设A为G中某些节点的集合,表示为网络中的一个社区。社区A中的节点总数为|A|=nA,这些节点之间形成的边总数为mA=|{(u,v):u∈A,v∈A,u≠v}|,社区A中的某个节点a在社区A内的边数为L(a,A)in,节点a到社区A外的边数为L(a,A)out,显然可知节点a的度数为
d(a)=L(a,A)in+L(a,A)out。
本发明方法中设定了如下定义:
(1)节点对社区的贡献度(DegreeofContribution):
DoC(a,A)描述了节点a分配给社区A的边数在节点a拥有的总边数中的权重,度量节点a主动加入该社区A的欲望大小。
(2)社区对节点的吸引度(DegreeofAttraction):
DoA(A,a)描述了社区A对节点a加入社区的吸引程度,由原社区A'的密度和节点a在原社区A'中的人脉关系决定。
其中集合A'=A-a,即所谓的原社区;m2(a,A)表示节点a在社区A中二度朋友的数量。设节点b与节点a直接相连,则与节点b直接相连的节点称为节点a的二度朋友。
(3)节点对社区的归属系数(CoefficientofBelonging):
CoB(a,A)是将节点a对社区A的贡献度和社区A对节点a的吸引度进行归一化处理所得的参数,定义为:
CoB(a,A)=(1-λ)DoC(a,A)+λDoA(a,A)(3)
其中,参数λ为影响因子,也称为权重系数,表示吸引度DoA对归属系数CoB(a,A)的影响因子,1-λ表示贡献度DoC对归属系数CoB(a,A)的影响因子。本发明方法中认为社会网络中边的形成受贡献度与吸引度共同影响,因此可预设λ的值为0.5。
(4)重叠节点划分的误差率(RateofError):
设节点a归属于多个社区,为重叠节点,则节点a划分的误差率用RoE(a)表示:
获取节点a对各归属社区的归属系数,CoBmax表示其中最大的归属系数,CoBmin表示其中最小的归属系数。如果节点a归属于多个社区,则节点a对这些社区的归属系数应该是比较接近的,如果误差率过大,则该节点a不应该划分到归属系数较小的那个(或几个)社区。
本发明提供的一种社会网络重叠社区发现方法的评价方法,如图1所示,具体包括的步骤为:
步骤1:获取各重叠节点对所属各社区的贡献度;具体采用公式(1)获取各重叠节点对所属各社区的贡献度。
步骤2:获取所属各社区对各重叠节点的吸引度;具体采用公式(2)获取各社区对重叠节点的吸引度。
步骤3:确定各重叠节点对各所属社区的归属系数;具体对各重叠节点按照公式(3)得到对应的归属系数。
步骤4:针对各重叠节点,确定该重叠节点划分的误差率,并与误差率的阈值T比较,判断对该节点的划分是否合理。本发明实施例中设定误差率的阈值为T,根据实验经验T优选取值为50%,小于50%认为合理。
如图2所示,重叠节点a属于社区A和社区B,原社区A'=A-a,原社区B'=B-a。相较社区A,节点a有较多的关系存在于社区B中,所以本发明方法认为节点a对社区B的贡献更多,节点a更愿意加入社区B。
如图3所示,图(A)可以看出,原社区B'的结构更紧密些,内部更团结稳定,倾向于认为社区B对节点a的吸引程度更大。从图(B)可以看出,节点a在两个社区中的朋友都具有举足轻重的地位,二度朋友覆盖所有人脉,针对图(B)所示的情况,本发明方法认为节点a可以同时归属于两个社区。
根据所提出的标准可以生成一条重叠节点误差率分布(EDOV,ErrorDistributionofOverlappingVertices)曲线,通过EDOV曲线能比较直观的看出重叠节点的误差率发布情况。误差越小时EDOV曲线越高,误差变大时EDOV曲线迅速下滑,当使得大多数重叠节点的误差处在较小范围内,这个时候对应评价的社区划分方法的划分效果最佳。实验证明:本发明方法可以在不需要先验基准划分的情况下初步评判和定性分析一个重叠社区发现方法的好坏。
如图4所示,COPRA(CommunityOverlapPRopagationAlgorithm)社区划分方法对空手道俱乐部的划分结果示意图,图4中分割线左边为社区A,右边为社区B,使用前述方法进行计算得ROE(10)=16.1%,可见节点10对社区A的归属系数略大于B,主要是因为节点10所认识的34号朋友是社区A中的核心人物,导致社区A对其吸引度较高。
应用本发明方法可以用于评价重叠社区划分方法将节点划为重叠节点是否合理,通过判断重叠节点划分的合理性可进一步评价该社区划分方法的优劣。从而能够帮助用户判断所选用的社区划分方法是否合适,或者帮组用户从多个社区划分方法中选取适合的方法来对当前社区进行划分。应用本发明方法还可以根据该误差率,与阈值来比较,对某个社区划分方法得到的某些重叠节点所划分的社区进行调整,以更加符合实际社区关系。
下面利用本发明方法对几种重叠社区发现方法进行评价比较。
本发明实施例选取COPRA、SLPA(Speaker-listenerLabelPropagationAlgorithm)、GCE(GreedyCliqueExpansion)、OSLOM(OrderStatisticsLocalOptimizationMethod),iLCD等几种社区发现方法进行比较。SLPA是一种基于标签传播思想的社区划分方法。GCE特别针对重叠社区中两社区重叠部分过大导致划分不明显的情况作了改进,得到了较好的实验结果。OSLOM是一种局部优化算法。iLCD算法针对有庞大的重叠部分的网络的社区划分提出。下面将采用人造网络进行比较。
产生人造网络需要确定如下几个主要的参数:N表示节点总数,on表示需要产生的重叠节点数,om表示这些重叠节点归属的社区个数,k表示节点平均度数,maxk表示节点的最大度数,minc表示社区包含的节点最小数,maxc表示社区包含的节点最大数,mu为混合参数(mixingparameter),取0到1之间的值。
1.人造网络生成条件为:N=1000,on=50,om=2,k=20,maxk=50,minc=10,maxc=50,mu=0.1。
对于COPRA算法,参数v表示每个节点最多属于的社区个数,若取v=2,则在这种条件下不能发现任何重叠节点,取参数v=3后,可以发现重叠节点并且这些重叠节点绝大多数都是归属于两个社区,取其运行10次的平均结果。
对于SLPA算法,设定是否删除该节点标签的阈值r,如果机率小于r则删除该节点的标签,取阈值r=0.2时运行10次的平均结果。图5的(a)~(c)中的benchmark曲线为产生人造网络时同时生成的标准划分,其中,横坐标表示误差率,纵坐标P-ov表示满足某种条件的重叠节点占所有重叠节点的比重。观察图5(a)可知,在on=50,om=2的情况下,benchmark和COPRA、SLPA、GCE表现都十分好,但是OSLOM和iLCD两种划分方法表现糟糕并且情况相近:重叠节点要么误差偏小要么误差过大,误差在90%~100%之间的节点比例较大。从benchmark到iLCD,各个划分方法每次运行能够发现的平均重叠节点数目为:50、48.8、24.1、29、50、290,可见benchmark和COPRA划分方法表现最佳。
2.在上述人造网络预设的情况下,提高网络中重叠节点的数量,即使得on=100,其他条件不变,可得图5(b),可以看出,在重叠节点数量增多之后,变化比较明显的是OSLOM社区划分方法,划分效果明显变好,但是iLCD社区划分方法依然表现糟糕,其他社区划分方法以及标准划分效果都不差。各社区划分方法能发现的重叠节点数为:100、94.2、49.6、84、100、218。综合考虑,可见benchmark表现仍然不错,COPRA、GCE和OSLOM社区划分方法可以发现的重叠节点数以及重叠节点误差分布曲线也与之接近,SLPA社区划分方法发现的重叠节点数虽然较少但是误差更小,而iLCD社区划分方法的表现仍然很差,所发现的重叠节点过多,并且这些重叠节点的误差率分布比较极端,要么偏小要么偏大。在针对类似网络进行社区划分时,应选取COPRA、GCE和OSLOM社区划分方法。
3.在前一个实验基础之上,取参数om的值为4,om表示重叠节点被划分到的社区数目。即此时构造网络的条件为:N=1000,on=100,om=4,k=20,maxk=50,minc=10,maxc=50,mu=0.1,可以得到图5(c),从中可以看到om变大之后,标准划分的效果如本章开始所述,效果一般,绝大多数重叠节点的误差集中在30%~50%之间,COPRA、SLPA、OSLOM等社区划分方法表现正常,这三者之中COPRA表现更佳。各社区划分方法能发现的重叠节点数分别为:100、13.1、51.3、2、74、231。
以上实验证明:本发明提供的评价方法在设计思想上符合社会网络重叠社区结构的内在特征,并且可以在不需要先验基准划分的情况下初步评判和定性分析一个重叠社区发现方法的好坏,适用于对实际具有重叠特征的社会网络划分的结果进行评价。并可根据误差率帮助用户选取合适的社区划分方法,对社区划分得到的某些重叠节点进行所属社区的调整,以更加符合实际社区关系。
Claims (3)
1.一种社会网络重叠社区发现方法的评价方法,利用无相无权图表示社会网络,图中节点表示社会网络中的个体,边表示个体之间的关系,其特征在于,该评价方法包括如下步骤:
步骤1:获取各重叠节点对所属各社区的贡献度;设节点a为重叠节点;
节点a对所属社区A的贡献度DoC(a,A)为:
其中,L(a,A)in为社区A中的节点a在社区A内的边数,L(a,A)out为节点a到社区A外的边数,d(a)为节点a的度数;
步骤2:获取所属各社区对各重叠节点的吸引度;
社区A对节点a的吸引度DoA(A,a)为:
其中,社区A'=A-a,nA'为社区A'的节点总数,mA'为nA'个节点之间形成的边总数,m2(a,A)为节点a在社区A中二度朋友的数量;
步骤3:确定各重叠节点对各所属社区的归属系数;
节点a对所属社区A的归属系数CoB(a,A)为:
CoB(a,A)=(1-λ)DoC(a,A)+λDoA(a,A)
其中,λ为影响因子;
步骤4:针对各重叠节点,确定该节点划分的误差率,并与误差率的阈值T比较,判断对该节点的划分是否合理;
获取节点a对所属各社区的归属系数,CoBmax表示其中最大的归属系数,CoBmin表示其中最小的归属系数,则节点a划分的误差率RoE(a)为:
当获得的误差率小于阈值T时,表示对该重叠节点的划分合理,否则,表示对该重叠节点的划分不合理;
同时,根据各重叠节点划分的误差率,生成一条重叠节点误差率分布曲线。
2.根据权利要求1所述的社会网络重叠社区发现方法的评价方法,其特征在于,所述的步骤3中的影响因子设置为0.5。
3.根据权利要求1所述的社会网络重叠社区发现方法的评价方法,其特征在于,所述的步骤4中设置阈值T为0.5。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310308950.6A CN103413027B (zh) | 2013-07-22 | 2013-07-22 | 一种社会网络重叠社区发现方法的评价方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310308950.6A CN103413027B (zh) | 2013-07-22 | 2013-07-22 | 一种社会网络重叠社区发现方法的评价方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103413027A CN103413027A (zh) | 2013-11-27 |
CN103413027B true CN103413027B (zh) | 2016-06-08 |
Family
ID=49606038
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310308950.6A Expired - Fee Related CN103413027B (zh) | 2013-07-22 | 2013-07-22 | 一种社会网络重叠社区发现方法的评价方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103413027B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104166731B (zh) * | 2014-08-29 | 2017-11-17 | 河海大学常州校区 | 一种社交网络重叠社区发现系统及其方法 |
CN105069039B (zh) * | 2015-07-22 | 2018-05-18 | 山东大学 | 一种基于spark平台的内存迭代的重叠社区并行发现方法 |
CN108205527B (zh) * | 2016-12-16 | 2022-01-18 | 深圳联友科技有限公司 | 一种发动机数据平衡的绘制方法及装置 |
CN108846543B (zh) * | 2018-04-26 | 2021-10-29 | 深圳大学 | 一种非重叠社区集合质量度量指标的计算方法及装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101364239A (zh) * | 2008-10-13 | 2009-02-11 | 中国科学院计算技术研究所 | 一种分类目录自动构建方法及相关系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101324937B (zh) * | 2007-06-15 | 2015-05-20 | 国际商业机器公司 | 网络分析方法及系统 |
-
2013
- 2013-07-22 CN CN201310308950.6A patent/CN103413027B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101364239A (zh) * | 2008-10-13 | 2009-02-11 | 中国科学院计算技术研究所 | 一种分类目录自动构建方法及相关系统 |
Non-Patent Citations (2)
Title |
---|
基于社交网络的个性化推荐服务研究;朱琳可;《中国优秀硕士学位论文全文数据库信息科技辑》;20120115(第1期);全文 * |
混合重叠社区发现研究及应用;孙文婷;《中国优秀硕士学位论文全文数据库社会科学Ⅰ辑》;20120615(第6期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN103413027A (zh) | 2013-11-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103793476B (zh) | 基于网络社区的协同过滤推荐方法 | |
CN109005055B (zh) | 基于多尺度拓扑空间的复杂网络信息节点重要度评价方法 | |
CN103413027B (zh) | 一种社会网络重叠社区发现方法的评价方法 | |
CN104156984B (zh) | 一种不均匀杂波环境下多目标跟踪的概率假设密度方法 | |
CN108399453A (zh) | 一种电力客户信用等级评价方法和装置 | |
CN110276966B (zh) | 交叉口信号控制时段划分方法 | |
CN105843829B (zh) | 一种基于分层模型的大数据可信性度量方法 | |
CN102546754B (zh) | 服务质量可定制的Web服务组合方法 | |
CN107391670A (zh) | 一种融合协同过滤和用户属性过滤的混合推荐方法 | |
CN105893637A (zh) | 大规模微博异构信息网络中的链接预测方法 | |
CN107562947A (zh) | 一种移动时空感知下动态即时推荐服务模型建立方法 | |
CN109471982B (zh) | 一种基于用户和服务聚类QoS感知的Web服务推荐方法 | |
CN102810113A (zh) | 一种针对复杂网络的混合型聚类方法 | |
CN103559303A (zh) | 一种对数据挖掘算法的评估与选择方法 | |
CN106411572A (zh) | 一种结合节点信息和网络结构的社区发现方法 | |
CN105760649A (zh) | 一种面向大数据的可信度量方法 | |
Zhao et al. | Multiple attribute decision making method in the frame of interval-valued intuitionistic fuzzy sets | |
CN105678590A (zh) | 一种面向社交网络基于云模型的topN推荐方法 | |
CN106055689A (zh) | 一种基于时序相关性的空间聚类方法 | |
Alinezhad et al. | Sensitivity Analysis in the QUALIFLEX and VIKOR Methods | |
CN103336771A (zh) | 基于滑动窗口的数据相似检测方法 | |
CN104731887B (zh) | 一种协同过滤中的用户相似度度量方法 | |
CN110162716A (zh) | 一种基于社区检索的影响力社区搜索方法和系统 | |
CN103646035A (zh) | 一种基于启发式方法的信息搜索方法 | |
CN108197209A (zh) | 一种基于加权协同过滤算法的电影推荐方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160608 Termination date: 20170722 |