直推式和归纳式
所谓直推式学习(GCN等),就是训练期间可以看得到没有标注的节点(训练需要整个图里面所有的节点参与),那么
1.需要将整个图作为输入
2. 模型是基于某个具体的图的,如Cora,换个图,模型就需要从头开始训练
所谓归纳式学习,在训练期间,看不到没有标注的节点常见的有GraphSAGE等
1. 训练只需要图的局部,不需要整个图都参与训练。对于大型图,可以通过子采样的方法进行训练,不需要一次性输入整个图
2. 由于这个特性,归纳式学习是可以迁移的。即,在这个图上训练好的模型,可以迁移到另外一个图中使用。
3.理解起来归纳式两个场景,单图上,局部的图做训练,来预测图的其余部分;或者多图上,按照时间线建立的多图,用前面时刻的图训练的模型来预测后面的图。
图神经网络目的都是为了学习节点的embedding,其embedding能表示节点之间的关系
模型输入为 节点x特征表示,邻接矩阵A
输出为节点新的特征
一、GAT
GAT模型提出了注意力机制,汇聚邻居节点时考虑不同的权重,适用于直推式和归纳式。
直推式:所有的节点和边都是已知的
归纳式:对未知的节点和边有学习能力,新加入的节点可以进行节点分类。
使用多头注意注意力机制
二、GraphSAGE
原文题目:大规模网络的归纳式学习
特点:
1.汇聚(aggregator)邻居节点的方式不同(Mean Pool LSTM:将节点连城序列的方式进行输入)
2.不是所有的邻居节点,是采样的邻居节点
3.训练时使用batch的方式,不是像GAT哪像把全图进行输入
三、GCN
图卷积神经网络半监督分类
目的:节点分类,运行时间
在频域上的(不是空域的,与要通过傅里叶变换转换到频域上),半监督的节点分类问题;从频域上有理论支撑,k层GCN处理K阶邻居
模型总览
H表示的是每一个层对应的输入(所有点的特征) W可学习参数;;
RGCN:
R-GCN采用图卷积神经网络解决知识图谱关系型数据的补全任务,包括链接预测和实体分类。
R - GCN针对不同种类的关系进行了特化处理, 即针对不同的关系采用不同的聚合方式, 在这里是使用了不同的线性变换矩阵Wr. 其更新方程为:
红色节点有1-N种关系的邻居,且都存在入和出;