图神经网络入门(一)GCN图卷积网络

本文介绍了图神经网络(GNN)的基础,由图的介绍出发,探讨了GNN的起源和目标。文章详细阐述了Vanilla GNN模型,包括其工作原理和局限性,接着讲解了图卷积网络(GCN)的频谱方法和空间方法,如ChebNet、GCN、AGCN以及空间方法中的Neural FPS、Patchy-SAN、DCNN等。
摘要由CSDN通过智能技术生成
本文是清华大学刘知远老师团队出版的图神经网络书籍《Introduction to Graph Neural Networks》的部分内容翻译和阅读笔记。
个人翻译难免有缺陷敬请指出,如需转载请联系翻译作者 

作者:Riroaki

原文:https://zhuanlan.zhihu.com/p/129305050

第一部分-Introduction

图是一种数据结构,可对一组对象(节点)及其关系(边)进行建模。近年来,由于图的强大表达能力,利用机器学习来分析图的研究受到越来越多的关注,即图可以用作包括社会科学(社会网络)在内的各个领域的大量系统的表示图是一种数据结构,可对一组对象(节点)及其关系(边)进行建模。

作为用于机器学习的独特的非欧氏数据结构,图引起了人们对节点分类,链接预测和聚类分析的关注。图神经网络(GNN)是在图域上运行的基于深度学习的方法。由于其令人信服的性能和高解释性,GNN最近已成为一种广泛应用的图形分析方法。

首先,GNN是由卷积神经网络(CNN)启发的。CNN能够提取和组合具有高表示能力的特征的多尺度局部空间特征,这导致了几乎所有机器学习领域的突破和深度学习的革命。CNN的关键在于:本地连接,共享权重和多层使用。这些特点对于解决图域问题也非常重要,因为

  1. 图是最典型的局部连接结构;

  2. 与传统的频谱图理论相比,共享权重降低了计算成本;

  3. 多层结构是处理分层模式的关键,它捕获了各种大小的特征。

但是,CNN只能对诸如图像(2D网格)和文本(1D序列)之类的常规欧几里得数据进行操作,这些数据也可以视为图的实例,但是很难定义局部卷积滤波器和池化运算符以应用于一般的图结构。

另一个动机来自图嵌入(Graph Embedding),它旨在学会表示图节点,边缘或低维向量中的子图。在图分析中,传统的机器学习方法通常依赖于手工设计的特征,并且受其灵活性和高成本的限制。继表示学习的思想和词嵌入的成功以来,DeepWalk被认为是基于表示学习的第一种图嵌入方法,它采用了SkipGram模型。诸如node2vec,LINE和TADW等类似方法也取得了突破。然而,这些方法具有两个严重的缺点。

  1. 编码器中的节点之间没有共享参数,这导致计算效率低下,因为这意味着参数的数量随节点的数量线性增长;

  2. 直接嵌入方法缺乏泛化能力,这意味着它们无法处理动态图或无法泛化为新图。

第二部分-Vanilla Graph Neural Networks

在图结构中,一个节点自然是由其特征和图中的相关节点定义的。GNN的目标是为每个节点学习节点的状态嵌入  的状态,该状态对邻域信息进行编码。状态嵌入 用于产生输出  ,例如预测节点标签的分布。原始GNN模型处理无向齐次图,其中图中的每个节点都有其输入特征 ,每条边也可能都有其特征。本文使用 和 来表示节点  的边和邻居的集合。

为了根据输入邻域更新节点状态,定义一个在所有节点之间共享的参数函数 ,称为局部转移函数。为了产生节点的输出,有一个参数函数 ,称为局部输出函数。然后,  定义为:

对于节点  ,  分别表示节点特征、节点连接的边的特征、节点的邻居的隐藏状态和节点邻居的特征。

如果将所有的状态、输出、特征和节点特征分别堆叠起来并使用矩阵表示为:  ,那么上面的公式可以改写为:

其中  分别是全局的转移和输出函数,由所有节点的对应函数堆叠构成。  的值是等式(3)的不动点,并以  作为压缩映射(Contraction Map)唯一定义。因而,在实践中通过迭代方式求出  。这里,  的计算过程可以用前馈神经网络(Feedforward Neural Network)来解释。

以上是GNN的基本框架。下面介绍如何学习转移函数和输出函数的参数。
利用用于监督信号的目标信息(对于特定节点记为  ),损失函数可以写为:

于是整个基于梯度下降的学习算法可以描述为如下步骤:

隐藏状态  通过迭代  时间步获得,然后我们获得公式(3)一个近似的不动点解  ;

通过损失函数计算梯度,并使用最后一步计算得到的梯度更新网络参数。

该模型的局限之处在于:

  1. 迭代更新节点的隐藏状态以获取固定点的计算效率低下。该模型需要  步计算才能逼近固定点。如果放宽固定点的假设,可以设计一个多层GNN来获得节点及其邻域的稳定表示。

  2. 模型在迭代中使用相同的参数,而大多数流行的神经网络在不同的层中使用不同的参数,这是一种分层的特征提取方法。此外,节点隐藏状态的更新是一个顺序过程,可以从RNN核(如GRU和LSTM)中受益。

  3. 图的边上还有一些信息特征,无法在模型中有效地建模。例如,知识图中的边具有关系的类型,通过不同边的消息传播应根据其类型而不同。此外,如何学习边缘的隐藏状态也是一个重要的问题。

  4. 如果 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值