【阅读笔记】Spectral Networks and Locally Connected Networks on Graphs

Abstract

本文是基于CNN(卷积神经网络,convolutional neural network)所构造的GCN。

本文提出两种构造,一种基于域的层次集群(a hierachical clustering of the domain),另一种是基于图拉普拉斯的谱(the spectrum of the graph Laplacian)。

其中后者(GCN-1)是本文的重点

结果显示,对于低维图,可以通过一些参数来学习卷积层,这些参数与输入大小无关。

Background

CNN在机器学习问题中非常成功,在这些问题中,底层数据表示的坐标具有网格(grid)结构(在1、2和3维),并且在这些坐标中要研究的数据具有相对于该网格的平移等变性/不变性(translational equivariance/invariance)。

同时,CNN相比传统的全连接网络(FC)还极大地减少了参数的使用。

然而,对于不具备较好几何结构的数据,传统的CNN不太适用。而图(graph)天然具备较好的表示能力。为了将卷积推广到图上,本文提出两种结构:spatial construction和spectral construction。

Spacial Construction

CNN 对一般图最直接的泛化是考虑多尺度(multiscale)、层次化(hierarchical)、局部感受野(local receptive field)。

网格(grid)将被带权图 G = ( Ω , W ) G=(\Omega ,W) G=(Ω,W)所替代—— Ω \Omega Ω是大小为 m m m的离散集,而 W W W是一个 m × m m\times m m×m的对称矩阵(元素非负)。

将 Ω \Omega Ω理解为节点集合, W W W理解为边矩阵

Locality

要在图中泛化局部(locality)的概念,可以通过权重 W W W来决定。定义“邻居”(neighborhood)的最直接方式是设定一个门限值 δ \delta δ,则节点 j j j的邻居(neighbor)为:
N δ ( j ) = { i ∈ Ω : W i j > δ } N_\delta(j)=\{i\in\Omega:W_{ij}>\delta\} Nδ​(j)={i∈Ω:Wij​>δ}

通过此处“邻居”的概念,之后会定义“社区”(neighborhood)

Multiresolution

由于网格具备天然的多尺度集群(multiscale clustering),CNN得以通过池化层和二次采样层(subsampling layer)减少网格的尺度。前人提出了多种在图上形成多尺度集群的方法。

本文使用一种简单的方法。下图说明了具有相应邻域的图的多分辨率集群(multiresolution clustering):

Deep Locally Connected Networks

spatial construction始于对图的多尺度集群。

考虑尺度为 K K K。设 Ω 0 = Ω \Omega_0=\Omega Ω0​=Ω,对每个 k = 1... K k=1...K k=1...K,定义:

  • Ω k \Omega_k Ωk​为一个分割:将 Ω k − 1 \Omega_{k-1} Ωk−1​分为 d k d_k dk​个集群
  • N k \mathcal{N}_k Nk​为 Ω k − 1 \Omega_{k-1} Ωk−1​中各元素所在的社区: N k = { N k , i ; i = 1... d k − 1 } \mathcal{N}_k=\{\mathcal{N}_{k,i};i=1...d_{k-1}\} Nk​={Nk,i​;i=1...dk−1​}
image-20221204200521293

上图为无向图 G = ( Ω 0 , W ) G=(\Omega_0,W) G=(Ω0​,W)的两级集群。

容易理解错误的是,这里的 W i j W_{ij} Wij​不是“距离”,而是表征两个节点关系紧密与否的“权重”——关系越紧密,权值越大。

e.g. Ω 1 \Omega_1 Ω1​是将 Ω 0 = Ω \Omega_0=\Omega Ω0​=Ω分为 d 1 d_1 d1​个集群; N 2 \mathcal{N}_2 N2​是一个集合(共 d 1 d_1 d1​个元素),其中每个元素都是 Ω 1 \Omega_1 Ω1​中某个集群的“邻居”,即一个社区

图中:

  • 灰色节点表示的是原始图 G G G中的各节点 Ω 0 \Omega_0 Ω0​
  • k = 1 k=1 k=1时划分第一级社区 Ω 1 \Omega_1 Ω1​:每个彩色的多边形表示一个社区。各社区 N 1 j \mathcal{N}_{1j} N1j​可以进一步用一个节点表示(图中彩色的节点)
  • k = 2 k=2 k=2时划分第二级社区 Ω 2 \Omega_2 Ω2​:椭圆圈表示在上一步基础之上划分的各社区 N 2 j \mathcal{N}_{2j} N2j​

据此定义网络的第 k k k层(k-th layer of the network):不失一般性地,假设输入信号是在 Ω 0 \Omega_0 Ω0​中定义的实信号(real signal),用 f k f_k fk​表示在第 k k k层中创建的filters的数量。在网络的每一层,会把用 Ω k − 1 \Omega_{k-1} Ωk−1​索引(index)的 f k − 1 f_{k-1} fk−1​维信号转化为用 Ω k \Omega_{k} Ωk​索引的 f k f_{k} fk​维信号,从而权衡空间分辨率(spatial resolution)与新创建的特征坐标(feature coordinates)。

通俗地说,就是每一层都使得空间分辨率有所降低、“图”更加“抽象”,但图中隐含的信息通过特征的提取变得更加明显。

更正式地,如果第 k k k层的输入是 d k − 1 × f k − 1 d_{k-1}\times f_{k-1} dk−1​×fk−1​的 x k = ( x k , i ; i = 1... f k − 1 ) x_k=(x_{k,i};i=1...f_{k-1}) xk​=(xk,i​;i=1...fk−1​),则输出 x k + 1 x_{k+1} xk+1​为:
x k + 1 , j = L k h ( ∑ i = 1 f k − 1 F k , i , j x k , i ) ( j = 1... f k ) (2.1) x_{k+1,j}=L_kh(\sum_{i=1}^{f_{k-1}}F_{k,i,j}x_{k,i})\quad(j=1...f_k) \tag{2.1} xk+1,j​=Lk​h(i=1∑fk−1​​Fk,i,j​xk,i​)(j=1...fk​)(2.1)
其中 F k , i , j F_{k,i,j} Fk,i,j​是 d k − 1 × d k − 1 d_{k-1}\times d_{k-1} dk−1​×dk−1​大小的稀疏矩阵,且在由 N k \mathcal{N}_k Nk​所给出的位置上,其元素(entries)是非零的。 L k L_k Lk​是在 Ω k \Omega_k Ωk​中的每个集群上做池化操作的输出结果。如下图所示。

可以理解为:
初始值 d 0 = ∣ Ω 0 ∣ d_0=|\Omega_0 | d0​=∣Ω0​∣即原图 G G G中节点的数目, f 0 = 1 f_0=1 f0​=1
x k + 1 x_{k+1} xk+1​是 x k x_k xk​经过第 k k k层的 f k f_k fk​个filter作用后得到的结果
h h h为激活函数

注:“entries”
The individual items in an m×n matrix A, often denoted by ai,j, where i and j usually vary from 1 to m and n, respectively, are called its elements or entries.
矩阵中的元素可以叫elements,items,或者entries。

image-20221205122629058

上图为 K = 2 K=2 K=2情况下, ( 2.1 ) (2.1) (2.1)式所描述的空间构造,其中池化操作为演示方便而隐含在了过滤阶段(filtering stage)。每一个转化层都会损失空间分辨率,但也会增加filters的数量。

本文使用如下方式构造 Ω k \Omega_k Ωk​和 N k \mathcal{N}_k Nk​:

image-20221205164035284

小结

空间构造可能看起来很幼稚,但它的优点是它需要对图进行相对较弱的正则性假设。 具有低内在维度的图具有局部邻域,即使不存在良好的全局嵌入也是如此。 然而,在这种结构下,没有简单的方法可以在图形的不同位置之间进行权重共享。 一种可能的选择是考虑将图形全局嵌入到低维空间中,这在高维数据的实践中很少见。

Spectral Construction

图的全局结构可以利用其图拉普拉斯算子(graph-Laplacian)的谱(spectrum)来推广卷积运算符。

Harmonic Analysis on Weighted Graphs

harmonic analysis: analysis of a periodic function into a sum of simple sinusoidal components.
synonymous: Fourier analysis

组合拉普拉斯矩阵(combinatorial Laplacian) L = D − W L=D-W L=D−W或图拉普拉斯矩阵(graph Laplacian) L = I − D − 1 / 2 W D − 1 / 2 \mathcal{L}=I-D^{-1/2}WD^{-1/2} L=I−D−1/2WD−1/2是对网格中的拉普拉斯算子的推广。

L L L:图拉普拉斯矩阵,就是图上的拉普拉斯算子 Δ \Delta Δ
D D D:度矩阵
W W W:权重矩阵

图拉普拉斯算子 Δ \Delta Δ作用在由图节点信息构成的向量 f ⃗ \vec{f} f ​上,得到的结果等于图拉普拉斯矩阵 L L L和向量 f ⃗ \vec{f} f ​的点积:
Δ f ⃗ = L f ⃗ , f ⃗ = ( f 1 , . . . f N ) \Delta\vec{f}=L\vec{f},\qquad \vec{f}=(f_1,...f_N) Δf ​=Lf ​,f ​=(f1​,...fN​)

设 x x x是 m m m维的向量,节点 i i i的平滑度(smoothness)可定义为:
∥ ▽ x ∥ W 2 ( i ) = ∑ j W i j [ x ( i ) − x ( j ) ] 2 \|\triangledown x\|_W^2(i)=\sum_j W_{ij}[x(i)-x(j)]^2 ∥▽x∥W2​(i)=j∑​Wij​[x(i)−x(j)]2

Extending Convolutions via the Laplacian Spectrum

设 W W W是一个带权图, Ω \Omega Ω表示索引集。设 V V V是拉普拉斯矩阵 L L L的各特征向量(eigenvector)组成的列向量矩阵,按特征值(eigenvalue)排序。可以据此在图上做卷积网络的推广。
x k + 1 , j = h ( V ∑ i = 1 f k − 1 F k , i , j V T x k , i ) ( j = 1... f k ) x_{k+1,j}=h(V\sum_{i=1}^{f_{k-1}}F_{k,i,j}V^Tx_{k,i})\quad(j=1...f_k) xk+1,j​=h(Vi=1∑fk−1​​Fk,i,j​VTxk,i​)(j=1...fk​)

f k f_k fk​为第 k k k层中创建的filters的数量
每层 k = 1... K k=1...K k=1...K中,将大小为 ∣ Ω ∣ × f k − 1 |\Omega|\times f_{k-1} ∣Ω∣×fk−1​的输入向量 x k x_k xk​,转化为大小为 ∣ Ω ∣ × f k |\Omega|\times f_{k} ∣Ω∣×fk​的输出向量 x k + 1 x_{k+1} xk+1​
F k , i , j F_{k,i,j} Fk,i,j​是一个对角矩阵(即为要学习的参数——卷积核)
h h h为激活函数

理论上,每层需要 ∣ Ω ∣ × f k − 1 × f k |\Omega|\times f_{k-1}\times f_k ∣Ω∣×fk−1​×fk​个参数:

image-20221225101729025

通常来说,只有拉普拉斯算子的前 d d d个特征向量是有用的,因此可以将特征向量组成的列矩阵 V V V变为 V d V_d Vd​。这样每层需要训练的参数减少到 d ⋅ f k − 1 ⋅ f k = O ( ∣ Ω ∣ ) d\cdot f_{k-1}\cdot f_k=O(|\Omega|) d⋅fk−1​⋅fk​=O(∣Ω∣)。

术语

multiscale clustering:多尺度集群

multiresolution clustering:多分辨率集群

spatial resolution:空间分辨率

neighbor:邻居

neighborhood:社区

spectrum:谱

Laplacian:拉普拉斯算子

eigenvector/eigenvalue:特征向量/特征值

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐