[论文解读] GraphDefense: Towards Robust Graph Convolutional Networks
本文提出 GraphDefense,一种针对图卷积网络(GCNs)的鲁棒对抗训练方法,通过在干净图结构和扰动图结构上联合训练,提升对结构对抗攻击的防御能力。该方法在小型和大规模图(包括 Reddit)上均实现了最先进水平的鲁棒性,同时在低标签率下保持半监督学习的效率与泛化能力,无需高标签率。
In this paper, we study the robustness of graph convolutional networks (GCNs). Despite the good performance of GCNs on graph semi-supervised learning tasks, previous works have shown that the original GCNs are very unstable to adversarial perturbations. In particular, we can observe a severe performance degradation by slightly changing the graph adjacency matrix or the features of a few nodes, making it unsuitable for security-critical applications. Inspired by the previous works on adversarial defense for deep neural networks, and especially adversarial training algorithm, we propose a method called GraphDefense to defend against the adversarial perturbations. In addition, for our defense method, we could still maintain semi-supervised learning settings, without a large label rate. We also show that adversarial training in features is equivalent to adversarial training for edges with a small perturbation. Our experiments show that the proposed defense methods successfully increase the robustness of Graph Convolutional Networks. Furthermore, we show that with careful design, our proposed algorithm can scale to large graphs, such as Reddit dataset.
研究动机与目标
- 解决 GCN 在图结构和节点特征上受对抗扰动影响的脆弱性。
- 开发一种在低标签率下仍能保持半监督学习效率的防御机制。
- 实现在归纳图学习设置(如在大规模图上使用 GraphSAGE)中的有效对抗训练。
- 探索在特征上进行对抗训练与在边上的对抗训练之间的等价性,以提升鲁棒性。
提出的方法
- 提出 GraphDefense,一种防御框架,通过迭代 PGD 风格攻击在图边和节点特征上同时进行对抗训练。
- 引入一种联合训练策略,交替使用干净数据和通过在边或特征上使用投影梯度下降(PGD)生成的对抗样本。
- 证明在小扰动下,对特征的对抗训练与对边的对抗训练具有等价性,从而实现更快的训练速度。
- 在半监督设置中应用该方法,通过修改训练循环,保持模型在归纳和归纳任务中的泛化能力。
- 在 GraphSAGE 中使用邻域采样,将对抗训练扩展至大规模图(如 Reddit),降低内存和计算开销。
- 在训练中使用加权损失函数以平衡干净样本与对抗样本,分析超参数敏感性以实现最佳性能。
实验结果
研究问题
- RQ1对抗训练能否有效应用于图卷积网络,以防御结构扰动?
- RQ2与基于边的对抗训练相比,基于节点特征的对抗训练在鲁棒性与效率方面表现如何?
- RQ3GraphDefense 是否能在不依赖高标签率的情况下,保持在大规模归纳图学习任务(如 Reddit)上的高性能?
- RQ4在训练过程中,对抗样本与干净样本的最优比例是多少,以实现鲁棒性与准确性的平衡?
主要发现
- GraphDefense 显著提升了 GCN 对白盒结构攻击的鲁棒性,在 Reddit 上经受 300 次边攻击后准确率达到 69.69%,而干净 GCN 仅为 35.31%。
- 在特征上的对抗训练性能与基于边的对抗训练相当,在 Cora 上面对特征攻击时准确率达 51%,优于基线方法。
- 该方法在大规模图上具有良好的可扩展性:使用 GraphDefense 的 GraphSAGE 在 50 次边攻击后保持 0.8391 的准确率,优于仅使用特征对抗训练(0.8406)和干净模型。
- 训练过程中对抗样本与干净样本的比例至关重要——过多的对抗样本会降低性能,例如在 Cora 上,400 个对抗样本搭配 100 个干净样本时,准确率下降至 0.622。
- GraphDefense 在归纳设置中泛化良好,如在 Reddit(一个大规模归纳数据集)上的强表现所示,其性能优于仅使用特征或仅使用边的对抗训练。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。