输出:节点嵌入。 我们还可以嵌入更大的网络结构,子图,图形。

  关键思路:基于本地网络邻居生成节点嵌入

  

  直觉:节点使用神经网络聚合来自邻居的信息

  

  已经提出了具有神经网络差异选择的许多模型变体。

  

  

  

  直觉:网络邻居定义了一个计算图

  每个节点都基于其邻域定义一个计算图!

  

  通过邻居聚合获得节点表示

  

  过池化节点表示来获取图形表示

  

  图神经网络在以下方面实现了最先进的性能:

  节点分类[Kipf + ICLR’2022]图形分类[Ying + NeurIPS’2022]链接预测[Zhang + NeurIPS’2022]

  图神经网络是完美的么?有什么限制么?

  传统的GNN无法区分某些简单的图形结构。

  

  假定:输入节点要素是统一的(由相同的节点颜色表示)

  GNN不能可靠处理图数据中的噪声

  图形中的噪声:1.节点特征摄动 2.边的添加/删除

  

  传统图神经网络在捕获图结构时的限制

  给定两个不同的图,GNN可以正确的把他们映射成不同的图形表示吗?

  分类解决方案的重要条件

  本质上,图同构测试问题。

  对于一般情况,不存在多项式算法。图神经网络可能无法完美地区分任何图形!

  图神经网络可能无法完美地区分任何图形。

  图神经网络可以执行图形同构测试的程度如何?

  需要重新考虑图神经网络如何捕获图结构的机制。

  重新考虑图神经网络

  图神经网络使用不同的计算图来区分不同的图。

  

  节点表示法捕获根的子树结构。

  

  大多数判别式GNN将不同的子树映射到不同的节点表示形式(用不同的颜色表示)。

  

  

  如果函数将不同的元素映射到不同的输出,则该函数是单射的。

  

  

  如果邻居聚合的每个步骤都是单射的,则整个邻居聚合都是单射的。

  

  邻居聚合本质上是多集(具有重复元素的集)上的函数

  

  GNN的判别能力可以通过多集函数来表征

  下面:分析GCN,GraphSAGE

  回顾:GCN使用均值池

  

  

  GCN将无法区分按比例等效的多集。单射行不通!

  回顾:GraphSAGE使用最大化池。

  

  

  GraphSAGE甚至无法用相同种类的不同元素来区分多集。 单射行不通!

  我们如何使用神经网络设计单射射多集函数?

  定理

  任何单射多集函数都可以表示为

  

  

  图同构网络(GIN)

  

  

  GIN的邻居聚合是单射的!

  图池化也是多集函数。

  总和池化可以提供单射图池化

  

  到目前为止:GIN通过使用内射性邻居聚合来实现[Xu + ICLR’2022]的最大判别能力。

  这有多强大?

  GIN与Weisfeiler-Lehman(WL)图同构测试(1968)密切相关。

  已知WL测试能够区分大多数实际图形。

  WL首先将不同的有根子树映射到不同的颜色

  

  类似GIN单射邻居聚合

  然后,WL计算不同的颜色。

  

  类似GNN的图池化

  最后,WL比较计数

  

  WL测试和GIN在操作上等效。

  WL测试可以区分的GIN可区分的图

  观察

  GIN具有与WL图同构测试相同的判别能力。已知WL测试可以区分大多数图形,除了一些特殊情况。

  由于所有节点都具有相同的本地子树结构,因此对于WL测试,两个图看起来相同。

  后续工作以解决极端情况,但时间复杂度却成倍增加:

  图分类:社会图和生物/化学图训练不同GNN架构的准确性。

  GIN比GCN GraphSAGE更适合训练数据。

  数据集趋势相同!

  

  图分类:社会图和生物/化学图

  GIN在测试准确性方面也优于现有的GNN,因为它可以更好地捕获图形结构。

  

  Reddit数据集不具有节点功能

  现有的GNN使用非注入式邻居聚合,因此判别力较低

  GIN使用内射性邻域聚合,与WL图同构测试具有区别GIN在图形分类中达到了最先进的测试性能GNN易受图形数据噪声影响

  深度神经网络容易受到对抗性攻击!

  通常将攻击作为难以察觉的噪声实施,从而改变了预测

  对抗在图神经网络的应用中非常常见,例如搜索引擎,推荐系统,社交网络等。

  这些对抗将利用任何公开的漏洞!

  GNN是否对对抗敏感?

  在这里,我们重点介绍使用图卷积神经网络(GCN)进行的半监督节点分类[Kipf + ICLR’2022]

  输入:部分标记的属性图

  目标:预测未标记节点的标签

  

  

  现实世界中受到攻击可能性?

  

  目标节点t∈V:我们要更改其分类标签的节点

  攻击者节点s?V:攻击者可以修改的节点

  

  数学上如何计算这些攻击概率?

  Zügner+,针对图形数据的神经网络的对抗性攻击,KDD’18

  最大化(目标节点的预测标签的更改)受(图中的噪声限制)的影响

  

  查找修改后的图形,该图形可以最大程度地改变目标节点的预测标签

  让我们解析一下目标函数!

  

  

  查找修改后的图形,该图形可以最大程度地改变目标节点的预测标签

  

  GCN在修改的图形上训练,然后将其用于预测目标节点的标签。

  

  修改后的图应接近原始图。

  例如,固定的边删除/添加预算,节点属性扰动

  

  实际上,我们不能完全解决优化问题,因为……

  图形修改是离散的(不能使用简单的梯度下降来优化)内循环涉及昂贵的GCN再训练

  已经提出了一些试探法来有效地获得近似解。

  例如:

  贪婪地选择逐步图形修改通过取消ReLU激活来简化GCN(以封闭形式工作)等

  使用GCN的半监督节点分类

  由5个具有不同随机初始化的GCN生成的单个节点的类预测

  仅通过5种图形结构修改(| V |=?2k,| E |=?5k)即可轻松操纵GCN预测

  

  GAN对于对抗攻击不够健壮

  问题和未来的方向

  化学:分子图 分子性质预测

  

  生物学:蛋白质-蛋白质相互作用网络 蛋白质功能预测

  

  标签数据不足标签需要昂贵的实验模型过度适合小型训练数据集分布外预测测试示例与科学发现训练非常不同模型通常表现不佳

  预训练GNN

  

  我们已经看到了如何攻击GNN

  公开问题 如何防御攻击?

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐