基于矩阵分解的二分网络社区挖掘算法
复杂网络中的社区发现与挖掘算法研究
复杂网络中的社区发现与挖掘算法研究社区发现是在复杂网络中识别出密切相关的节点集合,这些节点之间存在着明显的紧密联系,而与其他节点相对疏远。
社区发现在许多领域具有广泛的应用,如社交网络分析、生物信息学、推荐系统等。
然而,由于复杂网络的规模庞大、结构复杂多样,社区发现成为一个具有挑战性的问题。
为了解决这一问题,学者们不断提出和改进各种社区发现与挖掘算法。
一种常见的社区发现算法是基于模块度(modularity)的方法。
这种方法通过计算网络中节点间的连接强度和预期连接强度的差值来评估社区结构的优劣程度。
其中,预期连接强度是通过随机图模型生成的网络来进行估计的。
通过最大化模块度函数,这种算法可以将网络划分为若干个社区。
然而,基于模块度的方法在处理大规模网络时,会面临计算时间复杂度高和结果稳定性差的问题。
为了克服这些问题,研究者们提出了一系列其他的社区发现算法。
例如,基于谱聚类的方法可以将网络转化为特征向量,然后通过聚类技术将节点划分为不同的社区。
这种方法能够有效克服基于模块度的方法的缺点,并且适用于大规模网络。
另外,还有基于聚类系数的方法、基于图表达的方法、基于双层重叠社区的方法等。
这些算法不仅提高了社区发现的效果,还拓宽了社区发现的研究领域。
除了社区发现算法,研究者们还提出了一些用于社区挖掘的工具和技术。
社区挖掘旨在从挖掘过程中发现新的模式和知识。
其中,一种常见的工具是关联规则挖掘。
关联规则挖掘通过挖掘出不同节点之间的关联关系,可以发现隐藏在复杂网络中的有意义的模式。
另外,社区挖掘还可以借助数据可视化技术,将复杂的网络结构以图形化的方式展示出来,增加了对社区结构的理解和挖掘。
随着社交媒体的普及和大数据技术的不断发展,社区发现与挖掘在社交网络分析中具有重要的应用。
通过社交网络分析,可以揭示出用户之间的相互关系、信息传播路径、社区结构等信息,为社交媒体平台的运营提供指导。
此外,社区发现与挖掘还可以应用于生物信息学领域,发现蛋白质相互作用网络中的功能模块,辅助研究者了解蛋白质的功能和相互关系。
网络数据挖掘中的社区发现方法比较分析
网络数据挖掘中的社区发现方法比较分析在当前信息爆炸的时代,互联网发展迅猛,网络数据也呈现爆炸式增长。
对这些海量的网络数据进行分析和利用,就需要使用到网络数据挖掘的技术。
社区发现是网络数据挖掘中的一个重要研究领域,旨在找到网络中具有紧密联系的节点集合,有助于揭示网络结构和了解网络中的群体行为。
本文将对当前常用的网络社区发现方法进行比较分析。
一、基于模块性的方法1.1 Clauset-Newman-Moore算法Clauset-Newman-Moore(CNM)算法是一种基于模块性的社区发现方法。
该算法通过最大化网络中的模块性指标来划分社区,从而得到合理的社区结构。
虽然该算法有较高的计算复杂度,但在小型网络上表现良好。
1.2 Girvan-Newman算法Girvan-Newman(GN)算法是一种基于边介数的社区发现方法。
该算法通过删除网络中的边,并计算删除边后网络的模块性变化来判断边的重要性。
根据边的重要性进行递归删除,最终得到社区结构。
该算法计算简单,但在大型网络上效果较差。
二、基于邻接矩阵的方法2.1 Newman-Girvan方法Newman-Girvan(NG)方法是一种基于邻接矩阵的社区发现方法。
该方法通过计算网络中节点对之间的最短路径长度和最短路径条数,来确定节点的社区归属。
该方法简单有效,但在网络规模较大时计算复杂度较高。
2.2 谱聚类算法谱聚类算法是一种基于图拉普拉斯矩阵的社区发现方法。
该算法通过对网络的拉普拉斯矩阵进行特征值分解,得到特征向量,并将特征向量作为节点的特征向量表示。
通过对特征向量进行聚类,得到网络的社区结构。
该算法计算复杂度较高,但在网络规模较大时效果较好。
三、基于模块性优化的方法3.1 Louvain算法Louvain算法是一种基于模块性优化的社区发现方法。
该算法通过不断地将节点从一个社区移到另一个社区,并计算模块性的变化来确定节点的社区归属。
该算法具有较高的计算效率和较好的精度,在大规模网络上应用广泛。
基于图正则化非负矩阵分解的二分网络社区发现算法
基于图正则化非负矩阵分解的二分网络社区发现算法佚名【摘要】There are many bipartite networks composed of two types of nodes in the real world, studying the community structure of them is helpful to understand the complex network from a new point of view. Non- negative matrix factorization can overcome the limitation of the two-mode structure of bipartite networks, but it is also subject to several problems such as slow convergence and large computation. In this paper, a novel algorithm using graph regularized-based non-negative matrix factorization is presented for community detection in bipartite networks. It respectively introduces the internal connecting information of two-kinds of nodes into the Non- negative Matrix Tri-Factorization (NMTF) model as the graph regularizations. Moreover, this paper divides NMTF into two sub problems of minimizing the approximation error, and presents an alternative iterative algorithm to update the factor matrices, thus the iterations of matrix factorization can be simplified and accelerated. Through the experiments on both computer-generated and real-world networks, the results and analysis show that the proposed method has superior performances than the typical community algorithms in terms of the accuracy and stability, and can effectively discover the meaningful community structures in bipartite networks.%现实世界存在大量二分网络,研究其社区结构有助于从新角度认识和理解异质复杂网络。
复杂网络中的节点分类与社区发现研究
复杂网络中的节点分类与社区发现研究一、引言网络结构的分析已经成为了最广泛研究的领域之一,特别是对于复杂网络的研究而言,“节点”和“社区”是研究的最基本问题之一。
本文将主要介绍复杂网络中节点分类和社区发现研究的相关概念、方法和应用。
二、复杂网络网络中包含大量的节点和边,我们将其中的节点表示为V={v1,v2,…,vn},边为E,当一条边连接了两个节点时,它们就存在一种关系,例如友情、物理接触、信息交流等等。
这些关系构成了网络的拓扑结构,而通常在现实生活中,网络的结构都是非常复杂的。
其中最显著的特点是具有高度的连通性、较高的聚类系数和多项式度分布性。
三、节点分类3.1 概念节点分类是通过解析网络中节点数量、类型、结构、属性等信息,将这些节点划分到不同的组中,从而为数据降维、特征提取、网络分析和可视化等应用提供了有力支持。
对于节点分类而言,最常用的方法就是贪心算法和模块性最优化算法。
(1) Node2Vec算法Node2Vec算法是一种基于深度学习的节点分类算法,其主要思想是利用节点的前后设置,学习节点嵌入的表征。
首先通过随机游走模型生成节点序列,然后通过负采样生成负样本,利用Skip-Gram模型训练生成词向量感知器,最终得到每个节点的表征向量。
(2)社区邻居划分算法社区邻居划分算法是一种基于社区最佳化搜索的节点分类方法,其主要思想是先划分所有节点成为不同的社区,然后通过计算每对社区块间的modularity值继续进行两两合并,直至达到最终的目标。
该方法具有精度高、可扩展、可适应性等特点,在多种应用中得到广泛的应用。
四、社区发现4.1 概念社区发现是一种根据网络的拓扑结构探测其内部隐含的社区组织结构的方法,它的基本思想是,将网络中的节点划分为几个有紧密联系的节点集合,以识别出每个集合中的“社区”;而不同的社区之间往往不会有过多联系。
社区发现方法主要分为聚类法、划分法和混合法三大类。
(1)基于谱的Clustering算法基于谱的Clustering算法是一种利用谱理论的社区发现算法,其核心思路是,通过网络的特征矩阵,求得其Laplacian特征向量,并对其进行聚类分析。
基于图正则化非负矩阵分解的二分网络社区发现算法
a l s o s u b j e c t t o s e v e r a l p r o b l e ms s u c h a s s l o w c o n v e r g e n c e a n d l a r g e c o mp u t a t i o n . I n t h i s p a p e r , a n o v e l a l g o r i t h m
出一种基于图正则化的三重非负矩阵分解( N MT F ) 算法应用于二分网络社区发现, 通过图正则化将用户子空间和目
标子 空间的内部连接关系作 为约束项 引入到三重非 负矩 阵分解模型 中:同时将 NMTF分解为两个 最小化近似误差
的子 问题 , 并给 出了乘性迭代算法 以交替更新 因子矩阵 , 从而简化矩阵分解迭代 , 加快 收敛速度 。实验和分析证 明:
Ab s t r a c t :Th e r e a r e ma n y b i p a r t i t e n e t wo r k s c o mp o s e d o f t wo t y p e s o f n o d e s i n t h e r e a l wo r l d ,s t u d y i n g t h e c o m mu n i t y s t r u c t u r e o f t h e m i s h e l pf u l t o u n d e r s t a n d t h e c o mp l e x n e t wo r k f r o m a n e w p o i n t o f v i e w.No n — n e g a t i v e ma t r i x f a c t o r i z a t i o n c a n o v e r c o me t h e l i mi t a t i o n o f t h e t wo — mo d e s t r u c t u r e o f b i p a r t i t e n e t wo r k s , b u t i t i s
复杂网络中的社区发现算法比较
复杂网络中的社区发现算法比较一、前言复杂网络是一种具有复杂拓扑结构的网络,节点和边的数量庞大,存在着多种复杂关系。
社区发现算法则是针对复杂网络中节点间具有相似特征的子集,对其进行划分的算法。
而在复杂网络中进行社区发现的任务则是寻找到节点之间相互依存的关系,并将它们划分成相对独立的社区,从而帮助我们更加深入地理解网络上节点之间的关系。
本文将对当前常用的几种复杂网络社区发现算法进行比较。
二、常见复杂网络社区发现算法1.谱聚类算法谱聚类是一种运用矩阵理论和谱分析思想进行聚类的算法。
在社区发现领域中,谱聚类算法主要可分为两个步骤:(1)构建邻接矩阵在谱聚类中,我们可以选择不同的邻接矩阵作为图的表示。
最常用的是无向相似矩阵和无向邻接矩阵。
无向相似矩阵表示的是节点之间的相似性,而无向邻接矩阵描述的是两个节点是否具有连线。
此外,还有一种常用的邻接矩阵是度矩阵,常用于无权重网络。
(2)特征向量分解通过对邻接矩阵进行特征向量分解,可以得到对应的特征值和特征向量。
这里,我们只需要选择最大的 k 个特征值所对应的特征向量(k 为聚类的数目),构建新的矩阵,并对该矩阵进行聚类即可。
谱聚类算法具有聚类效果好、鲁棒性强、可解释性好等优点,在实际应用中受到了广泛的研究。
2.模块度最优化算法模块度最优化算法是一种基于性能指标进行社区发现的算法。
然而,由于在多重社区中互相重叠的交叉节点的存在,这使得社区中存在着多条连边和节点连接的情况变得更为复杂。
模块度最优化算法通过计算各个社区中的模块度值,以确定最合适的社区划分。
模块度的计算基于两点之间的边权重与该点所在社区内节点度数之和之间的差值。
3.基于标签传播的社区发现算法基于标签传播的社区发现算法用于检测网络中的聚类结构,其应用范围包括社交网络、推荐系统等领域。
在这种算法中,每个节点都会初始化一个标签,然后将其“传播”到它的邻居节点。
同时,它还会与其它节点交换标签,并根据标签的相似性与其他的邻居节点进行交换。
复杂网络中的社区挖掘算法研究
复杂网络中的社区挖掘算法研究随着互联网技术的不断发展,互联网上出现了越来越多的复杂网络。
复杂网络中包含着大量的节点和链接,节点之间的链接形成了一个高度互联的网络。
如何从这些节点和链接中提取出有价值的信息,是复杂网络研究的一个重要研究方向。
社区挖掘算法是在复杂网络中寻找社区的一种有效方法。
一、复杂网络的定义复杂网络是一种由大量节点和链接构成的复杂系统。
每个节点代表一个实体,例如人、物品、概念等,每个链接代表节点之间的某种联系,例如人与人之间的社交关系、物品之间的相似性、概念之间的语义关系等。
复杂网络中的节点和链接量很大,形成高度互联的网络结构。
二、社区的定义在复杂网络中,社区是指一些有密切联系的节点子集,节点之间的联系比节点与其他节点之间的联系更紧密。
社区内部联系紧密,而社区之间联系较少。
社区挖掘算法的目的就是要在复杂网络中寻找这些社区。
三、常见的社区挖掘算法1. 贪心算法贪心算法是一种自下而上的算法。
它从每个节点开始,逐步将其它节点加入社区,直到社区不能再扩展为止。
贪心算法简单易实现,但是由于它是自下而上的算法,所以它不能保证找到最优解。
2. 基于模块度优化的算法模块度是衡量社区划分质量的重要指标。
基于模块度优化的算法通过计算每个社区的模块度值,来判断社区的优劣,并通过改变社区内外节点的链接关系,来优化社区的模块度值。
3. 基于谱聚类的算法谱聚类是一种通过将节点间的关系映射到低维空间中,来进行聚类的算法。
在复杂网络中,我们可以通过计算网络的拉普拉斯矩阵,将所有节点映射到低维空间中,并在低维空间中进行聚类。
四、社区挖掘算法的应用社区挖掘算法在社交网络、生物信息学、网络安全等领域都有着广泛的应用。
例如,在社交网络中,我们可以通过发现社区之间的联系,来推荐用户相互关注的好友。
在生物信息学中,我们可以通过发现基因之间的联系,来研究基因之间的功能关系。
在网络安全中,我们可以通过发现网络中的异常社区,来寻找网络安全问题的来源。
改进的基于模块度最大化二分图权重网络社团挖掘算法
2020年2月第29卷第1期中央民族大学学报(自然科学版)Journal of MUC( Natural Sciences Edition)Feb., 2020Vol. 29 No. 1改进的基于模块度最大化二分图权重网络社团挖掘算法李文娟(甘肃中医药大学定西校区理科部,甘肃定西743000)摘要:复杂网络广泛应用于生态学、生物信息学等多个领域,其中加权二分图网络作为一种特殊结构的复杂网络可以用来对许多实际问题进行建模。
网络的社团挖掘一直以来都是分析复杂网络的重要手段,也是复杂网络领域研究的热点问题。
本文提出了一种改进的模块度最大化二分图权重网络社团挖掘算法,通过在实际网络中的测试,相较于其他的同类型算法,本算法可以得到更好的社团划分结果,其执行效率也明显高于现有的其他算法,可以用于大规模二分图网络的社团挖掘。
关键词:复杂网络;社团挖掘;模块度;标签传播中图分类号:TP391 文献标识码:A文章编号:1005-8036(2020) 01-0049-05二分图网络用来描述两类节点之间的相互作用,在整个网络中,连边仅存在于两类节点之间,而同 类节点间并无连边存在[1]。
例如,在社会网络中人物与特定事件之间的关系[2];在生态系统中植物与 传粉物种之间的关系[3];在基因网络中miRNA对基因的调控作用等。
网络的社团挖掘广泛应用于各个 领域,通过社团挖掘可以有效地解释网络的构成、功能以及网络中节点的行为。
因此,社团挖掘算法的研究一直以来都是复杂网络领域的热点问题。
社团挖掘是为了找到网络中的模块,使得模块内部节点之间的相互作用远远强于它们与模块外部节点的相互作用[41。
为了对模块挖掘的结果进行量化评估,N e w m a n提出了模块度(Modularity )的概 念[5_6],模块度通过原网络与相应零模型网络在同一模块内部的节点之间边数之差来衡量此模块划分的好坏。
因此,我们可以通过最大化模块度得到更好的模块划分方式。
二部图社区划分算法的实现与验证
二部图社区划分算法的实现与验证二部图社区划分算法的实现与验证2015年6月摘要二分网络是复杂网络的网络表现形式之一,二部图是描述二分网络的工具。
对于二分网络的社区划分研究通常用以下方法:一种方法是把二分网络以无权投影或加权投影的方式投影到单分网络中进行社区划分。
但是这种方法有个缺点:它会把原始二分网络上的一部分信息丢失,导致实验结果不准。
另一种方法是直接在二分网络上进行网络社区划分,这种方法很好的避免了上一种方法中投影造成的实验误差。
PageRank算法是Google的网页排序算法,是Google用来衡量网页的重要性的算法,该算法根据人们对这个网页的点击率来衡量网页的受欢迎程度从而得出该网页的排序,该算法是随机游走理论的一个典型应用模型。
对二分网络单侧节点进行社区划分的研究是具有重要的实际意义的。
基于能量在网络中的转移概率和模块度思想,本文将PageRank 算法用于二分社交网络的社区发现中,具体内容是利用二分社交网络节点间的连接关系,构造PageRank算法适用的概率转移矩阵,并利用不同维度的两个PageRank矩阵的联合运算,实现对二部图中单侧节点的社区划分,并计算出Q值。
该算法通过模拟能量在网络中转移的过程,利用各个节点的能量在网络中转移后收到的其他节点的能量作为社区之间合并的依据,并用模块度作为判断社区划分好坏程度的标准。
最后将PR算法用于典型网络(南非妇女网络)上测试。
关键词:二分网络;PR算法;模块度;随机游走理论;社区划分AbstractBipartite network is one form of the network performance in complex networ- ks,bipartite figure is a tool of describing bipartite network.For the research of bipartite net- workcommunity division,there are usually two ways.One way is to divide the bipartite network into the one-mode network in the form of a unweighted projection or weighted projection for community division.However,this method come with a disadvantage:it will lose some information of the orginal bipartite network,which leads to the experimental results inaccurate.Another way is to divide the network community directly on the bipartite net- work.This method can avoid the error caused by the first method.PageRank algorithm is a page ranking algorithm which Google used to measure the importance of web page algorithm.It can measure webpage popularity according to the web hits and get the page ranking.This algorithm is a typical application model of random walk theory.The research on the community division of the unilateral nodes in bipartite network has very important practical significance.Based on energy transfer probability in the network and modularity thought,this article use PageRank algorithm for bipartite social network community discovery,specific content is using the bipartite social connection relationship between network nodes to construct the probability transfer matrix for PageRank algorithm.By using different dimensions of two PageRank matrix for compu- tation to realize the unilateral nodes in the bipartite figure community division and cal- culate Q value.This algorithm simulate the energy transfer process in the network,take the energy of each node in the network transfer energy received after other nodes as the basis of merger,use modularity as the judgement of community division.At last,the PageRank algorithm is used for testing in the typical network(south Africa women’s network).Keywords: bipartite network; PR algorithm; modularity; random walk theory; community division目录1 引言 (1)1.1 研究背景与意义 (1)1.2 国内外研究现状 (1)1.3 本文的主要工作和内容安排 (2)1.3.1 主要研究内容 (2)1.3.2 论文组织结构 (3)2 相关理论概述 (5)2.1 PR算法 (5)2.1.1 PR算法基本概念 (5)2.1.2 PR算法解析 (5)2.2 随机游走.马尔可夫链 (7)2.3 转移概率矩阵 (8)2.4 六度分离理论 (8)3 总体设计思路 (9)3.1 随机游走模型 (9)3.2 合并、划分原则 (11)3.2.1 合并原则 (11)3.2.2 划分原则 (11)3.3 具体示例 (12)4 详细设计 (16)4.1 数据输入模块 (17)4.2 能量转移模块 (17)4.3 社区合并模块 (18)4.4 社区划分模块 (20)4.5 实验工具 (22)4.5.1 Matlab (22)4.5.2 Pajek (22)5 实验结果分析 (23)6 总结与展望 (28)6.1 总结 (28)6.2 展望 (28)参考文献 (30)致谢 (32)1 引言1.1研究背景与意义随着Internet技术的快速发展,人类迈进了一个网络时代,从此人们的生活中将充满着各种复杂的网络。
基于连边密度传播的二分网络社区发现算法
基于连边密度传播的二分网络社区发现算法一、引言社区发现是复杂网络研究中的一个重要问题。
它的目标是通过在网络中找到高度连接的子图,揭示出网络中的隐含结构和功能模块,并为进一步研究提供基础。
本文将介绍一种基于连边密度传播的二分网络社区发现算法。
二、算法原理1.定义连边密度连边密度是指社区内部节点之间边的数量与社区内部节点对数之比。
对于一个网络G=(V,E),其中V是节点集合,E是边集合。
社区C是网络G的一个子集,C⊆V。
连边密度D(C)定义为:D(C)=,E(C,C),/(,C,*(,C,-1)/2)其中E(C,C)是社区内部节点间的边的集合,E(C,C),是集合E(C,C)的边的数量,C,是社区C的节点数量。
2.算法步骤(1)初始化:将网络G划分为两个初始社区,即C1和C2(2)连边密度计算:分别计算C1和C2的连边密度D(C1)和D(C2)。
(3)传播:计算每个节点在C1和C2中的连边密度增益,选择其中较大的连边密度增益,将节点移动到对应的社区中。
(4)重复步骤(2)和(3),直到没有节点发生移动为止。
3.算法说明基于连边密度传播的二分网络社区发现算法通过不断迭代改善初始的社区划分,最终得到稳定的社区结构。
在每一轮迭代中,算法计算每个节点的连边密度增益,选择增益较大的社区,并将节点移动到该社区。
节点的连边密度增益是指节点移动后,其所在社区的连边密度与原社区的连边密度之差。
通过选择连边密度增益较大的社区,算法可以更好地优化社区划分结果。
三、实验结果四、总结基于连边密度传播的二分网络社区发现算法是一种能够发现网络中隐含结构和功能模块的有效算法。
该算法通过不断迭代改善社区划分,最终得到稳定的社区结构。
实验结果表明,该算法在准确性和效率上都表现出良好的性能,具有很大的应用潜力。
总而言之,基于连边密度传播的二分网络社区发现算法是一种值得研究和应用的算法,不仅能够揭示网络中的隐含结构和功能模块,也能够为进一步研究提供基础。
矩阵 二分查找算法
矩阵二分查找算法
矩阵二分查找算法是一种在有序矩阵中快速查找某一元素的搜索算法。
该算法采用了分治法的思想,通过反复将矩阵一分为二,不断缩小查找范围,直到找到目标元素或确定目标元素不存在。
以下是矩阵二分查找算法的基本步骤:
1. 初始化:将矩阵的左上角元素作为当前查找的起点,并将目标元素与该起点元素进行比较。
2. 递归搜索:如果目标元素小于当前元素,则忽略当前元素所在的行以下的部分;如果目标元素大于当前元素,则忽略当前元素所在的列以后的部分。
然后继续在剩余的部分进行二分查找。
3. 找到目标:如果在递归搜索过程中找到了目标元素,则返回该元素的位置。
4. 未找到目标:如果递归搜索结束后仍未找到目标元素,则返回-1,表示目标元素不存在。
矩阵二分查找算法的时间复杂度为$O(log min(m,n))$,其中$m$和$n$分别为矩阵的行数和列数。
这是因为每次递归都将搜索范围缩小一半,直到找到目标元素或确定不存在。
需要注意的是,矩阵二分查找算法要求矩阵中的元素必须是有序的。
在实际应用中,可以先对矩阵进行排序,然后再使用二分查找算法进行查找。
希望这个回答对你有帮助。
如果你有任何其他问题,请随时提问。
LBSN中基于聚类的二分图网络推荐算法
LBSN中基于聚类的二分图网络推荐算法随着位置服务的发展,LBSN(Location-based Social Networks)已逐渐成为重要的社交媒体形式,吸引了越来越多的用户。
在LBSN中,用户可以分享位置信息、评论、照片等,从而与其他用户交流和分享。
然而,由于用户的兴趣和活动习惯存在很大的差异,如何精准地为每个用户推荐个性化的地点成为了一个重要的问题。
因为传统的社交网络推荐算法往往没有充分考虑到地理位置和用户之间的关系。
为了解决这个问题,研究人员们提出了许多基于LBSN的推荐算法。
其中,基于聚类的二分图网络推荐算法是一种常见的方法,它可以用于预测用户对未知地点的兴趣度。
本文将对这种算法进行详细的介绍和分析。
一、算法思想该算法基于用户-位置二分图,将用户和位置看作顶点,将用户与位置间的交互看作边,构成二分图。
在二分图中,每个位置的质量被表示为其被访问的次数。
算法的目标是通过挖掘用户-位置交互信息,预测用户对未知位置的兴趣度,并且根据用户交互来聚类用户,根据位置交互来聚类位置。
具体的,为了预测用户u对位置p的兴趣度,算法采用基于交叉验证的局部加权线性回归(Local Weighted Linear Regression,LWLR)模型,将用户u的历史兴趣度与其他用户对位置p的兴趣度加权累加起来作为预测值。
此外,算法还通过谱聚类算法(Spectral Clustering)实现对用户和位置的聚类。
算法先基于用户-位置二分图将其表示为邻接矩阵,然后对邻接矩阵进行归一化处理,得到对称的Laplace矩阵,再利用谱聚类算法将其聚类。
二、算法流程1. 构造二分图根据用户与位置的交互数据,构造用户-位置二分图。
2. 分别聚类用户和位置基于谱聚类算法,将用户和位置分别聚类。
3. 预测用户对未知位置的兴趣度4. 评估推荐效果采用RMSE(均方根误差)和MAE(平均绝对误差)两种指标来评估推荐效果。
三、实验结果研究人员对该算法进行了实验,并将其与其他经典算法进行了对比。
改进的基于两个矩阵的关联规则挖掘算法
改进的基于两个矩阵的关联规则挖掘算法改进的基于两个矩阵的关联规则挖掘算法近年来,关联规则挖掘被广泛应用于数据挖掘和商业智能领域。
然而,传统的关联规则挖掘算法在处理大规模数据时存在一些问题,例如时间复杂度高、内存消耗大等。
为了解决这些问题,研究人员提出了许多改进的算法。
本文介绍一种基于两个矩阵的关联规则挖掘算法。
1.算法概述传统的关联规则挖掘算法主要分为两个步骤:计算支持度和置信度、生成规则。
这两个步骤需要对整个数据集进行遍历,时间复杂度较高。
为了降低时间复杂度,我们提出了一种基于两个矩阵的算法。
该算法仍然包括两个步骤,但在每个步骤中,我们只需要遍历两个矩阵中的非零元素,而不是整个数据集。
这可以大大减少计算时间和内存使用。
2.算法流程(1)初始化算法开始时,我们需要初始化两个矩阵:支持度矩阵和置信度矩阵。
使用一个 m × n 的支持度矩阵 S 和一个 m × n 的置信度矩阵 C,其中 m是数据集中的项数,n 是事务数。
对于支持度矩阵,S[i][j] 表示项 i 在事务 j 中出现的次数。
对于置信度矩阵,C[i][j] 表示项 i 和项 j 同时出现在事务中的次数。
(2)计算支持度对于每个项 i,我们需要计算其在数据集中出现的频率。
首先,在支持度矩阵 S 中找到项 i 对应的所有非零元素,计算它们的和。
然后,将这个和除以 n 得到项 i 在数据集中的频率。
(3)计算置信度对于每一对项 i 和项 j,我们需要计算它们同时出现的频率。
在置信度矩阵 C 中,找到项 i 和项 j 对应的所有非零元素,计算它们的和。
然后,将这个和除以项 i 在数据集中的出现次数得到关联规则的置信度。
(4)生成规则对于每个项 i,我们可以使用置信度矩阵 C 寻找符合支持度和置信度阈值的规则。
例如,设最小支持度为 s,最小置信度为 c。
对于项 i,在 C 中找到所有与其相关的项 j,如果 j 的支持度大于等于 s,且关联规则的置信度大于等于 c,则将规则添加到结果中。
LBSN中基于聚类的二分图网络推荐算法
LBSN中基于聚类的二分图网络推荐算法随着移动互联网的兴起和智能手机的普及,基于位置的社交网络(LBSN)正逐渐成为人们日常生活的一部分。
LBSN不仅提供了人们分享位置信息、交流社交活动的平台,也为商家和服务提供商提供了一个新的推广和营销渠道。
LBSN中的用户和地点之间存在着复杂的关系,因此如何利用这些关系进行精准的推荐成为了一个重要的研究方向。
本文将重点介绍LBSN中基于聚类的二分图网络推荐算法。
1. LBSN中的二分图网络在LBSN中,用户和地点之间的互动关系构成了一个二分图网络。
用户在不同的地点签到、评论、打分等行为会产生用户-地点的二分图网络。
这种二分图网络的特点是,一个用户可以对多个地点进行互动,而一个地点也可以被多个用户所关注。
在二分图网络中,通常会采用矩阵的形式来表示用户-地点的关系。
矩阵的行代表用户,列代表地点,矩阵中的元素表示用户和地点之间的关系强度。
通过分析这个二分图网络,可以发现用户和地点之间的潜在关联和相似度,从而实现推荐的目标。
2. 基于聚类的推荐算法在LBSN中,用户和地点之间的关系非常复杂,因此如何进行有效的推荐成为了一个挑战。
基于聚类的推荐算法通过将用户和地点进行聚类,发现用户和地点之间的隐含关系,从而进行精准的推荐。
以下是基于聚类的二分图网络推荐算法的主要步骤:(1)用户和地点的聚类对用户和地点进行聚类,一般采用基于内容或协同过滤的方法。
基于内容的聚类方法可以通过分析用户和地点的属性信息进行聚类,例如用户的兴趣爱好、地点的类型和特征等。
而协同过滤的聚类方法则可以通过分析用户-地点的互动行为进行聚类,发现用户和地点之间的潜在关联。
(2)构建二分图网络将用户和地点的聚类结果构建成二分图网络,其中每个用户和地点对应着一个节点,用户节点和地点节点之间存在着边。
通过构建二分图网络,可以将用户和地点之间的关系表示为图的邻接矩阵,从而为推荐算法提供了基础数据。
基于构建的二分图网络,可以采用多种方式进行推荐。
基于聚类分析的二分网络社区挖掘
基于聚类分析的二分网络社区挖掘
张嫱嫱;黄廷磊;张银明
【期刊名称】《计算机应用》
【年(卷),期】2015(035)012
【摘要】针对二分网络中社区挖掘的准确性不高、对额外参数的依赖较大的问题,基于谱聚类算法的思想,从二分网络的拓扑结构展开,提出了一种改进的社区挖掘算法.该算法将二分网络映射到单一网络进行社区挖掘,采用资源分布矩阵替代传统的邻接矩阵,挖掘出同类节点间的隐含信息,有效地保证了原图的信息,改进了谱聚类算法的输入,提高了社区挖掘的准确性;将模块度函数概念应用到聚类分析中,用模块度衡量社区挖掘的质量,有效解决了自动确定聚类数目的问题.在实际网络和人造网络上进行实验,与蚁群优化算法、边集聚系数算法等算法进行对比,实验结果表明,所提算法不但能较准确地获得二分网络的社区数目,且在不需要任何额外参数的情况下,能获得很好的划分效果,可以应用于深入理解二分网络,进行推荐、影响力分析等.【总页数】4页(P3511-3514)
【作者】张嫱嫱;黄廷磊;张银明
【作者单位】桂林电子科技大学计算机科学与工程学院,广西桂林541004;中国科学院电子学研究所,北京100190;桂林电子科技大学计算机科学与工程学院,广西桂林541004
【正文语种】中文
【中图分类】TP393
【相关文献】
1.基于模块度增量的二分网络社区挖掘算法 [J], 戴彩艳;陈崚;胡孔法
2.基于广义后缀树的二分网络社区挖掘算法 [J], 邹凌君;陈崚;戴彩艳
3.基于蚁群优化的二分网络社区挖掘 [J], 徐永成;陈崚
4.基于矩阵分解的二分网络社区挖掘算法 [J], 陈伯伦;陈崚;邹盛荣;徐秀莲
5.基于谱聚类的二分网络社区发现算法 [J], 张晓琴;安晓丹;曹付元
因版权原因,仅展示原文概要,查看原文内容请购买。
基于相似度聚类的二分网络社区发现算法
基于相似度聚类的二分网络社区发现算法张晓琴;刘莉楠【摘要】针对往往不能提前预知社区个数的情况,提出了基于相似度聚类的二分网络社区发现算法(similarity' clustering algorithm,简称SCA).算法通过计算U类节点之间的相似度获得核心节点,同时选取核心节点邻域中的节点扩展得到社区,将未划分到社区中的孤立点和只包含一个节点的社区分别放入与之联系最紧密的社区中,最后V类节点划分到已有的社区中得到完整的社区划分结果.通过在人工数据集与真实网络上的分析,分别利用归一化互信息和模块度作为评价指标,实验结果表明,SCA比BRIM等算法能够更有效挖掘二分网络社区结构,具有比较良好的社区划分效果.【期刊名称】《云南民族大学学报(自然科学版)》【年(卷),期】2018(027)004【总页数】8页(P307-314)【关键词】二分网络;社区发现;相似度;归一化互信息;模块度【作者】张晓琴;刘莉楠【作者单位】山西大学数学科学学院,山西太原030006;山西大学数学科学学院,山西太原030006【正文语种】中文【中图分类】TP393随着Internet和移动通信技术应用的迅速发展,复杂系统已经在多个领域中被应用. 事实上,真实世界中存在的大量复杂系统都可以利用网络来刻画. 网络[1]是由许多节点与连接2个节点之间的一些边组成,其中节点用来代表真实系统中不同的个体,而边则用来表示个体间的关系,如果2个节点之间具有某种特定的关系则连边,反之则不连边.目前社区发现[2]是研究复杂网络的热门之一. 社区发现是将网络划分为若干子网络,在这些子网络内部节点联系紧密,子网络之间联系相对稀疏. 社区发现能够帮助人们深入理解网络的拓扑结构,发现隐含的信息等.单模网络[3]和二分网络分别作为复杂网络的一种普遍而且重要的表现形式. 在现实社会中许多网络都呈现出二分结构,例如:科学家-论文合作网络[4-5],俱乐部会员-活动网络[6],电影-演员合作网络[7],疾病-基因网络[8],P2P中终端计算-交互数据网络[9]等等.近年来对二分网络社区发现的研究,一方面是将二分网络投影成单模网络,用单模网络已有的结论来研究二分网络,这样做的确是十分方便,但会造成大量的数据缺失,无法展现出二分网络一些内在性质,会使得最后划分的社区效果不好. 另一方面是直接对二分网络进行研究,Guimera等[10]设计了二分模块度,提出了每次只针对一种类型顶点划分算法. Barber[11]拓展了Newman[12]的单模网络模块度,重新定义了二分模块度,并提出最大化二分模块度的BRIM算法. Raghavan等[13]提出了标号传播的方法(LPA)来进行社区发现. Wu等[14]在Zhou[15]提出资源分配的基础上,提出了一种基于资源分布矩阵的二分网络社区发现方法,该方法经二分网络的邻接矩阵提出了资源分布矩阵,用模糊聚类的方法进行聚类,最后利用F统计量来得到最优的社区发现结果. Zhang等[16]给出了边集聚系数的二分网络社区发现算法,计算网络中的每一条边的集聚系数,从小到大排列依次去掉,直到计算出的模块度小于上一次计算的模块度时停止.随着对二分网络社区发现算法不断深入的研究,现有的算法仍然有很多不足之处需要改进. 例如:需要提前预知社区个数和参数取值如何确定等问题,为此提出了相似度聚类的二分网络社区发现算法.1 相关知识1.1 二分网络的基本概念1.1.1 二分网络二分网络包含两种不同类型的节点,同类型节点之间没有连边,不同类型的节点之间才有连边. 图1给出了一个比较简单的二分网络示意图.1.1.2 二分网络符号表示二分网络[17]可以用图论中二部图G(U,V,E)来表示,其中U和V分别表示2种不同类型的节点集合,E为G边的集合. 在节点集合U(或V)内部不存在连边,对E中所有的边(ui,vj)有ui∈U,vj∈V.假设U类节点有m个,V类节点有n个,则二分网络的邻接矩阵可表示为:(1)其中0m×m与0n×n分别是m阶和n阶的零矩阵,Am×n=(aij)m×n,且若U类节点ui与V类节点vj有连边则aij=1,否则aij=0. 由于二分网络邻接矩阵A0是对称矩阵,因此通常用Am×n来表示二分网络,称为关系矩阵,Am×n的每行代表U类一个节点连边情况,每列代表V类一个节点连边情况.1.2 二分网络社区划分评价指标1.2.1 归一化互信息设X和Y分别是二分网络两种不同的社区结构,归一化互信息[18](normalized mutual information,NMI)计算公式为:(2)其中x是X的社区个数,y是Y的社区个数,N是二分网络中所有节点的总数,xi是指X的第i个社区,yj是指Y的第j个社区,Nxi是xi中的节点个数,Nyj是yj中的节点个数,Nxiyj是xi和yj中公共节点的个数. NMI的值越大就表示算法得到的网络社区结构与标准状况下越匹配,社区发现的结果越好.1.2.2 模块度Barber在单模网络的基础上给出了二分网络的模块度,其计算公式如下:(3)其中m表示U类节点个数; n表示V类节点个数; M表示网络的总边数.表示节点ui和节点vj间随机连边概率的期望值,kui表示节点ui的度,kvj表示节点的度,2 相似度聚类算法2.1 相关定义定义1 如果二分网络G(U,V,E)中U类节点ui满足条件:N(ui)={vj|vj∈V,(ui,vj)∈E},(4)那么将vj称为ui的邻居节点[19],N(ui)称为ui的邻居节点集合.定义2 给定任意的二分网络G(U,V,E),U类节点ui和节点uj的相似度定义为:(5)其中kui与kuj分别是节点ui与节点uj的度.节点的度是指与该节点连接的边的数将相似度进行标准化定义为:(6)相似度标准化是为了使得取值范围在[0,1]之间. 相似度越大,说明ui和uj联系越紧密,越有可能被划分到同一个社区.定义3 如果G(Us,Vs,Es),Us⊂U,Vs⊂V,对于任意的节点ui⊂Us,vj⊂Vs都满足(ui,vj)∈Es⊂E,则称G(Us,Vs,Es)是G(U,V,E)的一个子网络.定义4 将二分网络划分成若干子网络,若子网络内部节点连边紧密,子网络间连边稀疏,那么就称子网络为社区.定义5 给定任意的二分网络G(U,V,E),V类节点vj划分到子网络Gs中的交互度[20](interaction degree,IND)定义:(7)其中s是Gs中包含两类节点对应的标号,As是Gs关系矩阵,s′=s∪j,|Us|是集合Us 内节点个数,表示Gs中所包含的V类节点个数.定义6 α-邻域:给定二分网络G(U,V,E),对于ui∈U,其α-邻域为U类节点中与节点ui通过公式(5),(6)计算之后的相似度不小于参数α的节点,即Nα(ui)={uj∈N(ui)|S(ui,uj)≥α}.定义7 若节点ui的α-邻域中至少包含t个节点,即|Nα(ui)|≥t,那么称节点ui为核心节点.2.2 算法设计相似度聚类算法(similarity clustering algorithm,简称SCA)是将α-邻域近邻指派算法进行了改进推广到二分网络进行社区发现的一种算法. 具体思想是:根据给定的参数α和t找出U类节点中所有的核心节点,同时选取核心节点邻域中的节点扩展得到社区,将未划分到社区中的孤立点和只包含一个节点的社区分别放入与之联系最紧密的社区中,最后V类节点利用交互度分配到已有的U类节点相似度聚类后的社区中,这样就得到了完整的社区发现结果.SCA算法如下:步骤1 确定核心节点集O输入G(U,V,E),α,t输出核心节点集OStep 1 ∀ui,uj∈U,根据公式(4),(5),(6),计算S(ui,uj);Step 2 求出每一个节点所有的α-邻域Nα(ui),若Nα(ui)中所含节点的个数不小于t,那么ui就是所要选取的核心节点;Step 3 重复Step 2, 直到遍历完所有的U类节点,从而得到核心节点集O.步骤2 相似度聚类划分U类节点得到社区输入G(U,V,E),核心节点集O输出U类节点划分后的社区C1,C2,…Ck初始化社区个数:k=0;初始化未访问的节点集合:Ω=Uwhile O非空 do从O中随机选取一个核心节点记为o,o在Ω中的α-邻域所含节点集合记为Q Ω=Ω\{o}For Q中的每一个节点qIf |Nα(q)|≥tΛ=q∪oEnd ifEnd forIf |Λ|≥2k=k+1,生成聚类后的社区Ck=Λ;Ω=Ω\Ck,O=O\Ck;ElseΛ中的节点放入集合A中; Ω=Ω\Λ,O=O\Λ;End ifEnd whileIf Ω∪A非空集For each bi∈Ω∪A计算N(bi)分别与社区{C1,…,Ck}中所含节点的连边数If 存在连边数>0bi加入到连边数最多的社区中,并且更新当前的社区;Elsek=k+1,bi为孤立点,单独放入一个社区记为CkEnd ifEnd forEnd if步骤3 V类节点划分到已有的U类节点的社区中输入G(U,V,E),C1,C2,…Ck输出最终聚类社区G1,G2,…,Gk对于∀vj∈V,令将vj加入到Cq,更新为Gq; If q≥2先不加入任何一个Cq,将其余节点加入后,通过公式(7)计算交互度,选择将节点vj加入社区Gp.2.3 算法的时间复杂度U类节点两两之间求相似度,那么所需计算的时间复杂度为确定核心节点集的时间复杂度为划分U类节点得到社区计算时间复杂度是O(m),社区数目为k,最后将V 节点划分到已有的U类节点的社区中时间复杂度是O(2nk),所以SCA算法的时间复杂度为3 实验分析为了测试算法的有效性和可行性,将算法运用到8个人工数据和1个真实数据上进行社区发现的实验,并且对SCA算法的参数α和t进行实验分析.3.1 人工二分网络人工二分网络见图2,由计算机模拟生成128个节点构成,将这128个节点平均分成不同的两类,每种类型节点各有64个节点,把二分网络平均分成4个社区,每个社区所包含的节点数目是32个,其中每一种类型的节点数目是16个. 该网络中每一个节点的度k都是16,k=kin+kout,其中kin是该节点在所属的社区的连边数目,kout 是该节点在不所属的社区连边数目.实验选取BRIM算法,基于资源分布矩阵算法和基于边集聚系数算法与SCA算法进行对比. 因为人工二分网络社区划分的结构已知,所以分别计算这4种算法在kout=0,1,…,7下的社区划分结果与实际社区结果的NMI值,结果见图3. 从图3中可以清晰地看到,SCA算法明显比其他3种算法划分社区正确率要高. 当kout≤2时,社区结构比较明显,SCA算法准确性一直是1. 除了边集聚系数算法之外,另外的2种算法划分正确率也都比较高. 伴随着kout值的不断增大,当kout≥3时,4种算法划分社区的正确率不断降低,这是因为社区内部节点连边数不断减少,而社区之间连边数不断增大,使得社区结构越来越模糊,但SCA算法还是比其他算法具有更高的划分正确率,说明SCA算法划分结构更加接近于真实网络.3.2 真实网络为了验证SCA算法的准确性,对Southern Women Data数据集进行实验. 选择模块度Q作为评价指标来评价划分社区的好坏.Southern Women Data是在对二分网络研究中比较经典的真实网络. 见图4,数据集是由18位妇女和14种活动构成的二分网络,其中圆形表示妇女,正方形表示活动,假设其中的某个妇女参加14类活动中的某一个活动,那么就连边,否则不连边. 见图5,SCA算法把该网络划分为2个社区:{妇女1~9;活动1~8}和{妇女10~18;活动9~14}. 划分后计算出的模块度Q=0.333 2.将本文算法与上述6种算法分别在Southern Women Data数据集上进行社区划分,并计算出对应的最大模块度值,图6展示了不同算法之间通过计算模块度值进行对比,从图中可以清晰地看到,本文算法的模块度值明显高于其余6种算法,BRIM算法必须提前设定社区个数,而本文算法在不需要提前预知所要划分的社区个数时还获得较高的模块度值. 本文算法比LPA算法,基于资源分布算法,基于边集聚系数算法和Davis2提出的算法划分效果要好. 本文算法与Davis1提出的算法关于妇女的划分结果相同,而本文算法所获得的模块度值比Davis1的高,说明本文算法划分效果越好.综上所述,本文算法在不需要提前预知社区个数的前提下,得到了较高的模块度值,具有比较好的划分效果.3.3 参数取值SCA算法中包含两个参数:α和t. 为了了解各参数对SCA产生的影响,在Southern Women Data数据集上通过控制参数,来获得SCA算法随参数变化的模块度值.参数α控制SCA算法挖掘核心节点的数量,若α过大,获得的核心节点数量少,导致一些节点无法划分到社区中; 若α过小,则相反,所以在图7的(a),(b),(c),(d),(e)中分别给出了在控制t不变的情况下,当参数α在取值区间为[0.2,0.7]时所对应的模块度值.(f)图是将(a),(b),(c),(d),(e)合并到一张图中,从(f)图中可以清楚地看到,不管参数t取何值,当参数α取值范围在[0.4,0.5]之间时,模块度的取值最大,说明当α∈[0.4,0.5]时,社区的划分质量最好.之后又在控制α不变的情况下研究了参数t的取值区间在[2,6]时所对应的模块度值,见图8.(a),(b),(c),(d),(e),(f)图中分别给出了在控制参数α不变的情况下,当参数t=2,3,4,5,6时所对应的模块度值,除了图(a)和图(b),其余的图(c),(d),(e),(f)都是随着参数t取值的不断增大,对应的模块度值呈现出了先增大后又减小的趋势. 图(g)是将图(a),(b),(c),(d),(e),(f)合并到一张图中,从图(g)中可以看到,不管参数α取何值,当参数t=4或者5时所对应的模块度值最大,说明当t=4或者5时,社区的划分质量最优.4 结语二分网络进行社区发现是目前研究的热点.基于相似度聚类的二分网络社区发现算法(SCA),首先获得对U类节点进行聚类后的社区,然后通过计算交互度把V类节点划分到已有的社区中从而得到完整的社区划分结构. 实验结果表明,该算法不需要提前预知所划分的社区数目,可以获得比较好的划分效果,发现更为真实的社区结构,从而可以在复杂网络中实现“物以类聚,人以群分”.参考文献:【相关文献】[1] NEWMAN M E J. The structure and function of complex networks[J]. SIAM Review,2003 ,45(2):167-256.[2] NEWMAN M E J. Detecting community structure in networks[J]. The European Physical Journal B,2004,38(2):321-330.[3] YAN B,GREGORY S. Finding missing edges in networks based on their community struc -ture[J]. Physical Review E,2012,85(5):056112.[4] NEWMAN M E J. Scientific collaboration networks. I. Network construction and fundam ental results[J]. Physical Review E,2001,64(1):016131.[5] NEWMAN M E J. Scientific collaboration networks. II. Shortest paths,weighted network s,and centrality[J]. Physical Review E,2001,64(1):016132.[6] ERGÜN G. Human sexual contact network as a bipartite graph[J]. Physica A:Statistical Me-chanics and its Applications,2002,308(1-4):483-488.[7] LIU A F,FU C H,ZHANG Z,et al. An empirical statistical investigation on Chinese mainland movie network[J]. Complex Systems and Complexity Science,2007,4(3):10-16.[8] CHEN W Q,LU J A,LIANG J. Research in disease-gene network based on bipartite network projection[J]. Complex Systems and Complexity Science,2009,6(1):13-19.[9] LE BLOND S,GUILLAUME J L,LATAPY M. Clustering in p2p exchanges and conse-quences on performances[C]// International Workshop on Peer-to-Peer Systems. Springer,Berlin,Heidelberg,2005:193-204.[10] GUIMERA R,SALES-PARDO M,AMARAL L A N. Module identification in bipartite and di-rected networks[J]. Physical Review E,2007,76(3):036102.[11] BARBER M J. Modularity and community detection in bipartite networks[J]. Physical R eview E,2007,76(6):066102.[12] NEWMAN M E J. Modularity and community structure in networks[J]. Proceedings of the national academy of sciences,2006,103(23):8577-8582.[13] RAGHAVAN U N,ALBERT R,KUMARA S. Near linear time algorithm to detect commu-nity structures in large-scale networks[J]. Physical Review E,2007,76(3):036106.[14] 吴亚晶,狄增如,樊瑛. 基于资源分布矩阵的二分网聚类方法[J]. 北京师范大学学报(自然科学版),2010,46(5):643-646.[15] ZHOU T,REN J,MEDO M,et al. Bipartite network projection and personal recommenda -tion[J]. Physical Review E,2007,76(4):046115.[16] ZHANG P,WANG J,LI X,et al. Clustering coefficient and community structure of biparti te networks[J]. Physica A:Statistical Mechanics and Its Applications,2008,387(27):6869-6875.[17] XU Y,CHEN L,LI B. Density-based modularity for evaluating community structure in bi-partite networks[J]. Information Sciences,2015,317:278-294.[18] DANON L,DIAZ-GUILERA A,DUCH J,et al. Comparing community structure identifica-tion[J]. Journal of Statistical Mechanics:Theory and Experiment,2005,2005(09):P09008. [19] WANG X,QIN X. Asymmetric intimacy and algorithm for detecting communities in bip artite networks[J]. Physica A:Statistical Mechanics and Its Applications,2016,462:569-578.[20] 郭改改,钱宇华,张晓琴,等. 自主确定社区个数的二模网络社区发现算法[J]. 模式识别与人工智能,2015,28(11):969-975.。
基于广义后缀树的二分网络社区挖掘算法
基于广义后缀树的二分网络社区挖掘算法邹凌君;陈崚;戴彩艳【期刊名称】《计算机科学》【年(卷),期】2017(044)007【摘要】In recent years,the problem of detecting communities from bipartite network has drawn much attention of researchers.This paper presented an algorithm based on generalized suffix tree for detecting communities from bipartite networks.The algorithm firstly extracts the adjacent node sequence for each node from the adjacency matrix of the bipartite network,and constructs a generalized suffix tree.Each node in the generalized suffix tree represents a complete bipartite clique.Then the algorithm extracts and adjusts those cliques.The closeness of two cliques is introduced to form initial communities.Finally,isolated nodes are processed to get the final community partition.The proposed algorithm can detect overlapping communities,and is able to get one-to-many correspondence between communities.Experimental results on the artificial networks and real-world networks show that,our algorithm can not only accurately identify the number of communities from bipartite networks,but also obtain high quality of community partitioning.%近年来,二分网络的社区挖掘问题得到了极大的关注.提出了一种基于广义后缀树的二分网络社区挖掘算法.首先从二分网络的邻接矩阵中提取网络中每个节点的链接节点序列,然后构建广义后缀树.广义后缀树的每个节点表示二分网络的一个完全二分团,由此获取并调整完全二分团.通过引入二分团的紧密度得到初始的社区划分,最后再对孤立点进行处理以得到最终的社区划分.所提算法不仅能发现重叠社区,而且能得到一对多关系的社区.在人工数据集和真实数据集上的实验表明,所提算法能准确地识别二分网络中的社区个数,获得很好的划分效果.【总页数】6页(P221-226)【作者】邹凌君;陈崚;戴彩艳【作者单位】金陵科技学院信息化建设与管理中心南京 211169;扬州大学信息工程学院扬州 225009;南京大学计算机软件新技术国家重点实验室南京210093;南京航空航天大学计算机科学与技术学院南京210016【正文语种】中文【中图分类】TP301.6【相关文献】1.基于模块度增量的二分网络社区挖掘算法 [J], 戴彩艳;陈崚;胡孔法2.基于矩阵分解的二分网络社区挖掘算法 [J], 陈伯伦;陈崚;邹盛荣;徐秀莲3.基于随机网络集成模型的广义网络社区挖掘算法 [J], 杨博;刘杰;刘大有4.基于广义后缀树的事件序列频繁情节挖掘算法 [J], 曲文龙;杨炳儒;张克君5.基于广义后缀树的事件流频繁情节在线挖掘算法 [J], 曲文龙;王彦琪;张敬敏;杨炳儒因版权原因,仅展示原文概要,查看原文内容请购买。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
近, 即尽 可能保 持原 图的社 区信 息。实验结果表 明, 该算法在不 需任 何额 外参数 的情 况下 , 不但 能较 准确地识 别 实际
网络 的 社 区 个数 , 而 且 可 以获 得 很 好 的 划 分 效 果 。
关键 词
二 分 网络 , 矩 阵分 解 , 社 区检 测
中图法分类号
TP 3 0 1 . 6
( 南京航 空航天大学计算机科 学与技术学院 南京 2 1 0 0 1 6 ) ( 扬州大学信息学院计算机系 扬州 2 2 5 0 0 9 )
( 南京 大 学软件 新技 术 国家重 点 实验 室 南京 2 1 0 0 9 3 ) 。 ( 扬 州大 学物理 科 学 与技术 学 院 扬州 2 2 5 0 0 9 )
( o l c l e g e o f Ph y s i c s S c i e n c e a n d Te c h n o l o g y, Ya n g z h o u Uni v e r s i t y , Ya n g z h o u 2 2 5 0 0 9, Chi n a )
第 4 1卷 第 2期 2 0 1 4年 2月
计
算
机
科
学
Co mp u t e r S c i e n c e
Vo 1 . 4 1 No . 2 F e b 2 0 1 4
基 于矩 阵分 解 的二 分 网络社 区挖 掘 算 法
陈伯 伦 陈 峻。 邹 盛 荣 徐秀 莲
摘 要 二分 网络社 区挖掘对复杂 网络有 重要 的理论意义和应 用价值 。提 出了一个基 于矩 阵分解的二分 网络社 区挖
掘算 法。该 算法首先将二分 网络分 为两个部 分 , 每 个部 分尽 可能保存完整的社 区信 息, 然后分别对 两个部分进行递 归 的拆 分 , 直至不能拆分为止 。在拆 分的过程 中, 应 用矩阵分解 , 使 得到 的分解能 与 网络 的相 关矩 c t Co mm u n i t y d e t e c t i o n i n b i p a r t i t e n e t wo r k i s v e r y i mp o r t a n t i n t h e r e s e a c h o n t h e t h e o r y a n d a p p l i c a t i o n s o f c o mp l e x n e t wo r k a n a l y s i s . An a l g o r i t h m f o r d e t e c t i n g c o mmu n i t y s t r u c t u r e i n b i p a r t i t e n e t wo r k s b a s e d o n ma t r i x f a c — t o r i z a t i o n wa s p r e s e n t e d . Th e a l g o r i t h m f i r s t p a r t i t i o n s t h e n e t wo r k i n t o t WO p a r t s , e a c h o f wh i c h c a n r e s e r v e t h e c o n— r mu n i t y i n f o r ma t i o n a s mu c h a s p o s s i b l e , a n d t h e n t h e t wo p rt a s a r e f u r t h e r r e c u r s i v e l y p a r t i t i o n e d u n t i l t h e y c a n n o t b e
( De p a r t me n t o f Co mp u t e r Sc i e n c e, Ya n g z h o u Un i v e r s i t y, Ya ng z h o u 2 2 5 0 0 9, Ch i n a )
( S t a t e Ke y I . a b o r a t o r y o f No v e l S o f t w a r e Te c h n o l o g y , Na n j i n g Un i v e r s i t y , Na n j i n g 2 1 0 0 9 3 , C h i n a ) 0
文献标识码
A
De t e c t i ng Co mm u ni t y S t r u c t u r e i n Bi pa r t i t e Ne t wo r ks Ba s e d o n Ma t r i x Fa c t o r i z a t i o n
CH EN B o - l u n CHEN Li n g  ̄ , 0 Z 0U S h e n g - r o n g XU Xi u - l i a n 4 ( De p a r t me n t o f C o mp u t e r S c i e n c e , Na n i i n g Un i v e r s i t y o f Ae r o n a u t i c s a n d As t r o n a u t i c s , Na n j i n g 2 1 0 0 1 6 , Ch i n a )