基于层次粒化的社团发现方法研究

来源 :安徽大学 | 被引量 : 0次 | 上传用户:cole6
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
社会关系广泛存在于现实生活中,它们可以抽象成各式各样的社会网络。近些年来,研究者们发现社会网络中存在的社团结构是大规模网络分析和挖掘的基础,对于分析社会系统的组织原则与动力学特征以及预测系统中实体的行为具有重要的研究意义,在社会学、生物学和商业活动中具有广泛的应用前景。网络中社团结构的研究已成为一个具有重要社会价值及应用价值的课题。如何更快更好地发现社团结构或者是发现更真实的社团结构是网络社团研究中的关键问题。本文首先研究如何寻求降低社团发现算法的时间复杂度和提高社团发现的精确度间的平衡关系,然后给出精确地发现网络中实际的社团结构的新思路。作者对上述问题进行相应研究,将层次粒化方法引入社团划分方法中来,提出基于邻接粒化的社团发现算法(AGCDA)和基于相容粒化的社团发现算法(TGCDA)。本文的主要工作如下:1)首先对社团发现算法的研究现状进行详细地调研,并分析部分经典算法的优势和不足,同时将层次粒化方法引入本文中来更快更好地发现社团结构或者是发现更真实的社团结构。2)为了获取社会网络社团发现算法的复杂度和精确度间的均衡,将层次粒化的方法引入社团发现,本文提出基于邻接粒化的社团发现算法(AGCDA)。该算法初始时根据网络中节点间的邻接关系对网络进行初始粒化,然后不断地对网络进行层次粒化,直到不满足粒化条件为止,最后在该粒度下求解非重叠社团结构。该算法有效地解决时间复杂度和精确度难以平衡的问题。实验部分在基准网络和应用网络上进行测试,并与经典的社团发现算法进行比较。基准数据集上的实验结果表明了该算法可获得高于LPA算法7.6%的模块度和低于NFA算法96%的时间。因此,AGCDA算法的时间复杂度较低,获取的社团模块度较高,实现了社团发现时间和精确度的均衡,总体性能更优。3)为了更加准确地发现社会网络中真实的社团结构,本文提出基于相容粒化的社团发现算法(TGCDA)。该算法初始时根据网络中节点间的相容关系对网络进行初始粒化,然后不断地对网络进行层次粒化,直到网络中的所有节点包含在一个粒子中为止,最后在具有最大相容粒化标准的粒度下求解非重叠社团结构。该算法初始粒化网络时形成若干个极大相容粒子,其保证具有高连接密度的社团至少要包含一个极大相容粒子,因而可以更准确地发现接近于网络中真实存在的社团结构。实验部分在人工数据集和基准数据集上测试TGCDA算法的有效性,在基准数据集上,TGCDA算法可以获得高于NFA算法17.55%的NMI精确度,同样在人工数据集上也有所提高。因此对于具有真实社团结构的网络,TGCDA算法可以更加准确地发现网络中的社团结构。
其他文献
装箱问题简单地说就是按一定规则将若干物体互不重叠地放入有一定容量的容器中,并达到某种最佳目标的问题。装箱问题无处不在,被广泛地应用于计算机科学、工业领域和管理科学
随着信息技术的发展和普及,越来越多的业务应用系统在计算机网络中投入运行,给人们的数据处理和管理工作带来了便捷。但是由于信息技术发展的历史性原因和应用的差异性等因素,导
由于硬件设备和环境等因素的限制,很多情况下,我们采集到的图像分辨率并不理想。如果通过改进硬件设备或改善图像的采集环境来提高图像的分辨率,代价可能比较高甚至是不现实
无线传感器网络(wireless sensor network,简称WSN)是计算机科学一个重要的研究领域。由于无线传感器网络布散节点数量庞大、监测区域环境限制及节点自身构造等因素,布散后节点
LR可视性问题是计算几何领域的重要研究课题之一。通过对LR可视多边形特性的研究,能够得到求解计算几何经典问题的有效算法。因此,对于LR可视多边形的研究,不仅具有重大的理
安卓系统内嵌了SSL库来进行加密传输,开发者可以直接使用这些库在程序中与服务器建立HTTPS连接,但是在实现这些功能时,开发者错误的使用了这些库而破坏了HTTPS的安全性,使程
本文对LTE系统中ASN.1编解码的设计与实现进行了研究。第三代移动通信技术(3G)日益成熟,已在多个领域实现商用。而全球微波接入互操作(World interoperability for Microwave
手是人类最灵活的肢体之一,而手势是最丰富最具有表现能力的肢体语言。近年来增强现实、体感游戏等计算机应用飞速发展,基于鼠标键盘等传统人机交互系统存在用户使用区域固定
网络技术的飞速发展,使得以软交换为核心的下一代网络成为目前国内外网络界研究的热点,各个高等院校通信类专业纷纷开设软交换相关的课程,为了使学生充分领悟和理解软交换的概念
测试是软件开发生命周期中关键的阶段,是保证软件质量的必不可少的手段。软件测试主要依靠选定和执行一组测试用例(称为测试套件),并通过观察被测系统的执行输出结果来尽可能