本发明涉及数据挖掘,具体为一种基于自适应图注意力编码器的社区发现方法。
背景技术:
1、在复杂网络中挖掘社区的这一过程被称为社区发现。社区发现旨在将一个网络划分为若干个社区内节点紧密连接的团体,它的特点是在同一社区中的节点密集连接,不同社区间的节点稀疏连接。也正如人际交往中,人们总是和关系密切的人来往较多,形成了一个小团体,并且可能和朋友的朋友相结识。经过划分后的社区能够将底层的网络结构和重要信息显式地表现出来。可以应用于推荐系统、社交好友推荐、疫情的检测预防等各领域。
2、随着网络数据的不断增长和复杂度的不断提高,社区发现算法也面临着越来越多的挑战。首先,网络的规模和复杂度不断增加,计算复杂度和存储复杂度也随之增加;其次,网络的结构和特征不断变化,需要算法能够适应动态变化的网络环境;此外,不同类型的网络有着不同的特征和规律,需要算法能够针对不同类型网络进行优化。
3、目前惯用的社区发现算法是基于图卷积网络(graph convolutional network)的社区发现算法。基于图卷积网络的社区发现算法需要进行多层卷积操作,从而得到每个节点的图嵌入表示,并以此来进行社区发现。但基于图卷积网络的社区发现算法也有一些缺点,例如:
4、(1)算法的泛化能力较低:只能处理简单的图结构,对于复杂的图结构和边权重的处理能力相对较弱。
5、(2)需要大量的训练数据:算法需要许多标记数据进行训练才能得出良好的模型,而这些标记数据通常需要手动标注,成本较高。
6、(3)对于大型网络的处理能力较弱:算法的时间和空间复杂度在处理大型网络时可能无法承受,也难以处理大量的节点和链接。
技术实现思路
1、本发明所解决的技术问题在于现有的社区发现算法在处理大型网络时的时间和空间复杂度过高,导致图网络节点社区发现的准确度过低。
2、本发明提供的基础方案:一种基于自适应图注意力编码器的社区发现方法,应用于一种自适应图注意力模型,方法包括步骤:
3、s1:初始化参数,读取图网络数据,构建laplacian平滑特征滤波器;
4、s2:更新图网络节点特征并训练自适应图注意力编码器;
5、s3:更新阈值,根据标签选择样本并计算节点标签;
6、s4:通过自训练谱聚类算法对节点标签进行聚类,获取社区发现的图网络节点表示和社区划分结果。
7、进一步,所述s1中初始化的参数包括自适应图注意力编码器参数和网络训练经验阈值参数。
8、进一步,所述s1中构建laplacian平滑特征滤波器包括步骤:
9、s11:输入包括邻接矩阵a和节点特征矩阵x在内的图网络数据,计算出图的标准化拉普拉斯矩阵ls:
10、
11、式中,i为单位矩阵,d为图的度矩阵,a为图的邻接矩阵;
12、s12:根据图的标准化拉普拉斯矩阵ls构建图网络数据的过滤器矩阵g和平滑特征矩阵
13、
14、
15、式中,u为过滤器矩阵g的分解矩阵,λ为过滤器矩阵g分解后的对角矩阵,k为过滤器矩阵频率响应函数的参数。
16、进一步,所述s2中,更新图网络节点特征包括步骤:
17、s21:将过滤器矩阵g和平滑特征矩阵输入自适应图注意力编码器构建权重系数
18、
19、
20、式中,eij表示结点i和结点j的相关性系数,w为网络层的共享参数;
21、s22:基于权重系数更新节点特征:
22、
23、s23:构建嵌入矩阵z:
24、
25、
26、
27、式中,hi′为更新后的节点特征,σ是激活函数,是在k个不同的注意力机制中的归一化结果,z是经过图注意力网络编码后的特征矩阵。
28、进一步,所述s2中,训练自适应图注意力编码器包括步骤:
29、s24:构建模块度矩阵q:
30、
31、
32、是一个np-hard问题,将h矩阵进行归一化为
33、s25:基于模块度矩阵q,通过交叉熵损失函数训练自适应图注意力编码器:
34、
35、
36、
37、式中,lr为图注意力编码器交叉熵损失,lm为模块度最大化损失,c是一个可学习的全连接层。
38、进一步,所述s3中,更新阈值包括步骤s31:
39、
40、
41、式中,是正负样本的初始边界,为正负样本的结束边界,rpos,rneg为正负样本的初始值,t是模型模型边界值的更新次数。
42、进一步,所述s3中,选择样本包括步骤s32:
43、
44、式中,lij为正负样本的标签值,正样本的标签值为1,负样本标签值为0。
45、进一步,所述s3中,节点标签的计算包括:
46、s33:在迭代终止时,计算分布piu:
47、
48、式中,piu为真实标签的概率分布,qiu表示节点i属于第u个簇的概率。
49、s34:计算节点标签si:
50、
51、式中,si表示节点i属于哪一个簇。
52、进一步,所述s4中,社区发现的图网络节点表示和社区划分结果包括:
53、
54、l=lr+βlm+γlc
55、式中,p表示真实标签的概率分布,q表示模型预测的标签概率分布,kl用于求两个概率分布之间的散度,kl散度越小,则表示两个概率分布越接近,模型的预测结果越准确。l为模型整体的损失函数,lr为图注意力编码器交叉熵损失,lm为模块度最大化损失,lc为自训练聚类分类损失。
56、本发明的原理及优点在于:本方案中,首先通过构造laplacian平滑特征滤波器消除图特征中的高频噪声,使图特征更加平滑,有利于获得更具有代表性的节点嵌入,消除噪声对模型网络的影响;再通过自适应图注意力编码器,将图网络的拓扑结构和节点特征信息进行充分融合,通过图注意力机制学习图网络的潜在节点嵌入向量;之后由图嵌入向量计算相似度矩阵,根据相似度进行训练样本的选择,进行自适应训练,通过自适应机制丰富了数据集,便于网络模型学习到更加丰富的参数;最后通过自训练聚类,获得了面向聚类的节点嵌入,从而提高了图网络节点社区发现的准确度。经试验验证,本方案通过使用laplacian平滑滤波器、自适应图注意力编码器模块、模块度最大化模块和自训练聚类模块,最大化普适了不同特征分布的图网络数据的社区发现任务,对不同图网络数据的下游任务社区发现都具有较优的性能和可拓展性
1.一种基于自适应图注意力编码器的社区发现方法,其特征在于,应用于一种自适应图注意力模型,方法包括步骤:
2.根据权利要求1所述的一种基于自适应图注意力编码器的社区发现方法,其特征在于:所述s1中初始化的参数包括自适应图注意力编码器参数和网络训练经验阈值参数。
3.根据权利要求2所述的一种基于自适应图注意力编码器的社区发现方法,其特征在于,所述s1中构建laplacian平滑特征滤波器包括步骤:
4.根据权利要求3所述的一种基于自适应图注意力编码器的社区发现方法,其特征在于,所述s2中,更新图网络节点特征包括步骤:
5.根据权利要求4所述的一种基于自适应图注意力编码器的社区发现方法,其特征在于,所述s2中,训练自适应图注意力编码器包括步骤:
6.根据权利要求5所述的一种基于自适应图注意力编码器的社区发现方法,其特征在于,所述s3中,更新阈值包括步骤s31:
7.根据权利要求6所述的一种基于自适应图注意力编码器的社区发现方法,其特征在于,所述s3中,选择样本包括步骤s32:
8.根据权利要求7所述的一种基于自适应图注意力编码器的社区发现方法,其特征在于:所述s3中,节点标签的计算包括:
9.根据权利要求8所述的一种基于自适应图注意力编码器的社区发现方法,其特征在于:所述s4中,社区发现的图网络节点表示和社区划分结果包括: