• 图神经网络(GNN)综述的总结


    图的属性

    • 节点(node)
    • 边 (edge)
    • 整个部分(global)

    GNN的应用

    • 整体层面,识别整个子图
    • 顶点层面, 预测顶点的属性
    • 边的层面,预测边的属性

    图神经网络的属性

    • 节点
    • 连接性
    • 全局信息

    图神经网络的特点

    采用了邻接表的存储结构,在稀疏图中非常有用,可以节省空间和计算
    邻接表 —— 使用一个链表,每一个节点存储与节点相连接的节点,由此,图神经网络可以忽略顺序性,无论怎么排列组合,也只需要把邻接表的顺序变一下,本质上与其相连的节点不变。

    图神经网络的结构

    • 如同其他的神经网络要经过某一种特定的optimizable transform,图神经网络的输入图,在经过若干GNN块之后会得到经过特定变换的图,类似于卷积神经网络的特征提取,之后就是比较熟悉的classification layer了(可以是全连接层,或者是1*1卷积,等等等等)最后得到了我们的预测值
    • 图神经网络可以预测子图的属性(global)也可以预测边的属性或者节点的属性

    图神经网络的机制

    信息传递(以最简单的一个信息传递方式为例子)

    图神经网络的信息传递,像卷积神经网络有卷积核提取特征,图神经网络是靠节点全局信息,每一个作为独立的一个属性,都有分别对应的MLP(多层感知机,也可以是其他的模型)对信息进行传递,经过学习后的图的结构是不变的,(对于每个节点,边,全局信息的结构也不会变,相当于图的节点,边, 全局信息都经过了一次学习),这里我们也必须重视图神经网络的另一个属性就是连接性(连接性可以理解为,节点之间属性的联系是边,图神经网络中连接性不只是权重矩阵,节点的连接性体现在每个节点的输入中,这个后续会说),这里虽然更新的了节点,边,全局信息的值,但是并没有提到连接性,如何保证连接性也得到更新呢

    推断属性

    我们通常可以观察两个人互相之间的动作来推断,两个人的身份(属性),比两个人互相注视并摆出打架的姿态,两个人可能是搏击手,人可以视为节点,动作可以视为,由一个节点引向另一个节点的一个有向边,如果我们不知道节点的属性,我们可以结合边和全局信息来推断节点的属性。
    同样的,我们也可以使用边和节点的属性来推测全局的属性,用节点和全局来推断边的属性

    汇聚

    我们可以利用一个节点与邻居节点,收集自己和邻居的embedding向量,构成一个矩阵,然后聚合每个embedding向量,通常是以求和的形式。然后聚合之后的变量进行信息传递,这样子每个节点都与其他节点保存了联系,后面层数的点可以认为是上一层聚合的结果。(比较像卷积核提取特征,局部空间相关)

    在传递信息之前通常都有一个汇聚的过程,很像卷积神经网络的特征提取

  • 相关阅读:
    基于J2EE的网上体育用品销售系统设计与实现(SSH)
    【Leetcode】189. 轮转数组
    MyBatis实现动态SQL更新
    SwiftUI 手势大全之可用的手势类型有哪些(教程含源码)
    实用SQL语句
    [SWPUCTF-2022-新生赛]ez_sql
    SpringBoot3整合SpringDoc实现在线接口文档
    图库 | 图计算的适用场景有哪些?
    模拟退火算法(SA)求解旅行商问题(TSP)python
    windows 下 QT Android 环境搭建(QGC 4.2.x + Qt 5.15.2)
  • 原文地址:https://blog.csdn.net/douhuanmin123/article/details/131139283