本发明涉及社区检测领域,更具体地,涉及一种基于加权先验张量链分解的多层网络社区检测方法。
背景技术:
1、随着社会和技术不断发展,各种客观事物之间的联系体现出越来越重要的价值。各种联系之间组成了一个个网络,而社区则是这些网络中的一个子集。社区内节点之间具有更密集的连通性,使得网络结构和功能更好地被理解,并促进各种应用。网络社区检测则是找到社区,进而更好发挥社区的优势。
2、虽然现有一些算法可以实现社区检测,但其主要针对单一类型节点关系的单一网络,而现实世界的网络系统往往表现为多层结构。为了进一步进行社区检测,一些将多层网络压缩为单层网络、先逐层检测后再聚合等方法被提出,但要么进行网络压缩而损害了社区结构的完整性,要么忽略了多层网络中数据的内在联系,最终导致多层网络检测的结果不理想。
3、现有技术公开了一种基于多目标密母计算的网络社区检测方法,其通过循环进行产生新个体、更新网络种群、局部搜索网络种群的方式,从而检测出社区。本发明采用基于加权先验张量链分解的方式进行检测,并未采用上述多目标密母计算的方法进行检测。
技术实现思路
1、本发明针对现有技术中在多层网络下检测社区结果不理想的缺陷,提供基于加权先验张量链分解的多层网络社区检测方法。
2、本发明的首要目的是为解决上述技术问题,本发明的技术方案如下:
3、基于加权先验张量链分解的多层网络社区检测方法,包括:
4、s1:获取多层网络,进行加权扁平化处理并提取特征,得到加权扁平网络特征;
5、s2:随机初始化三个序列,分别作为第一张量序列因子、第二张量序列因子、第三张量序列因子;
6、s3:将所述加权扁平网络特征、所述第一张量序列因子、所述第二张量序列因子、所述第三张量序列因子进行循环优化,得到最终第一张量序列因子;
7、s4:将所述最终第一张量序列因子进行社区提取,得到社区。
8、进一步地,步骤s1包括:
9、s101:获取多层网络,将其转化为加权平面化网络;
10、s102:搜索所述加权平面化网络,得到若干密集子图;
11、s103:利用所述若干密集子图构建先验信息,得到先验矩阵;
12、s104:将先验矩阵和多层网络合并,得到加权扁平网络特征。
13、进一步地,步骤s101中,所述转化为加权平面化网络的公式如下:
14、
15、其中,n表示多层网络层数,ai表示多层网络第i层的邻接矩阵,li表示多层网络第i层边数,h表示多层网络边数之和。
16、进一步地,步骤s103中,构建先验矩阵的公式如下:
17、
18、其中,a、b分别表示所述加权平面化网络的顶点序号,za、zb分别表示a、b对应的顶点,ci表示多层网络中第i个密集子图。
19、进一步地,步骤s104中,加权扁平网络特征的计算公式如下:
20、o1=a+μτ(ap)
21、其中,μ表示先验权值,τ(ap)表示在三维空间复制多次的先验矩阵,a表示多层网络。
22、进一步地,步骤s3中,循环优化包括:
23、s301:对所述第一张量序列因子、所述第二张量序列因子、所述第三张量序列因子,进行张量链分解,得到张量链分解特征;对所述第一张量序列因子、加权扁平网络特征进行公共社区流形学习,得到流形学习特征;
24、s302:根据所述加权扁平网络特征、所述张量链分解特征、所述流形学习特征,构建优化目标函数;
25、s303:根据所述目标优化函数,对第一张量序列因子进行优化,得到优化后的第一张量序列因子,作为新的第一张量序列因子;
26、s304:将所述新的第一张量序列因子代入所述目标优化函数,对第二张量序列因子进行优化,得到优化后的第二张量序列因子,作为新的第二张量序列因子;
27、s305:将所述新的第二张量序列因子代入所述目标优化函数,对第三张量序列因子进行优化,得到优化后的第三张量序列因子,作为新的第三张量序列因子;
28、s306:判断当前优化次数是否小于预设的优化次数;若是,将新的第三张量因子代入所述目标优化函数,执行步骤s303;若否,执行步骤s307;
29、s307:将所述第一张量序列因子作为最终第一张量序列因子。
30、进一步地,步骤s301中,张量链分解的公式如下:
31、o2=g1*g2*g3
32、其中,g1表示第一张量序列因子,g2表示第二张量序列因子,g3表示第三张量序列因子。
33、进一步地,步骤s301中,公共社区流形学习的公式如下:
34、o3=λtr((g1)tlg1)
35、其中,λ表示正则化参数,g1表示第一张量序列因子,l表示对加权扁平网络特征进行拉普拉斯计算后所得结果。
36、进一步地,步骤s302中,所述优化目标函数如下:
37、
38、其中,o1表示加权扁平网络特征,o2表示张量链分解特征,o3表示流形学习特征。
39、基于加权先验张量链分解的多层网络社区检测装置,包括:
40、加权扁平化处理模块:获取多层网络,进行加权扁平化处理并提取特征,得到加权扁平网络特征;
41、初始化模块:随机初始化三个序列,分别作为第一张量序列因子、第二张量序列因子、第三张量序列因子;
42、循环优化模块:将所述加权扁平网络特征、所述第一张量序列因子、所述第二张量序列因子、所述第三张量序列因子进行循环优化,得到最终第一张量序列因子;
43、社区提取模块:将所述最终第一张量序列因子进行社区提取,得到社区。
44、与现有技术相比,本发明的有益效果是:
45、本发明通过采用循环优化的方式,既保持了多层网络中数据的内在联系,又保证了社区结构的完整性。通过加权扁平化处理,提升了多层网络下社区检测的准确性。综上,本发明使得在多层网络下社区检测结果更准确。
1.基于加权先验张量链分解的多层网络社区检测方法,其特征在于,包括:
2.根据权利要求1所述基于加权先验张量链分解的多层网络社区检测方法,其特征在于,步骤s1包括:
3.根据权利要求2所述基于加权先验张量链分解的多层网络社区检测方法,其特征在于,步骤s101中,所述转化为加权平面化网络的公式如下:
4.根据权利要求2所述基于加权先验张量链分解的多层网络社区检测方法,其特征在于,步骤s103中,构建先验矩阵的公式如下:
5.根据权利要求4所述基于加权先验张量链分解的多层网络社区检测方法,其特征在于,步骤s104中,加权扁平网络特征的计算公式如下:
6.根据权利要求1所述基于加权先验张量链分解的多层网络社区检测方法,其特征在于,步骤s3中,循环优化包括:
7.根据权利要求6所述基于加权先验张量链分解的多层网络社区检测方法,其特征在于,步骤s301中,张量链分解的公式如下:
8.根据权利要求6所述基于加权先验张量链分解的多层网络社区检测方法,其特征在于,步骤s301中,公共社区流形学习的公式如下:
9.根据权利要求6所述基于加权先验张量链分解的多层网络社区检测方法,其特征在于,步骤s302中,所述优化目标函数如下:
10.基于加权先验张量链分解的多层网络社区检测装置,用于实现权利要求1-9任一项所述的检测方法,包括:
