Graph-GCN

Posted chenke-cheng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Graph-GCN相关的知识,希望对你有一定的参考价值。

前言

在大型图中,节点的低维向量embedding被证明了作为各种各样的预测和图分析任务的特征输入是非常有用的。顶点embedding最基本的基本思想是使用降维技术从高维信息中提炼一个顶点的邻居信息,存到低维向量中。这些顶点嵌入之后会作为后续的机器学习系统的输入,解决像顶点分类、聚类、链接预测这样的问题
GCN基本思想:把一个节点在图中的高纬度邻接信息降维到一个低维的向量表示.

GCN的优点: 可以捕捉graph的全局信息,从而很好地表示node的特征.

GCN的缺点: Transductive learning的方式,需要把所有节点都参与训练才能得到node embedding,无法快速得到新node的embedding。

 

transductive learning

GCN的方法 本质上是transductive learning (直推式的),图中的所以顶点都在训练embedding时参与.

transductive learning vs inductive learning

前人的工作专注于从一个固定的图中对顶点进行表示,很多现实中的应用需要很快的对未见过的顶点或是全新的图(子图)生成embedding。这种推断的能力对于高吞吐的机器学习系统来说很重要,这些系统都运作在不断演化的图上,而且时刻都会遇到未见过的顶点(比如Reddit上的帖子(posts),Youtube上的用户或视频)。因此,一种inductive的学习方法比transductive的更重要。
Transductive learning 得到新节点的难处:

要想得到新节点的表示,需要让新的graph或者subgraph去和已经优化好的node embedding去“对齐(align)”。然而每个节点的表示都是受到其他节点的影响,因此添加一个节点,意味着许许多多与之相关的节点的表示都应该调整。这会带来极大的计算开销,即使增加几个节点,也要完全重新训练所有的节点。

节点embedding

Grarep: Learning graph representations with global structural information. In KDD, 2015
node2vec: Scalable feature learning for networks. In KDD, 2016
Deepwalk: Online learning of social representations. In KDD, 2014
Line: Large-scale information network embedding. In WWW, 2015
Structural deep network embedding. In KDD, 2016
以上论文 embedding算法直接训练单个节点的节点embedding,本质上是transductive.而且需要大量的额外训练(如随机梯度下降)使他们能预测新的顶点。

图卷积网络

Spectral networks and locally connected networks on graphs. In ICLR, 2014
Convolutional neural networks on graphs with fast localized spectral filtering. In NIPS, 2016
Convolutional networks on graphs for learning molecular fingerprints. In NIPS,2015
Semi-supervised classification with graph convolutional networks. In ICLR, 2016
Learning convolutional neural networks for graphs. In ICML, 2016
这些方法中的大多数不能扩展到大型图,或者设计用于全图分类(或者两者都是)

GraphSAGE可以看作是对transductive的GCN框架对inductive下的扩展。

详细介绍GCN:

GCN为什么出现?

当前的CNN RNN不能够处理图结构的数据

以上是关于Graph-GCN的主要内容,如果未能解决你的问题,请参考以下文章