2. 中国科学院信息工程研究所 信息安全国家重点实验室, 北京 100093
2. State Key Laboratory of Information Security, Institute of Information Engineering, Chinese Academy of Sciences, Beijing 100093, China
开放科学(资源服务)标志码(OSID):
图数据具有强大的表达能力,已经成为数据挖掘和机器学习领域的重要研究对象。图神经网络是专门针对图数据设计的端到端的深度学习模型[1],它可以对语义属性数据和图数据统一表达建模,从图数据中提取特征以完成许多图分析任务,例如,节点分类[2-3]、链路预测[4-5]、社区检测[6-7]等。研究表明,图神经网络很容易受到对抗性攻击的安全威胁[8],攻击者只要对图神经网络的结构或属性特征施加微小的扰动,则会导致图神经网络模型误判并影响其在具体任务中的表现。文献[9]研究图神经网络的对抗性攻击问题。之后,图神经网络的对抗性攻击方法的研究逐渐受到研究人员的关注[10-12],成为人工智能安全领域的研究热点。
对抗性攻击根据攻击阶段不同分为污染测试数据的逃逸攻击和污染训练数据的投毒攻击[13-15]。投毒攻击分为数据投毒和对抗训练[16]两个阶段,为双层优化问题[17]。在实际应用中,图神经网络模型受到投毒攻击后,则更新训练参数,在参数更新过程中均会受到扰动的影响。模型的每一轮训练都在“中毒”数据的基础上,而攻击者的每一轮训练也是基于上一轮模型训练参数,这是一个循环嵌套的优化过程,即模型会对攻击者做出对抗性训练,以尽可能地降低受攻击后的性能损失。从攻击者角度出发,在优化攻击方法中考虑模型的对抗训练过程,以提高攻击效果。传统的连续优化方法难以直接应用于扰动的离散数据。文献[9]针对指定目标,采用贪婪算法对连边或节点特征逐个扰动以攻击单个节点。文献[18]针对非指定目标,提出基于投影梯度下降(Projection Gradient Descent,PGD)算法的投毒攻击Min-max。
本文提出基于改进投影梯度下降算法的投毒攻击方法PGattack。结合数据投毒与对抗训练两个阶段,在投毒攻击场景下,将模型训练参数看作可重新训练的变量,而不是固定的常量,在更新扰动矩阵时考虑模型的对抗训练过程,同时在模型对抗训练过程中研究扰动矩阵的作用。在此基础上,将图的连边情况松弛为一个取值[0, 1]的连续变量,采用投影梯度下降算法对其进行扰动后再转化为二进制,并对离散图数据实施有效扰动。
1 基本概念与相关工作 1.1 图与图神经网络图定义为
$ \underset{N\times m}{\widehat{\boldsymbol{Y}}}=\mathrm{s}\mathrm{o}\mathrm{f}\mathrm{t}\mathrm{m}\mathrm{a}\mathrm{x}\left(\underset{N\times N}{\boldsymbol{A}}\underset{N\times n}{\boldsymbol{X}}\underset{n\times m}{\boldsymbol{W}}\right) $ | (1) |
其中:A为邻接矩阵;X为输入特征向量;W为训练参数矩阵;
交叉熵损失函数如式(2)所示:
$ {L}_{\mathrm{t}\mathrm{r}\mathrm{a}\mathrm{i}\mathrm{n}}(\boldsymbol{A}, \boldsymbol{X}, \boldsymbol{Y};\boldsymbol{W})=-\mathrm{t}\mathrm{r}\left[{\boldsymbol{Y}}^{\mathrm{T}}\mathrm{l}\mathrm{n}\right[\widehat{\boldsymbol{Y}}\left]\right] $ | (2) |
其中:Y为节点的标签。
图神经网络的学习过程如式(3)所示:
$ {\boldsymbol{W}}^{\mathrm{*}}=\underset{\boldsymbol{W}}{\mathrm{a}\mathrm{r}\mathrm{g}\mathrm{m}\mathrm{i}\mathrm{n}}{L}_{\mathrm{t}\mathrm{r}\mathrm{a}\mathrm{i}\mathrm{n}}(\boldsymbol{A}, \boldsymbol{X}, \boldsymbol{Y};\boldsymbol{W}) $ | (3) |
其中:W*为图神经网络模型训练参数。
1.2 相关工作 1.2.1 投毒攻击本文以图卷积网络(Graph Convolutional Network,GCN)作为研究对象,研究节点分类模型中非指定目标数据的投毒攻击。非指定目标攻击通过施加对抗性扰动以影响模型的整体性能,导致测试集的预测准确率整体下降[19]。投毒攻击是针对训练阶段的一种攻击方式。攻击者将投毒样本注入到训练数据集中,图卷积网络对“中毒”数据重新训练后,造成测试数据集的准确率降低[20]。文献[9, 17]基于GCN构建生成投毒攻击模型。根据上述定义,攻击方法可以统一概括为约束优化问题,如式(4)所示:
$\widehat{\boldsymbol{A}}=\underset{\widehat{\boldsymbol{A}}}{\mathrm{a}\mathrm{r}\mathrm{g}\mathrm{m}\mathrm{i}\mathrm{n}}{L}_{\mathrm{a}\mathrm{t}\mathrm{k}}[\widehat{\boldsymbol{A}}, \boldsymbol{X}, \boldsymbol{Y};{\boldsymbol{W}}^{\mathrm{*}}]\\ {\rm{s}}{\rm{.t}}{\rm{.}} ~{\boldsymbol{W}}^{\mathrm{*}}=\underset{\boldsymbol{W}}{\mathrm{a}\mathrm{r}\mathrm{g}\mathrm{m}\mathrm{i}\mathrm{n}}{L}_{\mathrm{t}\mathrm{r}\mathrm{a}\mathrm{i}\mathrm{n}}[\widehat{\boldsymbol{A}}, \boldsymbol{X}, \boldsymbol{Y};\boldsymbol{W}] \\{‖\widehat{\boldsymbol{A}}-\boldsymbol{A}‖}_{0}\le \delta $ | (4) |
其中:
文献[18]提出利用投影梯度下降算法对图数据实施攻击的方法,该方法能有效处理离散图数据,并提出一阶攻击生成框架的2种攻击场景:1)逃逸攻击,攻击一个预定义的图神经网络;2)投毒攻击,攻击一个可再训练的图神经网络。
针对第1种攻击场景,文献[18]采用投影梯度下降算法对邻接矩阵
$ \widehat{\boldsymbol{A}}=\underset{\widehat{\boldsymbol{A}}}{\mathrm{a}\mathrm{r}\mathrm{g}\mathrm{m}\mathrm{i}\mathrm{n}}{L}_{\mathrm{a}\mathrm{t}\mathrm{k}}[\widehat{\boldsymbol{A}}, \boldsymbol{X}, \boldsymbol{Y};\boldsymbol{W}]\\ {\rm{s}}{\rm{.t}}{\rm{.}} ~ {‖\widehat{\boldsymbol{A}}-\boldsymbol{A}‖}_{0}\le \delta $ | (5) |
针对第2种可再训练模型参数的场景,文献[18]对模型参数W进行优化。GCN模型以扰动损失大的方向作为优化目标,GCN攻击模型则以扰动损失减小的方向作为优化目标。攻击生成问题转变成最小最大化的问题,如式(6)所示:
$ (\widehat{\boldsymbol{A}}, \boldsymbol{W})=\underset{\widehat{\boldsymbol{A}}}{\mathrm{a}\mathrm{r}\mathrm{g}\mathrm{m}\mathrm{i}\mathrm{n}}\underset{\boldsymbol{W}}{\mathrm{a}\mathrm{r}\mathrm{g}\mathrm{m}\mathrm{a}\mathrm{x}}{L}_{\mathrm{a}\mathrm{t}\mathrm{k}}[\widehat{\boldsymbol{A}}, \boldsymbol{X}, \boldsymbol{Y};\boldsymbol{W}] $ | (6) |
外部最小化原始数据的损失利用投影梯度下降算法解决,内部最大化生成对抗数据的损失由普通梯度下降算法进行优化。
投影梯度下降算法可以对离散图数据进行有效的扰动,具有较优的攻击效果。但是在投毒攻击的场景下,式(6)将模型参数看成与扰动无关的变量,而非扰动的函数,忽略了两者之间的联系。
2 基于改进投影梯度下降算法的投毒攻击方法 2.1 攻击模型本文基于改进投影梯度下降算法,使用一个两层GCN构建投毒攻击模型,将特征矩阵看作常数,仅对图的邻接矩阵进行扰动,构建一个扰动矩阵S并对邻接矩阵A实施扰动。当
$ \widehat{\boldsymbol{A}}=\boldsymbol{A}+(\overline{\boldsymbol{A}}-\boldsymbol{A})\circ \boldsymbol{S} \\ {\rm{s}}{\rm{.t}}{\rm{.}}~ \overline{\boldsymbol{A}}=1-\boldsymbol{A} $ | (7) |
其中:
$ \boldsymbol{S}=\underset{\boldsymbol{S}}{\mathrm{a}\mathrm{r}\mathrm{g}\mathrm{m}\mathrm{i}\mathrm{n}}{L}_{\mathrm{a}\mathrm{t}\mathrm{k}}\left[\widehat{\boldsymbol{A}}\right(\boldsymbol{S}), \boldsymbol{X}, \boldsymbol{Y};{\boldsymbol{W}}^{\mathrm{*}}(\boldsymbol{S}\left)\right] \\ {\rm{s}}{\rm{.t}}{\rm{.}}~ {\boldsymbol{W}}^{\mathrm{*}}\left(\boldsymbol{S}\right)=\underset{\boldsymbol{W}\left(\boldsymbol{S}\right)}{\mathrm{a}\mathrm{r}\mathrm{g}\mathrm{m}\mathrm{i}\mathrm{n}}{L}_{\mathrm{t}\mathrm{r}\mathrm{a}\mathrm{i}\mathrm{n}}\left[\widehat{\boldsymbol{A}}\right(\boldsymbol{S}), \boldsymbol{X}, \boldsymbol{Y};\boldsymbol{W}(\boldsymbol{S}\left)\right]\\ {‖\boldsymbol{S}‖}_{0}\le 2\delta $ | (8) |
本文将GCN模型训练参数W*(S)看作扰动矩阵S的函数,而不是独立于扰动之外的变量,这是在投毒攻击场景下实施有效攻击的关键。在参数W*(S)训练过程中需要考虑扰动矩阵S的影响。在本文每轮GCN模型参数W*(S)的训练过程中都基于扰动矩阵S,投毒攻击过程主要分为3个步骤:1)构建扰动矩阵S,根据上一轮的GCN模型参数W*(S),采用投影梯度下降算法对S进行训练,并对邻接矩阵A实施扰动;2)模型根据扰动后的邻接矩阵
本文方法将数据投毒和对抗训练这2个阶段相结合,在GCN模型的对抗训练过程中考虑了扰动矩阵的影响,在更新扰动矩阵时考虑了GCN模型对抗训练的影响。根据式(8),本文将投毒攻击分为数据投毒阶段和对抗训练阶段。
2.1.1 数据投毒阶段在此阶段,攻击者对数据进行投毒并训练,以优化自身攻击方法。从式(8)可知,扰动矩阵S是一个对角线元素为0的对称矩阵,S中含有N(N-1)/2个独立的扰动变量。这些扰动变量之和应不超过扰动总数δ,S中的元素s∈{0,1}。在数据投毒阶段中,将S凸松弛成连续的S*,S*中的元素s*∈[0, 1]。S*每个元素都是0~1之间的连续值,是一个不断被优化的矩阵。S对邻接矩阵A的扰动数不能超过最大扰动数δ,不能简单地根据梯度下降算法对S*中的元素s*进行梯度更新,而需采用投影梯度下降算法。该算法是解决简单约束的连续优化算法,其基本思想是先使用梯度下降算法更新参数,再投影以保证更新的参数在可行域即约束条件之中。该过程如式(9)所示:
$ {{\boldsymbol{S}}^{\mathrm{*}}}^{{}^{\left(t\right)}}={{\boldsymbol{S}}^{\mathrm{*}}}^{{}^{(t-1)}}-{\eta }_{t}{\nabla }_{{\boldsymbol{S}}^{\mathrm{*}}}{L}_{\mathrm{a}\mathrm{t}\mathrm{k}}a[{{\boldsymbol{S}}^{\mathrm{*}}}^{{}^{(t-1)}}, \boldsymbol{X}, \boldsymbol{Y};{\boldsymbol{W}}^{t-1}(\boldsymbol{S}\left)\right] $ | (9) |
其中:t为梯度下降算法的迭代次数;
$ \begin{array}{l}{\boldsymbol{S}}_{p}=\prod \limits_{\varPhi }\left({{\boldsymbol{S}}^{*}}^{{}^{\left(t\right)}}\right)\\ \mathrm{s}.\mathrm{t}.\prod\limits _{\varPhi }\left({\boldsymbol{S}}^{\mathrm{*}\left(t\right)}\right):=\underset{\varPhi }{\mathrm{a}\mathrm{r}\mathrm{g}\mathrm{m}\mathrm{i}\mathrm{n}}\left|\right|{\boldsymbol{S}}_{\mathrm{p}}-{\boldsymbol{S}}^{\mathrm{*}\left(\mathrm{t}\right)}|{|}_{2}^{2}\end{array} $ | (10) |
其中:Φ表示满足条件
$ \boldsymbol{S}=\mathrm{r}\mathrm{a}\mathrm{n}\mathrm{d}\mathrm{o}\mathrm{m}\mathrm{ }~~\mathrm{b}\mathrm{i}\mathrm{n}\mathrm{o}\mathrm{m}\mathrm{i}\mathrm{a}\mathrm{l}\left({\boldsymbol{S}}_{p}\right) $ | (11) |
再由式(7)得到扰动后的邻接矩阵
在此阶段,GCN模型对攻击者投毒后的数据做出反应并展开对抗训练。在攻击者对GCN进行一轮扰动之后,GCN模型根据扰动后的邻接矩阵
${\boldsymbol{W}}^{t}\left(\boldsymbol{S}\right)=\\ {\boldsymbol{W}}^{t-1}\left(\boldsymbol{S}\right)-\alpha {\nabla }_{\boldsymbol{W}\left(\boldsymbol{S}\right)}{L}_{\mathrm{t}\mathrm{r}\mathrm{a}\mathrm{i}\mathrm{n}}\left[\widehat{\boldsymbol{A}}\right({\boldsymbol{S}}^{t}), \boldsymbol{X}, \boldsymbol{Y};{\boldsymbol{W}}^{t-1}(\boldsymbol{S}\left)\right] $ | (12) |
其中:α为GCN模型训练参数W(S)更新的学习率。式(12)表示训练参数W(S)为扰动矩阵S的函数,通过对扰动矩阵S求梯度以最小化损失函数,如式(13)所示:
$ {\nabla }_{\boldsymbol{S}}{L}_{\mathrm{t}\mathrm{r}\mathrm{a}\mathrm{i}\mathrm{n}}\left[\widehat{\boldsymbol{A}}\right({\boldsymbol{S}}^{t}), \boldsymbol{X}, \boldsymbol{Y};{\boldsymbol{W}}^{t-1}(\boldsymbol{S}\left)\right]= {\nabla }_{\boldsymbol{S}}{L}_{\mathrm{t}\mathrm{r}\mathrm{a}\mathrm{i}\mathrm{n}}\left[\widehat{\boldsymbol{A}}\right({\boldsymbol{S}}^{t}), \boldsymbol{X}, \boldsymbol{Y}]+\\ {\nabla }_{\boldsymbol{W}\left(\boldsymbol{S}\right)}{L}_{\mathrm{t}\mathrm{r}\mathrm{a}\mathrm{i}\mathrm{n}}[\boldsymbol{X}, \boldsymbol{Y}, {\boldsymbol{W}}^{t-1}(\boldsymbol{S}\left)\right]\cdot {\nabla }_{\boldsymbol{S}}\left[{\boldsymbol{W}}^{t-1}\right(\boldsymbol{S}\left)\right] $ | (13) |
其中:
根据上述理论,基于改进投影梯度下降算法的投毒攻击方法(PGattack)主要分为5个步骤:1)根据上一轮的扰动矩阵S求得扰动后的邻接矩阵;2)图卷积网络进行正向训练,获得GCN模型训练参数;3)求攻击梯度矩阵并根据投影梯度下降算法更新扰动矩阵Sp;4)将矩阵Sp二值化得到扰动矩阵S;5)根据扰动矩阵S对邻接矩阵进行扰动,重复步骤1~步骤4,直至满足迭代总次数iters停止。
本文攻击算法的伪代码如算法1所示。
算法1 基于改进投影梯度下降的图卷积网络投毒攻击算法
输入 邻接矩阵A,特征矩阵X,标签Y,扰动预算δ,学习率
输出 扰动矩阵S
1.FOR t in range (iters):
2.
3.W* = train_GCN(
4.Sp = PGD(S,W*,δ,
5.S = random binomial (Sp)
6.RETURN S
本文提出的PGattack攻击方法架构如图 1所示,该方法综合考虑投毒攻击的双层优化问题,实现数据投毒与GCN模型对抗训练2个过程的结合。
![]() |
Download:
|
图 1 PGattack攻击方法架构 Fig. 1 Framework of PGattack attack method |
为分析本文攻击方法的主要影响因素并评估其攻击效果,本文实验采用型号为TITAN Xp的GPU显卡,运行环境为ubuntu 16.04系统,cuda10.0、Python3.7以及Pytorch1.2.0。采用图深度学习常用的Citeseer[22]、Cora[22]、Cora_ml[23]和Polblogs[24]数据集,表 1所示为这些数据集的统计特征。数据集随机划分为标记节点和未标记节点,其中标记节点全部用于训练(10%)。在未标记的节点中,一部分用于测试(80%),另一部分用于验证(10%)。本文将数据集随机划分10次,并记录10次实验结果的平均值。
![]() |
下载CSV 表 1 数据集统计特征 Table 1 Statistical characteristics of datasets |
本文实验对GCN模型的连边进行扰动,将扰动连边数与连边总数的比值称作扰动比例。GCN模型在不同数据集上未受到干扰时的分类准确率对比如表 2所示。
![]() |
下载CSV 表 2 图卷积网络模型未受到干扰的分类准确率对比 Table 2 Classification accuracy comparison of graph convolutional network model without disturbance |
本文攻击方法的性能与参数设置相关,攻击过程主要由数据投毒与对抗训练2个阶段组成,训练轮数与学习率直接影响攻击效果。为尽可能提高攻击性能,本文在以上4个数据集上进行实验,并根据实验数据设置相应参数。
3.1.1 训练轮数设置在扰动比例为5%的情况下,本文方法的数据投毒阶段的训练轮数从10次增至200次,分别记录分类准确率。文献[18]将数据投毒阶段投影梯度下降的学习率设置为
![]() |
下载CSV 表 3 在不同训练轮数下图卷积网络模型被PGattack攻击后的分类准确率 Table 3 Classification accuracy of graph convolutional network model by PGattack attack in different training rounds |
![]() |
Download:
|
图 2 图卷积网络模型被本文方法攻击后的分类准确率 Fig. 2 Classification accuracy of graph convolutional network model by the proposed method attack |
从图 2可以看出,当训练轮数超过50之后,GCN模型的分类准确率在一定范围内波动,呈现收敛趋势;同理,对GCN模型对抗训练阶段的轮数进行对比实验,得出类似结果。后续实验将2个阶段的训练轮数均设置为50。
3.1.2 对抗训练学习率设置本文方法由数据投毒与对抗训练2部分组成,本文实验选取扰动比例为5%,首先根据实验经验和粗粒度测试,将学习率从0.01增至0.10,分别记录GCN模型的分类准确率。在Citeseer、Cora、Cora_ml和Polblogs数据集上,不同学习率下GCN模型受PGattack攻击后的分类准确率如表 4所示。综合表 4数据,为取得更优的攻击性能,本文将学习率设为0.02。
![]() |
下载CSV 表 4 在不同学习率下图卷积网络模型被PGattack攻击后的分类准确率 Table 4 Classification accuracy of graph convolutional network model by PGattack attack in different learning rates |
本文根据训练模型对比分类准确率,以评估攻击效果,分类准确率下降幅度越大,说明GCN模型的性能下降越明显,则攻击方法的效果越好。本文在Citeseer、Cora、Cora_ml和Polblogs数据集上进行实验,训练轮数为50轮,对抗训练学习率为0.02,将扰动比例从1%增至10%,分别记录GCN模型在不同扰动比例下的分类准确率。随着扰动比例的增加,GCN模型分类准确率背离初始准确率并逐步递减。在Citeseer、Cora、Cora_ml和Polblogs数据集上,在不同的扰动比例下本文攻击方法对GCN模型进行扰动后的分类准确率如表 5和图 3所示。扰动比例越大(即扰动的连边数越多),GCN模型的分类准确率越小,与预期相符,验证了攻击效果。
![]() |
下载CSV 表 5 在不同扰动比例下图卷积网络模型被PGattack攻击后的分类准确率 Table 5 Classification accuracy of graph convolutional network model by PGattack attack in different disturbance ratios |
![]() |
Download:
|
图 3 图卷积网络模型被本文方法攻击后的分类准确率 Fig. 3 Classification accuracy of graph convolutional network model by the proposed method attack |
本节将基于改进投影梯度下降算法的攻击方法PGattack与基准方法的攻击性能与复杂度进行对比。基准方法包括以下4个:1)随机攻击方法Random[19],从训练集中随机选择增加连边或删除;2)删除同类连接异类[25]DICE攻击方法,根据“从同类节点中删除连边,在不同类节点间增加连边”规则,利用启发式算法删除部分连边,随后通过添加连边恢复其影响力[24];3)Min-max攻击方法[18],将攻击生成问题变成最小最大化的问题,最小化攻击的损失由投影梯度下降算法解决,最大化模型生成对抗数据的损失由梯度上升算法来解决;4)Metattack攻击方法[26],使用元学习中的元梯度方法解决投毒攻击的双层优化问题,通过计算元梯度以指导攻击行为,采用贪婪算法对邻接矩阵遍历扰动以实现攻击。
3.3.1 攻击性能分析本文在Citeseer、Cora、Cora_ml和Polblogs数据集上,对GCN模型中1%~5%的连边数进行攻击,训练轮数为50,对抗训练学习率为0.02,记录攻击后的分类准确率。不同方法攻击后图卷积网络模型的分类准确率如表 6和图 4所示。其中,图 4的Clean表示模型在攻击前的准确率。
![]() |
下载CSV 表 6 图卷积网络模型被不同方法攻击后的分类准确率 Table 6 Classification accuracy of graph convolutional network model after attacks by different methods |
![]() |
Download:
|
图 4 图卷积网络模型的分类准确率 Fig. 4 Classification accuracy of graph convolutional network model |
从表 6可以看出,当扰动比例为5%以下时,相比Random、DICE、Min-max攻击方法,本文PGattack方法具有更好的攻击效果,GCN模型的分类准确率下降辐度更大。
本文方法与传统投影梯度下降攻击方法Min-max相比,扰动筛选算法均采用投影梯度下降算法。而Min-max方法将训练后的参数视为固定常数,在此基础上使用投影梯度下降算法进行扰动;PGattack方法将参数视为扰动的函数而非独立变量,在梯度攻击过程中考虑模型的对抗训练阶段以优化攻击算法。实验结果验证了PGattack方法的有效性,即在攻击中考虑模型的对抗训练过程以提升攻击效果。
本文方法与Metattack相比,当扰动比例为3%以下时,PGattack的攻击效果优于Metattack;当扰动比例为4%以上时,PGattack的攻击效果与Metattack相比较差。Metattack采用贪婪算法实施攻击,随着扰动比例的增大,攻击效果逐渐提升。当扰动数据量较大时,贪婪算法对离散数据扰动的准确性更高,但是需要逐一对元素实施扰动,计算复杂度较高。
3.3.2 复杂度分析随机增删连边的Random和基于简单的规则增删连边的DICE攻击方法均不需要对模型进行训练,计算复杂度较低。Min-max先求解训练参数W,再将W视为常量,使用投影梯度下降算法实施扰动,未考虑模型的对抗训练过程,复杂度中等,但是高于DICE和Random。PGattack将训练参数W视为与扰动相关的变量,在采用投影梯度下降算法实施扰动时考虑模型的对抗训练过程,计算复杂度大于Min-max。Metattack攻击方法先求解元梯度,之后采用贪婪算法对连边逐个扰动,计算复杂度随扰动比例增加呈线性增长。
在4个数据集上不同攻击方法的时间开销对比如表 7所示。
![]() |
下载CSV 表 7 不同攻击方法的时间开销对比 Table 7 Time costs comparison among different attack methods |
从表 7可以看出,除Metattack以外,其他4种攻击方法的耗时排序:PGattack > Min-max > DICE > Random。Metattack随着扰动连边数增多,耗时呈线性增长趋势。实验结果与理论分析一致。Metattack攻击方法在扰动比例较大时,尽管具有更好的攻击效果,但时间开销较大。本文所提的PGattack方法能够兼顾攻击性能与复杂度,具有更好的实用性。
4 结束语本文提出基于改进投影梯度下降算法的投毒攻击方法,将模型训练参数看作扰动的函数,采用投影梯度下降算法对图的连边进行扰动,同时考虑模型的对抗训练过程。实验结果表明,当扰动比例为5%时,相比Random、DICE、Min-max攻击方法,本文攻击方法能够有效降低图卷积网络模型的的分类准确率,在攻击性能与时间开销方面实现最佳平衡。后续将在图神经网络的链路预测、图分类、社区发现等任务中构建投毒攻击模型,分析图神经网络的脆弱机理,以提高本文方法的可扩展性。
[1] |
WU Z H, PAN S R, CHEN F W, et al. A comprehensive survey on graph neural networks[J]. IEEE Transactions on Neural Networks and Learning Systems, 2021, 32(1): 4-24. DOI:10.1109/TNNLS.2020.2978386 |
[2] |
TANG J, QU M, MEI Q. PTE: predictive text embedding through large-scale heterogeneous text networks[C]//Proceedings of the 21th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York, USA: ACM Press, 2015: 1165-1174.
|
[3] |
WANG S H, TANG J L, AGGARWAL C, et al. Linked document embedding for classification[C]//Proceedings of the 25th ACM International on Conference on Information and Knowledge Management. New York, USA: ACM Press, 2016: 115-124.
|
[4] |
PEROZZI B, Al-RFOU R, SKIENA S. Deepwalk: online learning of social representations[EB/OL]. [2021-11-10]. https://arxiv.org/pdf/1403.6652.pdf.
|
[5] |
WANG S H, TANG J L, AGGARWAL C, et al. Signed network embedding in social media[C]//Proceedings of SIAM International Conference on Data Mining. Philadelphia, USA: Society for Industrial and Applied Mathematics, 2017: 327-335.
|
[6] |
TIAN F, GAO B, CUI Q, et al. Learning deep representations for graph clustering[C]//Proceedings of the 28th AAAI Conference on Artificial Intelligence. [S. l. ]: AAAI Press, 2014: 1293-1299.
|
[7] |
ALLAB K, LABIOD L, NADIF M. A semi-NMF-PCA unified framework for data clustering[J]. IEEE Transactions on Knowledge and Data Engineering, 2017, 29(1): 2-16. DOI:10.1109/TKDE.2016.2606098 |
[8] |
DAI H J, LI H, TIAN T, et al. Adversarial attack on graph structured data[EB/OL]. [2021-11-10]. https://arxiv.org/pdf/1806.02371.pdf.
|
[9] |
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. New York, USA: ACM Press, 2018: 2847-2856.
|
[10] |
WANG X Y, EATON J, HSIEH C J, et al. Attack graph convolutional networks by adding fake nodes[EB/OL]. [2021-11-10]. https://arxiv.org/pdf/1810.10751.pdf.
|
[11] |
吴翼腾, 刘伟, 于溆乔. 基于参数差异假设的图卷积网络对抗性攻击[J/OL]. 电子学报: 1-13[2021-11-10]. http://kns.cnki.net/kcms/detail/11.2087.TN.20211018.1732.002.html. WU Y T, LIU W, YU X Q. Adversarial attacks on graph convolution networks based on parameter discrepancy hypothesis[J/OL]. Acta Electronica Sinica: 1-13[2021-11-10]. http://kns.cnki.net/kcms/detail/11.2087.TN.20211018.1732.002.html. (in Chinese) |
[12] |
吴翼腾, 刘伟, 于洪涛. 图神经网络的标签翻转对抗攻击[J]. 通信学报, 2021, 42(9): 65-74. WU Y T, LIU W, YU H T. Label flipping adversarial attack on graph neural network[J]. Journal on Communications, 2021, 42(9): 65-74. (in Chinese) |
[13] |
姜妍, 张立国. 面向深度学习模型的对抗攻击与防御方法综述[J]. 计算机工程, 2021, 47(1): 1-11. JIANG Y, ZHANG L G. Survey of adversarial attacks and defense methods for deep learning model[J]. Computer Engineering, 2021, 47(1): 1-11. (in Chinese) DOI:10.3969/j.issn.1007-130X.2021.01.001 |
[14] |
JIN W, LI Y X, XU H, et al. Adversarial attacks and defenses on graphs: a review and empirical study[EB/OL]. [2021-11-10]. https://arxiv.org/abs/2003.00653v2.
|
[15] |
CHEN L, LI J T, PENG J Y, et al. A survey of adversarial learning on graphs[EB/OL]. [2021-11-10]. https://arxiv.org/abs/2003.05730?.
|
[16] |
WU Y T, LIU W, HU X B, et al. Parameter discrepancy hypothesis: adversarial attack for graph data[J]. Information Sciences, 2021, 577: 234-244. DOI:10.1016/j.ins.2021.06.086 |
[17] |
LIN X X, ZHOU C, YANG H, et al. Exploratory adversarial attacks on graph neural networks[C]//Proceedings of IEEE International Conference on Data Mining. Washington D. C., USA: IEEE Press, 2020: 1136-1141.
|
[18] |
XU K D, CHEN H G, LIU S J, et al. Topology attack and defense for graph neural networks: an optimization perspective[C]//Proceedings of the 28th International Joint Conference on Artificial Intelligence. New York, USA: ACM Press, 2019: 3961-3967.
|
[19] |
陈晋音, 张敦杰, 黄国瀚, 等. 面向图神经网络的对抗攻击与防御综述[J]. 网络与信息安全学报, 2021, 7(3): 1-28. CHEN J Y, ZHANG D J, HUANG G H, et al. Adversarial attack and defense on graph neural networks: a survey[J]. Chinese Journal of Network and Information Security, 2021, 7(3): 1-28. (in Chinese) |
[20] |
SUN M J, TANG J, LI H C, et al. Data poisoning attack against unsupervised node embedding methods[EB/OL]. [2021-11-10]. https://arxiv.org/pdf/1810.12881.pdf.
|
[21] |
LIU S J, CHEPURI S P, FARDAD M, et al. Sensor selection for estimation with correlated measurement noise[J]. IEEE Transactions on Signal Processing, 2016, 64(13): 3509-3522. DOI:10.1109/TSP.2016.2550005 |
[22] |
SEN P, NAMATA G, BILGIC M, et al. Collective classification in network data[J]. AI Magazine, 2008, 29(3): 93. DOI:10.1609/aimag.v29i3.2157 |
[23] |
MCCALLUM A, NIGAM K, RENNIE J D M, et al. Automating the construction of Internet portals with machine learning[J]. Information Retrieval, 2000, 3(2): 127-163. DOI:10.1023/A:1009953814988 |
[24] |
ADAMIC L A, GLANCE N. The political blogosphere and the 2004 US election: divided they blog[C]//Proceedings of the 3rd International Workshop on Link Discovery. New York, USA: ACM Press, 2005: 36-43.
|
[25] |
WANIEK M, MICHALAK T P, WOOLDRIDGE M J, et al. Hiding individuals and communities in a social network[J]. Nature Human Behaviour, 2018, 2(2): 139-147. DOI:10.1038/s41562-017-0290-3 |
[26] |
ZÜGNER D, GÜNNEMANN S. Adversarial attacks on graph neural networks via meta learning[EB/OL]. [2021-11-10]. https://arxiv.org/pdf/1902.08412.pdf.
|