GCN 翻译 - 2

2 FAST  APROXIMATE  CONVOLUTIONS ON GRAPHS

在这一章节,我们为这种特殊的的图基础的神经网络模型f(X, A)提供理论上的支持。我们考虑一个多层的图卷积网络(GCN),它通过以下方式进行层间的传播:

H^{(l+1)} = \sigma (\widetilde{D}^{-1/2} \widetilde{A}(\widetilde{D}^{-1/2} H^{(l)}W^{(l)}) \quad (2)

这里,\widetilde{A} = A+ I_{N}是无向图邻接矩阵加上自己本身。I_{N}是对称矩阵,\widetilde{D_{ii}} = \sum _j\widetilde{A_{ij}},W^{(l)}是层的训练权重矩阵。\sigma (.)表示激活函数,例如ReLu.H^{(l)}\in R^{N*D}l^{th}层的激活矩阵,H^{(0)} = X.在接下来中,我们将会展示,这种规则的传播方式是局部谱域滤波的一阶近似。

2.1 SPECTRAL GRAPH CONVOLUTIONS

我们考虑图上的谱域卷积 : 多维信号x\in R^N,用参数\theta \in R^N定义的傅里叶过滤器g_\theta =diag(\theta ),i.e.:

g_\theta * x = Ug_\theta U^{T}x, \quad (3)

这里U是归一化的图拉普拉斯矩阵的特征向量矩阵,这里L = I_N - D^{-1/2}AD^{-1/2} = U \Lambda U^{T},

对角矩阵是特征值\LambdaU^Tx是x的图傅里叶的转换。我们可以理解g_\theta是拉普拉斯矩阵L的特征值的函数,即g_\theta (\Lambda )。计算公式(3)是非常繁重的计算,因为特征向量的矩阵U的乘法是O(N^2)。并且,在大的图上计算L的特征值分解,其计算量之大以至于无法做到。为了规避在大图上特征值分解的问题,g_{\theta }(\Lambda )近似是切比雪夫多项式K^{th}级截断T_k(x) :

g_\theta (\Lambda )\approx \sum_{k=0}^{K}{\theta_k}^{'}T_k(\widetilde{\Lambda }) \quad (4)

\widetilde{\Lambda } = \frac{2}{\lambda _{max}}\Lambda - I_N\lambda _{max}表示L的最大特征值。\theta ^{'} \in R^K是切比雪夫向量的系数。切比雪夫多项式递归地定义为T_k(x) = 2xT_{(k-1)}(x) - T_{k-2}(x),这里面T_0(x) = 1 , T_1(x) = x

回到我们信号x过滤器

{g_\theta}^{'} * x \approx \sum_{k=0}^{K}{\theta _k}^{'}T_k(\widetilde{L})x,\quad (5)

这里\widetilde{L} = \frac{2}{\lambda_{max} }L - I_N;可以轻易验证(U\Lambda U^{T})^k = U \Lambda ^kU^T。这个表达式是K阶截断的拉普拉斯多项式近似,它依赖于中心节点周围做多K个节点的作用。公式 5的复杂度是O(|\varepsilon |),随着边的数量线性增长。Defferrard et al 使用K阶卷积定义了图上的卷积网络。

2.2 LAYER-WISE LINEAR MODEL

通过公式5,图卷积神经网络可以叠多个卷积层,每一层都是非线性的。现在,如果我们将层的卷积操作K=1,即图谱域拉普拉斯矩阵L的限行函数。

这种一阶的线性方式,我们仍然可以罗列多层的卷积层,这不局限于切比雪夫多项式。我直觉期望这样的模型能够对于点的度数很高的分布(例如,社交网络、引用网络、知识图谱和其他一些真实世界的数据库)的图结构起到减轻过拟合的作用。并且,对于一定的计算资源,这种一阶的layer-wise方式能够建立更深的网络。

这样一种GCN的方式,我们近似\lambda_{max} \approx 2,训练过程中,网络的参数适应如下方式:

g_{\theta^{'}} * x = {\theta _0}^{'}x + {\theta _1}^{'}(L- I_N)x= {\theta _0}^{'}x - {\theta _1}^{'}D^{-1/2}AD^{-1/2}x, \quad (6)

这里2个自由参数\theta _0^{'}\theta _1^{'}。这个过滤器的参数被整个网络共享。多层卷积过滤能够卷积到一个节点的第K层邻居,k就是图神经网络卷积层的层数。

在实际中,限制参数的数量以减少计算(例如矩阵乘法)已解决过拟合的问题,这种优化可以得到如下公式g_\theta *x \approx \theta (I_N + D^{-1/2}AD^{-1/2})x,\quad (7)

一个参数\theta =\theta _0^{'}=-\theta _1^{'}。注意I_N + D^{-1/2}AD^{-1/2}的特征值取值范围在[0,2]。在神经网络里面叠多层这样的操作将导致数值不稳定,以及神经网络梯度的消失。为了有效缓解这个问题,我们将使用再归一化的技巧:I_N + D^{-1/2}AD^{-1/2}->\widetilde{D}^{-1/2}\widetilde{A}\widetilde{D}^{-1/2}\widetilde{A} = A + I_N\widetilde{D_{ii}} = \sum_{j}\widetilde{A_{ij}}

我们可以将上述的定义真正泛化到一个信号X\in R^{N*C},带有C个输入通道(例如,每一个节点有C维的特征向量),F过滤和特征映射如下:

Z = \widetilde{D}^{-1/2}\widetilde{A}\widetilde{D}^{-1/2}X\Theta ,\quad (8)

这里\Theta \in R^{C*F}是过滤矩阵的参数,Z\in R^{N*F}是卷积信号矩阵。这个过滤操作有O(|\varepsilon|FC )的复杂度,\widetilde{A}X是稀疏矩阵和稠密矩阵的乘积。

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值