2.5 图神经网络 |
|
神经网络的成功推动了对模式识别和数据挖掘的研究,许多机器学习任务,如对象检测、语音识别等,这些任务曾经高度依赖人工的特征工程来提取信息特征集,现在已经由卷积神经网络、循环神经网络(Recurrent Neural Network,RNN)等各种深度学习方法来实现,取得了巨大的成功。
但是深度学习的应用数据往往都是在高维特征空间上满足特征规则分布的欧几里得数据,而如今越来越多的应用数据以图的形式来表示。例如,在电子商务系统中,基于图形的学习系统可以利用用户和产品之间的联系做出高准确度的建议;在引文网络中,论文通过引文相互链接,需要将它们分类为不同的组。
由于图可能是不规则的,因此图可能具有可变大小的无序节点,并且图中的节点可能具有不同数量的邻居,从而导致一些重要的操作(例如,卷积)在图像域中易于计算,但很难应用于图域。图数据的复杂度对现有的机器学习算法提出了重大挑战。此外,现有机器学习算法的核心假设是实例间彼此独立。这种假设不再适用于图数据,因为每个实例(节点)通过各种类型的链接(例如,引文、友谊和交互)与其他实例(节点)相关联。
近年来,人们对深度学习方法在图上的扩展越来越感兴趣。在多方因素的成功推动下,研究人员借鉴了卷积网络、循环网络和深度自动编码器的思想,定义和设计了用于处理图数据的神经网络结构,由此诞生了一个新的研究热点——“图神经网络(Graph Neural Network,GNN)”。本章对图神经网络做一个简单的概述。
循环图神经网络(Recurrent Graph Neural Network,RGNN)大多是GNN的先驱作品。它们在图的节点上反复应用相同的参数集,以提取高级节点表示形式。由于早期受计算能力的限制,之前的研究主要集中在有向无环图上。Scarselli等人提出的图形神经网络(GNN * 2),扩展了先前的递归模型以处理一般类型的图,如非循环图、循环图、有向图和无向图。基于信息扩散机制,RGNN通过周期性地交换邻域信息来更新节点的状态,直到达到稳定的平衡为止。
目前基于门控机制的循环神经网络机制下的图神经网络结构的研究也有不少,例如,基于门控循环单元(GRU)的门控图神经网络(GGNN),通过门控循环单元控制网络传播过程中固定步数的迭代循环来实现门控图神经网络的结构,通过节点来建立相邻节点之间的聚合信息,然后通过循环门控单元来实现递归过程更新每个节点的隐藏状态。
图卷积神经网络(Graph Convolutional Network,GCN),将卷积运算从传统数据(例如,图像)推广到图数据。其核心思想是学习一个映射函数,通过该映射函数,图中的节点可以聚合它自己的特征与它邻居节点的特征,来生成该节点的新表示。图卷积神经网络是许多复杂图神经网络模型的基础,包括基于自动编码器的模型、生成模型和时空网络等。
图卷积层通过聚集来自其邻居的特征信息来封装每个节点的隐藏表示。特征汇总后,将非线性变换应用于结果输出。通过堆叠多层,每个节点的最终隐藏表示形式将接收来自其他邻居的消息。
图卷积神经网络(GCN)与递归图神经网络密切相关。GCN不是使用收缩约束来迭代节点状态的,而是在结构上使用固定数量的层(在每一层中具有不同的权重)来解决循环的相互依存关系。由于图卷积更有效,更方便与其他神经网络进行合成,因此,近年来,GCN迅速得到普及。GCN分为两类,即基于谱的和基于空间的。基于谱的方法通过从图信号处理的角度引入滤波器来定义图卷积,其中图卷积运算被解释为从图信号中去除噪声。基于空间的方法继承了GCN的思想,以通过信息传播来定义图卷积。自从GCN弥合了基于谱的方法与基于空间的方法之间的鸿沟以来,基于空间的方法由于其引人注目的效率、灵活性和通用性而迅速发展。
基于谱的图卷积神经网络(Spectral-based Graph Convolutional Network)基于图信号处理问题,将图神经网络的卷积层定义为一个滤波器,即通过滤波器去除噪声信号从而得到输入信号的分类结果。实际问题中只能用于处理无向且边上无信息的图结构,将输入信号的图定义为可特征分解的拉普拉斯矩阵,归一化后的特征分解可以表示为通用结构,其对角矩阵 A 就是特征值的 λ i 按序排列组成的特征矩阵。基于谱的图卷积神经网络方法的一个常见缺点是,它们需要将整个图加载到内存中以执行图卷积,这在处理大型图时是不高效的。
基于空间的图卷积神经网络(Spatial-based Graph Convolutional Network)的思想,主要源自传统卷积神经网络对图像的卷积运算,但是与之不同的是,基于空间的图卷积神经网络是基于节点的空间关系来定义图卷积的。
为了将图像卷积与图卷积联系起来,可以把图像视为图的特殊形式,如图2.14(a)所示,每个像素代表一个节点,每个像素直接连接其附近的像素。通过一个3×3的窗口,每个节点的邻域是其周围的8个像素。这8个像素的位置表示一个节点的邻居的顺序。然后,通过对每个通道上的中心节点及其相邻节点的像素值进行加权平均,对该3×3窗口应用一个滤波器。由于相邻节点的特定顺序,可以在不同的位置共享可训练权重。同样,对于一般的图,如图2.14(b)所示,与卷积神经网络对图像的像素点进行卷积运算类似,基于空间的卷积图神经网络通过计算中心单一节点与邻节点之间的卷积,来表示邻节点间信息的传递和聚合,作为特征域的新节点表示。
图2.14 卷积对比示意图
基于谱的图卷积神经网络模型在图形信号处理中具有理论基础,通过设计新的图形信号滤波器,人们可以构建新的ConvGNN。但是,由于效率、通用性和灵活性问题,与基于谱的卷积图神经网络模型相比,基于空间的图卷积神经网络模型更为可取。首先,基于谱的图卷积神经网络模型效率不如基于空间的图卷积神经网络模型。基于谱的图卷积神经网络模型要么需要执行特征向量计算,要么需要同时处理整个图形。基于空间的图卷积神经网络模型更可扩展到大型图,因为它们通过信息传播直接在图域中执行卷积,可以在一批节点而不是整个图中执行计算。其次,依赖于图傅里叶基础的基于谱的图卷积神经网络模型不能很好地推广到新图。它们假设一个固定的图,对图的任何扰动都会导致本征基的变化。另一方面,基于空间的图卷积神经网络模型在每个节点上本地执行图卷积,可以轻松地在不同位置和结构之间共享权重。此外,基于谱的图卷积神经网络模型仅限于在无向图上运行,基于空间的图卷积神经网络模型则更灵活,可以处理多源图输入,如边缘输入、有向图、有符号图和异构图,这些图输入可以轻松地合并到聚合函数中。
图自动编码器(Graph Auto-encoder,GAE)是一种将节点映射到潜在特征空间中,并从潜在表示中解码图信息的深度神经结构,其目的是利用神经网络结构将图的顶点表示为低维向量。GAE可以用于学习网络嵌入式数据信息或生成新图。
对于图结构数据而言,图自动编码器可以有效处理节点表示问题,最早的图自动编码器是稀疏自动编码器,图的稀疏性导致正节点对的数量远远少于负节点对的数量。通过将图结构的邻接矩阵表示为原始节点特征,并利用图自动编码器将其降低成低维的节点,然后稀疏自动编码的问题就被转化为反向传播的最优解问题。对于多个图,GAE能够通过将图编码为隐藏表示,并对给定隐藏表示的图结构进行解码来学习图的生成分布。
在许多实际应用中,图形在图形结构和图形输入方面都是动态的。时空图神经网络(Spatial-temporal Graph Neural Network,STGNN)在捕获图的动态性中占据重要位置。这类方法旨在模拟动态节点输入,同时假设已连接节点之间的相互依赖性。例如,交通网络由放置在道路上的速度传感器组成,在道路上,边缘权重由传感器之间的距离确定。由于一条道路的交通状况可能取决于其相邻道路的状况,因此在进行交通速度预测时,必须考虑空间依赖性。作为解决方案,STGNN可以同时捕获图的空间和时间依赖性。STGNN的任务可以是预测未来的节点值或标签,或预测空间时间图标签。STGNN遵循两个方向,即基于循环神经网络的方法和基于卷积神经网络的方法。
大多数基于循环神经网络的方法通过过滤输入和隐藏状态传递给递归单元来捕获时空依赖关系。基于循环神经网络的方法存在一些问题,如耗时的迭代传播和梯度爆炸。作为替代解决方案,基于卷积神经网络的方法具有并行计算、稳定梯度和低内存需求等优点。这些方法都使用了一个预定义的图结构,假设预定义的图结构反映了节点之间的真正的依赖关系。但是,通过在空间时间设置中获得许多图形数据快照,可以从数据中自动学习潜在的静态图形结构。学习潜在的静态空间依存关系可以帮助研究人员发现网络中不同实体之间可解释且稳定的相关性。但是,在某些情况下,学习潜在的动态空间相关性可能会进一步提高模型的精度。例如,在交通网络中,两条道路之间的行驶时间可能取决于它们当前的交通状况。
图神经网络(GNN)在不同的任务和领域中具有许多应用程序。尽管可以由GNN的每个类别直接处理常规任务,包括节点分类、图分类、网络嵌入、图生成和时空图预测,但其他与图相关的常规任务,如节点聚类、链接预测、图分区等任务也可以由GNN解决。
图神经网络的最大应用领域之一是计算机视觉。研究人员在场景图生成、点云分类与分割、动作识别等多个方面探索了利用图结构的方法。在场景图生成中,对象之间的语义关系有助于理解视觉场景背后的语义含义。在动作识别中,识别视频中包含的人类动作有助于从机器方面更好地理解视频内容。一组解决方案检测视频剪辑中人体关节的位置,由骨骼连接的人体关节自然形成图表。给定人类关节位置的时间序列,应用时空神经网络来学习人类行为模式。
在智能交通系统中,准确预测交通网络中的交通速度、交通量或道路密度至关重要。使用STGNN预测交通问题,将交通网络视为一个时空图,其中节点是安装在道路上的传感器,边缘是测量成对的节点之间的距离,并且每个节点具有窗口内的平均交通速度作为动态输入特征。另一个应用是出租车需求预测,鉴于历史出租车需求、位置信息、天气数据和事件特征,结合LSTM、CNN和LINE训练的网络嵌入,形成每个位置的联合表示,以预测某个时间间隔内某个位置所需的出租车的数量。
基于图神经网络的推荐系统以项目和用户为节点,通过利用项目和项目之间的关系,用户和用户、用户和项目及内容信息,基于图形的推荐系统能够产生高质量的建议。推荐系统的关键是评价一个项目对用户的重要性,因此可以将其转换为一个链路预测问题,目标是预测用户和项目之间丢失的链接。为了解决这个问题,有学者提出了一种基于GCN的图形自动编码器。还有学者结合GCN和RNN,来学习用户对项目评分的隐藏步骤。