有向网络下的CoDA社区发现算法评估

来源 :河北科技大学学报 | 被引量 : 0次 | 上传用户:thinkcell
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:CoDA算法是一种基于概率模型的能识别二分结构的社区发现算法。为了验证该算法的社区划分效果,采用信息检索领域的Fmeasure标准,对有向网络下重叠社区和非重叠社区的CoDA社区发现算法进行评估。Fmeasure标准中F1measure值的大小能反映CoDA算法社区划分效果的优劣。实验所用的数据集由LFR Benchmark工具生成,数据集中节点数最小为100,最大为20 000,每增加100节点对CoDA算法社区划分效果评估一次。分析实验结果可以得出,当节点数小于1 600时,CoDA算法的划分效果较好。当节点数大于1 600时,随着节点个数增多,CoDA算法社区划分效果逐渐变差。由此说明,基于概率模型的CoDA算法适用于小规模社交网络社区的划分。
  关键词:算法理论;社区发现;CoDA算法;有向网络;评估;Fmeasure
  中图分类号:TP391.1文献标志码:A
  收稿日期:20160923;修回日期:20170306;责任编辑:陈书欣基金项目:国家自然科学基金(71271076)第一作者简介:郭松(1991—),男,河北石家庄人,硕士研究生,主要从事聚类、社区发现方面的研究。通信作者:张冬雯教授。Email:zdwwtx@163.com
  社区发现是在给定网络中,将物理对象或抽象对象的集合分组为类似对象组成的多个社区。社区发现可以应用在许多领域,例如,在商业领域,社区发现可以用于对不同的客户群分组,寻找潜在市场;在生物领域,社区发现可以用于对动植物分类和对基因分类,获取对种群固有结构的认识;在因特网领域,社区发现可以用来在网上进行文档归类,修正错误信息;在保险领域,社区发现可以用来对保险单持有者的分组识别汽车保险欺诈等。因此,社区发现算法在现实生活中有着广泛的应用。 目前,许多学者从事社区发现研究,由于他们对节点集或者边集进行划分时采取了不同标准,提出了多种多样的社区发现算法。无向网络中的社区发现算法分为图论分区法[14]、链接分区法[57]、局部扩张和优化分区法[810]、模糊划分法[1113]和基于代理的分区法[1415]5类。随着无向网络中社区发现算法的逐渐成熟,一些学者尝试将无向网络社区发现算法扩展到有向网络,以期利用已有的方法解决新问题。例如,无向网络中的DOCNet算法采用聚集系数计算节点的重要性,FAGIOLO[16]改进了DOCNet算法,并将其扩展到有向网络中。NEWMAN 等[1]在无向网络中建立了模块度优化算法——谱二分法,然后将其扩展到有向网络中,并提出有向网络中模块度的概念。NICOSIA 等[17]将有向网络中模块度概念进行了扩展,并将重叠社区考虑在内。河北科技大学学报2017年第2期郭松,等:有向网络下的CoDA社区发现算法评估随着社区发现算法的不断增多,如何衡量算法的优劣成为了一个重要的问题,因此,对社区发现算法的评估也成为了研究者关注的问题。目前常用的社区发现算法评估方法可分为外部评估法和内部评估法两大类。外部评估法是基于一种预先指定的结构,反映了人们对数据集社区结构的直观认识,主要包括正确率(Accuracy)[18]、Rand系数(Rand Index)[19]、Jaccard系数(Jaccard Index)[20]等指标。内部评估法是利用未知社区结构固有特征和量值来评估一个社区发现算法的社区划分效果,主要包括模块度(Modularity)[1]和Coverage[21]等指标。 CoDA(communities through directed affiliations)社区发现算法[22]是一个新的社区发现算法,它能对一种新型的网络结构进行社区划分。本文主要用Fmeasure标准对CoDA社区发现算法进行详细评估,以分析CoDA算法在不同节点数据集下社区划分结果的变化规律。
  1CoDA社区发现算法的概述及实现
  CoDA社区发现算法是由斯坦福大学的Jaewon Yang等提出的,该算法引起关注的原因是它对社区结构提出了一个更加新颖、全面的定义:有相似的连接模式的节点,即便它们不相连也可以组成一个社区。新的社区结构的概念源于結构对等的社会网络文化,这一文化是指具有社会同质性的节点不仅包括能连接到彼此的节点(即内部组连接),还包括以适当方式连接到网络中其他部分的节点(外部连接)。图1表示出了两种不同的社区概念。其中传统的内聚社区由社区内部链接占据主导地位,且其内部节点以双向边形式链接;而二分社区由社区间的单向链接占据主导地位。CoDA社区发现算法在两方面较为先进:第一,该算法不仅可以发现内聚社区还可以成功地发现二分社区;第二,该算法可以成功发现有向网络中的重叠社区。设B(V,C,M)是一个二分图。其中V是节点集,C是社区集,M是将V和C连接在一起的边集。该模型可以通过概率p(u,v)生成从节点u∈V到节点v∈V的有向边,生成一个有向图
  同理,vc表示节点v对社区c的链入成员关系的强度,若节点v属于社区c,则其将以因子ac同社区c中其他成员节点相链接。用非负连续取值的成员关系Fuc和Hvc分别代替uc和vc。优点是此时可以选择每个节点与给定社区的成员关系强度:Fuc取值越大,节点u指向社区c中其他成员的链出边越多。同理,Hvc取值越大,则节点v 指向社区c中其他成员的链入边越多,因此可以将式(6)转换成: 式(3)可转化为连续优化问题
  其中 使用最大似然法求出 取得最大值时的非负关系矩阵,来拟合有向关系网络模型,以达到社区划分的目的。
  2评估方法
  评估方法借鉴了信息检索领域中的Fmeasure标准[23]。Fmeasure包含准确率和召回率两方面。其中准确率是检索出相关文档数与检索出的文档数的比率,衡量系统的查准率;召回率是指检索出的相关文档数和文档库中所有相关文档数的比率,衡量系统的查全率。本文将Fmeasure标准中的文档数替换为节点对个数,进而将Fmeasure标准应用到社区发现算法的评估领域。Fmeasure可以很好地刻画某社区发现算法对社交网络的社区划分结果与标准数据集中社区划分结果的差异,在此用Fmeasure标准对CoDA社区发现算法进行评估。 社区中节点对的归属情况见表1。其中:a表示原始数据集中属于同一个真实社区,社区划分后也属于同一个社区中的节点对数目;b表示原始数据集中不属于同一个真实社区,社区划分后却划分到同一个社区中的节点对数目;c表示原始数据集中属于同一个真实社区,社区划分后却没被划分到同一个社区中的节点   节点对归属原始数据集中属于真实社区的节点对数目原始数据集中不属于真实社区的节点对数目社区划分后属于某社区的节点对数目ab社区划分后不属于某社区的节点对数目cd
  对数目;d表示原始数据集中即不属于同一个真实社区,社区划分后也不属于同一个社区中的节点对数目。准确率(Precision)是输出结果中被划分到同一社区的2个节点组成的节点对在数据集中属于同一真实社区的比例,计算公式如式(10)所示: 召回率(Recall)是输出结果中被划分到同一社区中的2个节点且在数据集中属于同一真实社区的节点对占划分结果中社区内所有节点对的比例,计算公式如式(11)所示: 准确率与召回率都只能反映算法单方面的性质,且这2个参数往往有相反的变化趋势,而 F1measure 将准确率与召回率进行综合考虑,能够反映算法的综合性能。其定义如式(12)所示:
  2.1评估程序流程图
  评估程序流程图如图2所示,本程序采用Java语言实现。该评估方法为外部评估法,其特点是标准社区结构已知。首先,读取数据集中的标准社区结构文件,得到标准社区结构中社区编号与其包含节点的对应关系HashMap〈String, LinkedList〈String〉〉communities。其次,根据得到的标准社区情况communities分社区遍历,构造标准社区中的节点对HashSet〈String〉nodePairInReal。然后,读取被某算法处理后的社区情况,构造处理后社区中的节点对nodePairInBack,在此过程中判断每个节点是否包含在真实
  社区的节点对 nodePairInReal之中,如果存在,则构造既包含在真实社区中又在某算法处理后的社区中的节点对nodePairCorrect,同时,将此节点从nodePairInReal中移除。其中节点对指位于同一社区中的2个节点的组合。其中nodePairCorrect对应表1中a,nodePairInBack对应表1中b,nodePairInReal对应表1中c。最后根据式(10)—式(12)依次计算出准确率、召回率和 F1measure的值。
  2.2有向网络下重叠社区CoDA算法的评估
  实验所用有向网络下重叠社区的标准数据集由LFR Benchmark[24]生成。数据集中节点平均度数为 10,最大度数为50,混合参数为0.2,社区最小尺寸为20,最大尺寸为100,40%的重叠节点,且每个重叠节点同时属于 4 个社区。节点数从100 到20 000,每100个节点进行一次测试。评估结果如图3和图4所示。其中图3表示链入成员的评估结果,图4表示链出成员的评估结果。
  通过实验结果可以发现,在有向网络带重叠社区的情况下,相同节点数据集的链入成员资格和链出成员资格之间的准确率、召回率和F1measure幾乎相等。数据集节点数在1 600以内时,CoDA社区发现算法的社区划分效果比较好,F1measure在0.4以上。链入成员在节点为700时CoDA社区划分效果最好,此时F1measure达到0.524;链出成员在节点为1 200时CoDA社区划分效果最好,此时F1measure达到0506。当数据集节点数超过1 700时,随着节点的不断增多,召回率不断升高,且趋近于1;但是准确率不断下降,且趋近于0.1;F1measure呈明显下降趋势,其值趋近与0.1。当节点数超过10 000时,F1measure一直处于0.1以下,故图中未给出评估结果。
  2.3有向网络下非重叠社区CoDA算法的评估数据集生成过程及数据集节点数的选取同22,节点平均度数、最大度数、混合参数、社区最小尺寸和最大尺寸等没有改变,只将重叠节点的个数和每个重叠节点属于的社区数调整为0。评估结果如图5和图6所示。
  通过对有向网络下非重叠社区CoDA算法的评估可以发现,在相同节点数据集下,链入成员资格和链出成员资格之间的准确率、召回率和F1measure几乎相等。随着节点的不断增多,召回率不断升高,准确率和F1measure在不断下降。这说明随着节点的增多,标准社区结构中不在同一社区的节点对经过CoDA算法处理后,被划分到同一社区的数量越来越多。标准社区结构中在同一社区的节点对经过CoDA算法处理后,被划分到2个不同社区的数量越来越少。到达10 000节点后,几乎所有属于同一ci社区的节点对都不会被划分到不同的社区内。数据集节点数量较小时,其综合性能较好;随着数据集节点数量的增多,其综合性能在逐渐变差。 分别对比有向网络下的重叠社区和非重叠社区的CoDA社区发现算法实验结果可知,相同节点的数据集下,重叠社区和非重叠社区之间的准确率、召回率和F1measure相差很小,这说明CoDA社区发现算法在分别处理重叠社区和非重叠社区时,其稳定性非常好。
  3结论
  1) 将信息检索领域中的Fmeasure评价标准应用于社区发现算法的评估领域。既属于标准社区又属于某算法划分后,社区中的节点对数对应Fmeasure评价标准中检索出的相关文档数替换为算法划分后,社区中的节点对数对应该标准中检索出的文档数,真实社区中的节点对数对应该标准中文档库中所有相关文档数。通过实验可知,Fmeasure可以很好地刻画某社区发现算法对社交网络的社区划分结果与标准数据集中社区划分结果的差异,因此可以将该标准应用到有向网络下重叠社区和非重叠社区的挖掘算法评估领域。
  2)在研究社交网络结构的过程中,一个准确的社区概念至关重要。传统模型认为“社区”是密集连接节点的集合。CoDA算法考虑了二分社区结构,它将一组在网络中没有直接链接,但链接在同一个坐标的节点组合在一起。该算法能识别有向网络下的重叠二分社区。当数据集节点数小于1 600时,CoDA算法社区划分效果较好且稳定,但是当节点数超过该值时,随着数据集节点数的增多,社区划分效果逐渐变差。因此,基于概率模型的CoDA社区发现算法适用于数据集规模较小时社交网络的划分,不适用于大规模社交网络的社区划分。   參考文献/References:
  [1]NEWMAN M E J, GIRVAN M. Finding and evaluating community structure in networks[J]. Physical Review E, 2004, 69:026113.
  [2]YANG J, LESKOVEC J. Overlapping community detection at scale: A nonnegative matrix factorization approach[C]// Proceedings of the Sixth ACM International Conference on Web Search and Data Mining. New York:ACM,2013:587596.
  [3]MAKINO K, UNO T. New algorithms for enumerating all maximal cliques[C]//9th Scandinavian Workshop on Algorithm Theory. Berlin:Springer, 2004:260272.
  [4]PALLA G, DERNYI I, FARKAS I, et al. Uncovering the overlapping community structure of complex networks in nature and society[J]. Nature, 2005, 435:814818.
  [5]EVANS T S, LAMBIOTTE R. Line graphs, link partitions, and overlapping communities[J]. Physical Review E, 2009, 80:016105.
  [6]AHN Y Y, BAGROW J P, LEHMANN S. Communities and hierarchical organization of links in complex networks[J]. Nature, 2009, 466:761764.
  [7]WU Zhihao, LIN Youfang, WAN Huaiyu, et al. A fast and reasonable method for community detection with adjustable extent of overlapping[C]// 2010 International Conference on Intelligent Systems and Knowledge Engineering (ISKE).[S.l.]: IEEE Xplore, 2010:376379.
  [8]ANDREA L, FILIPPO R, RAMASCO J J, et al. Finding statistically significant communities in networks[J]. Inorganic Materials, 2002, 38(4):336338.
  [9]LANCICHINETTI A, FORTUNATO S, KERTSZ J. Detecting the overlapping and hierarchical community structure of complex networks[J]. New Journal of Physics, 2008, 11(3):1944.
  [10]SHEN Huawei, CHENG Xueqi, CAI Kai, et al. Detect overlapping and hierarchical community structure in networks[J]. Physica A:Statistical Mechanics & Its Applications, 2009, 388(8):17061712.
  [11]LU Yinghua, MA Tinghuai, YIN Changhong, et al. Implementation of the fuzzy Cmeans clustering algorithm in meteorological data[J]. International Journal of Database Theory & Application, 2013, 6(6):118.
  [12]NEPUSZ T, PETRCZI A, NGYESSY L, et al. Fuzzy communities and the concept of bridgeness in complex networks[J]. Physical Review E Statistical Nonlinear & Soft Matter Physics, 2008, 77:016107.
  [13]PSORAKIS I, ROBERTS S, EBDEN M, et al. Overlapping community detection using Bayesian nonnegative matrix factorization[J]. Physical Review E Statistical Nonlinear & Soft Matter Physics, 2011, 83:066114.
  [14]XIE J, SZYMANSKI B K, LIU X M. SLPA: Uncovering overlapping communities in social networks via a speakerlistener interaction dynamic process[C]//2011 IEEE 11th International Conference on Data Mining Workshops(ICDMW). Vancouver: IEEE, 2011:344349.   [15]RHOUMA D, ROMDHANE L B. An efficient algorithm for community mining with overlap in social networks[J]. Expert Systems with Applications, 2014, 41(9):43094321.
  [16]FAGIOLO G. Clustering in complex directed networks[J]. Physical Review E Statistical Nonlinear & Soft Matter Physics, 2007, 76:026107.
  [17]NICOSIA V, MANGIONI G, CARCHIOLO V, et al. Extending the definition of modularity to directed graphs with overlapping communities[J]. Journal of Statistical Mechanics Theory & Experiment, 2009 (3):31663168.
  [18]STEINHAEUSER K, CHAWLA N V. Identifying and evaluating community structure in complex networks[J]. Pattern Recognition Letters, 2010, 31(5):413421.
  [19]RAND W M. Objective criteria for the evaluation of clustering methods[J]. Journal of the American Statistical Association, 1971, 66:846850.
  [20]BENHUR A, ELISSEEFF A, GUYON I. A stability based method for discovering structure in clustered data[J]. Pacific Symposium on Biocomputing Pacific Symposium on Biocomputing, 2002(7):617.
  [21]BRANDES U, GAERTLER M, WAGNER D. Experiments on Graph Clustering Algorithms[M]. Berlin: Springer, 2003:568579.
  [22]YANG J, MCAULEY J, LESKOVEC J. Detecting cohesive and 2mode communities indirected and undirected networks[C]// Proceedings of the 7th ACM International Conference on Web Search and Data Mining. New York:WSDM, 2014:323332.
  [23]萬里. 时间序列中的知识发现:基于频繁模式发现的分类和聚类方法研究[D]. 北京:北京邮电大学, 2009.
  WAN Li. Knowledge Discovery in Time Series:Researches on Classification and Clustering Based on Frequent Pattern Discovery[D]. Beijing: Beijing University of Posts and Telecommunications, 2009.
  [24]LANCICHINETTI A, FORTUNATO S. Benchmarks for testing community detection algorithms on directed and weighted graphs with overlapping communities[J]. Physical Review E Statistical Nonlinear & Soft Matter Physics, 2009, 80:016118.
其他文献
采用相频扫天线阵的雷达,在雷达会标系上波束批向精度的测量和校准问题,在我所几种相关雷达型号的研制中,有过不同的实践,碰到过不同的问题,存在着不同的理解认识。如果能通过讨论
文章详细地介绍了采用切比雪夫函数逼近,REMEZ交换算法设计声表面波滤波器的方法,并将其应用于电视频道滤波器的设计,先后设计了一至五频道以及38MHz中频滤波器,得到了矩形系
对于中心距中调的变位齿轮副来说,由于在安装时需要按要求调整齿轮副侧隙,那么,其变位系数就不能按常规方法选取,提出按侧隙规范修正变位系数观点,供大家讨论。
数学课程是小学课程教育体系中的重要组成部分,具有较强的逻辑性和应用性。数学来源于生活且高于生活,而生活化教学模式属于一种常见的教学手段,其在小学数学教学中的应用与
本文介绍了用Z80单板计算机作主机,用HZ8401A中西文终端作为监控台终端的可搬移卫星通信地球站的微机监控系统,讨论了该系统的功能、硬件组成和软件设计。
针对2种流体的Allen-Cahn型相场模型提出了一种自适应移动网格方法。移动网格方法包括网格重分布和偏微分方程求解2个相对独立的部分。通过求解一个类似于Poisson方程的偏微
随着轨交行业的发展,轨道电话公网和专网合网是一种趋势,也是行业发展的需要。合网带来的优势非常明显,比传统方案高效、成本低、占用空间小、便于维护等。合网打破了公务电
摘要:电气自动化是一种先进的,要求较高的电子技术。该技术以计算机网络技术为基础,实现对电气的自动化控制,并通过集成控制系统实现集成化统一控制和管理,保证电力系统的正常运行。本文将结合电气自动化的含义,探讨电气自动化系统的重要意义,同时对电气自动化的应用领域进行简单分析。  关键词:电气自动化; 重要性; 应用发展;  1 电气自动化技术概述  电气自动化指的是在传统电气工程基础上形成的一种电气工程
文章编号:10081542(2014)02014405doi:10.7535/hbkd.2014yx02006  摘要:使用表面增强拉曼光谱研究了苯硫醚在不同曲率半径的金纳米粒子表面的取向差异。结果表明,金纳米粒子半径越小,其表面配体分子中的苯环越倾向与金粒子表面平行排列。  关键词:表面增强拉曼光谱;金纳米粒子;分子取向  中图分类号:O657.37 文献标志码:A  Abstract:Surf
本文经过论述造船工业智能制造的开展趋势及我国造船工业智能制造现状与国际先进船厂之间存在的差距问题,阐明加快船舶制造制造对我国船只工业的开展意义。在目前全球航运业