深蓝学院-GNN课程笔记05-图神经网络的鲁棒性
这个系列是深蓝学院图深度学习理论与实践的同步课程笔记。课程内容涉及图深度学习的基础理论与应用,本节主要介绍图神经网络的对抗攻击和防御。
传统深度神经网络在面对专门设计的对抗攻击(adversarial attack)时会出现鲁棒性较差的问题。以图像识别为例,我们只需要对输入图像进行微小的扰动即可完全改变图像识别的结果。

而在图神经网络中也存在类似的问题。攻击者可以通过修改图结构或是节点属性来欺骗图神经网络,从而产生图对抗扰动。

图神经网络的对抗攻击和防御在金融风控等领域中有着重要的研究价值,因此收到了人们越来越多的关注。
图对抗攻击
图对抗攻击的基本思路是对图进行一个微小扰动从而降低模型的性能。所谓「微小扰动」包括对图结构的扰动

常见的扰动形式包括在图上加边、减边、加节点或是修改节点特征等:

图对抗攻击的类型
根据攻击者的能力,图对抗攻击可以分为逃逸攻击(evasion attack)和投毒攻击(data poisoning attack)两种:
- 逃逸攻击是指对训练好的模型进行攻击,此时攻击者不能修改模型的参数或是结构;
- 投毒攻击是指在模型训练前进行攻击,此时攻击者可以在训练数据中插入「毒药」从而干扰模型的训练过程。


而根据攻击者对模型的知识,图对抗攻击也可以分为白盒攻击(white-box attack)、灰盒攻击(grey-box attack)和黑盒攻击(black-box attack):
- 白盒攻击是指攻击者可以获得被攻击的模型的完整信息,包括网络结构、模型参数和训练数据等;
- 灰盒攻击中攻击者不能访问模型的结构或参数,但可以获得被攻击的模型的训练数据;
- 黑盒攻击中攻击者不能访问任何与模型有关的信息,只允许从目标模型中进行查询来获得结果。



接下来我们会着重介绍这三种类型的常见攻击方法。
白盒攻击
PGD拓扑攻击
PGD拓扑攻击是通过修改图结构来进行攻击的方式,我们希望通过对图结构进行扰动来修改目标节点
其中
PGD拓扑攻击的基本思想就是通过学习对称布尔矩阵
其中
其中常数


基于积分梯度的攻击
我们还可以利用梯度信息作为分数来指导攻击。假设节点特征为离散特征,此时攻击者对图结构和节点信息的扰动都限制在0-1的离散值。因此我们可以利用梯度上升来最大化节点
注意到损失函数对于邻接矩阵
综合以上,可以得到基于积分梯度的对抗攻击流程如下图所示:

灰盒攻击
在灰盒攻击中,攻击者不仅仅鞥访问受害者模型的结构和参数,但可以访问用于训练的数据。因此灰盒攻击通常不是直接攻击给定的模型,而是首先利用训练数据训练一个代理模型,然后攻击这个代理模型。
Nettack
Nettack的目标是生成针对节点分类任务的对抗图。对于攻击目标
除此之外,Nettack还要求新图的度的分布以及特征共现与原图要尽可能接近。
和白盒攻击相比,Nettack首先需要训练一个代理模型GNN
注意此时是最大化目标函数。然后Nettack会选择使

Meta Attack
Meta Attack同样是一种针对节点分类任务的灰盒攻击攻击方法。与Nettack不同的是,在Meta Attack中攻击者希望降低GNN在测试集上的整体分类性能。需要注意的另一点是Meta Attack是一种投毒攻击,受害模型需要在污染过的图上进行训练和测试。
Meta Attack首先需要训练代理模型GNN
其中
整理一下,Meta Attack的本质是求解如下定义的双层优化问题:

黑盒攻击
最后一种估计方式是黑盒攻击,此时攻击者无法获知关于受害模型的任何信息而只能查询受害模型给出的预测结果。黑盒攻击的一种思路是把攻击建模成一个马尔科夫决策过程,根据攻击后受害模型的反馈来设计奖励函数,然后通过强化学习的相关方法来求解这个问题。

图对抗防御
与图对抗攻击所对应的内容是图对抗防御,我们希望我们的模型能够防御针对图类型数据的对抗攻击。图对抗防御计算可以主要分为四类:图对抗训练、图净化、图注意力机制与图结构学习。
图对抗训练
图对抗训练的基本思想是将对抗样本纳入模型的训练阶段,从而提高模型的鲁棒性。

根据对抗攻击的类型,图对抗训练可以分为针对图结构的对抗训练以及针对节点特征的对抗训练。


图净化
图净化的思想是从污染后的图数据中识别出对抗攻击的部分,并在训练模型前删除它们,从而在干净的图数据上训练模型。

实验研究表明,很多图对抗攻击方法会倾向于添加连接特征明显不同的节点的边。因此我们可以通过阈值化的方式过滤掉特征差异很大的节点之间的边,从而完成图净化。此外一些研究还表明图对抗攻击会改变邻接矩阵的秩,因此一些研究者也提出了使用SVD来对邻接矩阵进行低秩重建来恢复攻击前的邻接矩阵。
图结构学习
图结构学习的基本思想是在训练GNN的同时更新图的结构,从而获得鲁棒的图神经网络。

图注意力机制
图注意力机制的思想是使图更少地关注那些容易受到攻击的节点或边,从而减少这类节点或边的影响。在RGCN中提出了使用高斯分布来对节点表示进行建模,并通过基于方差的注意力机制来阻止对抗攻击在网络上的传播。
