APP下载

图神经网络浅析

2019-10-22王佳

现代计算机 2019年23期
关键词:结构化卷积神经网络

王佳

(山西金融职业学院,太原030008)

1 研究的背景

随着神经网络的成功发展,许多机器学习任务,如对象检测、图像分类和语音识别,曾经严重依赖人工进行的特征工程来提取特征,如今可以用各种端到端的深度学习模型来完成,如卷积神经网络(CNN)[1]、长短期记忆网络(LSTM)[2]等。许多领域的深度学习的成功,部分归因于快速发展的计算资源(如GPU)和大量的训练数据,部分原因在于深度学习从欧几里得数据(如图像、文本和视频)中提取潜在表示的有效性。以图像分析为例,在欧几里得空间中,图像可以表示为规则网格。卷积神经网络(CNN)能够利用图像数据的位移不变性、局部连通性,因此CNN 可以提取与整个数据集共享的具有局部意义的特征,用于各种图像分析任务。

虽然深度学习在欧几里得数据方面取得了巨大的成功,但越来越多的应用中的数据来自非欧几里得域,需要用图来表示,从而进行有效的分析。例如,在电子商务中,基于图的学习系统能够利用用户和产品之间的交互,来做出准确的建议。在自然科学中,建模物理系统和蛋白质相互作用网络。图是一种数据结构,它对一组对象及其关系进行建模,其中对象作为节点,关系作为边。图具有很强的表示能力,但其复杂性给现有的机器学习算法带来了巨大的挑战。这是因为图的数据不规则。每个图都有一组数目可变的无序节点,图中的每个节点都有不同数量的相邻节点,导致一些重要的操作(例如卷积),在图像域中很容易计算,但不能直接应用于图域。此外,现有机器学习算法的一个核心假设是实例彼此独立。但是,对于图域数据来说,情况并非如此,图中每个实例(节点)通过一些复杂的连接信息与其他实例(邻居)相关,这些信息用于捕获数据之间的相互依赖性。

近年来,人们对图域的深度学习方法越来越感兴趣。在深度学习的推动下,研究人员借鉴了卷积网络、循环网络和深度自动编码器的思想,设计了图神经网络的结构。为了处理图的复杂性,在过去几年中,对重要操作的新概括和定义得到了快速发展[3]。例如,图1说明了一种图卷积是如何受到标准二维卷积的启发的。

图1 欧几里得域的图像和非欧几里得域的图

CNN 能够提取多尺度的局部空间特征,并将其组合起来,构建出具有高度表达能力的表示形式,在几乎所有的机器学习领域都取得了突破,开启了深度学习的新时代。然而,CNN 只能对图像(二维网格)和文本(一维序列)这样的规则的欧几里得数据进行操作,而这些数据结构可以看作是图的实例。CNN 的关键在于:局部连接、共享权重和多层结构。这些对于解决图域的问题也非常重要。然而,如图1 所示,很难定义图的局部卷积核和池化操作,这阻碍了CNN 从欧几里得域向非欧几里得域的转换。

接下来解释图神经网络值得研究的基本原因。首先,像CNN 这样的标准神经网络不能正确处理图的输入,因为它们按特定的顺序对节点的特征进行叠加。然而,图中没有节点的自然顺序。为了完整地呈现一个图,我们应该遍历所有可能的顺序作为模型的输入,这在计算时是非常多余的。为了解决这个问题,GNN在每个节点上分别传播,忽略节点的输入顺序。换句话说,GNN 的输出对于节点的输入顺序是不变的。其次,图中的一条边表示两个节点之间的依赖关系信息。在标准的神经网络中,依赖信息被视为只是节点的特征。然而,GNN 可以在图结构的引导下进行传播,而不是将其作为特征的一部分。通常,GNN 通过相邻节点状态的加权和来更新节点的隐藏状态。第三,推理是高层次人工智能的一个重要研究课题,人脑的推理过程基于从日常经验中提取出的图,标准的神经网络已经显示出通过学习数据的分布来生成合成图像和文档的能力,而它们仍然无法从大量实验数据中学习推理图。然而,GNN 试图从场景图片和故事文档等非结构化数据中生成图,这可以成为更高层次人工智能的强大神经模型。本文的目的是为想要进入这个快速发展领域的研究人员提供图神经网络的基本概述。

2 图神经网络的基本原理

图神经网络(GNN)的概念在[4]中首次提出,它扩展了现有的神经网络,用于处理图域中表示的数据。在一个图中,每个节点都由其特征和相关联节点定义。GNN 的目标是学习一个包含每个节点邻域信息的状态嵌入hv∈Rs。状态嵌入hv是节点v 的s 维向量,可用于生成输出向量ov,如节点标签。设f 为一个参数函数,称为局部传递函数,被所有节点共享,并根据输入邻域更新节点状态。设g 是描述如何产生输出的局部输出函数。然后,将hv和ov定义为:

其中xv,xco[v],hne[v],xne[v]分别是节点v 的特征,边的特征,相邻节点的状态,相邻节点的特征。

设H、O、X 和XN分别是通过堆叠所有状态、所有输出、所有特征和所有节点特征构建的向量。这样,有一个紧凑的形式:

其中,F 是全局传递函数,G 是全局输出函数,F 和G 分别是图中所有节点的f 和g 的叠加版本。H 的值是方程(3)的定点解,并且假设F 为收缩映射。

GNN 使用如下所示经典的迭代法来计算状态:

其中,Ht表示H 的第t 次迭代,对于任意初始值H(0),方程(5)以指数形式快速收敛到方程(3)的解。注意,f 和g 中描述的计算可以解释为前馈神经网络。

当有了GNN 的框架后,下一个问题是如何学习f和g 的参数。利用目标信息(特定节点的tv)进行监督,损失可以写为如下形式:

其中P 是监督节点的编号。学习算法是以梯度下降法为基础的,由下列步骤组成。

(2)从损失计算出权重W 的梯度。

(3)根据上一步计算的梯度对权重W 进行更新。

3 图神经网络的应用

图神经网络已经在许多问题领域中得到了探索,包括有监督的、半监督的、无监督的学习任务。图神经网络的应用可以简单分三个场景:①数据具有明确的关系结构的结构化场景,如物理系统、分子结构和知识图;②非结构化场景,其中关系结构不明确,包括图像、文本等;③其他应用场景,如生成模型以及组合优化问题。在这一节将对结构化场景和非结构化场景的典型应用进行简要介绍。

(1)结构化场景

在下面的小节中,我们将介绍GNN 在结构化场景中的应用,这些场景的数据是在图结构中自然执行的。例如,GNN 广泛应用于社交网络预测[5]、交通预测[6]、推荐系统[7]和图的表示[8]。模拟现实世界的物理系统是理解人类智能的最基本的方面之一。通过将对象表示为节点,将关系表示为边,我们可以以一种简单而有效的方式对对象、关系和物理进行基于GNN 的推理。文献[9]提出的交互网络对各种物理系统进行预测和推断。该模型以对象和关系为输入,推理它们的相互作用。它们分别对以关系为中心和以对象为中心的模型进行建模,从而更容易对不同的系统进行归纳。

可视交互网络[10]可以从像素进行预测。它从两个连续的输入帧中为每个对象学习状态代码。然后,通过交互网络块添加交互效果后,状态解码器将状态代码转换为下一步的状态。

(2)非结构化场景

在本节中,我们将讨论非结构化场景的应用,如图像、文本。一般来说,将图神经网络应用于非结构场景有两种方法:①将来自其他领域的结构信息结合起来以提高性能,例如使用知识图中的信息来缓解图像任务中的零样本问题;②推断或假设场景中的关系结构,然后应用模型来解决图上定义的问题,例如文献[11]中的方法,将文本建模为图。

图像分类是计算机视觉领域的一项非常基础和重要的任务,它引起了广泛的关注,并拥有许多著名的数据集,如ImageNet。图像分类的最新进展得益于大数据和GPU 计算的强大功能,这使得我们能够在不从图像中提取结构信息的情况下训练一个分类器。然而,零样本和少样本学习在图像分类领域变得越来越流行,因为大多数模型都能在有足够数据的情况下获得相似的性能。有几项工作利用图神经网络将结构信息纳入图像分类。首先,知识图可以作为额外的信息来指导零样本识别分类。文献[12]构建一个知识图,其中每个节点对应一个对象类别,并将节点的单词嵌入作为输入,以预测不同类别。当深层卷积结构发生过平滑效应时,在文献[12]中使用的6 层GCN 将在表示中清除许多有用的信息。为了解决GCN 传播中的过平滑问题,文献[13]设法使用具有较大邻域的单层GCN,领域中包含单跳节点和多跳节点。事实证明,它可以依据现有的分类器有效地建立一个零样本分类器。

除了知识图外,数据集中图像之间的相似性也有助于少样本学习。文献[14]提出了一种基于相似度的加权全连通图像网络,并在图中进行消息传递,实现少样本识别。由于大多数知识图的推理量都很大,文献[15]选择了一些相关的实体,根据目标检测的结果构建子图,并将GGNN 应用于提取的图中进行预测。另外,文献[16]提出构建一个新的知识图,其中实体都是类别。并且,他们定义了三种类型的标签关系:超从属关系、正相关关系和负相关关系,并直接在图中传播标签的可信度。

4 图神经网络发展方向

尽管GNN 在不同的领域取得了巨大的成功,但值得注意的是,GNN 模型不足以为任何情况下的图提供令人满意的解决方案。在本节中,我们将阐述一些有待进一步研究的开放性问题。

(1)浅层结构。传统的深层神经网络扫描堆叠了成百上千层以获得更好的性能,因为更深的结构有更多的参数,这显著提高了模型的表达能力。然而,图神经网络往往是浅层的,大部分都不超过三层。如文献[17]中的实验所示,叠加多个GCN 层将导致过度平滑,也就是说,所有顶点将收敛到相同的值。尽管一些研究人员已经设法解决了这个问题,但它仍然是GNN 的最大限制。设计真正的深度GNN 是未来研究的一个令人兴奋的挑战,它将对理解GNN 有重要的贡献。

(2)动态图。另一个具有挑战性的问题是如何处理具有动态结构的图。静态图是稳定的,因此可以对其进行方便地建模,而动态图则引入了变化的结构。当边和节点出现或消失时,GNN 不能自适应地改变。因此,动态GNN 有待研究,它是通用GNN 稳定性和适应性的一个里程碑。

(3)非结构场景。尽管上文已经讨论了GNN 在非结构场景中的应用,目前仍然缺少从原始数据生成图的最优方法。在图像域,有些算法利用CNN 获得特征图,然后进行上采样生成超像素作为节点,而其他算法利用一些对象检测算法获取对象节点。因此,确定最佳的图生成方法将为GNN 提供更广泛的应用领域。

(4)可伸缩性。如何在社交网络或推荐系统等Web 环境中应用嵌入方法,对于几乎所有的图嵌入算法来说都是一个致命的问题,GNN 也不例外。扩展GNN 是很困难的,因为许多核心步骤都有非常大的计算量。伸缩性问题决定了一种算法是否可以应用到实际中。有几项工作提出了他们对这个问题的解决办法[18]。

5 结语

图神经网络(GNN)是基于深度学习的,在图的领域运行的方法。GNN 由于其令人信服的性能和较高的解释能力,近年来已成为一种广泛应用的图分析方法、机器学习任务的强大而实用的工具。这一进展归功于表达能力、模型灵活性和训练算法等方面的进步。在本次概述中,我们对图神经网络进行了全面的回顾。对于GNN 模型,我们介绍了其研究意义、发展情况和基本原理。此外,我们还总结了GNN 的应用场景,分为结构化场景、非结构化场景和其他场景,然后介绍了前两种场景中的典型应用。最后,我们提出了图神经网络的四个未来研究方向的开放性问题,包括模型深度、可伸缩性、处理动态图和非结构化场景的能力。

猜你喜欢

结构化卷积神经网络
基于全卷积神经网络的猪背膘厚快速准确测定
基于神经网络的船舶电力系统故障诊断方法
MIV-PSO-BP神经网络用户热负荷预测
基于改进Hopfield神经网络的对地攻击型无人机自主能力评价
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
改进的非结构化对等网络动态搜索算法
深度学习的单元结构化教学实践与思考
左顾右盼 瞻前顾后 融会贯通——基于数学结构化的深度学习