GNN中的Graph Pooling

3 篇文章 2 订阅

前言

GNN/GCN在非欧数据中的应用具有极大的挖掘价值。通常,GNN的应用分为两种:1,节点分类;2,图分类。

节点分类可以用在点云分割,社交网络节点分类,推荐算法等等。

图分类可以用在姿态估计,蛋白质分类等等,当然,也可以用在图像分类。

对于节点分类而言,图结构在forward阶段是不会改变的,改变的只是节点的隐藏层属性。如下:

对于图分类而言,图结构在前传的时候会downsize,最后聚合成一个点的feature再做MLP:

截图来自论文:https://arxiv.org/abs/1901.00596 

图分类所用的downsize便是本文的主角graph pooling。--终于引出来了..


Graph Pooling

GNN/GCN 最先火的应用是在Node classification,然后先富带动后富,Graph classification也越来越多人研究。所以,Graph Pooling的研究其实是起步比较晚的

Pooling就是池化操作,熟悉CNN的朋友都知道Pooling只是对特征图的downsampling。不熟悉CNN的朋友请按ctrl+w。对图像的Pooling非常简单,只需给定步长和池化类型就能做。但是Graph pooling,会受限于非欧的数据结构,而不能简单地操作。

简而言之,graph pooling就是要对graph进行合理化的downsize。

目前有三大类方法进行graph pooling:

1. Hard rule

hard rule很简单,因为Graph structure是已知的,可以预先规定池化节点:

如图,咱们预先规定[1,2,3,5]节点,[6,7]节点和[4]节点合并,得到新的a,b,c节点。这便是硬规定下的池化方法。比较好理解。

2. Graph coarsening

图粗略化是现在的主流可学习池化方法之一。

代表论文:DiffPool

论文链接:https://arxiv.org/abs/1806.08804

这种方法是hard rule的trainable版本,先对节点进行聚类,然后合成一个超级节点,以达到池化效果。

思想流程大概是:soft clustering -> super node -> coarsening

3. Node selection

节点选择就是选择一些重要节点去代替原图

代表论文:self-attention graph pooling

论文链接:https://arxiv.org/pdf/1904.08082.pdf

这个self-attention类似于分析节点的重要性,方法类似节点分类的操作。

Graph Embedding(图嵌入)和Graph Neural Network(图神经网络)是两种不同的方法用于处理图数据。 Graph Embedding是指将图数据的节点和边转化为低维向量表示的过程。它的目的是通过学习节点和边的向量表示,将图数据转化为高效且可用于机器学习算法的数值特征。Graph Embedding可以通过多种方式来实现,如DeepWalk、Node2Vec、Line等。它们通常是基于节点之间的邻近关系来学习节点的向量表示,即节点的向量表示尽可能地保留与其邻居节点的相似性。Graph Embedding可以用于图数据的聚类、相似度计算、可视化等任务。 Graph Neural Network是一种基于神经网络的模型,专门用于处理图结构化数据。GNN模型可以通过学习节点的向量表示,并利用节点之间的关系进行信息传递和更新。GNN通过定义节点的邻居节点和自身的聚合函数,将节点信息进行传递和更新。GNN的核心思想是通过多次迭代聚合节点的邻居信息,最终获取节点的全局信息。GNN可以进行节点分类、图分类、链接预测等任务。 因此,Graph EmbeddingGraph Neural Network有一些区别。Graph Embedding是一种将图数据转化为低维向量的过程,而GNN是一种通过学习图结构信息进行节点特征传递和更新的模型。Graph Embedding在表示学习上更加注重将节点和边的信息转化为向量形式,而GNN在聚合和传递信息时更加注重节点之间的相互影响。两者可以结合使用,将Graph Embedding的低维向量作为GNN的输入,进一步提高图数据的表示和处理能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

木盏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值