图卷积网络(Graph Convolutional Networks, GCNs)

文章探讨了图神经网络(GNNs)在处理结构化数据如社交网络、知识图谱等方面的重要性。重点介绍了图卷积网络(GCNs),包括其定义、优势和限制。通过一个简单的例子展示了GCNs如何学习节点嵌入,并在Zachary's空手道俱乐部网络上进行了演示。此外,提到了GCNs在半监督学习中的应用,能够对节点进行有效分类。最后,讨论了GCNs与Weisfeiler-Lehman图算法的关系,并展望了未来的研究方向。

参考 https://tkipf.github.io/graph-convolutional-networks/

原作 THOMAS KIPF, 30 SEPTEMBER 2016

翻译 by Small_Wind
学习图卷积网络的路上,看到了这篇博客,感觉还不错,顺带整理下并翻译了一下,如有任何问题,请在评论进行回复

综述(Overview)

Many important real-world datasets come in the form of graphs or networks: social networks, knowledge graphs, protein-interaction networks, the World Wide Web, etc. (just to name a few). Yet, until recently, very little attention has been devoted to the generalization of neural network models to such structured datasets.

In the last couple of years, a number of papers re-visited this problem of generalizing neural networks to work on arbitrarily structured graphs (Bruna et al., ICLR 2014; Henaff et al., 2015; Duvenaud et al., NIPS 2015; Li et al., ICLR 2016; Defferrard et al., NIPS 2016; Kipf & Welling, ICLR 2017), some of them now achieving very promising results in domains that have previously been dominated by, e.g., kernel-based methods, graph-based regularization techniques and others.

In this post, I will give a brief overview of recent developments in this field and point out strengths and drawbacks of various approaches. The discussion here will mainly focus on two recent papers:

and a review/discussion post by Ferenc Huszar: How powerful are Graph Convolutions? that discusses some limitations of these kinds of models. I wrote a short comment on Ferenc’s review here (at the very end of this post).

许多重要的真实世界数据集以图表或网络的形式出现:社交网络、知识图谱、蛋白质相互作用的网络、万维网等等(仅举几个例子)。然而,直到最近,依然很少有人关注,将神经网络模型泛化到这种结构化的数据集。

在过去的几年中,许多论文重新讨论了将神经网络泛化到任意结构图上的问题,其中一些已经在以前被基于核的方法、基于图的正则化技术等主导的领域,取得了非常有前途的成果。

在这篇文章中,我将简要概述这一领域的最新发展,并指出各种方法的优缺点。这里的讨论主要集中在最近的两篇论文上:

以及Ferenc Huszar的一篇评论/讨论帖子:图卷积有多强大?讨论了这类模型的一些局限性。我在这里(在这篇文章的最后)对Ferenc的评论写了一个简短的评论。

大纲(Outline)

  • 对图神经网络模型的简要介绍
  • 谱图卷积和图卷积网络 (GCNs)
  • Demo:一个简单的一阶GCN图嵌入模型
  • GCNs作为Weisfeiler-Lehman算法的可微推广

如果你对GCNs和相关的理论比较熟悉,你可以直接跳转到第三部分

图神经网络有多强大(How powerful are Graph Convolutional Networks?)

最近的相关文献(Recent literature)

将成熟的神经网络模型(如RNN或CNN)推广到任意结构的图上是一个具有挑战性的问题。最近的一些论文介绍了特定于问题的专门架构(e.g. Duvenaud et al., NIPS 2015; Li et al., ICLR 2016; Jain et al., CVPR 2016)其他的利用谱图理论中已知的图卷积来定义用于多层神经网络模型的参数化滤波器,类似于我们所熟知和喜爱的“经典”CNN架构(Bruna et al., ICLR 2014; Henaff et al., 2015)

最近更多的工作集中在,弥补快速启发式和缓慢启发式,但多少更有原则的谱方法之间的差距。Defferrard 等人 (NIPS 2016)使用带有自由参数的切比雪夫多项式在谱域近似光滑滤波器,这些参数在类似神经网络的模型中学习。他们在正则域(如MNIST)上取得了令人信服的结果,接近于一个简单的2D CNN模型。

Kipf & Welling(ICLR 2017)中,我们采用了一种有点类似的方法,从光谱图卷积的框架开始,但引入了简化方法(我们将在后面讨论),在许多情况下,可以显著提高训练时间和更高的预测精度,在许多基准图数据集上达到最先进的分类结果。

GCNs 第一部分:定义(GCNs Part I: Definitions)

目前,大部分神经网络模型具有某种共同的架构。我将把这些模型称为图卷积网络(GCNs);卷积,因为滤波器参数通常在图中的所有位置共享(权值共享)

对于这些模型,目标是学习 图 G = ( V , E ) G=(V,E) G=(V,E)上的信号/特征函数,并将其作为输入:

  • 对于节点 i i i,有特征描述子 x i x_i xi。因此,特征矩阵 X X X的维度为 N × D N × D N×D N N N表示节点的数量, D D D表示输入特征的数量)
  • 用矩阵形式可对图结构进行代表性描述;通常以邻接矩阵 A A A(或其某些函数)的形式出现

并产生一个节点级输出矩阵 Z Z Z (一个维度未 N × F N × F N×F的特征矩阵,其中 F F F是每个节点的输出特征数)。图级输出可以通过引入某种形式的池操作来建模(参见,例如Duvenaud等人, NIPS 2015)。

每一个神经网络层都可以用一个非线性函数进行表示:
H ( l + 1 ) = f ( H ( l ) , A ) H^{(l+1)}=f(H^{(l)},A) H(l+1)=f(H(

graph convolutional networks (GCNs)是一种用于半监督分类的图卷积网络GCNs适用于处理图数据,其中图由节点和节点之间的连接边组成。半监督分类是指在一些标记有类别的节点样本的基础上,对未标记的节点进行分类。以下是关于GCNs在半监督分类中的代码解释: GCNs的代码通常包含以下主要部分: 1. 数据准备:首先,我们需要准备图数据。这包括节点特征矩阵和图的邻接矩阵。节点特征矩阵是一个二维矩阵,每一行对应一个节点的特征向量。邻接矩阵描述节点之间的连接关系。 2. 定义模型:接下来,我们定义GCNs的模型结构。这包括定义卷积层、池化层和分类层等。卷积层用于在图上学习节点的特征表达,池化层用于减少节点的数量,分类层用于进行节点分类。 3. 前向传播:在GCNs中,前向传播的过程是通过迭代卷积层来逐步改进节点特征。我们可以通过相邻节点的特征加权平均来更新每个节点的特征。这个过程被称为图卷积。 4. 反向传播与优化:在前向传播后,我们计算模型预测结果与真实标签之间的损失。然后,使用反向传播算法计算梯度,并通过优化算法(例如随机梯度下降)更新模型的参数,以最小化损失。 5. 训练和评估:使用带有已标记节点标签的图数据集进行模型的训练。训练的目标是使模型能够准确预测未标记节点的类别。评估阶段,我们在测试集上评估模型的性能,通常使用准确率等指标来度量分类结果的质量。 总的来说,GCNs的代码实现主要涉及图数据的准备、模型定义、前向传播、反向传播与优化以及训练和评估等步骤。通过这些步骤,我们可以使用GCNs对图数据进行半监督分类任务。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小风_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值