2. 北京航空航天大学 软件学院, 北京 102206;
3. 清华大学 计算机科学与技术系, 北京 100084
2. School of Software, Beihang University, Beijing 102206, China;
3. Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China
图是一种非常常见的数据结构,社交网络、引用网络、分子网络、交通网络等通常采用图结构来建模数据。图神经网络作为目前处理图结构数据最为有效的方式,极大地促进了各类图分析应用如节点分类[1, 2]、链路预测[3, 4]、图分类[5, 6]等的研究。进一步地,图学习在推荐系统,分子预测,蛋白质预测等应用领域也取得了巨大的成功。然而由于有标签数据过于昂贵且不易获得,导致有监督学习的成本较高,因此越来越多的研究开始转向自监督学习领域,对比学习便是目前自监督学习领域最为流行的一种学习方法。对比学习在计算机视觉领域取得了非常好的效果,催生了一系列图对比学习(graph contrastive learning, GCL)方法,如DGI[7]、MVGRL[8]、GRACE[9]等。
虽然深度神经网络方法对于复杂问题的求解有着很好的性能表现,但是研究表明深度神经网络在对抗攻击下表现出一定程度的脆弱性,图卷积网络(graph convolutional network, GCN)也未能幸免,即使对节点特征或者图结构进行微小的扰动也会导致完全错误的预测结果[10-11]。而自监督的GCL方法中也存在此类问题。到目前为止,仍然没有一个有效的算法可以验证一个GCL算法是否具有鲁棒性。
本文提出了基于节点特征对抗性攻击的图对比学习鲁棒性验证算法。首先,定义了图对比学习中的鲁棒性问题,并将其建模为一个动态规划问题。然后,针对该动态规划问题求解中的困难,提出了负例样本采样、二元离散特征放松到连续域、非线性激活函数放松等解决方法,并通过对偶问题进行高效求解。该算法具有不依赖特定攻击算法、数据标签以及下游任务的优势。最后,通过充分的实验说明该图对比学习鲁棒性验证算法的有效性,并验证了针对特定攻击算法设计的鲁棒的图对比学习算法可能不能在其他攻击上泛化其鲁棒性。
1 相关工作 1.1 图对比学习早期图上的自监督方法如DeepWalk[12]和node2vec[13]方法基于随机游走采样得到正例对和负例对。受计算机视觉领域对比学习的启发,DGI[7]借鉴了Deep InfoMax[14],相比早期的随机游走方法实现了巨大的性能提升。GMI[15]采用了和DGI一样的框架,但是将互信息的概念从向量空间泛化到了图领域中。MVGRL[8]通过将图扩散引入到图对比学习中进一步提升了DGI方法的性能。近期的工作通常沿用计算机视觉领域SimCLR[16]和MoCo[17]中提出的数据增广方法,将从相同数据实例增强出来的数据作为正例,不同数据实例增强出来的数据作为负例。GRACE[9]通过均匀随机采样同时对边和节点特征进行扰动,来产生2个视图,并采用类似SimCLR的框架进行训练。GCA[18]是GRACE方法的改进版,不再采用均匀随机采样,而是根据节点以及边的重要性进行随机采样扰动。最近,人们开始从谱域角度研究GCL,SpCo[19]从谱图角度揭示了GCL的最佳增广方式,SPAN[20]也从谱域的角度设计GCL的数据增广。考虑到图的同质性,NeCo[21]将GCL与同质性联系起来,在节点分类任务上也取得很好的效果。
1.2 图鲁棒性验证工作神经网络以及图神经网络面对微小的对抗扰动展现出高度的敏感性,GCL中也存在此类情况。近年来有很多启发式增强图模型鲁棒性的方法如对抗训练、可训练边权重、迁移学习等出现。然而这些方法都没有提供可证明的鲁棒性保证。文[22]是第一篇图学习领域的鲁棒性验证方法,主要围绕节点特征扰动的鲁棒性验证问题进行讨论。文[23]则主要聚焦于图结构扰动,对GCN的鲁棒性验证问题进行讨论。这2篇文章都面向节点分类任务,文[24]则是面向图级别分类任务中结构攻击的鲁棒性验证算法。文[22-24]均是采用通过对ReLU激活函数进行凸放松的方式求解。文[25]采用一个新的随机平滑方法来求解鲁棒性验证问题。文[26]提出之前的图鲁棒性验证工作都是节点对级别的,对于图分类任务可能并不合适,于是提出结构级别的图鲁棒性验证。
尽管已经有了一些针对有监督图学习的鲁棒性验证算法,但却缺少对GCL进行鲁棒性验证的工作,本文针对图上的节点特征扰动,设计了GCL的鲁棒性验证算法,并且避免了对攻击算法、数据标签以及下游任务的依赖,仅仅需要编码器产生的节点嵌入表示就可进行鲁棒性验证。
1.3 图对比对抗训练对抗训练(adversarial training, AT)是提升模型鲁棒性至关重要的一大类方法。对抗训练方法从原本干净的图中动态生成对抗节点样本,通过将对抗节点样本加入到训练集中,以此来增强训练过程。GAD[27]采用对抗训练,不仅研究节点的局部平滑度,还考虑图结构之间的关系,从而训练得到在图结构上平滑预测的鲁棒图神经网络。GACN[28]将GCL与生成对抗网络(generative adversarial network, GAN)结合起来,通过使用GAN生成另1个视图,使得GCL学到更高质量、更加鲁棒的嵌入表示。ARIEL[29]将对抗训练的思想引入到GCL中。该方法采用投影梯度下降(projected gradient descent,PGD)攻击[30]来生成对抗样本,对PGD攻击具有较高的鲁棒性,但是可能并不具有可泛化的鲁棒性,本文的图对比学习鲁棒性验证方法通过实验证实了这一点。
2 预备知识 2.1 记号本文主要符号如表 1所示。Nl(t)表示节点vt的l跳邻居集合,即从节点vt出发经过最多l跳可达到的所有节点(包含vt本身)的集合。给定矩阵X,使用[X]+=max(X, 0)表示其中大于0的所有元素,使用[X]-=min(X, 0)表示其中小于0的所有元素;使用Tr[X]表示矩阵的迹。d(l)表示第l层GCN输出的隐藏空间的维度,即
记号 | 定义 |
A | 邻接矩阵 |
归一化邻接矩阵 | |
切片邻接矩阵 | |
X | 特征矩阵 |
切片特征矩阵 | |
Nl(t) | 节点vt的l跳邻居集合 |
H | 嵌入表示矩阵 |
第l层激活前嵌入表示 | |
H(l) | 第l层GCN输出 |
gθ | GCN编码器 |
θ | GCN编码器参数 |
q | 局部扰动强度 |
Q | 全局扰动强度 |
离散特征扰动空间 | |
连续特征扰动空间 | |
扰动特征矩阵 | |
S(l) | |
R(l) |
2.2 图对比学习
本文基于GRACE[9]的框架来介绍图对比学习。给定图G=(A, X),其中A∈{0, 1}n×n,当节点对(vi, vj)之间存在一条边时,A[i, j]=1,否则A[i, j]=0。X∈{0, 1}n×d是节点特征矩阵。通过数据增广生成原图的2个不同的视图G1=(A1, X1)和G2=(A2, X2)。通过gθ,可以得到这2个视图的节点嵌入表示H1=gθ(A1, X1)和H2=gθ(A2, X2)。2个视图中对应节点作为正例样本对,其余所有节点都是其负例样本。定义节点u和v的相似度为sim(u, v),通常将u和v的嵌入表示投影后计算得到的两者余弦相似度作为sim(u, v)。标记ui=H1[i, : ]和vi=H2[i, : ],对比损失函数定义如下:
$ \begin{array}{c} L_{\text {con }}\left(\boldsymbol{G}_{1}, \boldsymbol{G}_{2}\right)=\frac{1}{2 n} \sum\limits_{i=1}^{n}\left(l\left(\boldsymbol{u}_{i}, \boldsymbol{v}_{i}\right)+l\left(\boldsymbol{v}_{i}, \boldsymbol{u}_{i}\right)\right), \\ l\left(\boldsymbol{u}_{i}, \boldsymbol{v}_{i}\right)= \\ -\log \frac{\mathrm{e}^{\operatorname{sim}\left(\boldsymbol{u}_{i}, \boldsymbol{v}_{i}\right) / \tau}}{\mathrm{e}^{\operatorname{sim}\left(\boldsymbol{u}_{i}, \boldsymbol{v}_{i}\right) / \tau}+\sum\limits_{j \neq i} \mathrm{e}^{\operatorname{sim}\left(\boldsymbol{u}_{i}, \boldsymbol{v}_{j}\right) / \tau}+\sum\limits_{j \neq i} \mathrm{e}^{\operatorname{sim}\left(\boldsymbol{u}_{i}, \boldsymbol{u}_{j}\right) / \tau}} . \end{array} $ |
其中τ是一个温度参数。
2.3 切片矩阵及切片图卷积网络在图表示学习中,对于1个L层的GCN而言,其中1个节点vt的输出Ht(L)只与其(L-1)跳的邻居集合NL-1(t)相关。因此,为了获得某个节点的嵌入表示,并不需要整张图上所有的节点特征,只需要知道其(L-1)跳的邻居集合NL-1(t)即可。定义切片邻接矩阵和切片特征矩阵如下:
$ \begin{gathered} \dot{\boldsymbol{A}}^{(l)}=\hat{\boldsymbol{A}}^{(l)}\left[N_{L-l}(t), N_{L-l+1}(t)\right], \\ \quad l=1, 2, \cdots, L-1 ; \\ \dot{X}=X\left[N_{L-l}(t):\right], l=1, 2, \cdots, L-1 . \end{gathered} $ |
其中,
有了切片邻接矩阵和切片特征矩阵,可以进一步定义切片GCN如下:
$ \begin{gathered} \left\{ \begin{array}{l} \hat{\boldsymbol{H}}^{(l)}=\dot{\boldsymbol{A}}^{(l-1)} \boldsymbol{H}^{(l-1)} \boldsymbol{W}^{(l-1)}+\boldsymbol{b}^{(l-1)}, \\ \boldsymbol{H}^{(l)}=\operatorname{ReLU}\left(\hat{\boldsymbol{H}}^{(l)}\right), \end{array} \right. \\ \quad l=2, 3, \cdots, L . \end{gathered} $ | (1) |
其中
与常见的鲁棒性测度不同,本文提出的图对比学习鲁棒性验证算法不再依赖于特定的攻击算法,而是考虑将节点特征的扰动限制在一定的扰动空间,在该扰动空间内去寻找一个最差的对抗样本。
考虑到图数据通常是二元离散的特征,因此不能直接采用范数约束来定义扰动空间。受到图对抗攻击领域已有的工作[10, 22]的启发,通过限制扰动的特征数量来定义这样的一个扰动空间,具体来说,通过一个参数Q∈
综上,可以将特征扰动空间定义为如下形式:
$ \begin{gathered} X_{q, Q}(\dot{\boldsymbol{X}})=\\ \left\{\widetilde{\boldsymbol{X}} \mid \widetilde{\boldsymbol{X}}[i, j] \in\{0, 1\} \wedge\|\widetilde{\boldsymbol{X}}-\dot{\boldsymbol{X}}\|_{0} \leqslant Q \wedge\right. \\ \left.\|\widetilde{\boldsymbol{X}}[i, :]-\dot{\boldsymbol{X}}[i, :]\|_{0} \leqslant q, \forall v_{i} \in N_{L-1}\right\} . \end{gathered} $ | (2) |
通过定义扰动空间,避免了本文提出的图对比学习鲁棒性验证算法对特定攻击算法的依赖。已有的GCN鲁棒性算法通过对比受扰动前后节点的预测输出是否改变作为其是否鲁棒的依据,即对于目标节点 vt,在其特征扰动空间内寻找1个最差的对抗样本
可以发现GCL的要点在于需要从原图中增广出2个不同的视图,2个视图中对应节点作为正例样本对,其余所有节点都是其负例样本。受此启发以及借鉴文[31],本文设计了GCL中节点鲁棒性的定义:给定1个目标节点 vt,定义其负例样本集合为Vt-,对于GRACE[9]和GCA[18]方法,Vt-= V-vt。对目标节点在其特征扰动范围 Xq, Q(
![]() |
图 1 对比学习鲁棒性验证算法 |
接下来给出图对比学习鲁棒性验证问题的形式化描述: 给定G、vt、Vt-和一个由θ参数化的gθ,定义对抗嵌入表示与正负例样本嵌入表示之间相似度差异在特征扰动空间内的最差情况为
$ \begin{gathered} \omega(t, k):=\min \left(\operatorname{norm}\left(\boldsymbol{g}_{\boldsymbol{\theta}}^{t}(\dot{\boldsymbol{X}}, \dot{\boldsymbol{A}})\right)-\right. \\ \left.\operatorname{norm}\left(\boldsymbol{g}_{\boldsymbol{\theta}}^{k}(\dot{\boldsymbol{X}}, \dot{\boldsymbol{A}})\right)\right)^{\mathrm{T}} \widetilde{\boldsymbol{g}}_{\boldsymbol{\theta}}^{t}(\widetilde{\boldsymbol{X}}, \dot{\boldsymbol{A}}), \\ \text { s.t. } \widetilde{\boldsymbol{X}} \in \mathcal{X}_{q, Q}(\dot{\boldsymbol{X}}) . \end{gathered} $ | (3) |
如果对于∀vk∈Vt-都有ω(t, k)>0,就可以说对于vt,在
在3.2节中,已经将本文的图对比学习鲁棒性验证算法形式化建模为一个动态规划问题。但仍有3个主要的障碍使得不能有效求解该动态规划问题。首先,Vt-的样本空间大小为(2n-2),如果对∀vk∈Vt-都去验证ω(t, k)>0,会产生巨大的时间开销。其次,由于gθ中含有非线性激活函数,这使得gθ是非凸的,从而无法有效求解该动态规划问题。最后,由于图的数据域通常是二元离散的,即对于任意
针对上述的3个问题,本文分别设计了相应的解决方案。
3.4 负例样本空间采样策略本文考虑采用从负例样本空间中随机采样K个负例样本,验证是否满足ω(t, k)>0的方式来近似验证节点的鲁棒性。具体来说,采样方法如下:首先,使用已经训练好的gθ获得所有节点的嵌入表示并对其归一化,即Z=norm(gθ(X))∈
式(3)中的对抗样本
为了使得上述动态规划问题变为凸的从而可以有效求解,本文需要对ReLU激活函数进行凸放松。本文采用文[32]中提出的方法。其核心思想为,首先将矩阵H(·)和
具体来说,考虑式(1),
当(i, j)∈Ψ(l)时,可以将ReLU函数的结果放松为一个凸包如下:
$ \begin{gathered} H^{(l)}[i, j]>\hat{H}^{(l)}[i, j], \\ H^{(l)}[i, j] \geqslant 0, \\ H^{(l)}[i, j]\left(S^{(l)}[i, j]-R^{(l)}[i, j]\right) \leqslant \\ S^{(l)}[i, j]\left(\hat{H}^{(l)}[i, j]-R^{(l)}[i, j]\right), \\ (i, j) \in \varPsi^{(l)} . \end{gathered} $ |
这一思想可使用图 2进行解释。可以发现,此时H(l)[i, j]不再是ReLU激活函数的确定性输出,而是一个被约束在一定范围内的可优化变量。
![]() |
图 2 ReLU激活函数放松示意图 |
相应地,对于(i, j)∈Ψ+(l)和(i, j)∈Ψ-(l)的情况,会有
$ \boldsymbol{H}^{(l)}[i, j]= \begin{cases}\hat{\boldsymbol{H}}^{(l)}[i, j], & (i, j) \in \varPsi_{+}^{(l)}; \\ 0 . & (i, j) \in \varPsi_{-}^{(l)} .\end{cases} $ |
对于这2种确定情况,本文并不需要进行放松。到这里,即可以将ReLU激活函数放松为一系列凸的线性约束。再加上式(1)表示的对矩阵H(·)和
$ \begin{gathered} \quad \widetilde{\omega}(t, k):=\min \left(\operatorname{norm}\left(\boldsymbol{g}_{\boldsymbol{\theta}}^{t}(\dot{\boldsymbol{X}}, \dot{\boldsymbol{A}})\right)-\right. \\ \left.\operatorname{norm}\left(\boldsymbol{g}_{\theta}^{k}(\dot{\boldsymbol{X}}, \dot{\boldsymbol{A}})\right)\right) \widetilde{\boldsymbol{g}}_{\boldsymbol{\theta}}^{t}(\widetilde{\boldsymbol{X}}, \dot{\boldsymbol{A}})=\min \boldsymbol{c}^{\mathrm{T}} \hat{\boldsymbol{H}}^{(L)}, \\ \text { s.t. } \widetilde{\boldsymbol{X}} \in \mathcal{X}_{q, Q}(\dot{\boldsymbol{X}}), \left[\boldsymbol{H}^{(\cdot)}, \hat{\boldsymbol{H}}^{(\cdot)}\right] \in \varPsi_{q, Q}(\widetilde{\boldsymbol{X}}) . \end{gathered} $ | (4) |
由于构造了[H(·),
在常用的图数据中,其节点特征是二元离散的,这会使得难以直接求解3.5节中提出的动态规划问题。针对这一问题,本文对数据域是二元离散的这一条件进行适当放松到实数域[0, 1]中,即使得
$ \begin{array}{c} \widehat{\mathcal{X}}_{q, Q}(\dot{\boldsymbol{X}})= \\ \left\{\widetilde{\boldsymbol{X}} \mid \widetilde{\boldsymbol{X}}[i, j] \in[0, 1] \wedge\|\widetilde{\boldsymbol{X}}-\dot{\boldsymbol{X}}\|_{1} \leqslant Q \wedge\right. \\ \left.\|\tilde{\boldsymbol{X}}[i, :]-\dot{\boldsymbol{X}}[i, :]\|_{1} \leqslant q, \forall \boldsymbol{v}_{\boldsymbol{i}} \in N_{L-1}\right\} . \end{array} $ |
注意,这里将式(2)中的L0范数改为L1范数,以适应二元离散特征到[0, 1]之间连续特征的改变。对二元离散的数据域放松之后,可以继续改写由式(3)动态规划问题形式化描述的图对比学习鲁棒性验证算法如下:
$ \begin{array}{c} \hat{\omega}(t, k):=\min \boldsymbol{c}^{\mathrm{T}} \hat{\boldsymbol{H}}^{(L)}, \\ \text { s.t. } \widetilde{\boldsymbol{X}} \in \widehat{\mathcal{X}}_{q, Q}(\dot{\boldsymbol{X}}), \left[\boldsymbol{H}^{(\cdot)}, \hat{\boldsymbol{H}}^{(\cdot)}\right] \in \varPsi_{q, Q}(\widetilde{\boldsymbol{X}}) \text {. } \end{array} $ | (5) |
至此,式(5)描述的动态规划问题的优化目标以及所有约束条件都是线性的。由于
在3.5节中,本文说明了对非线性ReLU激活函数进行放松的方法,其中一个关键点在于找到S(l)[i, j]和R(l)[i, j]。越紧的上界和下界会使得对ReLU激活函数进行放松导致的误差越小,所以如何获得一个好的上界和下界对本文的图对比学习鲁棒性验证算法是非常重要的。
这里采用文[22]中提出的解决办法,假设考虑目标节点为vt,对于其(L-2)跳的任意邻居,即对于所有节点vm∈NL-2(t),需要计算它在第2层GCN中的第j维的上界S(2)[m, j]如下:
$ \begin{gathered} \boldsymbol{S}^{(2)}[m, j]=\hat{\boldsymbol{H}}^{(2)}[m, j]+\text { sum_top_}Q \cdot \\ \left(\left[\dot{\boldsymbol{A}}^{(1)}[m, p] \hat{\boldsymbol{S}}^{(2)}[p, j, i]\right]_{v_{p} \in N_{1}(m), i \in\{1, \cdots, q\}}\right), \\ \hat{\boldsymbol{S}}^{(2)}[p, j, i]=i \text {-th_largest } \cdot \\ \left((1-\dot{\boldsymbol{X}}[p, :]) \odot\left[\boldsymbol{W}^{(1)}[:, j]\right]_{+}+\right. \\ \left.(\dot{\boldsymbol{X}}[p, :]) \odot\left[\boldsymbol{W}^{(1)}[:, j]\right]_{-}\right) \end{gathered} $ | (6) |
其中i-th_largest(·)表示从相应向量中选择出第i大的元素,sum_top_Q(·)表示从相应列表中选择Q个最大元素求和。式(6)的第1项是由未受扰动的输入
类似地,可以计算第2层GCN中的第j维的下界R(2)[m, j]:
$ \begin{array}{c} \boldsymbol{R}^{(2)}[m, j]=\hat{\boldsymbol{H}}^{(2)}[m, j]- \\ \text { sum_top_ } Q\left(\left[\dot{\boldsymbol{A}}^{(1)}[m, p] \cdot\right.\right. \\ \left.\left.\hat{\boldsymbol{R}}^{(2)}[p, j, i]\right]_{v_{p} \in N_{1}(m), i \in\{1, \cdots, q\}}\right), \\ \hat{\boldsymbol{R}}^{(2)}[p, j, i]=i \text {-th_largest } \cdot \\ \left(\dot{\boldsymbol{X}}[p, :] \odot\left[\boldsymbol{W}^{(1)}[:, j]\right]_{+}+\right. \\ \left.(1-\dot{\boldsymbol{X}}[p, :]) \odot\left[\boldsymbol{W}^{(1)}[:, j]\right]_{-}\right) . \end{array} $ |
对于剩下的GCN层,继续采用在文[22]中提出的上界和下界:
$ \begin{gathered} \boldsymbol{R}^{(l)}=\dot{\boldsymbol{A}}^{(l-1)}\left(\boldsymbol{R}^{(l-1)}\left[\boldsymbol{W}^{(l-1)}\right]_{+}-\boldsymbol{S}^{(l-1)}\left[\boldsymbol{W}^{(l-1)}\right]_{-}\right), \\ \boldsymbol{S}^{(l)}=\dot{\boldsymbol{A}}^{(l-1)}\left(\boldsymbol{S}^{(l-1)}\left[\boldsymbol{W}^{(l-1)}\right]_{+}-\boldsymbol{R}^{(l-1)}\left[\boldsymbol{W}^{(l-1)}\right]_{-}\right), \\ l=3, 4, \cdots, L-1 . \end{gathered} $ | (7) |
以上界R(l)为例,对式(7)做一个直观的解释:对于权重为正的部分即[W(l-1)]+,采用前一层激活函数输入值的上界R(l-1),而对于权重为负的部分即[W(l-1)]-,采用前一层激活函数输入值的下界S(l-1)。对于下界S(l)则相反。
3.8 对偶优化有效求解下界到此,事实上已经可以通过求解式(5)描述的动态规划问题来实现图对比学习鲁棒性验证算法。但由于该线性规划问题的变量过多,直接采用式(5)的线性规划来求解效率会很低。一个线性规划问题的对偶问题的可行解是原线性规划问题解的下界,于是考虑采用对偶优化的方式来高效求解。
参考文[22]和[32],给出式(5)的对偶问题的形式化定义:
$ \begin{gathered} \max \xi_{q, Q}^{t}(\dot{\boldsymbol{X}}, \boldsymbol{c}, \boldsymbol{\varOmega}, \boldsymbol{\eta}, \rho) \\ \text { s.t. } \quad \boldsymbol{\varOmega}^{(l)} \in[0, 1]^{\left|N_{L-1}\right| \times d^{(l)}}, \\ \quad l=L-1, L-2, \cdots, 2 \\ \quad \boldsymbol{\eta} \in \mathbb{R}_{\geqslant 0}^{\left|N_{L-1}\right|}, \rho \in \mathbb{R}_{\geqslant 0} . \end{gathered} $ | (8) |
其中:
$ \begin{gathered} \xi_{q, Q}^{t}(\dot{\boldsymbol{X}}, \boldsymbol{c}, \boldsymbol{\varOmega}, \boldsymbol{\eta}, \rho)= \\ \sum\limits_{l=2}^{L-1} \sum\limits_{(i, j) \in \varPsi^{(l)}} \frac{\boldsymbol{S}^{(l)}[i, j] \boldsymbol{R}^{(l)}[i, j]}{\boldsymbol{S}^{(l)}[i, j]-\boldsymbol{R}^{(l)}[i, j]}\left[\hat{\boldsymbol{\varPhi}}^{(l)}[i, j]_{+}\right]- \\ \sum\limits_{l-1}^{L-1} 1^{\mathrm{T}} \boldsymbol{\varPhi}^{(l+1)} b^{(l)}-\operatorname{Tr}\left[\dot{\boldsymbol{X}} \dot{\boldsymbol{\varPhi}}^{(1)}\right]-\|\boldsymbol{\varGamma}\|_{1}- \\ q \sum\limits_{i} \boldsymbol{\eta}_{i}-Q_{\rho}, \end{gathered} $ |
并且
$ \begin{gathered} \boldsymbol{\varPhi}^{(L)}=-\boldsymbol{c} \in \mathbb{R}^{d^{\prime}} . \\ \hat{\boldsymbol{\varPhi}}^{(l)}=\dot{\boldsymbol{A}}^{(l) \mathrm{T}} \boldsymbol{\varPhi}^{(l+1)} \boldsymbol{W}^{(l) \mathrm{T}} \in \mathbb{R}^{\left|N_{L-1}\right| \times d^{\prime}}, \\ l=L-1, \cdots, 1 . \\ \boldsymbol{\varPhi}^{(l)}[i, j]=\left\{\begin{array}{l} 0, \quad(i, j) \in \varPsi_{-}^{(l)} ; \\ \hat{\boldsymbol{\varPhi}}^{(l)}[i, j], \quad(i, j) \in \varPsi_{+}^{(l)} ; \\ \frac{\boldsymbol{S}^{(l)}[i, j]}{\boldsymbol{S}^{(l)}[i, j]-\boldsymbol{R}^{(l)}[i, j]} \left[\hat{\boldsymbol{\varPhi}}^{(l)}[i, j]\right]_{+}- \\ \boldsymbol{\varOmega}^{(l)}[i, j]\left[\hat{\boldsymbol{\varPhi}}^{(l)}[i, j]\right]_{-}, \\ \quad(i, j) \in \varPsi^{(l)} ; \end{array}\right. \\ l=L-1, \cdots, 2 .\\ \boldsymbol{\varGamma}[i, j]=\max \left\{\Delta[i, j]-\left(\boldsymbol{\eta}_{i}+\rho\right), 0\right\} . \\ \Delta[i, j]=\left[\hat{\boldsymbol{\varPhi}}_{+}^{(1)}[i, j]\right]_{+}(1-\dot{\boldsymbol{X}}[i, j])+ \\ {\left[\hat{\boldsymbol{\varPhi}}^{(1)}[i, j]\right]_{-} \dot{\boldsymbol{X}}[i, j] .} \end{gathered} $ |
如果将
通过3.8节所述方法,可以近似验证一个GCL编码器的鲁棒性。但值得注意的是,即使式(8)解的极大值小于0,也不能说明该GCL编码器在及其扰动空间内是非鲁棒的。因为该极大值是式(5)解的下界,而式(5)的解又是式(3)解的下界。于是,还需要1个方法来验证其非鲁棒性。文[22]给出了找到扰动空间内最差扰动的方法,将vt和vk的嵌入表示分别记为gθt和gθk,将对特征经过最差扰动的vt的嵌入表示记为
本文主要在Cora-ML [33]和CiteSeer [34]这2个图学习研究领域广泛使用的图数据集上进行实验。对于每个数据集中的每个节点,允许其1%的特征可以被扰动,即q=0.01d,d为输入特征维度。对于全局扰动,设置不同Q的来观察其结果。
4.2 评测模型本文评测了2个经典的GCL模型。一个是GRACE[9]模型,它通过均匀随机采样同时对边和节点特征进行扰动,来产生2个视图,并采用类似SimCLR的框架进行训练。2个视图中对应节点做为正例样本对,其余所有节点都是其负例样本。另一个是ARIEL[29]模型,这是特定针对PGD攻击[30]而改进的鲁棒GCL方法。它不仅对边和节点特征进行扰动产生2个视图G1和G2,还通过PGD攻击来产生1个对抗视图Gadv,分别对G1和G2、G1和Gadv运用对比损失,从而训练出针对PGD攻击鲁棒的编码器。
4.3 实验设置考虑到图对比学习隐藏层的特征维度往往比较大,会导致机器显存不足的问题,实验中略微减小了隐藏层特征维度。对于Cora数据集和CiteSeer数据集,2个模型的隐藏层特征维度均设置为64。其余设置均与文[9, 29]提供的代码相同。
注意图对比学习在训练过程中是不需要下游任务信息的。本文提出的图对比学习鲁棒性验证算法也仅仅需要使用节点的嵌入表征,采用第3章中的方法,就可以去评测图对比学习算法的鲁棒性。因此该方法是不依赖于下游任务的。
4.4 验证GRACE编码器的鲁棒性使用本文提出的图对比学习鲁棒性验证算法对GRACE模型进行鲁棒性验证。
图 3为GRACE模型在Cora-ML数据集上的鲁棒性表现,蓝线和橙线分别表示验证鲁棒与验证非鲁棒节点的占比。两条曲线之间的纵轴差值是较小的(此为不能被验证为鲁棒或非鲁棒的节点的占比),最大的差值约为30%,表明本文提出的方法可以较为有效地验证图对比学习算法的鲁棒性,也说明本文采取的一系列放松方式以及对非线性激活函数寻找的上界下界都是比较合理的。
![]() |
图 3 GRACE模型在Cora-ML数据集上鲁棒性表现 |
从图 3可以看到,GRACE模型只在Q较小时会有较好的可验证鲁棒性,且其可验证鲁棒性随着Q的增大快速衰减,当Q=12时,有73.02%的节点被验证为鲁棒的,但当Q=15时,就只有59.73%的节点会被验证为是鲁棒的。这一现象在更加复杂的CiteSeer数据集上表现得更加明显。图 4展示了GRACE模型在CiteSeer上的鲁棒性表现。
![]() |
图 4 GRACE模型在CiteSeer数据集上鲁棒性表现 |
从图 4可以看到,在CiteSeer数据集上,随着Q的增大,可验证鲁棒的节点占比迅速减小,而可验证非鲁棒的节点占比迅速增大。具体的,当扰动空间Q=15时,就只有24.91%的节点被验证为是鲁棒的,且有39.4%的节点被验证是非鲁棒的。这进一步证明了GCL对于输入的微小扰动是十分脆弱的。
4.5 验证ARIEL编码器的鲁棒性为了解决神经网络面对攻击表现脆弱的问题,很多方法针对一种特定的攻击进行防御从而获得鲁棒性,然而难以得知这种鲁棒性是否是可以泛化到其他的攻击上。本节使用提出的图对比学习鲁棒性验证算法来检测一个GCL模型的鲁棒性是否可以泛化。采用ARIEL模型与GRACE模型进行对比。ARIEL模型可以看作GRACE模型的一个改进版本,它与GRACE模型主要区别有2点:ARIEL在每个训练过程都会采样1个子图,对该子图增广产生2个不同的视图;它还会对子图使用PGD攻击产生1个对抗视图。ARIEL在这3个子图上分别使用对比损失函数来训练模型。
通过对比实验比较GRACE模型和ARIEL模型分别在Cora-ML数据集以及CiteSeer模型上的鲁棒性表现。从图 5可以看出,在Cora-ML数据集上,ARIEL模型的可验证鲁棒性的节点占比会略高于GRACE模型,但并不能说明ARIEL模型的可验证鲁棒性比GRACE更好,因为它们的验证非鲁棒性的节点占比几乎一致。然而,从图 6可以看出,在CiteSeer数据集上,ARIEL模型的可验证鲁棒性是要显著比GRACE模型差的。这一现象证明:针对特定攻击设计的鲁棒性模型的鲁棒性往往不能泛化,甚至在面对另一种攻击算法时会表现出更加脆弱。
![]() |
图 5 ARIEL模型在Cora-ML数据集上鲁棒性表现 |
![]() |
图 6 ARIEL模型在CiteSeer数据集上鲁棒性表现 |
为了进一步说明说明是ARIEL中的哪一项改动使得其可验证的鲁棒性变差了,本文进一步通过消融实验,去掉ARIEL模型的2项改动,然后使用图对比学习鲁棒性验证算法对其进行分析。首先将ARIEL模型中采样子图的部分去除,而保留其使用PGD攻击生成对抗样本的部分,并将其与ARIEL模型在CiteSeer数据集上的可验证鲁棒性进行对比,结果如图 7所示。可以看到,二者并无明显区别,这说明采样子图并不会对模型的可验证鲁棒性产生过多影响。
![]() |
图 7 ARIEL模型去掉子图采样后在CiteSeer数据集上鲁棒性表现 |
接下来将ARIEL模型中使用PGD攻击生成对抗样本的部分去除,而保留其采样子图的部分,并将其与ARIEL模型在CiteSeer数据集上的可验证鲁棒性进行对比,结果如图 8所示。可以看到,当去掉使用PGD攻击生成对抗样本的步骤后,模型的可验证鲁棒性有着比较明显的提升,可以证明采用PGD攻击生成对抗样本的ARIEL模型虽然在面对PGD攻击时有着优越的鲁棒性能,但是这种做法带来的鲁棒性提升并不能泛化到其他攻击中。ARIEL模型的可验证鲁棒性变差意味着其在面对另外一种攻击时很可能会表现得更加脆弱。
![]() |
图 8 ARIEL模型去掉对抗样本后在CiteSeer数据集上鲁棒性表现 |
4.6 参数实验
在本文提出的图对比学习鲁棒性验证算法中,考虑到负例样本空间过大问题时,采用了对负例样本采样的策略来近似。本节通过对采样的负例样本数量进行参数实验,来说明这一做法是合理的。对于Cora-ML和CiteSeer 2个数据集,将Q固定为12,然后对GRACE和ARIEL模型设置不同的K去验证其鲁棒性。
从图 9和10中可以看出,随着采样负例数量的增加,验证鲁棒节点占比会逐渐减少,同时验证非鲁棒节点的占比会逐渐增多。但可以看到,这种趋势在K>20时已经很微小了,所以本文的图对比学习鲁棒性验证算法采用K=20作为采样负例样本数量是比较合理的,可以高效且准确地验证GCL的编码器的鲁棒性。
![]() |
图 9 Cora-ML数据集上不同K下模型的鲁棒性差异 |
![]() |
图 10 CiteSeer数据集上不同K下模型的鲁棒性差异 |
5 结论
本文提出了基于节点特征对抗性攻击的图对比学习鲁棒性验证算法。首先,定义了图对比学习中的鲁棒性问题,并将其建模为一个动态规划问题。然后,针对该动态规划问题求解中的困难,提出了负例样本采样、二元离散特征放松到连续域、非线性激活函数放松等解决方法,并通过对偶问题进行高效求解。该算法能在不依赖特定攻击算法、数据标签以及下游任务的情况下,验证GCL模型的鲁棒性。最后,通过实验证明了所提出方法的有效性;并通过对比实验和消融实验,验证了针对某种特定攻击设计的鲁棒性算法往往不能够在其他攻击上泛化其鲁棒性,进一步表明了本文提出的图对比学习鲁棒性验证算法的重要性。
该算法未考虑结构扰动下的鲁棒性,下一步将继续考虑结构扰动的情况,从而为设计一个在各种攻击上都有鲁棒性保证的GCL算法提供支持。
[1] |
ABU-EL-HAIJA S, PEROZZI B, KAPOOR A, et al. Mixhop: Higher-order graph convolutional architectures via sparsified neighborhood mixing[C]//Proceedings of the 36th International Conference on Machine Learning. Long Beach, CA, USA: PMLR, 2019: 21-29.
|
[2] |
WU J, HE J R, XU J J. DEMO-Net: Degree-specific graph neural networks for node and graph classification[C]//Proceedings of the 25th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. Anchorage, USA: ACM, 2019: 406-415.
|
[3] |
KIPF T N, WELLING M. Variational graph auto-encoders[EB/OL]. (2016-11-21). https://arxiv.org/abs/1611.07308.
|
[4] |
YOU J X, YING R, LESKOVEC J. Position-aware graph neural networks[C]//Proceedings of the 36th International Conference on Machine Learning. Long Beach, CA, USA: PMLR, 2019: 7134-7143.
|
[5] |
GAO H Y, JI S W. Graph u-nets[C]//Proceedings of the 36th International Conference on Machine Learning. Long Beach, CA, USA: PMLR, 2019: 2083-2092.
|
[6] |
ZHANG M H, CUI Z C, NEUMANN M, et al. An end-to-end deep learning architecture for graph classification[C]//Proceedings of the Thirty-Second AAAI Conference on Artificial Intelligence and Thirtieth Innovative Applications of Artificial Intelligence Conference and Eighth AAAI Symposium on Educational Advances in Artificial Intelligence. New Orleans, USA: AAAI, 2018: 4438-4445.
|
[7] |
VELIČKOVIĆ P, FEDUS W, HAMILTON W L, et al. Deep graph infomax[C]//7th International Conference on Learning Representations. New Orleans, LA, USA: OpenReview. net, 2019.
|
[8] |
HASSANI K, KHASAHMADI A H. Contrastive multi-view representation learning on graphs[C]//37th International Conference on Machine Learning. Vienna, Austria: PMLR, 2020: 4116-4126.
|
[9] |
ZHU Y Q, XU Y C, YU F, et al. 2020. Deep graph contrastive representation learning[EB/OL]. (2020-07-13). https://arxiv.org/abs/2006.04131.
|
[10] |
ZÜGNER D, AKBARNEJAD A, GüNNEMANN S. Adversarial attacks on neural networks for graph data[C]//Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. London, UK: ACM, 2018: 2847-2856.
|
[11] |
ZüGNER D, GüNNEMANN S. Adversarial attacks on graph neural networks via meta learning[C]//7th International Conference on Learning Representations. New Orleans, USA: OpenReview. net, 2019.
|
[12] |
PEROZZI B, AL-RFOU R, SKIENA S. DeepWalk: Online learning of social representations[C]//Proceedings of the 20th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York, USA: ACM, 2014: 701-710.
|
[13] |
GROVER A, LESKOVEC J. Node2vec: Scalable feature learning for networks[C]//Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. San Francisco, USA: ACM, 2016: 855-864.
|
[14] |
HJELM R D, FEDOROV A, LAVOIE-MARCHILDON S, et al. Learning deep representations by mutual information estimation and maximization[C]//7th International Conference on Learning Representations. New Orleans, LA, USA: OpenReview. net, 2019.
|
[15] |
PENG Z, HUANG W B, LUO M N, et al. Graph representation learning via graphical mutual information maximization[C]//Proceedings of The Web Conference. Taipei, China: ACM, 2020: 259-270.
|
[16] |
CHEN T, KORNBLITH S, NOROUZI M, et al. A simple framework for contrastive learning of visual representations[C]//Proceedings of the 37th International Conference on Machine Learning. Vienna, Austria: PMLR, 2020: 1597-1607.
|
[17] |
HE K M, FAN H Q, WU Y X, et al. Momentum contrast for unsupervised visual representation learning[C]//2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Seattle, USA: IEEE, 2020: 9729-9738.
|
[18] |
ZHU Y Q, XU Y C, YU F, et al. Graph contrastive learning with adaptive augmentation[C]//Proceedings of the Web Conference. Ljubljana, Slovenia: ACM, 2021: 2069-2080.
|
[19] |
LIU N, WANG X, BO D Y, et al. Revisiting graph contrastive learning from the perspective of graph spectrum[C]//Proceedings of the 36th International Conference on Neural Information Processing Systems. New Orleans, Louisiana, USA: MIT Press, 2022.
|
[20] |
LIN L, CHEN J H, WANG H N. Spectral augmentation for self-supervised learning on graphs[C]//The Eleventh International Conference on Learning Representations. Kigali, Rwanda: OpenReview. net, 2023.
|
[21] |
HE D X, ZHAO J T, GUO R, et al. Contrastive learning meets homophily: Two birds with one stone[C]//Proceedings of the 40th International Conference on Machine Learning. Honolulu, Hawaii, USA: PMLR, 2023.
|
[22] |
ZüGNER D, GüNNEMANN S. Certifiable robustness and robust training for graph convolutional networks[C]//Proceedings of the 25th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. Anchorage, USA: ACM, 2019: 246-256.
|
[23] |
BOJCHEVSKI A, GüNNEMANN S. Certifiable robustness to graph perturbations[C]//Proceedings of the 33rd International Conference on Neural Information Processing Systems. New York, USA: ACM, 2019: 8319-8330.
|
[24] |
JIN H W, SHI Z, PERURI A, et al. Certified robustness of graph convolution networks for graph classification under topological attacks[C]//Proceedings of the 34th International Conference on Neural Information Processing Systems. Vancouver, Canada: ACM, 2020: 8463-8474.
|
[25] |
WANG B H, JIA J Y, CAO X Y, et al. Certified robustness of graph neural networks against adversarial structural perturbation[C]//Proceedings of the 27th ACM SIGKDD Conference on Knowledge Discovery & Data Mining. New York, USA: ACM, 2021: 1645-1653.
|
[26] |
OSSELIN P, KENLAY H, DONG X W. Structure-aware robustness certificates for graph classification[C]//Uncertainty in Artificial Intelligence. Pittsburgh, PA, USA: PMLR, 2023.
|
[27] |
FENG F L, HE X N, TANG J, et al. Graph adversarial training: Dynamically regularizing based on graph structure[J]. IEEE Transactions on Knowledge and Data Engineering, 2021, 33(6): 2493-2504. DOI:10.1109/TKDE.2019.2957786 |
[28] |
WU C, WANG C K, XU J C, et al. Graph contrastive learning with generative adversarial network[C]//Proceedings of the 29th ACM SIGKDD Conference on Knowledge Discovery and Data Mining. Long Beach, USA: ACM, 2023: 2721-2730.
|
[29] |
FENG S Y, JING B Y, ZHU Y D, et al. Adversarial graph contrastive learning with information regularization[C]//Proceedings of the ACM Web Conference 2022. Lyon, France: ACM, 2022: 1362-1371.
|
[30] |
MADRY A, MAKELOV A, SCHMIDT L, et al. Towards deep learning models resistant to adversarial attacks[C]//6th International Conference on Learning Representations. Vancouver, BC, Canada: OpenReview. net, 2018.
|
[31] |
WANG Z K, LIU W W. Robustness verification for contrastive learning[C]//Proceedings of the 39th International Conference on Machine Learning. Baltimore, Maryland, USA: PMLR, 2022: 22865-22883.
|
[32] |
WONG E, KOLTER Z. Provable defenses against adversarial examples via the convex outer adversarial polytope[C]//Proceedings of the 35th International Conference on Machine Learning. Stockholmsmässan, Stockholm, Sweden: PMLR, 2018: 5283-5292.
|
[33] |
MCCALLUM A K, NIGAM K, RENNIE J, et al. Automating the construction of internet portals with machine learning[J]. Information Retrieval, 2000, 3(2): 127-163. DOI:10.1023/A:1009953814988 |
[34] |
SEN P, NAMATA G, BILGIC M, et al. Collective classification in network data[J]. AI Magazine, 2008, 29(3): 93-106. |