【LHS(异配图对抗攻击防御模型)】本文通过自动学习异配图上的潜在同配性结构(Latent Homophilic Structures,LHS)来提高GCNs的鲁棒性。
发表在2024年AAAI会议上,作者是北京邮电大学和新加坡南洋理工大学的,引用量0。
AAAI会议简介:由人工智能促进协会AAAI(Association for the Advancement of Artificial Intelligence)主办,人工智能顶会,CCF A。
查询会议:
- 会伴:https://www.myhuiban.com/
- CCF deadline:https://ccfddl.github.io/
原文和开源代码链接:
- paper原文:https://arxiv.org/abs/2312.16418
- 开源代码:None
0、核心内容
图卷积网络(GCNs)被广泛应用于各种图任务重,从空间数据中挖掘知识。我们的研究标志着定量研究GCN对无处不在的异配图的鲁棒性的开创性尝试。我们发现,主要的脆弱性是由结构性外分布(structural out-of-distribution,OOD)问题引起的。
这一研究激励我们提出一种新的方法,旨在通过自动学习异配图上的潜在同配性结构(Latent Homophilic Structures,LHS)来强化GCNs。我们将这种方法称之为LHS。为了详细说明,我们的第一步是通过使用一种基于多节点交互(based on multi-node interactions)的新型自我表达技术(a novel self-expressive technique)来学习一个潜在的结构。随后,使用成对约束的双视图对比学习方法(dual-view contrastive learning approach)对该结构进行了重构。我们迭代地执行上述过程,使GCN模型能够以同配的方式在异配图上聚集信息。有了这样的适应性结构,我们可以适当地减轻异配图上的OOD威胁。
在各种基准上的实验表明所提出的LHS方法对鲁棒GCNs的有效性。
(引自摘要)
1、先验知识
① 什么是结构性外分布(structural out-of-distribution,OOD)?
结构性外分布是本文提出的概念,用来描述图神经网络(GNNs),特别是图卷积网络(GCNs)在处理与训练数据在结构上显著不同的测试数据时出现的脆弱性。具体来说,在图数据的上下文中,OOD指的是测试或攻击样本的图结构分布与模型训练时所用的图结构分布不一致的情况。
在论文中,作者通过实验发现,当GCN模型面对经过恶意攻击(例如中毒攻击、逃逸攻击等)的图数据时,模型性能会显著下降。这种性能下降的原因之一就是结构性OOD问题。攻击者可以通过改变图的结构(例如添加或删除边),使得测试时的图结构与模型训练时的图结构在分布上发生显著偏移,从而导致模型的预测准确性大幅降低。
为了量化这种结构性OOD问题,论文引入了节点级别的异配性(Heterophily)度量,用H来表示。节点的异配性H定义为该节点邻居中与该节点类别不同的邻居所占的比例。在图的节点级别上,H值越高,表示节点与其邻居的类别差异越大,即异配性越强;H值越低,表示同配性越强。
论文通过分析发现,当攻击样本的H分布相对于训练集发生“右移”(即H值增大)时,GCN模型的分类性能会下降。这种“右移”现象与模型的脆弱性呈正相关。为了解决这个问题,作者提出了LHS方法,通过学习图上的潜在同配结构来减少这种“右移”现象,从而提高模型在面对结构性OOD问题的鲁棒性。
2、展开研究
尽管目前的GCN方法在异配图上取得了显著的成功,但这些方法非常容易受到恶意威胁,这些威胁旨在测试期间扭曲目标图的结构。我们进行实验来攻击最先进的GPNN方法,该方法是在流行的Squirrel的异配图基准上进行训练的,使用各种攻击创建的样本。图1显示,在三种不同类型的破坏性攻击下节点分类精度的下降,包括著名的中毒攻击和两种逃逸攻击等。
为了分析GCN在异配图上脆弱的原因,我们进一步描述了从上述三次攻击中精心制作的数据的H分布,以及图2(a)中Squirrel的原始序列和测试集的分布情况。
图2(b)结论:“右移”的程度与节点分类性能下降有很强的正比关系。
在空间数据图的GCN方法中,我们将这种现象称为“结构性外分布”(“structural out-of-distribution,OOD”)。
- 图2(a):Squirrel数据集上的H分布,包括精心制作的三个攻击样本集。(攻击后的样本“右移”明显)
- 图2(b):H分布的“右移”与节点分类精度下降的相关性。(右移程度越大,分类精度下降程度越大)
- 图2©:Cora数据集上的H分布,包括原始序列和测试集、精心制作的三个攻击样本集。(攻击后的样本几乎不“右移”)
根据上述讨论,出现了一个关键问题:“如何使GCN模型自动适应地学习异配图上的同配性结构,从而减少H分布的右移程度?”
这可能有助于使模型更能抵抗对异配图的恶意攻击。实现这一目标具有挑战。尽管许多与结构学习相关的方法都取得了成功,但它们也倾向于加强异配性或只关注两个节点之间的局部关系,而不是考虑全局连接。这些方法在攻击下仍然存在漏洞问题(如图4和表1所示),而且它们很难解决这一挑战。
我们用一种叫做LHS的新方法来解决上述具有挑战性的问题。
LHS的主要组成部分是:
- 一个自我表达的生成器,通过多节点相互作用在异配图上自动导入潜在的同配性结构;
- 一个双视对比学习器,以自监督的方式再现潜在结构。
LHS在学习过程中迭代地再现了这种潜在结构,使模型能够在异配图上以同配性的方式聚合信息,从而减少了“右移”,增加了鲁棒性。
需要注意的是,在五个异配图基准上进行的原始图实验表明了该方法的优越性。我们还验证了LHS在三个公共的同配图上的有效性。此外,引入的结构也可以应用于其他图任务,如聚类。
本文贡献:
- 我们定量地分析了GCN方法对节点分类的全方位异配图的鲁棒性,并揭示了 H n o d e H_{node} Hnode分布的“右移”与模型的脆弱性呈高度正比,即结构性的OOD。据我们所知,这是这个领域最早的研究。
- 我们提出了LHS,一种新的方法,通过学习异配图上潜在的同配性结构来加强GCN对抗各种攻击。
- 我们在各种空间数据集上进行了广泛的实验,以证明所提出的LHS在减轻结构性OOD问题方面的有效性。
3、LHS框架
我们的目标是从异配图中学习一个适当的潜在同配性结构,从而减少H分布中“右移”的程度。灵感来自Introduction部分的分析,更同配性的图可以减少“右移”,我们的潜在结构倾向于通过增加同类节点之间的边权重鼓励正边连接,并通过减少不同类节点之间的边权重抑制负边连接。图3为LHS的体系结构。
图3:所提出的LHS的体系结构,它由三个模块组成:Structure Inducer、Graph Encoder、Node Classifier。
其中,关键成分Structure Inducer包括self-expressive generator和dual-view contrastive。前者通过多节点相互作用学习潜在的同配性结构,然后后者重构该结构。我们迭代地执行这样的过程,以学习在异配图上更好的同配性结构。
引入的结构将被输入Graph Encoder进行表示聚合,然后输入Node Classifier进行节点分类。
① Structure Inducer
self-expressive generator通过三个步骤在异配图上产生一个潜在的同配性结构:
Step 1: Capturing multi-node information
给定节点特征X,我们的目标是通过对其他节点特征的线性或关联组合来表达一个节点特征来捕获多节点特征信息。与现有的成对相似矩阵结构学习方法(structure learning method with pair-wise similarity matrix)不同的是,Structure Inducer可以通过发现低维子空间的全局信息来生成细粒度的潜在结构 S ∗ ∈ R N × N S^* ∈ R^{N×N} S∗∈RN×N。具体来说,对于 ∀ v i ∈ V ∀v_i∈V ∀vi∈V,我们通过一个多节点特征 x j , v j ≠ v i x_j, v_j≠v_i xj,vj=vi的线性和表示,$x_i =\sum_{\substack{v_j \in V}} q_{ij} x_j $,其中 q i j q_{ij} qij是系数矩阵 Q Q Q的第 ( i , j ) (i, j) (i,j)个元素。
Step 2: Optimizing the generator loss
我们利用系数矩阵
Q
Q
Q来生成潜在结构。求解
Q
Q
Q的最优化问题可以表述如下:
min
Q
∥
Q
∥
F
s.t.
X
=
Q
X
;
diag
(
Q
)
=
0
\min_Q \|Q\|_F \quad \text{s.t.} \quad X = QX; \quad \text{diag}(Q) = 0
Qmin∥Q∥Fs.t.X=QX;diag(Q)=0
其中,$|Q|_F
是
是
是Q
的
F
r
o
b
e
n
i
u
s
矩阵范式,
的Frobenius矩阵范式,
的Frobenius矩阵范式,\text{diag}(Q)
指的是
指的是
指的是Q
的对角线项。该等式优化一个块对角矩阵
的对角线项。该等式优化一个块对角矩阵
的对角线项。该等式优化一个块对角矩阵Q
来生成潜在结构
来生成潜在结构
来生成潜在结构S^*
。
。
。Q$的每个块都包含属于同一类的节点,从而减轻了“右移”现象。
理解:其中, min Q \min_Q minQ表示最小化系数矩阵 Q Q Q的目标函数, ∥ Q ∥ F \|Q\|_F ∥Q∥F是 Q Q Q的Frobenius范数, X = Q X X=QX X=QX是约束条件,表示特征矩阵 X X X可以通过 Q Q Q来重构自身,而 diag ( Q ) \text{diag}(Q) diag(Q)确保了对角线元素为零,即节点不能自己与自己相连。
我们用软约束
(
X
−
Q
X
)
(X-QX)
(X−QX)放松硬约束
X
=
Q
X
X=QX
X=QX,因为
X
X
X的精确重建可能是不切实际的。相关公式如下:
min
Q
L
SE
=
∥
X
−
Q
X
∥
F
2
+
λ
1
∥
Q
∥
F
2
,
s.t.
diag
(
Q
)
=
0
\min_Q L_{\text{SE}} = \left\|X - QX\right\|_F^2 + \lambda_1\left\|Q\right\|_F^2, \quad \text{s.t.} \quad \text{diag}(Q) = 0
QminLSE=∥X−QX∥F2+λ1∥Q∥F2,s.t.diag(Q)=0
理解:其中, L SE L_{\text{SE}} LSE表示软约束下的损失函数, ∥ X − Q X ∥ F 2 \left\|X - QX\right\|_F^2 ∥X−QX∥F2是重构误差的平方, ∥ Q ∥ F 2 \left\|Q\right\|_F^2 ∥Q∥F2是 Q Q Q的Frobenius范数的平方, λ 1 \lambda_1 λ1是正则化项的权重,是一个优化的权值超参数, diag ( Q ) = 0 \text{diag}(Q) = 0 diag(Q)=0是约束条件,确保对角线元素为零。
Step 3: Generating latent homophilic structure
我们利用 Q + Q T Q+Q^T Q+QT构建了潜在的同配性结构 S ∗ S^* S∗,但该结构仍然有噪声和异常值。因此,我们依靠算法1来生成 S ∗ S^* S∗。具体地说,算法1中的SVD分解的目的是在结构生成过程中触发噪声信息。在每次迭代中,我们引用潜在结构 S ∗ S^* S∗。我们使用可扩展的随机SVD来提高大规模图的计算效率。
dual-view contrastive learner:到目前为止,我们已经得到了潜在结构 S ∗ S^* S∗,在上一步中,我们重点放在基于节点特征学习的 S ∗ S^* S∗上。为了再现这种结构,我们进一步探索了图的丰富的结构信息,并提出了一种新的双视图对比学习器(dual-view contrastive learner)。我们采取了四个步骤来进行这样的改造。
Step 1: Generating the dual views of latent structure
我们将图定义为 G = ( S ∗ , X ) G=(S^*,X) G=(S∗,X),其中 S ∗ S^* S∗是可学习的潜在同配性结构。在 G G G的基础上,我们通过腐蚀函数(corruption function)生成两个图 G 1 G_1 G1和 G 2 G_2 G2,以自监督的方式重构结构。具体地说,腐蚀函数从 S ∗ S^* S∗中随机删除一小部分边,也随机屏蔽节点特征 X X X中为零的部分维度。
Step 2: Aggregating information on latent structure
为了在
S
∗
S^*
S∗上有效聚合,我们设计了一个截断阈值GCN来控制结构的稀疏性。对于
S
∗
S^*
S∗,我们引入一个阈值
σ
σ
σ来决定两个节点之间是否存在连续值的软连接,然后形成一个新的结构
S
σ
∗
S_σ^*
Sσ∗。这种方法与以前只有0和1的硬编码操作有很大的不同,我们的
S
σ
∗
S_σ^*
Sσ∗可以方便的应用于各种基准测试。我们在三个图上使用截断的阈值GCN,包括
G
G
G、
G
1
G_1
G1和
G
2
G_2
G2。在图
G
G
G上提出的截断阈值GCN可以生成如下表示形式:
S
∗
=
{
s
i
j
∗
≥
σ
|
s
i
j
∗
∈
S
∗
}
Z
=
GCN
(
X
,
S
∗
)
=
S
^
∗
ReLU
(
S
^
∗
X
W
(
0
)
)
W
(
1
)
S^* = \left\{s^{*}_{ij} \geq \sigma \middle| s^{*}_{ij} \in S^*\right\}\\ Z = \text{GCN}(X, S^*) = \hat{S}^* \text{ReLU}\left(\hat{S}^* X W^{(0)}\right) W^{(1)}
S∗={sij∗≥σ
sij∗∈S∗}Z=GCN(X,S∗)=S^∗ReLU(S^∗XW(0))W(1)
其中,ReLU为激活函数,
W
(
0
)
W^{(0)}
W(0)和
W
(
1
)
W^{(1)}
W(1)为可训练的权重矩阵。
Step 3: Sampling the contrastive samples
这部分讨论了如何为对比学习采样对比样本。对比学习是一种自监督学习方法,它通过比较正样本和负样本来学习数据的表示。在图卷积网络的上下文中,这部分内容主要包含以下几个关键点:
- 正样本定义:正样本是来自不同图视图但代表同一节点的节点对。即对于任意节点 v i ∈ V v_i∈V vi∈V,其在图 G 1 G_1 G1和 G 2 G_2 G2中的对应节点 G 1 ( v i ) G_1(v_i) G1(vi)和 G 2 ( v i ) G_2(v_i) G2(vi)构成一个正样本对 ( G 1 ( v i ) , G 2 ( v i ) ) (G_1(v_i),G_2(v_i)) (G1(vi),G2(vi))。
- 负样本定义:负样本是来自相同或不同图视图但代表不同节点的节点对。对于任意节点 v i ∈ V v_i∈V vi∈V,集合 V − i = { j ∈ V ∣ j ≠ i } V_{-i}=\{j∈V|j≠i\} V−i={j∈V∣j=i}中的任意节点 v j v_j vj与 v i v_i vi构成负样本对。这包括图 G 1 G_1 G1中的节点对 ( G 1 ( i ) , G 1 ( j ) ) (G_1(i),G_1(j)) (G1(i),G1(j))以及 ( G 1 ( i ) , G 2 ( j ) ) (G_1(i),G_2(j)) (G1(i),G2(j))。
- 对比学习目标:通过这种方式采样的正负样本对用于训练一个对比损失函数,该函数旨在拉近正样本对之间的表示,同时推远负样本对之间的表示。
- 损失函数优化:通过优化对比损失函数,可以学习到更加鲁棒和区分性的节点表示,这对于图结构的细化和图卷积网络的鲁棒性至关重要。
- 结构信息的利用:通过对比学习,可以进一步探索图中丰富的结构信息,并通过学习到的潜在同配性结构来增强模型对图结构的理解。
这一步骤是LHS方法中用于细化潜在同配性结构的关键环节,通过自监督学习的方式,利用图的内在结构信息来提高图卷积网络的性能和鲁棒性。
Step 4: Optimizing the contrastive loss
这一部分详细阐述了如何优化对比损失函数来进一步细化和改进学习到的潜在同配性结构。
- 对比损失函数:作者提出了一个新的对比损失函数,用于优化图的双视图结构。这个损失函数旨在鼓励正样本(相同节点的不同视图)的嵌入表示之间的一致性,同时对负样本(不同节点的嵌入表示)的一致性进行惩罚。
- 损失函数组成:
- 第一项鼓励正样本对之间的一致性,通过最小化它们嵌入表示的余弦相似度的负值。
- 第二项通过一个对数项来惩罚样本对之间的一致性,该项利用了温度参数 τ τ τ来控制对比学习的尺度。
- 第三项是一个成对约束,确保相同类别的节点具有更相似的表示。
- 损失函数公式:具体的损失函数公式如下所示:
-
其中, z 1 i z_{1i} z1i和 z 2 i z_{2i} z2i分别表示节点 i i i在视图 Z 1 Z_1 Z1和 Z 2 Z_2 Z2上的嵌入, c o s ( ⋅ ) cos(·) cos(⋅)表示余弦相似度, τ τ τ是温度参数, λ 2 λ_2 λ2是用于平衡正负样本对的超参数。
- 结构细化(Structure Refinement):通过最小化这个损失函数,可以细化潜在的同配性结构 S ∗ S^* S∗,使其更加准确地反映图中的同配性特征。
- 迭代过程:结构细化是一个迭代过程,通过不断地优化对比损失函数来逐步改进结构 S ∗ S^* S∗。
- Structure Inducer的反馈:细化后的节点嵌入矩阵 Z Z Z将被反馈到Structure Inducer中,以进一步迭代结构 S ∗ S^* S∗。
这一步骤是LHS方法中用于提高图卷积网络鲁棒性的关键环节,通过自监督的对比学习,利用图的内在结构信息来提高图卷积网络的性能和鲁棒性。
② Graph Encoder
③ Node Classifier
4、实验
表1:在基于OOD和注入攻击这两种逃逸攻击下的分类精度(%)的鲁棒性比较。
图4:中毒攻击下节点分类的比较。
图5结论:在注入逃逸攻击下,我们的潜在结构可以极大地将攻击样本的H分布向左移动,从而减少了“右移”(见红色箭头)。
表2:没有任何攻击的节点分类的比较。