图卷积网络——GCN
一、前置基础知识回顾
详细前置基础知识请看:
图的基本概念
图是一种统一描述复杂事物的语言。
在实际生活中,很多事物都可以用图结构来表示,比如社交关系、化学分子结构、知识图谱、推荐系统等等。
构造图神经网络的目的
做图网络的目的,当然就是希望能够最终在图上做一些相关的任务。
-
假如我们希望做节点相关的任务,就可以通过 Graph Encoder,在图上学习到节点特征,再利用学习到的节点特征做一些相关的任务,比如节点分类、关系预测等等;
-
而同时,我们也可以在得到的节点特征的基础上,做 Graph Pooling 的操作,比如加权求和、取平均等等操作,从而得到整张图的特征,再利用得到的图特征做图相关的任务,比如图匹配、图分类等。
训练方式
图游走类算法主要的目的是在训练得到节点 embedding 之后,再利用其做下游任务,也就是说区分为了两个阶段。
对于图卷积网络而言,则可以进行一个端到端的训练,不需要对这个过程进行区分,那么这样其实可以更加针对性地根据具体任务来进行图上的学习和训练。
二、回顾卷积神经网络在图像及文本上的发展
图像上的卷积网络
在图像上的二维卷积,其实质就是卷积核在二维图像上平移,将卷积核的每个元素与被卷积图像对应位置相乘,再求和,得到一个新的结果。
其实它有点类似于将当前像素点和周围的像素点进行某种程度的转换,再得到当前像素点更新后的一个值。
文本上的卷积网络
它的本质是利用了一维卷积,因为文本是一维数据,在我们已知文本的词表示之后,就在词级别上做一维的卷积。
其本质其实和图像上的卷积没有什么差别。
(注:卷积核维度和红框维度相同,2 * 6就是2 * 6)
图卷积网络的必要性
文本和图像,它们都是排列整齐的数据,也就是规则性数据。这类规则数据可以直接用 CNN 算法进行一个学习。
但是对于不规则数据,比如树、图,我们应该使用图卷积网络。
三、图卷积网络
图卷积网络的全称为Graph Convolutional Network,即GCN
从图像卷积类比到图结构卷积
通过理解图像卷积,来对图结构卷积进行一个类比