图神经网络(Graph Neural Networks)

图神经网络(Graph Neural Networks)

目录

  • 图神经网络(Graph Neural Networks)
    • 一、 什么是图神经网络
    • 二、 有哪些图神经网络
      • 符号定义
      • 图卷积网络
        • 1.1 基于谱的GCNs方法
        • 1.2 基于空间的GCNs方法
        • 1.3 基于组合的空间GCNs方法
      • 图注意力网络
      • 图自动编码器(Graph Autoencoders)
      • 图生成网络(Graph Generative Networks)
      • 图时空网络(Graph Spatial-Temporal Networks)
    • 三、 图神经网络的应用
        • 1. 计算机视觉领域(Computer Vision)
        • 2. 推荐系统(Recommender Systems)
        • 3. 交通(Traffic)
        • 4. 生物化学(Chemistry)
        • 5. 其他
    • 参考资料

一、 什么是图神经网络

  • 图是不规则的,每个图都有一个大小可变的无序节点,图中的每个节点都有不同数量的相邻节点,导致一些重要的操作(例如卷积)在图像(Image)上很容易计算,但不再适合直接用于图。
  • 现有深度学习算法的一个核心假设是数据样本之间彼此独立。然而,对于图来说,情况并非如此,图中的每个数据样本(节点)都会有边与图中其他实数据样本(节点)相关,这些信息可用于捕获实例之间的相互依赖关系。
  • 图神经网络的研究与图嵌入(对图嵌入不了解的读者可以参考这篇文章《图嵌入综述》)或网络嵌入密切相关,图嵌入或网络嵌入是数据挖掘和机器学习界日益关注的另一个课题。图嵌入旨在通过保留图的网络拓扑结构和节点内容信息,将图中顶点表示为低维向量,以便使用简单的机器学习算法(例如,支持向量机分类)进行处理。许多图嵌入算法通常是无监督的算法,它们可以大致可以划分为三个类别,即矩阵分解、随机游走和深度学习方法。同时图嵌入的深度学习方法也属于图神经网络,包括基于图自动编码器的算法(如DNGR和SDNE)和无监督训练的图卷积神经网络(如GraphSage)。下图描述了图嵌入和图神经网络在本文中的区别。
    图神经网络(Graph Neural Networks)_第1张图片

二、 有哪些图神经网络

一般将图神经网络划分为五大类别,分别是:

  1. 图卷积网络(Graph Convolution Networks,GCN)、
  2. 图注意力网络(Graph Attention Networks)、
  3. 图自编码器( Graph Autoencoders)、
  4. 图生成网络( Graph Generative Networks)、
  5. 图时空网络(Graph Spatial-temporal Networks)

符号定义

图神经网络(Graph Neural Networks)_第2张图片

图卷积网络

图卷积网络将卷积运算从传统数据(例如图像)推广到图数据。其核心思想是学习一个函数映射f(.) ,通过该映射图中的节点vi​可以聚合它自己的特征xi与它的邻居特征xj​(j∈N(vi))来生成该节点 vi的新表示。
图神经网络(Graph Neural Networks)_第3张图片该图是GCN的多层变体。一个GCN层通过聚合其邻居节点的特征信息对其节点隐式表示。然后,对所有节点的隐式表示结果进行一个非线性转换。通过堆叠多个层,最终的隐层节点表示能够获得更深层的特征。

图卷积网络是许多复杂图神经网络模型的基础,包括基于自动编码器的模型、生成模型和时空网络等。

GCN方法又可以分为两大类,基于谱(spectral-based)和基于空间(spatial-based)。

1.1 基于谱的GCNs方法

在基于谱的图神经网络中,图被假定为无向图,无向图的一种鲁棒数学表示是正则化图拉普拉斯矩阵,正则化图拉普拉斯矩阵具有实对称半正定的性质。利用这个性质,正则化拉普拉斯矩阵可以分解为 L=UΛUT

现有的基于谱的图卷积网络模型有以下这些:Spectral CNN、Chebyshev Spectral CNN (ChebNet)、Adaptive Graph Convolution Network (AGCN)

基于谱的图卷积神经网络方法的一个常见缺点是,它们需要将整个图加载到内存中以执行图卷积,这在处理大型图时是不高效的。

1.2 基于空间的GCNs方法

基于空间的图卷积神经网络的思想主要源自于传统卷积神经网络对图像的卷积运算,不同的是基于空间的图卷积神经网络是基于节点的空间关系来定义图卷积的。

基于空间的图卷积神经网络的思想主要源自于传统卷积神经网络对图像的卷积运算,不同的是基于空间的图卷积神经网络是基于节点的空间关系来定义图卷积的。

为了将图像与图关联起来,可以将图像视为图的特殊形式,每个像素代表一个节点,如下图a所示,每个像素直接连接到其附近的像素。通过一个3×3的窗口,每个节点的邻域是其周围的8个像素。这八个像素的位置表示一个节点的邻居的顺序。然后,通过对每个通道上的中心节点及其相邻节点的像素值进行加权平均,对该3×3窗口应用一个滤波器。由于相邻节点的特定顺序,可以在不同的位置共享可训练权重。同样,对于一般的图,基于空间的图卷积将中心节点表示和相邻节点表示进行聚合,以获得该节点的新表示,如图b所示。
图神经网络(Graph Neural Networks)_第4张图片

1.3 基于组合的空间GCNs方法

消息传递神经网络(MPNNs):Gilmer等人将现有的几个图卷积网络归纳为一个统一的框架,称为消息传递神经网络(MPNNs)。MPNNs由两个阶段组成,消息传递阶段和读出阶段。

图注意力网络

2.1 图注意力网络(Graph Attention Network,GAT)
图注意力网络(GAT)是一种基于空间的图卷积网络,它的注意机制是在聚合特征信息时,将注意机制用于确定节点邻域的权重。

2.2 门控注意力网络(Gated Attention Network,GAAN)
门控注意力网络(GAAN)还采用了多头注意力机制来更新节点的隐藏状态。然而,GAAN并没有给每个head部分配相等的权重,而是引入了一种自注意机制,该机制为每个head计算不同的权重。

2.3 图形注意力模型(Graph Attention Model ,GAM)
图形注意力模型(GAM)提供了一个循环神经网络模型,以解决图形分类问题,通过自适应地访问一个重要节点的序列来处理图的信息。

图自动编码器(Graph Autoencoders)

图自动编码器是一类图嵌入方法,其目的是利用神经网络结构将图的顶点表示为低维向量。典型的解决方案是利用多层感知机作为编码器来获取节点嵌入,其中解码器重建节点的邻域统计信息,如positive pointwise mutual information (PPMI)或一阶和二阶近似值。最近,研究人员已经探索了将GCN作为编码器的用途,将GCN与GAN结合起来,或将LSTM与GAN结合起来设计图自动编码器。

目前基于GCN的自编码器的方法主要有:Graph Autoencoder (GAE)和Adversarially Regularized Graph Autoencoder (ARGA)

图自编码器的其它变体有:

Network Representations with Adversarially Regularized Autoencoders (NetRA)
Deep Neural Networks for Graph Representations (DNGR)
Structural Deep Network Embedding (SDNE)
Deep Recursive Network Embedding (DRNE)

DNGR和SDNE学习仅给出拓扑结构的节点嵌入,而GAE、ARGA、NetRA、DRNE用于学习当拓扑信息和节点内容特征都存在时的节点嵌入。图自动编码器的一个挑战是邻接矩阵A的稀疏性,这使得解码器的正条目数远远小于负条目数。为了解决这个问题,DNGR重构了一个更密集的矩阵,即PPMI矩阵,SDNE对邻接矩阵的零项进行惩罚,GAE对邻接矩阵中的项进行重加权,NetRA将图线性化为序列。

图生成网络(Graph Generative Networks)

图生成网络的目标是在给定一组观察到的图的情况下生成新的图。图生成网络的许多方法都是特定于领域的。例如,在分子图生成中,一些工作模拟了称为SMILES的分子图的字符串表示。在自然语言处理中,生成语义图或知识图通常以给定的句子为条件。最近,人们提出了几种通用的方法。一些工作将生成过程作为节点和边的交替形成因素,而另一些则采用生成对抗训练。这类方法要么使用GCN作为构建基块,要么使用不同的架构。

基于GAN的图生成网络主要有Molecular Generative Adversarial Networks (MolGAN):将relational GCN、改进的GAN和强化学习(RL)目标集成在一起,以生成具有所需属性的图。

Deep Generative Models of Graphs (DGMG):利用基于空间的图卷积网络来获得现有图的隐藏表示。

GraphRNN:通过两个层次的循环神经网络的深度图生成模型。

NetGAN:Netgan将LSTM与Wasserstein-GAN结合在一起,使用基于随机行走的方法生成图形。

图时空网络(Graph Spatial-Temporal Networks)

图时空网络同时捕捉时空图的时空相关性。时空图具有全局图结构,每个节点的输入随时间变化。例如,在交通网络中,每个传感器作为一个节点连续记录某条道路的交通速度,其中交通网络的边由传感器对之间的距离决定。图形时空网络的目标可以是预测未来的节点值或标签,或者预测时空图标签。最近的研究仅仅探讨了GCNs的使用,GCNs与RNN或CNN的结合,以及根据图结构定制的循环体系结构。

目前图时空网络的模型主要有:
Diffusion Convolutional Recurrent Neural Network (DCRNN)
CNN-GCN
Spatial Temporal GCN (ST-GCN)
Structural-RNN

三、 图神经网络的应用

1. 计算机视觉领域(Computer Vision)

图形神经网络的最大应用领域之一是计算机视觉。研究人员在场景图生成、点云分类与分割、动作识别等多个方面探索了利用图结构的方法。

2. 推荐系统(Recommender Systems)

基于图的推荐系统以项目和用户为节点。通过利用项目与项目、用户与用户、用户与项目之间的关系以及内容信息,基于图的推荐系统能够生成高质量的推荐。推荐系统的关键是评价一个项目对用户的重要性。因此,可以将其转换为一个链路预测问题。目标是预测用户和项目之间丢失的链接。为了解决这个问题,有学者提出了一种基于GCN的图形自动编码器。还有学者结合GCN和RNN,来学习用户对项目评分的隐藏步骤。

3. 交通(Traffic)

准确预测交通网络中的交通速度、交通量或道路密度,在路线规划和流量控制中至关重要。有学者采用基于图的时空神经网络方法来解决这些问题。他们模型的输入是一个时空图。在这个时空图中,节点由放置在道路上的传感器表示,边由阈值以上成对节点的距离表示,每个节点都包含一个时间序列作为特征。目标是预测一条道路在时间间隔内的平均速度。另一个有趣的应用是出租车需求预测。这有助于智能交通系统有效利用资源,节约能源。

4. 生物化学(Chemistry)

在化学中,研究人员应用图神经网络研究分子的图结构。在分子图中,原子为图中的节点,化学键为图中的边。节点分类、图形分类和图形生成是分子图的三个主要任务,它们可以用来学习分子figure、预测分子性质、推断蛋白质结构、合成化合物。

5. 其他

除了以上四个领域外,图神经网络还已被探索可以应用于其他问题,如程序验证、程序推理、社会影响预测、对抗性攻击预防、电子健康记录建模、脑网络、事件检测和组合优化。

参考资料

https://aistudio.baidu.com/aistudio/projectdetail/5368756
图神经网络(Graph Neural Networks,GNN)综述
论文翻译-A Comprehensive Survey on Graph Neural Networks《图神经网络GNN综述》
深度学习时代的图模型,清华发文综述图网络
斯坦福大学新课CS224W-2019

你可能感兴趣的:(图神经网络,神经网络,深度学习)