点击蓝字

关注我们

AI TIME欢迎每一位AI爱好者的加入!

李宽:

中科院计算所(ICT)二年级硕士生。主要研究方向为图表示学习,工作主要围绕图神经网络的鲁棒性,动态图建模和半监督节点分类的类别不平衡问题展开。已在KDD,WWW等数据挖掘顶尖会议上发表论文。

图神经网络在诸多基于图数据的下游任务中表现出色,但近年来研究发现图神经网络面对恶意的结构扰动是非常脆弱的。一种直观的增强图对抗鲁棒性的方法是结构学习,通过优化被篡改的图结构来缓解攻击带来的负面影响。已有方法大多基于原始特征或者监督信号来进行结构学习。但这两种方法都存在一定的问题,前者缺乏了结构信息,而后者因为分类器受到攻击,表征质量也随之下降。基于此,我们提出了一个基于对比学习的无监督框架来获取面向对抗鲁棒性的高质量表征,以此来进行结构优化。另一方面,我们还发现GCN的重参数化trick会使得模型更脆弱,基于此我们简单的修改了GCN,获得了更鲁棒的下游分类器。

1

研究动机

近年来,得益于消息传递机制,图神经网络(GNN)在大量基于图数据的任务上取得了卓越的成效,尤其是半监督节点分类任务。然而,最新的研究表明,GNN在对抗攻击面前是极为脆弱的,尤其是结构扰动。攻击者只需要对图结构进行微小的篡改就能使的模型分类性能大大下降。

模型的对抗鲁棒性(Adversarial Robustness)在一些security-critical的任务上至关重要,例如欺诈交易检测,欺诈者可以在金融交易图中,通过刻意的和普通用户建立交易关系,来隐藏自己的真实意图。

最直观的提高GNN鲁棒性的方法是对干扰连边进行侦测,找出潜在的扰动并将其删除或者降低对模型的影响。其中一种代表性方法是基于一个pair-wise function 计算任意两个节点i, j之间的权值,进而给整个邻接矩阵计算出一个权重矩阵(Weights Matrix),最终基于这个Matrix决定一条边在图中的去留,达到优化图结构的目的。

先前的pair-wise function的方法更多的关注如何设计一个巧妙的function来得到一个更准确地Weights Matrix,总体上可以分为两类:

  • Feature-based:这类方法用节点的原始特征去计算,代表方法有GCN-Jaccard,GNNGuard等

  • Representation-based:这类方法用基于监督信号获取的representation去计算,代表方法有GRCN等

但这两类方法一定的缺陷,下面是一个在Cora数据集上用MetaAttack进行不同扰动率下攻击的结果。feature-based的方法在扰动率较低的时候,表现甚至不如Vanilla GCN,表现出了明显的performance和robustness的trade-off,这是由于基于特征优化图结构丢失了图中的拓扑信息,在扰动率较低的时候,基于特征删除的正常连边的负面影响大于了删除干扰边的正面影响,从而出现了这个trade-off;另一方面,基于监督信号获取的representation的方法在扰动率较高的时候性能下降明显,这是因为分类器直接受到攻击算法攻击,可以认为基于下游任务学到的representation的治疗和下游任务的表现强相关,在扰动较高的时候质量较低,用于低质量表征优化结构自然很难得到高质量的图结构。

因此,我们认为这类方法的关键也许不在function的设计,而在于得到一个在对抗攻击场景下可靠的表征用于优化结构,我们定义可靠的表征应有以下特点:

  • 携带特征信息的同时,包含尽可能多的正确的结构信息

  • 与下游任务无关,并对结构扰动不敏感

基于此我们提出了一套无监督的pipeline-STABLE,用于结构优化。

2

方法

Representation Learning

解决该问题的关键是得到可靠的表征,我们采用了对比学习作为这部分的backbone。一方面对比学习在图上的无监督表示学习问题上的高效性已经得到了充分验证,另一方面,对比学习中的Augmentation策略和Graph Attack有着天然的联系,例如一种常用的生成Augmentation views的方法是对图结构进行随机的扰动,而这也可以看作是在对图做随机攻击(Random Attack),基于这个特性我们可以设计一些更贴近攻防场景的增强策略。

我们设计了两种针对对抗鲁棒性场景的改进策略,训练前的Preprocess和生成Augmentation Views的Recovery。在图上进行对比学习训练之前,我们首先基于简单的相似度策略进行粗略剪枝:

计算任意两个相连节点的相似度,剪去低于一定阈值的那些边。这一步可以对图进行粗略的净化,删除那些容易被侦测出来的干扰边。

第二步生成多个views,将第一步preprocess中删除的边,进行小部分随机恢复来得到一个view。同时对比学习训练中需要有负样本来构成负样本对,我们沿用DGI中随机扰动特征矩阵的方法来获取负样本,训练的目标函数是:

我们采用了全局局部的对比模式,而没有用常见的局部局部。因为攻击者在对图结构进行扰动的时候需要保持unnoticeable,即全局的一个不显明性,这也就决定了攻击对某些节点的局部修改很大,但对全局的影响是比较小的。因此,采用global-local的对比范式,也是在用受影响较小的全局表征对局部表征进行校准。

那么为什么Preprocess和Recover这两个操作可以使得我们得到满足我们要求的表征呢?第一个要求,我们希望包含特征信息以及尽可能多的正确的结构信息,而预处理的粗剪枝和对比学习在图表示学习上的高效性满足了这个要求。第二个要求,我们希望表征对结构扰动不敏感,recovery这个操作本质上可以看作是在对预处理后的图进行微小的攻击,因为预处理删除的大部分是易察觉的干扰边,那么恢复的也大概率是干扰边,因此可以看作是在以攻击算法的攻击方式生成Augmentation Views。对比学习训练的过程会使得各个view和原图的表征想接近,也就对每个view包含的微小攻击不敏感,从而满足了我们的第二个需求。

Graph Refining

当得到了高质量表征之后,优化结构就非常简单了,我们只需要基于简单的相似度度量对图进行加边减边,剪去相似度低于阈值的边,并为每个节点连上k个与其最相似的节点。

Classifier

基当结构优化完成了,理论上可以接上任意的下游分类器进行下游任务,这部分以往的方法有许多采用了Vanilla GCN,例如SimpGCN、GCN-Jaccard,而我们发现,GCN的renormalization trick会加重GCN的结构脆弱性。

以往的研究发现,攻击算法更倾向于攻击低度节点,但这只关注了干扰边的一侧的特点,忽视了什么样的节点会被用作fake neighbor,我们定义边的度为两个相连节点的度的和,将图中干扰边和普通边的度分布画了出来:

可以发现干扰边度都较低,也就是说攻击算法会给低度节点连上一个低度邻居,再看一下GCN的renormalization trick:

GCN会给低度邻居分配更高的权重,低度节点的邻居较少,加上一个fake neighbor的影响较大,分配跟高的权重进一步扩大了干扰带来的负面影响。我们的解决方法也非常直观,反其道而行之给高度节点和节点自身特征更高的权重:

对比发现,这个改动能大大增强GCN的鲁棒性:

3

实验结果

我们在四个Benchmark数据集上验证了STABLE的鲁棒性,对比了与其他7种Robust GNN在3种攻击算法下的性能表现。

可以看出STABLE在不同数据集、攻击算法、各种扰动率性能具有一致的优越性。

上图是将三种算法总体剪边数量调整到1000左右,STABLE移除的干扰边最多,准确率最高,具有更准确的结构学习能力。

上图为参数敏感性实验以及在不同扰动率下取得最佳表现的具体参数值,其中k为加邻居数量,为分类器为邻居节点分配权重的幂值,越高代表给高度节点越高的权重,可以看出随着扰动率的上升,我们应该给节点更多的相似邻居,应该更多的在消息传递的过程中采用高度邻居的信息。

上图为Ablation Study,几种变体含义分别为:

- STABLE-P:没有Preprocess

- STABLE-A:没有Augmentation策略

- STABLE-Ran:采用随机扰动生成Views

- STABLE-K:没有top-k加邻居策略

- STABLE-GCN:下游分类器采用普通GCN

值得注意的是STABLE-A和STABLE-Ran的线条几乎重合,也就是说随机的增强策略和无增强效果接近,表明Recovery的策略切实有效。

4

结论

我们提出了STABLE,一套无监督的结构学习框架。本作的重点是我们认为计算边的权重矩阵的关键不在于function的设计,而在于一个可靠的表征,基于此我们设计了面向对抗鲁棒性的对比学习模型来获取高质量表征,在多个数据集上抵御多种攻击均显著超过了以往的方法。

整理:林  则

作者:李  宽

往期精彩文章推荐

记得关注我们呀!每天都有新知识!

关于AI TIME

AI TIME源起于2019年,旨在发扬科学思辨精神,邀请各界人士对人工智能理论、算法和场景应用的本质问题进行探索,加强思想碰撞,链接全球AI学者、行业专家和爱好者,希望以辩论的形式,探讨人工智能和人类未来之间的矛盾,探索人工智能领域的未来。

迄今为止,AI TIME已经邀请了800多位海内外讲者,举办了逾350场活动,超300万人次观看。

我知道你

在看

~

点击 阅读原文 查看回放!

干货!STABLE - 一种无监督高鲁棒性图结构学习框架相关推荐

  1. 亚马逊提出无监督虚拟增强句子表征学习框架,效果超越SimCSE

    ©作者 | 林亿 单位 | 科大讯飞AI研究院 研究方向 | 对话系统 前言  半年前 SimCSE 两次 dropout 的操作刷爆朋友圈,对比学习相关论文也席卷各大顶会顶刊:上次也总结了 ACL ...

  2. Mol2vec | 一种无监督机器学习方法的分子亚结构向量表示

    Mol2vec 受自然语言处理技术的启发,这里介绍Mol2vec是一种无监督的机器学习方法,用于学习分子亚结构的向量表示.就像Word2vec模型一样,密切相关的单词的向量在向量空间中非常接近,Mol ...

  3. 无监督特征对齐的迁移学习理论框架

    0.前言 文献<基于无监督特征对齐的变负载下滚动轴承故障诊断方法>引入迁移学习中能够实现无监督领域适应的子空间对齐(subspace alignment,SA)算法并进行改进,提出将核映射 ...

  4. 具有多样-代表性奖励机制的无监督视频摘要深度强化学习

    题目 <Deep Reinforcement Learning for Unsupervised Video Summarization with Diversity-Representativ ...

  5. 9种有监督与3种无监督机器学习算法

    机器学习作为目前的热点技术广泛运用于数据分析领域,其理论和方法用于解决工程应用的复杂问题.然而在机器学习领域,没有算法能完美地解决所有问题(数据集的规模与结构.性能与便利度.可解释性等不可能三角),识 ...

  6. 经典论文复现 | InfoGAN:一种无监督生成方法

    过去几年发表于各大 AI 顶会论文提出的 400 多种算法中,公开算法代码的仅占 6%,其中三分之一的论文作者分享了测试数据,约 54% 的分享包含"伪代码".这是今年 AAAI ...

  7. 文本相似度之五种无监督算法实现代码

    短文本相似度,即求解两个短文本之间的相似程度:它是文本匹配任务或文本蕴含任务的一种特殊形式,返回文本之间相似程度的具体数值.然而在工业界中,短文本相似度计算占有举足轻重的地位. 例如:在问答系统任务( ...

  8. 2023-一种无监督目标检测和实例分割方法【Cut and Learn for Unsupervised Object Detection and Instance Segmentation】

    Cut and Learn for Unsupervised Object Detection and Instance Segmentation 无监督目标检测和实例分割的剪切与学习 Faceboo ...

  9. 一种无监督语义分割算法:Unsupervised Semantic Segmentation using Invariance and Equivariance in Clustering

    论文题目:PiCIE: Unsupervised Semantic Segmentation using Invariance and Equivariance in Clustering 1 摘要 ...

最新文章

  1. squid 安装、配置、优化
  2. Spring Boot 整合 Elasticsearch,实现 function score query 权重分查询
  3. 显卡测试软件3d mark,显卡评测工具3DMark跑分结果变了:可以直接PK同等配置
  4. HTTP 三次握手  建立连接 和  四次握手断开连接
  5. Centos后台运行jar
  6. 平板电脑安装软件_分享一个将平板作为电脑分屏的软件(文末有链接)
  7. 数组的定义格式二_静态初始化
  8. 教你如何一篇博客读懂设计模式之—--原型模式
  9. 产品经理和程序员的黑话
  10. 2021-2025年中国制革机械行业市场供需与战略研究报告
  11. java+基于dom4j工具类_基于dom4j的xml映射实体的工具类(java)
  12. 文字处理技术:标点压缩
  13. 计算机网络共享自动关,如果单击“打印”后共享打印机自动关闭,该怎么办?...
  14. nero incd V4.3.23.3 序列号
  15. Java暴力破解Wifi
  16. 为什么我要建立自己的公众号?
  17. guid主分区表损坏如何处理_磁盘管理之磁盘分区,主引导分区表修复
  18. Python-教你用requests爬取网易云课堂热门课程。
  19. cad直线和圆弧倒角不相切_cad中绘制圆角倒角有哪些技巧?
  20. 计算机系统(一)期末复(yu)习(3):LC-3汇编,输入与输出

热门文章

  1. 【科创人】DCloud崔红保:uni-app和HBuilder背后的男人,让天下没有难做的开发
  2. 一些工程研发专业名词解释、 制造业常用术语、 BOM的分类
  3. 计算机兴趣小组活动实施方式,信息技术兴趣小组活动总结范文(通用5篇)
  4. 【DVE命令报错,yum本地源配置】error while loading shared libraries:libtermcap.so.2
  5. 有了繁难字库生僻字不用造(一)
  6. java选填_java-选择填空题库
  7. Java基础 | 多态
  8. 三星A5显示服务器未响应,三星A5手机死机了 屏幕一直亮着 按什么键都没反应==求解答...
  9. 2019年第十届蓝桥杯c/c++B组国赛决赛真题题目
  10. Cobbler详解(六)——cobbler-web