Graph Neural Networks(图神经网络)

时间:2024-03-31 22:54:47

Introduction

回顾其他的神经网络

我们先看看下面几个之前研究过的network。
Graph Neural Networks(图神经网络)
Graph Neural Networks(图神经网络)
Graph Neural Networks(图神经网络)
Graph Neural Networks(图神经网络)

初识图神经网络

图神经网络最重要的就是这个图(Graph)。
Graph Neural Networks(图神经网络)
那么GNN的输入就是Graph,如下图所示:输入一张具有大量节点和边的Graph。
Graph Neural Networks(图神经网络)

为什么要使用图神经网络

如下图,在分类应用中,我们可以输入一种分子结构,让分类器分类是否该分子导致突变。
Graph Neural Networks(图神经网络)
还有就是在Generation应用中,让生成器生成我想要的结构分子。
Graph Neural Networks(图神经网络)
还有就是在寻找凶手的时候。
Graph Neural Networks(图神经网络)
我们可以像下面这样仅仅是用一个普通的分类器,将人物信息传入,判断是不是凶手。
Graph Neural Networks(图神经网络)
但是,这些人物之间可能有潜在的关系,这时我们就要用GNN了。
Graph Neural Networks(图神经网络)
那么下面提出了三个问题:
1.我们如何利用这些结构和关系去辅助我们的模型?
2.如果图很大,比如有两万个节点,又该怎么办?
3.如果有一些没有label的节点又该怎么办?
Graph Neural Networks(图神经网络)
在我们实际生活中,没有label的节点远多于有label的节点,一个节点可以从他的邻居节点学习整个结构。
Graph Neural Networks(图神经网络)

怎样实现GNN

我们用卷积的方式用一个kernel去扫描,能行吗?好像比较困难。
Graph Neural Networks(图神经网络)
那么我们怎么样使用卷积将节点放入到特征空间?

Graph Neural Networks(图神经网络)

GNN的学习路线图

Spatial-based和Spectral-based就是上面提到的两种方式。
Graph Neural Networks(图神经网络)

Tasks, Dataset, and Benchmark

待补充

Spatial-based GNN

回顾一下卷积神经网络,用一个kernel去扫描整张图,然后做内积。
Graph Neural Networks(图神经网络)
那么在GNN中,有两个术语:
1.Aggregate:用邻居特征去更新下一层的隐藏状态。
2.Readout:把所有节点的特征集合起来代表整个graph。
Graph Neural Networks(图神经网络)

NN4G

如下图所示,我要更新节点V3:就是将各个邻居节点的特征向量相加,再成权重,再加上自己的特征向量乘以权重。
Graph Neural Networks(图神经网络)
如何Readout?将每一层的所有的h取平均,然后再输入到一个神经网络中,最后输出一个y向量。
Graph Neural Networks(图神经网络)

DCNN

此方法中d(3,’)=?都是指的最初的图里的v3和某一点的距离,每做一层距离就加一,最后可以叠很多层,mean(),是将符合括号内条件的向量相加得到的一个向量。
Graph Neural Networks(图神经网络)
然后每一层都是v3的特征,将这些层拼成一个矩阵,然后与w相乘,就得到了v3的最终特征向量。
Graph Neural Networks(图神经网络)

DGC

这种方式就直接将这些向量相加,上面的那种方法是拼起来乘个w。
Graph Neural Networks(图神经网络)

MoNET

这个模型是加入了节点与节点之间的距离权重。
Graph Neural Networks(图神经网络)
Graph Neural Networks(图神经网络)

GraphSAGE

Graph Neural Networks(图神经网络)
Graph Neural Networks(图神经网络)
Graph Neural Networks(图神经网络)

GAT

Graph Neural Networks(图神经网络)
这个做法是找一个函数,然后输入V3和它的邻居节点,然后输出e,这个e就表示V3和某一结点的重要性。
Graph Neural Networks(图神经网络)
Graph Neural Networks(图神经网络)

GIN

Graph Neural Networks(图神经网络)
Graph Neural Networks(图神经网络)
Graph Neural Networks(图神经网络)

Graph Signal Processing and Spectral-based GNN

待补充