多节点什么网络取得技术性突破_【图神经网络综述】Graph Neural Networks(一)

(PDF) Graph Neural Networks: A Review of Methods and Applications​www.researchgate.net
61223065d2f547acda43b6dfeb15bdd9.png

在文本、图像等非结构化数据领域,需要对提取的结构进行推理,例如the dependency tree of sentences,the scene graph of images 等,同时也需要建立图推理模型(graph reasoning models)。图神经网络(GNNs)是通过图节点之间的信息传递来获取图的依赖性的连接模型。与标准神经网络不同,图神经网络可以以任意深度表示来自其邻域的信息。这篇综述文章详细的论述了现有的图神经网络模型、分类应用,并提出了四个开放的问题,为今后的研究奠定基础。


Introduction

数据类型可以分为两大类,分别是:欧几里德结构数据(Euclidean Structure Data) 以及 非欧几里德结构数据(Non-Euclidean Structure Data)。直观上看,排列整齐的、可以定义“几何距离”的数据称为欧几里得结构数据,否则,就定义为非欧几里得结构数据。

关于 Non-Euclidean Structure Data:CSDN-专业IT技术社区-登录

图分析作为机器学习中一种独特的非欧氏数据结构研究方法,主要研究节点分类、链路预测和聚类。图神经网络(GNNs)是一种基于深度学习的在图域上运行的方法。下面介绍GNNs的由来。

  • GNNs的第一个启发来源于卷积神经网络(CNNs)。CNN善于提取多尺度的局部空间特征,并将其组合起来构造有效表征的方式,从而在几乎所有的机器学习领域取得了突破,并开启了深度学习的新时代(Deep Learning),其主要特征包括:局部链接、共享权重及多层结构的使用。这些对于解决图领域上的问题具有重要价值,在于:1)图是最典型的局部链接结构;2)与传统图谱理论相比,共享权降低了计算量;3)多层结构是处理层次模式的关键,它能捕捉多种特征。然而,CNNs只能对图像(2D网格)和文本(1D序列)等规则欧氏数据进行操作,因此,需要探求CNNs对图的推广应用。这其中主要的难点在于,在非欧几里得数据领域中定义局部卷积操作与池化算子。
  • GNNs的另一个启发来源于图嵌入理论的发展,图嵌入是学习用低维向量表示图的节点、边或子图。这其中一些典型算法:DeepWalk,是第一种基于表示学习的图嵌入方法,它利用representation learning 和word embedding的思想,对生成的随机游走应用SkipGram模型实现节点的表示。node2vec、LINE和 TADW 等类似方法也取得了突破性进展。但这类方法有两个明显缺点:一是编码器之间没有参数共享,意味着计算效率底下,参数的数量将随着节点数量线性增长;二是这种直接嵌入的方法缺乏模型泛化能力,不能处理动态图或推广到新图。

为此,基于CNNs和图嵌入技术,提出了一种从图结构中集合信息的图神经网络(GNNs)。然后,解释下图神经网络值得研究的基本原因:

  • 首先,标准的神经网络如CNNs和RNNs不能很好地处理图形输入,因为它们是按照特定的顺序对节点的特征进行叠加的,而图天生不具备顺序的概念。为了完整地表示一个图,我们需要遍历所有可能的顺序作为模型的输入,如CNNs和RNNs,这在计算时是非常多余的。为了解决这个问题,GNNs在每个节点上分别传播,忽略节点的输入顺序,换句话说,GNNs的输出对于节点的输入顺序是不变的。
  • 其次,图的边表示两个节点职期间的依赖关系信息。在标准神经网络中,这种依赖信息仅被视为节点的特征。但GNN可以利用这种图结构进行传播,而不必将其用作特征的一部分。通常,GNN通过其邻域状态的加权总和来更新节点的隐藏状态。
  • 最后,推理是高级人工智能的一个非常重要的研究课题,而人脑的推理过程几乎都是基于从日常经验中提取的图结构。标准的神经网络可通过学习数据的分布来生成合成图像和文档的,但无法从大型实验数据中学习到推理图(the reasoning graph)。GNN试图从诸如场景图片和故事文档之类的非结构化数据生成图形,这可以成为进一步高级AI的强大神经模型。最近,已经证明具有简单架构的未经训练的GNN也会表现良好(Mean-field theory of graph neural networks in graph partitioning)

关于图神经网络已经有一些比较全面的综述:

[1] Geometric deep learning on graphs and manifolds using mixture model cnns 将CNN推广到非欧式结构数据。 Geodesic convolutional neural networks on riemannian manifolds、Learning shape correspondence with anisotropic convolutional neural networks 提出了一些基于流形的模型。 Geometric deep learning: going beyond euclidean data 对几何深度学习进行了全面的回顾. 这些研究专注于将卷积推广到图或流形,但是在本文仅关注在图上定义的问题,并研究了图神经网络中使用的其他机制,例如门机制,注意力机制和跳过连接机制。

[2] Neural message passing for quantum chemistry 提出了消息传递神经网络(MPNN),它可以推广到几种图神经网络和图卷积网络方法; Non-local neural networks 提出了一种non-local神经网络(NLNN),该网络将几种“self-attention”式的方法统一起来。这两个研究着眼于特定的应用领域,仅给出了如何使用其框架来概括其他模型的示例,并且未提供对其他图神经网络模型的评论。

[3] Attention models in graphs: A survey 回顾了图注意力模型。Relational inductive biases, deep learning, and graph networks 提出了图网络(GN)框架,该框架可以推广到其他模型。然而,图网络模型是高度抽象的,上述研究也仅给出了应用的粗略分类。

[4] Deep learning on graphs: A survey 和 A comprehensive survey on graph neural networks 是关于GNN上比较新的综述,将GNN分为五类:图卷积网络,图注意力网络,图自动编码器,图生成网络和图时空网络。


Models

这部分介绍图神经网络中各种模型。GNN是非欧几里得结构上的有用工具,已有大量文献提出了各种方法来尝试提升该模型。

在图中,每个节点是由其节点的特征和相关节点来定义的。GNN的目的是学习一个状态嵌入

, 其包含了每个节点的邻域信息。状态嵌入
是节点v的s维向量,可用于产生输出
(例如节点标签)。定义函数 f 为局部转移函数(local transition function),该函数在所有节点之间共享,并根据输入邻域更新节点状态。函数 g 为局部输出函数(local output function),用以描述输出是如何产生的。那么,状态
和输出
可以按如下定义:

(1)

(2)

其中,

为节点v的特征,
为它的边的特征,
为其邻居节点的状态,
为其邻居节点的特征。将上式拓展到所有节点:

(3)

(4)

其中,F--global transition function, G--global output function.

H 的值是等式(3)的不动点。

补充 : 巴纳赫不动点定理,可以参考 张楚珩:【泛函基础 1.4】Banach 不动点定理

在如此这般的条件下,对函数 F 存在一个点 x 使得 F(x)=x。盗用一个直观解释:比如你搅一杯咖啡,前提是没有咖啡溅出,那么杯子里面一定有一个点维持不动!可以把你搅咖啡看做一种映射,那么根据不动点理论,就是,一定有一个点经过这种映射之后维持原状。

有了不动点定理的支持,GNN使用如下经典的迭代方程对H求解:

(5)

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

当我们搭建好了GNN的框架后,下一个问题是如何学习f和g的参数。通过有监督学习的方式,用特定节点的信息(

)进行计算, p是目标节点的个数:

(6)

该式可以基于梯度下降的策略求解:

  1. 节点v的状态
    由(1)式迭代更新,直到T时刻达到(3)的不动点解
    .
  2. 梯度权重W 由(6)计算得出
  3. 权重W根据最后一步中计算出的梯度进行更新

Limitations

尽管实验结果表明GNN是对于结构数据表现很好,但是原始GNN仍然存在一些局限性:

首先,对于不动点,原始GNN迭代更新节点隐藏状态的效率不高。如果放宽不动点的假设,我们可以设计多层GNN以获得节点及其邻域的稳定表示。

其次,GNN在迭代中使用相同的参数,而大多数流行的神经网络在不同的层中使用不同的参数(分层的特征提取方法)。此外,节点隐藏状态的更新是一个顺序过程,可以借鉴RNN内核(如GRU和LSTM)。

第三,边也有一些信息性特征,但这些特征无法在原始GNN中有效建模。 例如,知识图谱的边具有关系的类型,并且通过不同边缘传播的消息应根据其类型而有所不同。 那么,如何学习边的hidden states 也是一个重要的问题。

最后,如果我们关注节点的表示而不是图的结构,则不太适合使用不动点理论,因为不动点上的表示分布在值上将非常平滑、对于区分每个节点的信息量较小。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值