)(16)其中,Λ~=λmax2Λ−IN;λmax是指拉普拉斯矩阵L的最大特征值。
PS:因为切比雪夫多项式的输入要在[−1,1] 之间,由于拉普拉斯矩阵的半正定性,所以所有的特征值都是大于等于 0 的,将其除以最大特征值可以将特征压缩到[0,1] 区间内,现在需要将其压缩到[−1,1],所以我们有:Λ~=λmax2Λ−IN。
我们将切比雪夫多项式引入到我们的卷积变换中:
gθ∗x≈k=0∑K−1θkTk(L)x(17)
其中,L~=λmax2L−IN 。这个表达式为拉普拉斯多项式中的一个k 阶近似函数,依赖于节点的k 阶邻域(k 步可达),时间复杂度与边呈线形相关。
总结第二代图卷积优点如下:
- 运算量相比第一代的O(N3) 可以降到O(K∣E∣)。
- 引入 K-hop 感受野,可以捕捉局部特征。
第三代图卷积
文章来源:《Semi-supervised Classification with Graph Convolutional Networks》
第二代图卷积解决了拉普拉斯矩阵特征分解的问题,但是在计算图卷积操作时矩阵乘法时间复杂度为O(N2),在此基础上优化 Kipf 等人提出了目前流行的 GCN。
GCN 通过式(17)进行多层卷积层进行叠加,而每层都会逐点进行非线性叠加。考虑到时间复杂度问题,令K=2,也就是说得到了一个拉普拉斯算子的二阶近似函数。既可以对网络进行卷积操作计算量增加不大。通过叠加层数可以提升模型的非线性。
归一化的拉普拉斯矩阵的特征值区间为[0,2],令λmax≈2,K=2 可得:
gθ∗x≈θ0x+θ1(L−IN)x=θ0x−θ1D−21AD−21x(18)
其中,θ0,θ1是切比雪夫系数且仅存的两个参数!
在 GCN 的训练过程中需要规范化参数避免过拟合,令θ=θ0′=−θ1′,由式可得:
gθ∗x≈θ(IN+D−21AD−21)x(19)
注意IN+D−21AD−21的特征值范围在 [0, 2] 之间,所以如果在很深的网络中会引起梯度爆炸的问题,需要再次进行一次归一化(Renormalization trick):
IN+D−21AD−21→D−21AD−21,Dii=j∑AijA=A+IN(20)
把上式从标量推广到矩阵,对于输入顶点的向量X∈RN×C ,其中N 为节点数,C 为顶点的特征向量维度,可得:
Z=D−21AD−21XΘ(21)
其中,Θ∈RC×F是参数矩阵,Z∈RN×F是卷积后的顶点特征,时间复杂度为O(∣E∣FC)。
根据上式一层卷积,多层图卷积计算公式公式为:
H(l+1)=σ(D−21AD−21H(l)W(l))(22)
其中,A=A+IN ,A 为邻接矩阵,IN 为单位矩阵,所以A为添加自连接的邻接矩阵;Dii=∑jAij ,D为顶点的度数矩阵;W(l) 为神经网络第l 层的权重矩阵;σ(⋅) 是激活函数;H(l)∈RN×D 是第l 层的激活矩阵,并且H(0)=X ,X 是由顶点的特征向量组成矩阵。
总结第三代图卷积:
- 令 K=1,相当于只考虑 1-hop 邻点。通过堆叠层数来增加感受野。
- 每层计算复杂度降低为O(∣E∣)。
总结
CNN 中的卷积无法直接应用于网络图中,所以引出了谱图理论和图中的傅里叶变换,进而定义图卷积的计算方法,最后结合深度学习发展出来 GCN。至此图卷积 GCN 的理论推导三部曲完成,接下来就开启应用篇吧!
联系作者
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 梦家博客! 打赏
wechat
alipay