简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
GNN模型主要研究图节点的表示(Graph Embedding),图边结构预测任务和图的分类问题,后两个任务也是基于Graph Embedding展开的。目前论文重点研究网络的可扩展性、动态性、加深网络。
谱卷积有理论支持,但有时候会受到拉普拉斯算子的限制;而空间域卷积更加灵活,主要困难在于选择定量邻域上,没有统一理论。
GCN模型具备深度学习的三种性质:
通过谱图卷积的局部一阶近似,来确定卷积网络结构,通过图结构数据中部分有标签的节点数据对卷积神经网络结构模型训练,使网络模型对其余无标签的数据进行进一步分类。
那么:为什么graph上任意的向量$f$都可以表示成这样的线性组合?
在graph空间上无法可视化频率的概念,信息论告诉我们,特征值越大,对应的信息越多,小的特征值就是低频分量,信息较少,是可以忽略的。
在压缩图像的过程中,也是把低频成分变为0,高频(边缘)会被保留,它带给我们更多的信息。
$Theta=( heta_1, heta_2,..., heta_n$就跟三层神经网络中的weight一样是任意的参数,通过初始化赋值然后利用误差反向传播进行调整,$x$就是graph上对应于每个顶点的feature vector(由数据集提取特征构成的向量)
下面利用矩阵乘法进行变换
所设计的卷积核其优点在于:
更直观地看,$K=1$就是对每个顶点上一阶neighbor的feature进行加权求和,如下图所示:
同理,K=2的情形如下图所示:
注:上图只是以一个顶点作为实例,GCN每一次卷积对所有的顶点都完成了图示的操作。
其中,$x$的定义同上,是n维的由每个顶点的特征构成的向量(当然,也可以是$n*m$的特征矩阵,这时每个顶点都有$m$个特征,但是$m$通常远小于$n$)
不难发现:上式的运算不再有矩阵乘积了,只需要计算矩阵与向量的乘积即可。计算一次$T_{k}( ilde{Lambda}) x$的复杂度是$O(|E|)$,$E$是图中边的几何,整个运算的复杂度是$O(K|E|)$,当graph是稀疏图的时候,计算加速尤为明显,这个时候复杂度远低于$O(n^2)$
通过使用Chebyshev多项式近似,我们已经成功得降低了卷积核计算的复杂度。这篇文章中进一步对卷积核的计算做了近似,产生了我们所熟知的GCN逐层传播公式。
前面的理论推导都是关于无向图,如果是有向图问题,最大的区别就是邻接矩阵会变成非对称矩阵,这个时候不能直接定义拉普拉斯矩阵及其谱分解,有两条思路解决问题“
(1)要想保持理论上的完美,就需要重新定义图的邻接关系,保持对称性
(2)如果只是为了应用,有其他形式的GCN或者GAT可以处理有向图
总结:如果数据可以构成图,可以考虑下图卷积GCN,将卷积网络用于图数据上能对网络中的节点或者整个图进行分类,能利用节点的属性和节点的label进行训练,但这个算法不适应与规模大的图结构,因为GCN需要输入整个邻接矩阵A和特征矩阵X,这是非常耗内存的。
问题描述:利用t时刻以前的进站流和出站流预测t时刻的进站流和出站流
本文构建了多张空间关系,通过多张图得到预测效果。encoder-decoder的结构存在局限性,输入输出的维度是固定的。当预测短期的流量时,本文的模型更适用。
DeepWalk的主要问题是它缺乏泛化能力。 每当有新节点加入到图中时,它必须重新训练模型以正确表示该节点( 直推式学习 )。 因此,这种GNN不适用于图中节点不断变化的动态图。
基本的图神经网络算法GCN, 使用采样和聚合构建的inductive learning框架GraphSAGE, 然而图结构数据常常含有噪声,意味着节点与节点之间的边有时不是那么可靠,邻居的相对重要性也有差异,解决这个问题的方式是在图算法中引入“注意力”机制(attention mechanism), 通过计算当前节点与邻居的“注意力系数”(attention coefficient), 在聚合邻居embedding的时候进行加权,使得图神经网络能够更加关注重要的节点,以减少边噪声带来的影响。
三种注意力机制算法,都可以用来生成邻居的相对重要性:
首先我们对“图注意力机制”做一个数学上的定义:
定义(图注意力机制):
从图数据中节点间的关系以及特征,我们可以进行反欺诈以及商品推荐的操作。