浅谈图神经网络(基于pytorch_geometric)—— 上篇
1 图神经网络背景
在以往的工作场景中,我们处理的多数为数据均为图像数据,即图片、视频等,这些数据都可以用矩阵来表示,因此使用CNN就可以实现我们的需求。但是除此以外,还有很多非结构化的数据,如社交网络之间的推荐问题、化学分子式(化学物质是否有害)、以及地震发生时接受到的地震数据。如下图所示:
(此处的图即为图论中的图;在社交网络中,每个人代表图中的节点,人与人之间的关系代表图中边的连接关系,而人与人之间的亲密度等可以转化为边的权值;化学分子式中,每个原子图中的节点,原子与原子之间的化学键代表图中边连接关系,而化学键的属性可以转化为边连接的权值;在地震数据中,台站(即接受地震信号的传感器)为节点,台站之间的距离则可以转化为图中边的权值)
在处理这些数据时,我们往往无法将其转为规则数据进行处理,而将这些数据转为图来表示是非常合理的。因此需要引入图神经网络,用图卷积的方式来处理图类型的数据。在此背景上,我们可以将图神经网络的应用背景分为三类:分别为图级别的任务,节点级别的任务和以边为核心的任务。
图级别的任务通常通过池化和Readout两个模块将图最终转化为一个向量表示,通常为图分类的任务,具有代表性的即化学物质有害性的判断。
节点级别的任务则通过Encoder和Decoder对图进行特征提取,最后得到结果为节点的降维表示,具有代表性的即图分割任务。而边级别的任务通常为进行边的预测,即建立起无关联的数据之间的联系。除以以外还有对新节点的生成等其他任务。
2 图神经网络基本原理
图神经网络中的网络类型主要可以分为两大类,分别为基于空间域的方法和基于谱域的方法。其中基于空间域的方法中比较具有代表性的有:
- Massage passing neural network (MPNN)
- Neural network for graph (NN4G)
- Graph of SAmple and aggregate (GraphSage)
- Graph of Attention (GAT)
基于谱域方法中比较具有代表性的则有:
- Graph Convolutional Network (GCN)
对于空间域的算法而言,通常就是通过下面两个步骤进行信息的传递:
2.1 MPNN
MPNN是最早的信息传递网络之一,其传递方式如下所示:
它的主要步骤可以分为聚合和更新两个步骤,聚合过程中,使得目标节点聚合其周围节点的信息。而在更新过程中,分别把周围节点的信息作为w,自身节点的信息作为b来进行迭代更新。最终层通过激活函数完成节点级别的分类目标。
2.2 NN4G
NN4G的算法示意图如上表示,它的特点就是通过Readout对学习得到的多维度数据进行聚合,从而实现图级别的分类、预测问题。
ps. 小结
本部分主要介绍了图神经网络的背景和简单的算法原理和基础的网络结构,预知后事如何,请听下回分解。
参考文献
[1]. http://speech.ee.ntu.edu.tw/~tlkagk/courses/ML2020/GNN.pdf
[2]. https://arxiv.org/abs/1901.00596
[3]. https://arxiv.org/abs/2003.04078v4
- 点赞
- 收藏
- 关注作者
评论(0)