图神经网络方法(Graph Neural Network)
概要
近年来图神经网络受到大家越来越多的关注,在文本分类(Text classification),序列标注(Sequence labeling), 神经机器翻译(Neural machine translation),关系抽取(Relation extraction),事件抽取(Event extraction), 图像分类(Image Classification),视觉推理(Visual Reasoning),语义分割(Semantic Segmentation)等等领域都有了一些应用。
Basic GNNs 基本思想图神经网络的一个基本思想,就是基于节点的局部邻居信息对节点进行embedding。直观来讲,就是通过神经网络来聚合每个节点及其周围节点的信息。
图神经网络的几个性质如下:
- 节点在每一层都会有embedding
- 模型可以达到任意深度
- 第零层的节点的embedding就是他的输入特征向量
我们所要探讨的是,节点如何获取它的邻居节点的信息。最基本的想法就是聚合一个节点的邻居节点信息时,采用平均的方法,并使用神经网络作聚合操作,具体方法如下图
那么如何训练这个模型,具体分为监督、和无监督两种方法。 无监督的方法包括:
- 随机游走(Random walks):node2vec, DeepWalk
- 图分解(Graph factorization)
- 训练模型使得相似的节点具有相似的embedding
监督的方法,以二分类举例,可以定义一个交叉熵函数来作为损失函数:
图神经网络中每一层的聚合所使用的参数是相同的,并且这个模型可以推理出新出现节点的embedding或者一张新图的embedding。如下图