【Paper-Attack】Exploratory Adversarial Attacks on Graph Neural Networks

Exploratory Adversarial Attacks on Graph Neural Networks

image-20210325153542144


依赖training loss的最大梯度的这种基于梯度的策略,在攻击GNN模型时候,可能不会产生一个好的结果。

原因在于图结构的离散的特点。
⇓ \Downarrow
我们可不可以推导出一种有效的方法,来选择攻击GNN的扰动?

我们提出一种新颖的exploratory adversarial attack命名为EpoAtk。

专注于poisoning attack 和 global attack。继承基于梯度攻击效率高的优势,克服最大梯度方法的不足。

概括为三个阶段:generation,evaluation,recombination

  1. 利用training loss的一阶导数,EpoAtk生成一个扰动候选集,而不仅仅是一个具有最大梯度的扰动。
  2. 在evaluation阶段,提出一个有效的评估函数,来评估候选集中的每个元素
  3. 为了进一步提高evaluation的有效性,引入recombination,从长远的角度来看,避免training loss的局部最大值。

无向图

每个节点有一个F维的特征向量,和一个class label(1~C)
X:代表一个节点特征矩阵,VxF
C L C_L CL:代表有标签节点 V L V_L VL的one-hot label矩阵

在半监督节点分类任务中,给定 A , X , V L , C L A,X,V_L,C_L A,X,VL,CL,GNN的目标就是学到一个分类器 f w f_w fw,来预测无标签节点的label, w w w是模型的参数集合。

为了满足扰动不易被发现,假定攻击者最多修改M次。

根据代表性的全局攻击[24]、[28],攻击者使用一系列修改过程,按照贪婪的方式来得到最终的图G(M)。

image-20210325160916178

在每一步,只允许增加或者删除一条边,由于图的离散结构,这可能不能获得最优攻击结果,所以提出EpoAtk。

模型

Generation部分

引入一个梯度矩阵 B ( k ) ∈ R ∣ V ∣ × ∣ V ∣ B^{(k)} \in R^{|V| \times |V|} B(k)RV×V

image-20210325161357811

与以往方法不同的是,不只是选择最大的梯度,而是依次选择 Δ \Delta Δ个满足条件的来构成候选集。

image-20210325161502997

image-20210325161518822

image-20210325161527445

Evaluation部分

先在原始图上学习到一个可控模型,并且预测无标签节点,作为ground truth。

评估函数如下:

image-20210325161840495

f w ∗ f_{w^*} fw:在修改过的图上学到的分类器
Z Z Z:在修改过的图上学到的分类器给出的预测结果。

image-20210325162121068

G a G_a Ga可能就是候选集里最有效的扰动

Recombination部分

攻击者在公式5的一系列修改中,可能陷入局部最大值。引入recombination来增加决策的不确定性。在此基础上,将对recombination阶段产生的每个元素进行精确评估,以克服上述难题。

recombination阶段是以概率 k β M − 1 \frac{k \beta}{M-1} M1kβ发生的。 k ∈ [ 1 , M − 1 ] k \in [1,M-1] k[1,M1] β \beta β是超参数。

也就是说:我们有 1 − k β M − 1 1-\frac{k \beta}{M-1} 1M1kβ的概率直接选取 G a k + 1 G_a^{k+1} Gak+1作为 G k + 1 G^{k+1} Gk+1

如果recombination发生,就需要扩大搜索空间,而不是简单地选取 G a k + 1 G_a^{k+1} Gak+1作为 G k + 1 G^{k+1} Gk+1

除了 G a k + 1 G_a^{k+1} Gak+1外,再从候选集中按照如下分布sample另外一个修改过的对抗图 G b k + 1 G_b^{k+1} Gbk+1

image-20210325162849517

注: G a k + 1 G_a^{k+1} Gak+1 G b k + 1 G_b^{k+1} Gbk+1 G k G^k Gk只有一个边不同。

把这两条边记作 ( u a , v a ) (u_a,v_a) (ua,va) ( u b , v b ) (u_b,v_b) (ub,vb)(假设四个点不同,如果不满足则重新sample)。

G a k + 1 G_a^{k+1} Gak+1 G b k + 1 G_b^{k+1} Gbk+1的基础上,再生成两个扰动图:

image-20210325163201041

(用这种方法,还可以生成更多的扰动图,但是为了高效和容易实现,只考虑了这两个图)

从这个集合 S m S^m Sm中选择最有效的扰动

image-20210325163331849

image-20210325163310924

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值