图神经网络
侧边栏壁纸
  • 累计撰写 16 篇文章
  • 累计收到 2 条评论

图神经网络

晨旭不想写程序
2024-06-02 / 0 评论 / 44 阅读 / 正在检测是否收录...

图神经网络—GNN

看了大佬的博客

A Gentle Introduction to Graph Neural Networks

图用来表示一些实体间的关系——》点

V Vertex 顶点/node

E Edge 边/关系

U Global 全局 (embedding) 比如一个图中是否含有环 就是一个全局信息

V E U可以用向量来表示

图分为有方向 与 无方向 两种实体间的关系不一定相互 比如用户博客的关注

将图片变成图就是将每个像素点按照在图片上的位置进行排列,前后左右以及对角线直接相连的的结点都是本节点的”邻居“。

将文本变成图就是将 各个单词进行串联

常见的分子结构也是用图表示

还有常见的图就是人物关系图

图的表示

图是一种比较具象化的数据结构,注重数据之间的关系

通常我们使用向量来表示图

先给点进行排序,然后在相应的位置上放入点中的数据,

如 1 3 2表示三个点 第一个点中数据为1 第二个中为3 第三个为2

那么相应的就有边的性质 假设有四条边 表示为 3 2 3 2

意思是四条边蕴含的数据分别为3 2 3 2

最后对应四条边的四个连接 如 [0,1] [1,2] [2,0] [2,3]

这样的一个图表示的就是一个简单的图,并且我们也表示出了图所蕴含的信息

使用图

简单的GNN

既然知道了如何表示图,那么我们来看如何使用图进行训练任务,最简单的就是信息传递,他分别对图的E V U的embedding进行了一次的MLP,从而保持图的结构,进行多次,就有了一个简单的图神经网络

继续,我们可以使用图进行图信息的预测

假设我们缺失图上的顶点信息,我们就可以将与此顶点相连的边还有全局信息进行信息传递,我们直接将边的embedding与全局的embedding进行求和,经过映射操作,那么我们可以直接将得到的值赋予给顶点信息,这也叫pooling

对于边信息或者全局信息,我们直接采用对称的方式进行操作即可

那么我们来看使用一张图中信息的流程,实际上就是我们对于一张图,将它进入E V U的三个MLP中直接进行输出,得到属性进行过处理的图(图进图出),然后将它进入全连接层,获得我们想要的结果

但是这种简单的方式没有考虑到V E U三者之间的联系,并不能完整的利用图中的信息。

0

评论 (0)

取消