本文为图神经网络的学习笔记,讲解图卷积网络 GCN。欢迎在评论区与我交流👏
前言
传统卷积方式在非欧式的数据空间无法保持“平移不变性”,因此将卷积推广到 Graph 等非欧式数据空间的拓扑图上。
先给出 GCN 的公式:
H ( l + 1 ) = D ^ − 1 / 2 A ^ D ^ − 1 / 2 H l W l H^{(l+1)}=\hat{D}^{-1/2}\hat{A}\hat{D}^{-1/2}H^lW^l H(l+1)=D^−1/2A^D^−1/2HlWl
- 卷积和傅里叶变换关系紧密。数学上的定义是两个函数的卷积等于各自傅里叶变换的乘积的逆傅里叶变换。此时卷积与傅里叶变换产生了联系
- 传统的傅里叶变换可通过类比推广到图上的傅里叶变换。此时傅里叶变换又与 Graph 产生了联系
- 由傅里叶充当桥梁,卷积与 Graph 产生联系
【论文链接】。
拉普拉斯矩阵与 GCN
拉普拉斯矩阵及其变体
拉普拉斯矩阵
简单图 G G G 的节点数为 n n n, D D D 是 G G G 的度矩阵, A A A 是 G G G 的邻接矩阵,则 G G G 的拉普拉斯矩阵可以表示为 L = D − A L=D-A L=D−A。
度矩阵 D D D 定义为:
d i , j : = { d e g ( v i ) if i = j 0 o t h e r w i s e d_{i,j}:=\left\{ \begin{array}{rcl} deg(v_i) & & \text{if }{i=j}\\ 0 & & otherwise\\ \end{array} \right. di,j:={ deg(vi)0if i=jotherwise
L L L 中各元素表示:
L i , j : = { d e g ( v i ) i = j − 1 if i ≠ j and v i 邻接 v j 0 o t h e r w i s e L_{i,j}:=\left\{ \begin{array}{rcl} deg(v_i) & & {i=j}\\ -1 & & \text{if } i\not=j \text{ and } v_i \text{邻接} v_j\\ 0 & & otherwise\\ \end{array} \right. Li,j:=⎩⎨⎧deg(vi)−10i=jif i=j and vi邻接vjotherwise
示意图(拉普拉斯矩阵也称为调和矩阵):
拉普拉斯矩阵变体
对称归一化的拉普拉斯矩阵:
L s y s = D − 1 / 2 L D − 1 / 2 = I − D − 1 / 2 A D − 1 / 2 L^{sys}=D^{-1/2}LD^{-1/2}=I-D^{-1/2}AD^{-1/2} Lsys=D−1/2LD−1/2=I−D−1/2AD−1/2
L i , j s y s : = { 1 i = j − 1 d e g ( v i ) d e g ( v j ) if i ≠ j and v i 邻接 v j 0 o t h e r w i s e L_{i,j}^{sys}:=\left\{ \begin{array}{rcl} 1 & & {i=j}\\ \frac{-1}{\sqrt{deg(v_i)deg(v_j)}} & & \text{if } i\not=j \text{ and } v_i \text{邻接} v_j\\ 0 & & otherwise\\ \end{array} \right. Li,jsys:=⎩⎪⎨⎪⎧1deg(vi)deg(vj)−10i=jif i=j and vi邻接vjotherwise
随机游走归一化的拉普拉斯矩阵:
L r w = D − 1 L = I − D − 1 A L^{rw}=D^{-1}L=I-D^{-1}A Lrw=D−1L=I−D−1A
L i , j r w : = { 1 i = j − 1 d e g ( v i ) if i ≠ j and v i 邻接 v j 0 o t h e r w i s e L_{i,j}^{rw}:=\left\{ \begin{array}{rcl} 1 & & {i=j}\\ \frac{-1}{\sqrt{deg(v_i)}} & & \text{if } i\not=j \text{ and } v_i \text{邻接} v_j\\ 0 & & otherwise\\ \end{array} \right. Li,jrw:=⎩⎪⎨⎪⎧1deg(vi)