1.一种基于边分类的社区检测算法,其特征在于,包括:S1、基于构建的边‑图像转换模型将网络中的每条边转换构造成图像,其具体包括:S1.1、求出网络G一条边两个端点a,b的一条邻居节点集合N(a)和N(b);
S1.2、计算两个邻居节点集合的交集N_b(a,b)=N(a)∩N(b);
S1.3、将两个集合的元素计数|N(a)|和|N(b)|分别作为图像矩阵的行和列构造边的图像矩阵;
S1.4、若矩阵中的某个行和列对应的节点在集合N_b(a,b)中,则该元素为G:[0,255,
0];若元素的行和列构成的边在网络中,则该元素为R:[255,0,0],否则元素为B:[0,0,
255];
S2、采用参数训练好的深度卷积神经网络对S1构造的图像进行分类,并去除网络中对应的边、以简化网络;
S3、重复步骤S1‑S2一次后进入步骤S4;
S4、采用前序遍历算法对简化后的最终网络进行遍历,将不连通的子图划为每一个独立的社区,得到初步的社区结构;
S5、结合局部模块度R将部分社区进行合并,得到优化的复杂网络社区结构;
假定已知需要检测网络的社区数量为m,将得到的社区中局部模块度最大的前m个社区作为真实社区,其余的作为虚拟社区,并将虚拟社区通过局部模块度R方法即社区结构局部模度量方法合并到真实社区中;
S5的具体步骤包括:
S5.1、根据已知社区数量m,将得到的社区中局部模块度最大的前m个社区作为真实社区,其余的作为虚拟社区;
S5.2、计算所有真实社区的局部模块度Ri,i∈RC;
S5.3、取虚拟社区中的一个社区Vcomm依次与真实社区中的社区Rcomm进行合并,计算合并后社区的局部模块度ri,i∈RC,其中,Vcomm为虚拟社区序列Vcom(1),Vcom(2),…,Vcom(k)中的一个社区,Rcomm为真实社区序列Rcom(1),Rcom(2),…,Rcom(k)中的一个社区;
S5.4、计算△R=ri‑Ri,选取使△R最大的real comm与Vcomm进行合并,其中,real comm为真实社区序列Rcom(1),Rcom(2),…,Rcom(k)中使△R最大的社区;
S5.5、重复步骤S3‑S4,直到虚拟社区为空。
2.根据权利要求1所述的基于边分类的社区检测算法,其特征在于:将网络模型中节点和节点之间存在的连接、自反、不连接的三种关系定义为一个三维向量,其中每一维代表节点与节点之间的一种关系。
3.根据权利要求1所述的基于边分类的社区检测算法,其特征在于,所述步骤S2中采用面积插值裁剪方法,将步骤S1生成图像分别构造成N×N×3的图像,实现任意大小二维矩阵向固定大小二位矩阵的转变,并作为深度卷积神经网络的输入尺寸:matr(x,y,3)→IMG(N,N,3)其中,x,y为任意值,N为深度卷积神经网络的输入值大小。
4.根据权利要求1所述的基于边分类的社区检测算法,其特征在于,所述步骤S2中采用AdaGrad作为梯度下降的方法,图像分类的网络在训练过程中的BatchSize为40,随机初始化所有参数的值,并且以初始0.0001的学习速率来训练网络。
5.根据权利要求1所述的基于边分类的社区检测算法,其特征在于,所述步骤S2中采用Benchmark生成用于训练的LFR网络数据:使用Benchmark随机生成10个LFR网络,其中节点数为128,平均度为16,最大度为50,混合度为0.5,社区数量为4‑7;并根据步骤S1边‑图像转换模型将所有网络的边构造成图片,并为每张图片打上标签作为训练数据。