本发明涉及图神经网络对抗学习领域,特别是指一种基于异常检测的注意力净化图防御方法。
背景技术:
1、随着现实环境的日益复杂,图这种数据结构使用的愈发频繁。图可以很好的用来描述多实体多联系的复杂情景。例如在金融(交易网络)、化学医疗(分子图)、交通(路线图)、推荐(关系网络)等领域,图数据日益流行。在各个领域中,常见的图任务包括节点分类、链路预测、图分类等。
2、近年来伴随着深度学习的快速发展,图神经网络(gnns)被广泛认为是图表示学习的强大工具,并在许多图任务中取得了令人印象深刻的成就。针对不同领域的图数据,主流gnns遵循消息传递机制message-passing并依据图的结构信息来聚合相邻节点的特征以获得当前节点的特征向量,最后通过学习到的节点特征来完成一系列的下游图任务。然而尽管gnns如今取得的效果令人振奋,但消息传递机制根本上依赖于图数据的结构信息,换而言之图数据结构质量的好坏会对任务结果产生较大的影响。由于图数据的复杂性,现实环境中的图在多数情况下并非是高质量的图,往往在结构上存在固有噪音以及人为的恶意扰动,这会大大影响gnns性能。此外,原有的图结构可能也并非是解决图任务的最优结构。
3、相关研究表明,gnns容易受到针对图结构精心设计的恶意扰动,即对抗性攻击。多数对抗性攻击会修改原始图结构,集中于删除原始边,添加恶意边,使gnns性能大幅降低,从而欺骗gnns对下游任务的预测。例如推荐任务中,在商品-用户网络里恶意添加虚假的“商品-用户边”,会导致用户接触到不敢兴趣的商品,影响用户体验。此外对于安全性格外重要的图任务领域,例如金融、医疗,gnns模型的鲁棒性、抗扰动能力越来越受到关注,因此开发健壮的图对抗防御策略具有重要意义。
技术实现思路
1、本发明提出了一种基于异常检测的注意力净化图防御方法,目的在于高安全性需求的图下游任务中,如何防御图数据中的固有噪声、恶意扰动,保证gnns性能的前提下增强模型的鲁棒性。
2、异常检测就是基于特定的检测算法或模型,挖掘出图数据中潜在的异常节点及异常边。本发明基于异常检测模块获得潜在异常边,净化adgat模型消息传递过程中的attention系数,增强模型的鲁棒性来抵御对抗性攻击。
3、本发明提供了一种基于异常检测的注意力净化图防御方法,该方法包括如下步骤:
4、步骤1.选择异常检测算法,将图数据传入异常检测模块,获得潜在异常边,获得结果具体是一个名为linkpred矩阵;
5、步骤2.将步骤1中获得的linkpred矩阵,及其他所需训练参数传入adgat模型中进行训练,利用linkpred对训练过程中的attention层进行净化;
6、步骤3.使用训练得到的图神经网络模型生成隐层特征,来完成具体的下游图任务。
7、作为优选,所述的异常检测算法,包括以下步骤:
8、子步骤1-1,本发明使用图链路预测模型作为异常检测器,实现异常检测模块功能。图链路预测模型选用vgae;
9、子步骤1-2,将图数据的特征矩阵、邻接矩阵进行格式转化、规范化等预处理后传入图链路预测模型中进行独立训练,训练结束得到异常检测器ad;
10、子步骤1-3,利用异常检测器ad对图数据进行全局预测,得到形状为(n,n)的linkpred矩阵,n为图数据的节点数。将linkpred矩阵输入sigmoid函数进行归一化处理,将矩阵元素值放缩至[0,1]区间内作为检测概率。
11、作为优选,所述的adgat模型训练过程,包括以下步骤:
12、子步骤2-1,预处理图数据的特征矩阵和邻接矩阵,得到feature、adj,从步骤1中获得linkpred矩阵,一起传入adgat模型中;
13、子步骤2-2,训练过程中依据linkpred矩阵中的检测概率,划分出三个边簇{edge1,edge2,edge3}。针对不同边簇进行注意力增强和注意力减弱操作;
14、子步骤2-3,基于净化后的attention系数进行消息传递步骤,采用多头注意力机制聚合相邻节点的特征,迭代当前节点的隐层特征。
15、作为优选,使用异常检测模块划分出的三个边簇{edge1,edge2,edge3}包括:低置信边集、普通置信边集、高置信边集;
16、低置信边集特指linkpredij检测概率低于0.8的边,视作潜在异常边;
17、普通置信边集特指linkpredij检测概率介于0.8至0.9的边,视作正常边;
18、高置信边集特指linkpredij检测概率高于0.9的边,视作干净边。
19、作为优选,所述模型训练中的注意力净化机制表述为公式:
20、
21、其中,eij表示节点i对节点j的attention系数,h为隐层特征,w为权重矩阵,用于对隐层特征h进行线性变化;
22、基于eij计算出注意力机制的最终权重系数αij如下所示:
23、
24、其中,应用激活函数leakyrelu非线性(负斜率α=0.2)激活eij,将激活后的值输入softmax函数对权重系数αij进行规范化;
25、基于linkpred矩阵进行注意力净化过程表述为公式:
26、
27、其中,对低置信边集进行注意力减弱;对于普通置信边集不做处理,维持原注意力系数;对于高置信边集进行注意力增强;
28、最终的隐层特征迭代式子如下所示:
29、
30、其中,σ为激活函数,用于非线性变换;k为多头注意力的注意力头数,concat(·)为k头注意力拼接函数;wk为相应输入的线性变换权重矩阵。
31、本发明的实质性特点在于:将图净化思想与图异常检测相融合,利用异常检测结果优化图数据的结构信息,减弱扰动边的恶意攻击并增强干净边对结果的影响力,提高gnns的鲁棒性和防御性能。与同类的其他防御模型相比adgat在维持良好性能的前提下具备更出色的鲁棒性和防御能力。经过全局攻击方法(metattck)使用不同扰动率攻击cora、citeseer等图数据,该模型在节点分类任务上得到的预测准确率均高于同类的其他防御模型,尤其在重度扰动图(ptb=25%)上取得优异结果。综合分析本发明提出的方法具有准确率高、模型鲁棒性及防御性能好的特点。
1.一种基于异常检测的注意力净化图防御方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种基于异常检测的注意力净化图防御方法,其特征在于,所述图链路预测模型采用vgae模型。
3.根据权利要求1所述的一种基于异常检测的注意力净化图防御方法,其特征在于,所述vgae模型包括图卷积网络编码器和内积解码器。
4.根据权利要求1所述的一种基于异常检测的注意力净化图防御方法,其特征在于,三个所述边簇{edge1,edge2,edge3}的划分方法为:
5.根据权利要求4所述的一种基于异常检测的注意力净化图防御方法,其特征在于,所述步骤s4-2的具体方法为:
6.根据权利要求1所述的一种基于异常检测的注意力净化图防御方法,其特征在于,所述异常检测器的训练方法为:
7.根据权利要求5所述的一种基于异常检测的注意力净化图防御方法,其特征在于,所述步骤s4-3中消息传递的方法为: