论文部分内容阅读
现实生活中的许多复杂系统,比如社交网络、生物学网络、电力系统等,都可以被抽象为复杂网络模型,通过研究复杂网络的特点与结构,可以帮助我们更好的掌握与使用复杂系统,而社区结构特性是复杂网络的重要性质之一。因此,复杂网络中的社区结构有着重要的研究意义和应用价值。传统的对社区结构的研究大多立足于社区发现,即探索整个网络的社区结构划分。然而,随着网络规模的日益庞大,其结构也变得十分复杂,这使得全局社区发现的代价变得十分高昂;另一方面,与全局社区发现相比,研究者更感兴趣的问题是如何根据一组节点得到其对应的局部社区结构。因此,基于网络局部结构特征的社区查询问题逐渐引起学者的重视。现有的社区查询算法大多是根据社区的结构特性来定义社区度量指标,并以此进行节点聚类,从而得到目标社区。但由于在聚类过程中未考虑节点与查询节点集合之间的关联程度,大部分算法都容易引入无关的网络子结构,导致了网络的冗余问题。本文针对现有算法所存在的问题,提出了基于社区支撑度的社区查询算法CSIC,本文的主要研究工作归纳如下:(1)提出了查询接近度指标,同时也给出了基于随机游走和Skip-gram模型的节点查询接近度计算方法。节点的查询接近度量化了节点与查询节点集合之间的关联程度;(2)提出了节点查询接近度和节点重要性相结合的节点加权模型,综合考虑节点的查询接近度和节点重要性这两方面的属性,避免了传统算法存在的聚类因素单一的问题;(3)在节点加权模型的基础上,改进了社会网络分析中的经典密度定义,给出了带有查询偏向的密度定义——社区支撑度,并提出了基于社区支撑度的社区查询算法CSIC,CSIC算法有效的解决了网络的冗余问题,提升了社区查询的准确度;本文分别在真实数据集和合成网络上进行了实验,选取了四种具有代表性的社区查询算法进行对比。实验结果表明,改进的社区查询算法CSIC的准确性和查询一致性较已有算法有了较大提高。