1.一种基于对抗训练的网络攻击防御方法,其特征在于,包括:
(1)构建节点分类模型,将原始网络结构所对应的邻接矩阵与标记类标的训练节点输入节点分类模型进行初始训练,得到初始分类模型;
构建的节点分类模型是一个具有两层隐藏层的图卷积模型,该模型的前馈模型表达式为:其中, 为 的度矩阵且 X表示所有节点的
特征向量矩阵,W0和W1分别为两层网络的权重矩阵,f和σ分别为softmax激活函数和Relu激活函数;A表示网络的邻接矩阵;
所述节点分类模型在训练时采用平滑交叉熵损失函数,公式为:
其中,T=[v1,…,vm]表示训练节点集合,|T|表示训练节点个数,F=[τ1,…,τ|F|]表示节点类标集合,|F|表示网络中节点类标个数,Y'表示输出置信度矩阵,Y表示平滑类标矩阵,其中当在T集合中第l个节点属于第k类时,Ylk=1,否则(2)依据对抗网络攻击算法和得到的初始分类模型依次修改每个训练节点的至少一个节点对,并迭代更新原始网络结构的邻接矩阵,构建所需的对抗网络;
(3)利用得到的对抗网络与被标记类标的训练节点,重新训练初始分类模型,最终得到具有防御能力的节点分类模型。
2.根据权利要求1所述的基于对抗训练的网络攻击防御方法,其特征在于,步骤(2)中,所述对抗网络攻击算法为基于梯度信息的对抗网络攻击算法,所述节点对的选取过程为:利用节点分类模型计算目标节点所对应的所有节点对的梯度信息,根据对目标节点分类影响的大小选取节点对。
3.根据权利要求1或2所述的基于对抗训练的网络攻击防御方法,其特征在于,步骤(2)中,所述对抗网络攻击算法每次选择目标节点对的一个节点对进行修改,依据节点对的梯度信息选取对于目标节点分类影响最大的一个节点。
4.根据权利要求1所述的基于对抗训练的网络攻击防御方法,其特征在于,步骤(2)中,修改节点对的具体过程为:对于目标节点对Eij=(vi,vj),利用对抗网络攻击算法进行修改并更新邻接矩阵,公式如下:其中, 和 分别为 和 矩阵中一个元素, 为第t次的更新的对抗网络的邻接矩阵; 为t-1次的更新的对抗网络的邻接矩阵;θij为修改策略,θij∈{-1,0,1}。