Graph Laplacians and Laplacian Embedding
Horaud R. A Short Tutorial on Graph Laplacians, Laplacian Embedding, and Spectral Clustering.
看GCN的时候对基于谱的来龙去脉不是很理解, 这里先整理下关于 Graph Laplacians 的知识.
符号
- \(\mathcal{G} = \{\mathcal{V}, \mathcal{E}\}\): 图;
- \(\mathcal{V}(\mathcal{G}) = \{v_1, \cdots, v_n\}\): 顶点;
- \(\mathcal{E} = \{e_{ij}\}\): 边集, 每条边\(e_{ij}\)连接\(v_i, v_j\) (倘若是有向图, 则代表\(v_i \rightarrow v_j\));
- \(d_i = d(v_i) = \sum_{e_{ij} \not= e_{ji}} 1\): 顶点\(v_i\)的度数, 即连接该点的边的总数;
- \(D \in \mathbb{R}^{n \times n}\): 对角线元素为\(d(v_i), i = 1,2,\cdots, n\)其余为0的矩阵;
- \(A \in \{0, 1\}^{n \times n}\): 邻接矩阵, \(A_{ij}=1\)若\(e_{ij} \in \mathcal{E}\), 否则为\(0\), 需要注意的是\(A_{ii} = 0, i=1,2,\cdots, n\);
- \(\nabla \in \{0, 1, -1\}^{m \times n}\): 有向图的入射矩阵 (incidence matrix),
注: 无向图可以看成是\(e_{ij} \in \mathcal{E} \Leftrightarrow e_{ji} \in \mathcal{E}\).
图的 Laplacian 矩阵
假设我们通过映射\(f\)给每个顶点赋值, 即
则
故我们可以将其看成是一阶微分的近似 (沿着\(e_{ij}\)方向), 这实际上也是在数字图像处理中所提及的近似策略.
类似地, 我们可以用 Laplacian 矩阵去近似 Laplacian 算子
可知\(\nabla^T\nabla \in \mathbb{R}^{n \times n}\) 有如下性质:
故
我们以图片\(\bm{f} \in \mathbb{R}^{H \times W}\)在点\((x, y)\)的近似为例 (四邻域):
注意到, 因为是四邻域, 所以该图在\((x, y)\)处有边指向上下左右, 故
这就解释了为啥它的名字是 Laplacian 矩阵, 也一定程度上说明了它的一些性质.
无向带权图
假设每条边\(e_{ij}\)附带非负权重\(w_{ij} = w_{ji} > 0\), 为了统一表示, 令\(w_{ij} = 0\)表示\(v_i, v_j\)之间不存在边. 通常, 权值越大代表两个点之间的相似度越高. 这时
类似地有:
这里 \(W_{ij} = w_{ij}, d(v_i) = \sum_{j=1}^n w_{ij}\).
于是我们定义:
注: (4)式严格来说存在矛盾的. 之前定义 \(L\) 的时候, 我们假定 \(A\) 的对角线元素为0, 这意味着 \(w_{ii}\) 也应该为0, 但是因为通常将\(w_{ij}\)视作两个顶点的相似度, 所以通常这个\(w_{ii}\)是非零的, 甚至是最大的值, 如下面常用的高斯核:
事实上, 对于 (2) 而言, 只要假设存在边\(e_{ii}\), 此时\(A_{ii} = 1\) 便和 (2+) 统一了. 只是对于\(\nabla\)的定义需要额外声明.
有用的性质
- \(L\bm{f}\).
- Laplacian 矩阵 \(L\) 是对称半正定的:
- \(\bm{1}\)为\(L\)的特征向量, 且特征值为0:
Laplacian Embedding
让我从 Laplacian Embedding 的角度去理解 Graph Lapacian 矩阵的意义, 正如我们先前所提的, 我们希望设计一个函数\(f: \mathcal{V} \rightarrow \mathbb{R}\), 通常我们还希望映射后的值 \(f(v_i), f(v_j)\) 满足相似度关系: 相似度越高的点之间应该'接近'. 在这个需求下, 我们观察下式:
当\(w_{ij}\)衡量\(v_i, v_j\)之间相似度时, 上式天然满足我们的需求.
但是显然 (5) 显然在 \(\bm{f} = \bm{1}\)时达到最小值\(0\), 但是这种映射是平凡的无意义的, 反映不了任何相似度信息. 一般来说, \(w_{ij} > 0\), 任何非平凡的映射\(f\)都会导致(5)非零. 不妨假设 \(L\) 的特征分解为
我们应当选择第一个非零的特征值\(\lambda_2\)所对应的特征向量\(\bm{u}_2\)作为映射\(f\), 即 \(f(v_i) = [\bm{u}_2]_i\).
注: \(\lambda > 0\)的假设在\(w_{ij} > 0, \forall i, j\)的条件下是成立的, 否则\(\lambda_2=0\)也是可能的. 比如一个\(k\)可分的图, 其 Laplacian 矩阵可以分解为:
此时\(\bm{1}_{L_i} := (00\cdots011\cdots100\cdots0)^T \in \mathbb{R}^n\)均是特征值为\(0\)的特征向量.
高维嵌入
用一维标量来衡量一个点总归是有些捉襟见肘, 所以这次我们用 k 个映射 \(f_1, \cdots, f_k\), 此时每个顶点所对应的向量为:
我们用\(F \in \mathbb{R}^{n \times k}\)来表示\(n\)个顶点的向量集合, 即\(F_{ij} = f_j(v_i)\).
类似地, 我们希望最小化
但是这里又有一个问题, 上述的会导致所有的\(\bm{f}\)都取\(\bm{u}_2\), 故我们需要对\(F\)加以限制, 比如常见的
这保证了\(\bm{f}_i, \bm{f}_j, i \not = j\)之间是正交的, 即寄托了我们希望学习到更广泛发散的特征. 于是, (6) 等价于
实际上, 其解就是
与 Commute Time Distance (CTD) 的关系
假设 Laplacian 分解为
其中
对角矩阵\(\Lambda\)的各元素为
把图\(\mathcal{G}\)的各个顶点看作是一个状态, 并定义状态转移矩阵:
即 \(P_{ij} = \frac{w_{ij}}{d_i}\), 因为我们考虑的是无向图, 故\(W\)的对称的, 故\(P\)是对称的.
定义\(M_{ij}\)为从状态\(v_i\)出发第一次达到状态\(v_j\)所需的平均时间, 其严格定义为:
其中\(f_{ij}^t\)表示初始状态为\(v_i\), \(t\)步后状态为\(v_j\)且中间没有经过\(v_j\)的概率.
如果我们令
则
\(vol(\mathcal{G}) := \sum_{ij} w_{ij}\).
此时, 倘若我们将 \(\bm{x}_i\)作为\(v_i\)的 embedding, 则我们可以理解为两个顶点的欧式距离为两个状态的 CTD, 妙.
下面的证明搬运自 here, 其中我省略了部分不可约假设和唯一性证明.
proof:
平均时间\(M_{ij}\)可以理解为, 一步\(v_i \rightarrow v_j\)的时间加上 \(v_{i} \rightarrow v_k \rightarrow v_j, k \not = j\)的时间:
令\(M_d := \mathrm{diag}(M), E = \bm{1}\bm{1}^T\), 则
易知\(\bm{d} = [d_1, d_2, \cdots, d_n]^T\)满足
故
在此基础上, 我们再求解\(M\), 定义 \(T := M - M_d\), 则有
左端乘以\(D\)可得
\(L\)的伪逆 \(\mathcal{L}^{\dagger} := U_{n-1} \Lambda_{n-1}^{-1} U_{n-1}^T = X^TX\)有
故
令\(\bm{z} := \frac{1}{n}\bm{1}^T T\), 我们有 (\(DM_d = vol(\mathcal{G})I\))
因为\(T_{ii} = 0\), 故
所以
其它 Laplacian 的变种
normalized graph Laplacian
- \(D^{\frac{1}{2}}\bm{1}\)为其零特征值.
但是\(\mathcal{D}^{\frac{1}{2}}\bm{u}_k\)却不一定是其特征向量.
random-walk graph Laplacian
注: \([D^{-1}W]_{ij} = \frac{w_{ij}}{d(v_i)}\), 在马氏链中, 将每个顶点看成一个状态, 则状态转移概率可以定义为\(P_{ij} = [D^{-1}W]_{ij}\), 即状态转移矩阵 \(P = D^{-1}W = I - L_r\). 随机游走的 mixing rate 和 收敛速度和 \(\lambda_2\) 息息相关 (具体关系以后有空了再回顾下吧, 这里打住).
- \(L_r \bm{u} = \lambda \bm{u} \Leftrightarrow L \bm{u} = \lambda D \bm{u}\), 所以
- \(L_r \bm{u} = \lambda \bm{u} \Leftrightarrow L_n D^{\frac{1}{2}} \bm{u} = \lambda D^{\frac{1}{2}} \bm{u}\).
- \(L_r \bm{u} = \lambda \bm{u}\), 则
- \(L_r \bm{u}_i = \lambda_i \bm{u}_i, i=2,3,\cdots, n\), 则
这意味着 \(\lambda_{i} \not = \lambda_j\)时有 \(\bm{u}_i^T D \bm{u}_j = 0\), PPT中有 \(U^T D U = I\)的性质, 实在时不知道该怎么推导了.