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


    图的属性

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

    GNN的应用

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

    图神经网络的属性

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

    图神经网络的特点

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

    图神经网络的结构

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

    图神经网络的机制

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

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

    推断属性

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

    汇聚

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

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

  • 相关阅读:
    【线性代数 & C++】结合逆矩阵的克拉默法则
    论文阅读笔记(一)
    el-table进阶(每条数据分行或合并)
    【宜居星球改造计划】Python 实现
    Spring Security和Shiro的异同?OAuth 2是什么?
    Hadoop运行环境搭建(开发重点三)、在hadoop102安装JDK、配置JDK环境变量、测试JDK是否安装成功
    SQL基础查询与排序
    Mysql5.7在线安装详细步骤
    如何使用Java进行安全测试?
    docker for windonws--Windows 10 家庭中文版安装apache zeppelin 0.10.1版本及安全配置
  • 原文地址:https://blog.csdn.net/douhuanmin123/article/details/131139283