graph embeddiing 发展脉络:
一、初期出现的算法:deep walk、line、node2vec、sdne、eges等,详见2019-2020review5-embedding入门(https://www.jianshu.com/p/993f80d1b959)
二、进一步深化算法:图神经网络
1、从综述说起哈:
(1)图神经网络的大致分类【1】:
图神经网络(GNN) 被分成了 5 个类别:图卷积网络、图注意力网络、图自编码器、图生成网络和图时空网络。图卷积网络在捕捉架构依存关系上扮演着核心角色:
(2)我们关注的是图神经网络和网络嵌入:
图神经网络 vs. 网络嵌入。对图神经网络的研究与图嵌入或网络嵌入紧密相关,这也是数据挖掘和机器学习社区日益关注的一个话题 。网络嵌入旨在通过保留网络拓扑架构和节点内容信息,将网络顶点表示到低维向量空间中,以使任何后续的图分析任务(如分类、聚类和推荐)都可以通过使用简单的现成机器学习算法(如用于分类的支持向量机)轻松执行。许多网络嵌入算法都是无监督算法,它们大致可分为三组 ,即矩阵分解 、随机游走和深度学习方法。用于网络嵌入的深度学习方法同时还属于图神经网络,包括基于图自编码器的算法(如 DNGR 和 SDNE)和具有无监督训练的图卷积神经网络(如 GraphSage)。下图描述了网络嵌入和图神经网络的区别。
图嵌入的无监督学习。如果图中无可用类别标签,我们可以在一个端到端框架中以完全无监督的方式学习图嵌入。这些算法通过两种方式利用边级(edge-level)信息。一种简单的方法是采用自编码器框架,其中编码器使用图卷积层将图嵌进潜在表征中,然后使用解码器重构图结构 。另一种方法是利用负采样方法,采样一部分节点对作为负对(negative pair),而图中已有的节点作为正对(positive pair)。然后在卷积层之后应用 logistic 回归层,以用于端到端学习。
2、接下来开始重头戏GCN:
(1)先从直观上感受GCN
什么是图卷积神经网络【2】
如何理解图卷积算法?
第一步:发射(send)每一个节点将自身的特征信息经过变换后发送给邻居节点。这一步是在对节点的特征信息进行抽取变换。
第二步:接收(receive)每个节点将邻居节点的特征信息聚集起来。这一步是在对节点的局部结构信息进行融合。
第三步:变换(transform)把前面的信息聚集之后做非线性变换,增加模型的表达能力。
(2)再从框架图感受GCN
来自论文的原汁原味的框架图【3】:
具体来说,我们先看这个框架的大致idea:输入一张图,经过一层层特征抽取以及变换,最后输出一张图。
(3)最后从公式上感受GCN
GCN,图卷积神经网络,实际上跟 CNN 的作用一样,就是一个特征提取器,只不过它的对象是图数据。GCN 精妙地设计了一种从图数据中提取特征的方法,从而让我们可以使用这些特征去对图数据进行节点分类(node classification)、图分类(graph classification)、边预测(link prediction),还可以顺便得到图的嵌入表示(graph embedding),可见用途广泛。
从论文原文原汁原味感受公式:
公式的直观感受:
用我们通俗的话翻译一下:
公式特点说明:
GCN的一大特点:
前期了解完毕,下面是详细了解图卷积算子~
待补充论文公式详细推导过程。。。
参考文献
1、图神经网络概述第三弹:来自IEEE Fellow的GNN综述
https://www.jiqizhixin.com/articles/2019-01-07-8
2、浅析图卷积神经网络
https://zhuanlan.zhihu.com/p/37091549
3、论文原文 GRAPH CONVOLUTIONAL NETWORKS
https://tkipf.github.io/graph-convolutional-networks/
4、跳出公式,看清全局,图神经网络(GCN)原理详解
https://www.chainnews.com/articles/216961050590.htm
其他参考文献:
1、深度学习新星 | 图卷积神经网络(GCN)有多强大?
https://zhuanlan.zhihu.com/p/37894842
2、如何理解 Graph Convolutional Network(GCN)?
https://www.zhihu.com/question/54504471
3、卷积运算是什么?
https://www.zhihu.com/question/339496491
4、如何理解 Graph Convolutional Network(GCN)
https://www.zhihu.com/question/54504471
5、从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一)
https://www.cnblogs.com/SivilTaram/p/graph_neural_network_1.html