图神经网络可以解决现实世界中的问题吗?

全文共3133字,预计学习时长9分钟

来源:Pexels

深度学习已经改变了我们处理数据的方式,通过使用日益增长的计算“廉价”资源(摩尔定律)来解决现实世界问题,并且能够完成一些人脑几乎毫不费力就能完成的认知任务,例如图像分类,自然语言处理,视频处理等等。

但这些任务具有的大多数数据和结构通常是在欧几里得空间中表示的。然而,我们目睹了越来越多的问题,这些问题生成的数据来自非欧几里得域,它们更适合被表示为具有复杂关系和对象之间相互依赖关系的图。

图数据的复杂性给经典ML算法和现代DL算法带来了重大挑战。近来出现了许多扩展DL方法使之用于图数据的研究。

在去年年底发布的一篇题为“图神经网络综述(A Comprehensive Survey on Graph Neural Networks)” [1]的论文中,作者提出了一种新的分类法,其将最新的图神经网络划分为4个主要类别:

· 循环图神经网络(RecGNN)

· 卷积图神经网络(ConvGNN)

· 图自动编码器(GAEs)

· 时空图神经网络(STGNN)

在同一篇论文中,作者举例说明了GNNs的应用:

· 在电子商务领域,基于图的学习系统可以利用用户和产品之间的交互生成高准确度的推荐。

· 在化学领域,分子被建模为图,并且需要确定其生物活性以用于药物开发。

花点时间想像一下,如果我们收集了所有“获批”药物或一般药物的结构,并训练一个GNN来学习药物的分子模式/结构,它会学会识别在此处或太空中发现的分子是不是药物。我相信结果可能相当令人惊讶,并且能帮助我们发现或重新发现可以治愈如今被认为无法治愈的疾病的药物。如果考虑大多数疾病甚至死亡本身都可以看作是技术问题。那么为什么有些生物可以活几百年而有些只能活几十年?我们可以无限延长寿命吗?

回到正题……

GNNs与对应的DL算法具有相似的属性,它能够进行回归,分类,为空节点和边生成数据,以及许多尚待发现的功能。该领域仍处于起步阶段,谁也不知道几年内我们能做些什么,以及用从现在开始的几千篇论文做些什么。

对我来说,最有趣的是推荐以及医疗领域的应用,其中医疗领域为no.1。

如今,图可能是不规则的,一张图可能具有可变数目的无序节点,并且图中节点可能具有不同数量的邻居,从而导致一些在图像领域中易于计算的重要的操作(例如卷积),很难应用于图域。此外,现有机器学习算法的核心假设是实体相互独立。该假设不再适用于图数据,因为每个实体(节点)通过各种类别的链接(例如引文,好友和交互)与其他实体(节点)相关联。但这不是障碍,因为最近我们看到人们对扩展或者应该说是移植深度学习算法到图领域(尤其是设计来用于图数据)的兴趣日益浓厚。

卷积神经网络(ConvNets)不在本文讨论范围之内。

GNNs的分类

循环图神经网络(RecGNNs)大多是图神经网络的开创性作品。RecGNN旨在学习具有循环神经架构的节点表示。它们假设图中的节点不断与其邻居交换信息/消息,直到达到稳定的平衡。RecGNNs在理论上很重要,它启发了后来对卷积图神经网络的研究。特别地,消息传递的思想被基于空间的卷积图神经网络所继承。

卷积图神经网络(ConvGNNs)将卷积运算从网格数据推广到了图形数据。主要思想是通过聚合节点自身的特征和邻居的特征来生成节点的表示,其中。

· 此处N表示邻居,X表示节点的特征向量。

与RecGNNs不同,ConvGNNs堆叠多个图卷积层以提取高级节点表示。ConvGNNs在建立许多其它的复杂GNN模型中起着核心作用。图2a展示了用于节点分类的ConvGNN。图2b展示了用于图分类的ConvGNN。

图自动编码器(GAEs)是无监督的学习框架,可将节点/图编码到潜在的矢量空间中,并通过编码后的信息重建图数据。GAEs用于学习网络嵌入和图生成分布。对于网络嵌入,GAEs通过重建图结构信息(例如图邻接矩阵)来学习潜在节点表示。对于图生成,某些方法逐步生成图的节点和边,而其他方法则一次全部输出图形。图2c展示了一个用于网络嵌入的GAE。

时空图神经网络(STGNNs)旨在从时空图中学习隐藏的模式,这种模式在各种应用中变得越来越重要,例如交通速度预测,驾驶员操纵预期和人类动作识别。STGNNs的关键思想是同时考虑空间依赖性和时间依赖性。许多当前的方法将用来捕获空间依赖性的图卷积和用来对时间依赖性进行建模的RNNs或CNNs集成在一起。图2d说明了一个用于时空图预测的STGNN。

(图2来自论文【1】)

架构

使用图结构和节点内容信息作为输入,GNNs的输出可以通过以下机制之一以专注于不同的图分析任务:

· 节点级输出与节点回归和节点分类任务有关。RecGNNs和ConvGNNs可以通过信息传播/图卷积来提取高级节点表示。使用多感知器或softmax层作为输出层,GNNs能够以端到端的方式执行节点级任务。

· 边级输出与边分类和链接预测任务有关。将来自GNNs的两个节点的隐藏表示作为输入,可以利用相似度函数或神经网络来预测边的标签/连接强度。

· 图级输出与图分类任务有关。为了在图级别获得紧凑的表示,GNNs通常与合并和读取操作结合使用。

训练框架。许多GNNs(例如ConvGNN)可以在端到端学习框架内以(半)监督或完全无监督的方式训练,具体取决于学习任务和可用的标签信息。

用于节点级分类的半监督学习

给定带有部分标记节点而其他节点未被标记的单个网络,ConvGNNs可以学习一个健壮的模型,该模型可以有效地标识未标记节点的类标签。为此,可以通过堆叠几个图卷积层,然后堆叠一个用于多分类的softmax层,来构建端到端框架。

用于图级分类的监督学习

图分类旨在预测整个图的类标签。可以通过图卷积层,图池层和/或读出层的组合来实现此任务的端到端学习。图卷积层负责精确的高级节点表示,而图池化层则充当下采样的角色,从而每次将每个图都粗化为子结构。

读出层将每个图的节点表示折叠为图表示。通过将多层感知器和softmax层应用于图表示,我们可以构建用于图分类的端到端框架。在图2b中给出了一个例子。

来源:Pexels

用于图嵌入的无监督学习

当图中没有可用的类标签时,可以在端到端框架中以完全无监督的方式学习图嵌入。这些算法以两种方式利用边级信息。一种简单的方法是采用自动编码器框架,其编码器使用图卷积层将图嵌入到潜在表示中,在其上使用解码器来重构图结构。

另一种流行的方法是利用负采样方法,该方法将一部分节点对采样为负对,而图中具有链接的现有节点对为正对。然后应用逻辑回归层来区分正对和负对。

需要记住的要点……

来源:Pexels

· 图擅长表示对象之间的复杂关系和相互依赖性。

· 图神经网络有4个主要类别:RecGNN,ConvGNN,GAEs,STGNN。

· 图神经网络旨在移植DL的成功方法,这些方法将反过来推动该领域的新发现,例如医疗,社交互动,活动识别/预期等等。

感谢你的阅读,这对我来说也是一个有趣的探索,这种算法让我着迷,因为它们具有消化GB甚至PB级别的数据并发现隐藏模式的原始潜力,这远胜于我们。请留下你的评论。

留言 点赞 关注

我们一起分享AI学习与发展的干货
欢迎关注全平台AI垂类自媒体 “读芯术”

(添加小编微信:dxsxbb,加入读者圈,一起讨论最新鲜的人工智能科技哦~)

发布了896 篇原创文章 · 获赞 2856 · 访问量 52万+

猜你喜欢

转载自blog.csdn.net/duxinshuxiaobian/article/details/104876922
今日推荐