GCN图卷积

图卷积 GCN(graph convolution)

我们平时遇到的像文本、图像这类数据结构整齐的,我们称为Euclidean Structure(欧几里德结构),但除了像文本、图像这类数据之外还有很多Non Euclidean Structure的数据,我们可以用网络结构来表示,即图论中抽象意义上的拓扑图,我们简称为graph。

如果将CNN直接应用在graph上会有什么问题?无法保持平移不变性,即graph上每个节点的邻居个数都是不固定的,无法用相同的卷积核进行特征提取。所以针对图结构数据,提出了GCN来进行特征提取。

提取图的特征,有2种方式:

1)spatial domain

其实就是解决2个问题,一是如何把结点的邻居找出来,也就是receptive field;二是找到receptive field后如何处理不同数目的结点邻居。

Learning Convolutional Neural Networks for Graphs论文的思路:

  1. 选出合适的nodes:
    1. graph labeling: labeling算法用来确定一个graph中node的次序。这个算法可以是centrality的测量方式,比如:between centrality, Weisfeiler-Lehman algorithm
    2. 从该序列中根据一定的间隔s隔段选取w个节点构成最终的节点序列
  2. 为每一个node建立一个邻域(相同数目k个):
    1. 首先选择1-neighborhood作为candidate set,如果不够再选择2-neighborhood,即广度遍历,直到至少k个
    2. 从candidate set根据感受野大小k,选择感受野结点邻居
      1. 如果candidate set大于k个,需要排序后截选前k个。
      2. 如果candidate set小于k个,直接全部选上,不够补上哑节点(dummy nodes),同样需要排序
    3. 排序(labeling):在某种标签下,随机从集合当中选择两个子图,计算他们在vector空间的图的距离和在graph空间图的距离的差异的期望,如果这个期望越小那么就表明这个标签越好。方法如图所示,寻找一个一个labeling L, 使得从图的集合中任意选取两个图G1和G2,它们在vector space距离差距和它们在graph space的距离差距最小化。在这里插入图片描述
  3. 使用2层的卷积神经网络,进行特征提取

Graphsage,GAT也是属于spatial domain的,关于Graphsage,GAT见https://blog.csdn.net/jzwei023/article/details/115025479

2)spectral domain           

GCN就是spectral domain 理论的。

GCN是一个神经网络层,假设有N个节点(node),每个节点有D维特征,这些特征组成N×D维的矩阵X,然后各个节点之间的关系也会形成一个N×N维的矩阵A,也称为邻接矩阵(adjacency matrix)。层与层之间的传播方式是:

这个公式中:

  • A波浪=A+I,I是单位矩阵
  • D波浪是顶点的度矩阵(对角矩阵),对角线上元素依次为各个顶点的度
  • H是每一层的特征,对于输入层的话,H就是X
  • σ是非线性激活函数
  • 与对称归一化拉普拉斯矩阵(见下文)很接近,谱图卷积使用对称归一化拉普拉斯矩阵

假设我们构造一个两层的GCN,激活函数分别采用ReLU和Softmax,则整体的正向传播的公式为:

最后,我们针对所有带标签的节点计算cross entropy损失函数:

什么是拉普拉斯矩阵?

常用的拉普拉斯矩阵实际有三种:(D是顶点的度矩阵(对角矩阵),对角线上元素依次为各个顶点的度;A是邻接矩阵)

  • ,大部分论文用的是这种,我们上面的公式用的也是这种

为什么GCN要用拉普拉斯矩阵?

我们的每一层GCN的输入都是邻接矩阵A和结点特征H,那么我们直接做一个内积,再乘一个参数矩阵W,然后激活一下,这样构造了一个简单的神经网络层。

但是这个简单模型有几个局限性:

  • 只使用A的话,由于A的对角线上都是0,所以在和特征矩阵H相乘的时候,只会计算一个node的所有邻居的特征的加权和,该node自己的特征却被忽略了。因此,给A加上一个单位矩阵 I ,让对角线元素变成1,这样就可以利用node自身的特征。
  • A是没有经过归一化的矩阵,这样与特征矩阵相乘会改变特征原本的分布,产生一些不可预测的问题。所以我们对A做一个标准化处理。首先让A的每一行加起来为1,我们可以乘以一个D的逆,D就是度矩阵。我们可以进一步把D的拆开与A相乘,得到一个对称且归一化的矩阵 。

通过对上面两个局限的改进,可以得到如下特征传播公式:

公式中的与对称归一化拉普拉斯矩阵十分类似,而在谱图卷积的核心就是使用对称归一化拉普拉斯矩阵。

GCN背后的数据原理

GCN是一类基于谱图(Spectral)的方法,通过图傅里叶变换将整个图拓扑结构转到频域并在频域对图信号 进行矩阵乘法操作,再傅里叶逆变换到空间域,实现空间域的卷积效果。

 

GCN演进

 

 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值