一种面向有向-加权网络的社区结构发现方法
【专利摘要】本发明提供了一种面向有向-加权网络的社区结构发现方法,包括以下步骤:基于节点间社会关系权值和方向构造有向-加权网络;将有向-加权网络转换为无向-加权网络;对网络拓扑结构进行初始化,构造权重矩阵;矩阵归一化,计算社区发现决策因子,具体包括:节点活跃度、社区关系强度、社区密度和社区耦合度;基于社区发现决策因子,划分网络社区;本发明方法可以在移动、异构、动态环境下快速发现和构造网络社区,为用户提供可信服务链路,实现移动感知服务的可信交互,进而提高移动感知服务效率,并最终为用户提供高质量、多样性、可定制的群智感知服务。
【专利说明】-种面向有向-加权网络的社区结构发现方法 【【技术领域】】
[0001] 本发明属于群智感知服务领域,特别涉及一种面向有向-加权网络的社区结构发 现方法。 【【背景技术】】
[0002] 社交网络的出现拓宽了网络的边界,使其与真实生活更加紧密地融合在一起,同 时也赋予虚拟网络更多和真实社交环境极为相近的特性与特征,社区结构的存在就是比较 典型的一个例子。在真实社交网络中,我们每个人都有自己的社会属性,比如职业、居住地 或与他人亲缘关系等等,具有相同社会属性的人会建立更为紧密的社交关系。我们称这种 群体内成员之间的社会关系值远大于群体内成员与群体外成员之间社会关系值的现象为 存在社区结构,符合这样特性的群体则被称为社区。
[0003] 相似地,社交网络中也有类似的现象,也存在社区结构。社区结构的意义在于能够 帮助我们更加清晰的认识到人与人社交的本质。通过深入挖掘社交网络的社区结构,我们 能够提供更为精准有效的移动感知服务。
[0004] 目前已有很多关于社交网络中社区发现算法的研究。有针对全局整体的算法,如 经典的GN算法和利用堆结构的贪婪算法,分析整个网络得到划分但是社交网络庞大带来 巨大开销而且通常情况下其实只需要划分局部;也有针对局部的划分方式,如BB算法,时 间空间复杂度都有降低但是因此也具有一定局限性。此外还有基于时序的算法,将互联网 数据和时序数据相结合,进行区间模糊处理,基于边链接系数进行划分等等。但是大部分的 算法都是基于无向无权图或者无向加权图的社会关系网进行研究的,而通过终端感知实际 获取到的感知信息绘制成的网络是有向加权图,这方面成熟的算法还比较少。 【
【发明内容】
】
[0005] 本发明的目的在于提出了一种面向有向-加权网络的社区结构发现方法,融合凝 聚和搜索的思想,通过将有向图转换为无向图进行处理和分析。
[0006] 为了实现上述目的,本发明采用入下技术方案:
[0007] -种面向有向-加权网络的社区结构发现方法,包括以下步骤:
[0008] 步骤一:根据已知社会网络中节点集合N和不同节点边的方向权重w,构造有 向-加权网络图G ;
[0009] 步骤二:将有向-加权网络图G转换为无向-加权网络图G' ;
[0010] 步骤三:对无向-加权网络图G'进行初始化:使用权重矩阵的形式存储无向-加 权网络图G'中邻居节点及与邻居节点边的权重,得到权重矩阵A ;
[0011] 步骤四:对权重矩阵A进行归一化处理;
[0012] 步骤五:计算社区发现决策因子:基于归一化后权重矩阵A,计算社区发现决策因 子,包括节点活跃度,记为=Hi ;社区关系强度,记为:I(Sk);社区关系密度,记为:D(Sk);社 区耦合度,记为=F(Sk);
[0013] 步骤六:社区发现:从活跃度最大的节点开始作为初始社区的起点,依次计算加 入社区外某节点后社区的耦合度F',若存在节点j使得F' >F或F-F'〈 e,则选择使F' -F最 大或F-F'最小的节点加入该社区,并更新节点j的社区标号以及该社区的耦合度;
[0014] 步骤七:社区发现终止条件判断:当社区加入任何节点都会使耦合度出现下降 时,停止扩展该社区,认定该社区已稳定;选择活跃度次之的节点作为新社区的起点,重复 步骤六,直到所有节点均判决完毕;
[0015] 步骤八:孤立节点处理:寻找与孤立节点j在原始加权-有向图G中存在关联的节 点集,从关联节点集中选择与孤立节点边权重差最小的节点作为其有效关联节点,并将该 孤立节点加入该有效关联节点所属社区。
[0016] 优选的,步骤二具体包括:节点i指向节点j的有向边的权值记为Wij,节点j指向 节点i的有向边的权值记为Wji,简化后加权图中节点i和节点j之间无向边权值记为Wi/
【权利要求】
1. 一种面向有向-加权网络的社区结构发现方法,其特征在于,包括以下步骤: 步骤一:根据已知社会网络中节点集合N和不同节点边的方向权重W,构造有向-加权 网络图G ; 步骤二:将有向-加权网络图G转换为无向-加权网络图G' ; 步骤三:对无向-加权网络图G'进行初始化:使用权重矩阵的形式存储无向-加权网 络图G'中邻居节点及与邻居节点边的权重,得到权重矩阵A ; 步骤四:对权重矩阵A进行归一化处理; 步骤五:计算社区发现决策因子:基于归一化后权重矩阵A,计算社区发现决策因子, 包括节点活跃度,记为=Hi ;社区关系强度,记为:I(Sk);社区关系密度,记为:D(Sk);社区耦 合度,记为=F(S k); 步骤六:社区发现:从活跃度最大的节点开始作为初始社区的起点,依次计算加入社 区外某节点后社区的耦合度F',若存在节点j使得F' >F或F-F'〈 ε,则选择使F' -F最大或 F-F'最小的节点加入该社区,并更新节点j的社区标号以及该社区的耦合度; 步骤七:社区发现终止条件判断:当社区加入任何节点都会使耦合度出现下降时,停 止扩展该社区,认定该社区已稳定;选择活跃度次之的节点作为新社区的起点,重复步骤 六,直到所有节点均判决完毕; 步骤八:孤立节点处理:寻找与孤立节点j在原始加权-有向图G中存在关联的节点 集,从关联节点集中选择与孤立节点边权重差最小的节点作为其有效关联节点,并将该孤 立节点加入该有效关联节点所属社区。
2. 根据权利要求1所述的一种面向有向-加权网络的社区结构发现方法,其特征在于, 步骤二具体包括:节点i指向节点j的有向边的权值记为wip节点j指向节点i的有向边 的权值记为Wf简化后加权图中节点i和节点j之间无向边权值记为W i/或w/ ;对于有 向-加权网络图G中任意两个节点i和j,若
去掉节点i和 节点j之间的两条有向边;若
,则将两条有向边变为无向边, 令
其中,i、j表示社会网络中的节点,其中,i e N,j e N ;Sk表示网络 中的不同社区,其中k e C,C为网络中社区数集合;w为节点间边的权重,节点i指向节点 j的有向边的权值记为Wij,节点j指向节点i的有向边的权值记为Wji。
3. 根据权利要求1所述的一种面向有向-加权网络的社区结构发现方法,其特征在于, 步骤三中使用权重矩阵的形式存储无向-加权网络图G'中邻居节点及与邻居节点边的权 重,如下表示形式:A = (aj,其中a。= = Wi/ ;
4. 根据权利要求1所述的一种面向有向-加权网络的社区结构发现方法,其特征在于, 步骤四具体包括以下步骤:将矩权重阵A中的最大值即图中边的最大权值记为W max,令A = A+Wmax,对边权值进行归一化处理。
5. 根据权利要求1所述的一种面向有向-加权网络的社区结构发现方法,其特征在于, 活跃度Hi的计算公式如下 :
其中:j,k表示网络中的节点,i, j e N, i尹j ;di表示节点i的度,dj表示节点j的 度;社区关系强度I (Sk)的计算公式如下:
其中:Sk表示网络中的一个社区;i,j表示社区Sk内的节点;M(Sk)表示社区S k内的边 数;表示网络中最大的边的权值; 社区关系密度D (Sk)的计算公式如下:
其中:num(Sk)表示社区Sk内节点数; 社区耦合度F(Sk)的计算公式如下:
6. 根据权利要求1所述的一种面向有向-加权网络的社区结构发现方法,其特征在于, 步骤六中F为初始耦合度,初始值为O ; ε代表社区判决阈值,取值范围[0, 1]。
【文档编号】G06F17/30GK104391889SQ201410631672
【公开日】2015年3月4日 申请日期:2014年11月11日 优先权日:2014年11月11日
【发明者】安健, 桂小林, 邓昕宇, 杨建伟, 钟华剑, 陈立, 田仕伟 申请人:西安交通大学