Spectral-based方法在图信号(graph signal processing)处理中已经有了一个非常好的基础。在Spectral-based的模型中,图通常被假定为无向图。对无向图比较鲁棒的表示方法是归一化的拉普拉斯矩阵(Normalized graph Laplacian matrix),归一化的拉普拉斯矩阵L被定义为:
L = I n − D − 1 / 2 A D − 1 / 2 , L=I_{n}-D^{-1/2}AD^{-1/2}, L=In−D−1/2AD−1/2,
其中D是图的对角度数矩阵,A为图的邻接矩阵,所以有:
D i i = ∑ j ( A i , j ) . D_{ii}=\sum_{j}(A_{i,j}). Dii=j∑(Ai,j).
归一化的图的拉普拉斯矩阵L是一个实对称的半正定矩阵。根据这个性质,可以将拉普拉斯矩阵L分解为:
L = U Λ U T , 其 中 U = [ u 0 , u 1 , u 2 , . . . , u n − 1 ] ∈ R N × N L=U\Lambda U^{T}, 其中U=[u_{0},u_{1},u_{2},...,u_{n-1}] \in R^{N \times N} L=UΛUT,其中U=[u0,u1,u2,...,un−1]∈RN×N
上述的表达式中,U是奇异值向量的矩阵。 Λ \Lambda Λ是奇异值的对角矩阵, Λ \Lambda Λ对角线上的每一个元素是一个奇异值 Λ i i = λ i \Lambda_{ii}=\lambda_{i} Λii=λi。U中的奇异值向量构成了一个正交的空间,因而有性质 U T U = I U^{T}U=I UTU=I。在图信号处理的过程当中。一个图信号 x ∈ R N x \in R^{N} x∈RN是一个特征向量,其中每一个元素 x i x_{i} xi是图中第i个结点的值。
有了上述的定义之后,可以定义图的傅里叶变换(graph Fourier transform):
x ‾ = F ( x ) = U T x \overline{x} = \mathscr{F}(x)=U^{T}x x=F(x)=UTx
图的傅里叶逆变换可以被定义为:
F − 1 ( x ‾ ) = U x ‾ \mathscr{F}^{-1}(\overline{x}) = U\overline{x} F−1(x)=Ux
从图的傅里叶变换的定义中我们可以理解:
根据图的傅里叶变换,可以定义图卷积,假设图的 输入信号为x,滤波器为 g ∈ R N g \in R^{N} g∈RN,图卷积可以被定义为:
x ∗ G g = F − 1 ( F ( x ) ⊙ F ( g ) ) = U ( U T x ⊙ U T g ) x \ast_{G} g = \mathscr{F^{-1}}( \mathscr{F}(x) \odot \mathscr{F}(g)) = U(U^{T}x \odot U^{T}g) x∗Gg=F−1(F(x)⊙F(g))=U(UTx⊙UTg)
其中 ⊙ \odot ⊙表示Hadamard product. 如果换一种表示方法,把 g θ = d i a g ( U T g ) g_{\theta} = diag(U^{T}g) gθ=diag(UTg)表示为滤波器,图卷积可以被简化为:
x ∗ G g θ = U g θ U T x x \ast_{G} g_{\theta} = Ug_{\theta}U^{T}x x∗Ggθ=UgθUTx
以上就是spectral-based的图卷积网络的定义。不同的网络结构在于对滤波器 g θ g_{\theta} gθ的选择。
Bruna 1大佬提出了第一代的图卷积神经网络(spectral convolutional neural network), 简称Spectral CNN. 论文中假设滤波器为 g θ = θ i , j k g_{\theta} = \theta^{k}_{i,j} gθ=θi,jk。 θ i , j k \theta^{k}_{i,j} θi,jk是一系列的可训练的参数,可以定义图卷积神经网络的一个layer为:
X : , j k + 1 = σ ( ∑ i = 1 f k − 1 U θ i , j k U T X : , i k ) ( j = 1 , 2 , . . . , f k ) X_{:,j}^{k+1} = \sigma( \sum_{i=1}^{f_{k-1}} U \theta^{k}_{i,j} U^{T}X_{:,i}^{k}) (j =1,2,...,f_{k}) X:,jk+1=σ(i=1∑fk−1Uθi,jkUTX:,ik)(j=1,2,...,fk)
上述的表达式中:
Defferrard 2 大佬提出ChebNet. 在论文中,定义滤波器 g θ g_{\theta} gθ为一系列的切比雪夫(Chebyshev polynomials)多项式。例如:
g θ = ∑ i = 0 K − 1 θ i T i ( Λ ‾ ) g_{\theta}=\sum_{i=0}^{K-1}\theta_{i}T_{i}(\overline\Lambda) gθ=i=0∑K−1θiTi(Λ)
其中,
Λ ‾ = 2 Λ / λ m a x − I N \overline\Lambda = 2\Lambda/\lambda_{max} - I_{N} Λ=2Λ/λmax−IN
切比雪夫多项式可以通过递归地定义为:
T k ( x ) = 2 x T k − 1 ( x ) − T k − 2 ( x ) T_{k}(x) = 2xT_{k-1}(x)-T_{k-2}(x) Tk(x)=2xTk−1(x)−Tk−2(x) T 0 ( x ) = 1 T_{0}(x) = 1 T0(x)=1 T 1 ( x ) = x T_{1}(x) = x T1(x)=x
通过上述对滤波器 g θ g_{\theta} gθ的定义,可以得到基于切比雪夫多项式的图卷积的表示:
x ∗ G g θ = U ( ∑ i = 0 K − 1 θ i T i ( Λ ‾ ) ) U T x x \ast_{G} g_{\theta} = U(\sum_{i =0}^{K-1} \theta_{i}T_{i}(\overline\Lambda))U^{T}x x∗Ggθ=U(i=0∑K−1θiTi(Λ))UTx = ∑ i K − 1 θ i T i ( L ‾ ) x =\sum_{i}^{K-1}\theta_{i}T_{i}(\overline L)x =i∑K−1θiTi(L)x
其中 L ‾ = 2 L m a x − I N \overline L = 2L_{max}-I_{N} L=2Lmax−IN
通过基于切比雪夫多项式的图卷积的表示,我们可以发现,chebNet有一个优点,这个优点就是能够避免计算图傅里叶变换的基,从而将图卷积的计算复杂度从 O ( N ) O(N) O(N)减少为 O ( K M ) O(KM) O(KM)
Kipf 3 大佬提出了first-order approximation of ChebNet. 在Chebyshev Spectral CNN的基础上,假设 K = 1 K=1 K=1和 λ m a x = 2 \lambda_{max}=2 λmax=2,从而基于切比雪夫多项式的图卷积可以被简化为:
x ∗ G g θ = θ 0 x − θ 1 D − 1 / 2 A D − 1 / 2 x x \ast_{G} g_{\theta} = \theta_{0}x - \theta_{1}D^{-1/2}AD^{-1/2}x x∗Ggθ=θ0x−θ1D−1/2AD−1/2x
进一步地,为了减少需要训练的参数,可以最进一步的假设 θ = θ 0 = θ 1 \theta = \theta_{0} = \theta_{1} θ=θ0=θ1,这样,卷积可以被进一步地化简为:
x ∗ G g θ = θ ( I θ + D − 1 / 2 A D − 1 / 2 ) x x \ast_{G} g_{\theta} = \theta(I_{\theta} +D^{-1/2}AD^{-1/2})x x∗Ggθ=θ(Iθ+D−1/2AD−1/2)x
有了上述的表达式之后,可以根据First order of chebNet来定义图卷积神经网络中的一层:
X k + 1 = A ‾ X k Θ X^{k+1} =\overline A X^{k}\Theta Xk+1=AXkΘ
其中 A ‾ = I N + D − 1 / 2 A D − 1 / 2 \overline A=I_{N}+D^{-1/2}AD^{-1/2} A=IN+D−1/2AD−1/2
J. Bruna, W. Zaremba, A. Szlam, and Y. LeCun, “Spectral networks and locally connected networks on graphs,” in Proceedings of International Conference on Learning Representations, 2014. ↩︎
M. Defferrard, X. Bresson, and P. Vandergheynst, “Convolutional neural networks on graphs with fast localized spectral filtering,” in Advances in Neural Information Processing Systems, 2016, pp. 3844–3852. ↩︎
T. N. Kipf and M. Welling, “Semi-supervised classification with graph convolutional networks,” in Proceedings of the International Conference on Learning Representations, 2017. ↩︎