图谱论学习—拉普拉斯矩阵背后的含义

2023-11-19

一、为什么学习拉普拉斯矩阵

    早期,很多图神经网络的概念是基于图信号分析或图扩散的,而这些都需要与图谱论相关的知识。并且在图网络深度学习中(graph deep learning)中,拉普拉斯矩阵是很常用的概念,深入理解其物理含义非常有助于加深对GNN模型的理解。博主最近在学习GCN,想要在拉普拉斯矩阵方面有个更加深入的了解,看了不少文献资料与网上的解读,受益匪浅。
在这里插入图片描述
在这里插入图片描述

二、拉普拉斯矩阵的定义与性质

    对于一个有n个顶点的图G,它的拉普拉斯矩阵(Laplacian Matrix)定义为: L = D − A L=D-A L=DA    其中,D是图G的度矩阵,A是图G的邻接矩阵。L中的元素可定义为:
L i j = { d ( v i ) 如 果 i = j − A i j 如 果 i   ≠   j 并 且 v i 与 v j 之 间 有 边 0 其 他 L_{ij}= \begin{cases} d(v_i)& 如果i=j \\ -A_{ij}& 如果i\ {\neq}\ j并且v_i与v_j之间有边 \\ 0& 其他 \end{cases} Lij=d(vi)Aij0i=ji = jvivj    通常, 我们需要将拉普拉斯矩阵进行归一化。常用的有两种方式。
    (1) 对称归一化的拉普拉斯矩阵(Symmetric Normalized Laplacian Matrix) L s y m = D − 1 2 L D − 1 2 = I − D − 1 2 A D − 1 2 L^{sym}=D^{-\frac{1}{2}}LD^{-\frac{1}{2}}=I-D^{-\frac{1}{2}}AD^{-\frac{1}{2}} Lsym=D21LD21=ID21AD21    (2) 随机游走归一化的拉普拉斯矩阵(Random Walk Normalized Laplacian Matrix) L r w = D − 1 L = I − D − 1 A L^{rw}=D^{-{1}}L=I-D^{-{1}}A Lrw=D1L=ID1A    以下面这个图为例,假设每条边权重为1,得到这个图的邻接矩阵、度矩阵和拉普拉斯矩阵。
在这里插入图片描述
    从这个L矩阵中可以观察到拉普拉斯矩阵的以下几条性质。
    ○ L是对称的
    ○ L是半正定矩阵(每个特征值 λ i ≥ 0 \lambda_i{\geq}0 λi0
    ○ L的每一行每一列的和为0
    ○ L的最小特征值为0。给定一个特征向量 v 0 = ( 1 , 1 , ⋯   , 1 ) T v_0=(1,1,\cdots,1)^T v0=(1,1,,1)T,根据上一条性质,L的每一行之和为0,所以 L v 0 = 0 Lv_0=0 Lv0=0

三、拉普拉斯矩阵的推导与意义

3.1 梯度、散度与拉普拉斯算子

    图拉普拉斯矩阵,如果把它看作线性变换的话,它起的作用与分析中的拉普拉斯算子是一样的。我们将在下面详细讨论,这里需要补充一些基础知识:

梯度定义
梯度 “ ∇ \nabla ” 是一个矢量,表示某一函数在该点处的方向导数沿着该方向取得最大值,即函数在该方向处沿着此梯度方向变化最快,变化率最大(梯度的模)。

    假设一个三元函数 u = f ( x , y , z ) u=f(x,y,z) u=f(x,y,z)在空间区域 G G G内具有一阶连续偏导数,点 P ( x , y , z ) ∈ G P(x,y,z){\in}G P(x,y,z)G,则称以下向量表示为点 P P P处的梯度:
{ ∂ f ∂ x , ∂ f ∂ y , ∂ f ∂ z } = ∂ f ∂ x i ⃗ + ∂ f ∂ y j ⃗ + ∂ f ∂ z k ⃗ \{\frac{{\partial}f}{{\partial}x},\frac{{\partial}f}{{\partial}y},\frac{{\partial}f}{{\partial}z}\}=\frac{{\partial}f}{{\partial}x}\vec{i}+\frac{{\partial}f}{{\partial}y}\vec{j}+\frac{{\partial}f}{{\partial}z}\vec{k} {xf,yf,zf}=xfi +yfj +zfk     该式可记为 g r a d f ( x , y , z ) gradf(x,y,z) gradf(x,y,z) ∇ f ( x , y , z ) {\nabla}f(x,y,z) f(x,y,z),其中:
∇ = ∂ ∂ x i ⃗ + ∂ ∂ y j ⃗ + ∂ ∂ z k ⃗ \nabla=\frac{{\partial}}{{\partial}x}\vec{i}+\frac{{\partial}}{{\partial}y}\vec{j}+\frac{{\partial}}{{\partial}z}\vec{k} =xi +yj +zk     称为向量的微分算子或者Nabla算子

散度定义
散度 “ ∇ ⋅ {\nabla}{\cdot} ” (divergence)是一个标量,用于表示空间中各点矢量场发散的强弱程度,物理上,散度的意义是场的有源性。当 d i v ( F ) > 0 div(F)>0 div(F)>0,表示该点有散发通量的正源(发散源);当 d i v ( F ) < 0 div(F)<0 div(F)<0,表示该点有吸收能量的负源(洞或汇);当 d i v ( F ) = 0 div(F)=0 div(F)=0,表示该点无源

    散度是作用在向量场上的一个算子。用三维空间举例,向量场就是在空间中每一点处都对应一个三维向量的向量函数:
F ( x , y , z ) = ( v 1 ( x , y , z ) , v 2 ( x , y , z ) , v 3 ( x , y , z ) ) T d i v ( F ) = ∂ v 1 ∂ x + ∂ v 2 ∂ y + ∂ v 3 ∂ z F(x,y,z)=(v_1(x,y,z),v_2(x,y,z),v_3(x,y,z))^T\\ div(F)=\frac{{\partial}v_1}{{\partial}x}+\frac{{\partial}v_2}{{\partial}y}+\frac{{\partial}v_3}{{\partial}z} F(x,y,z)=(v1(x,y,z),v2(x,y,z),v3(x,y,z))Tdiv(F)=xv1+yv2+zv3    它是一个标量函数(场),也就是说,在定义空间中每一点的散度是一个值。矢量 V V V的散度在笛卡尔坐标(直角坐标系)下的表达式如下所示:
∇ ⋅ V = ∂ V x ∂ x + ∂ V y ∂ y + ∂ V z ∂ z \nabla{\cdot}V=\frac{{\partial}V_x}{{\partial}x}+\frac{{\partial}V_y}{{\partial}y}+\frac{{\partial}V_z}{{\partial}z} V=xVx+yVy+zVz

拉普拉斯算子定义
拉普拉斯算子“ △ \triangle ”(Laplace Operator)是n维欧几里得空间中的一个二阶微分算子,定义为梯度( ∇ f {\nabla}f f)的散度( ∇ ⋅ {\nabla}\cdot
△ f = ∇ 2 f = ∇ ⋅ ∇ f = d i v ( g r a d f ) {\triangle}f={\nabla}^2f={\nabla}{\cdot}{\nabla}f=div(gradf) f=2f=f=div(gradf)

    在笛卡尔坐标表示下:
△ f = ∂ 2 f ∂ x 2 + ∂ 2 f ∂ y 2 + ∂ 2 f ∂ z 2 {\triangle}f=\frac{{\partial}^2f}{{\partial}x^2}+\frac{{\partial}^2f}{{\partial}y^2}+\frac{{\partial}^2f}{{\partial}z^2} f=x22f+y22f+z22f    n维形式如下:
△ = ∑ i ∂ 2 ∂ x i 2 {\triangle}=\sum_i\frac{\partial^2}{{\partial}x_i^2} =ixi22    然后推导离散形式的导数:
∂ f ∂ x = f ( x + 1 ) − f ( x ) ∂ 2 f ∂ x 2 = f ′ ′ ( x ) = f ′ ( x ) − f ′ ( x − 1 ) = f ( x + 1 ) + f ( x − 1 ) − 2 f ( x ) \frac{{\partial}f}{{\partial}x}=f(x+1)-f(x)\\ \frac{{\partial}^2f}{{\partial}x^2}=f''(x)=f'(x)-f'(x-1)=f(x+1)+f(x-1)-2f(x) xf=f(x+1)f(x)x22f=f(x)=f(x)f(x1)=f(x+1)+f(x1)2f(x)    以二维坐标为例,将拉普拉斯算子转化为离散形式:
在这里插入图片描述 △ f = ∂ 2 f ∂ x 2 + ∂ 2 f ∂ y 2 = f ( x + 1 , y ) + f ( x − 1 , y ) − 2 f ( x , y ) + f ( x , y + 1 ) + f ( x , y − 1 ) − 2 f ( x , y ) = f ( x + 1 , y ) + f ( x − 1 , y ) + f ( x , y + 1 ) + f ( x , y − 1 ) − 4 f ( x , y ) {\triangle}f=\frac{{\partial}^2f}{{\partial}x^2}+\frac{{\partial}^2f}{{\partial}y^2}\\=f(x+1,y)+f(x-1,y)-2f(x,y)+f(x,y+1)+f(x,y-1)-2f(x,y)\\=f(x+1,y)+f(x-1,y)+f(x,y+1)+f(x,y-1)-4f(x,y) f=x22f+y22f=f(x+1,y)+f(x1,y)2f(x,y)+f(x,y+1)+f(x,y1)2f(x,y)=f(x+1,y)+f(x1,y)+f(x,y+1)+f(x,y1)4f(x,y)    下面用散度 △ f {\triangle}f f的概念进一步分析:
    1. △ f > 0 {\triangle}f>0 f>0时,表示该点为发散源,是散发通量的正源,比如下图中的点 q 1 , q 2 , q 4 q_1,q_2,q_4 q1,q2,q4
    2. △ f < 0 {\triangle}f<0 f<0时,表示该点为洞或穴,是吸收通量的负源,比如下图中的点 q 3 q_3 q3
    3. △ f = 0 {\triangle}f=0 f=0时,表示该点无源
在这里插入图片描述    我们将上面的式子用矩阵进行表示如下:
[ 0 1 0 1 − 4 1 0 1 0 ] \begin{bmatrix} 0&1&0\\ 1&-4&1\\ 0&1&0\\ \end{bmatrix} 010141010    实际上,拉普拉斯算子计算了周围点与中心点的梯度差。当 f ( x , y ) f(x,y) f(x,y)受到扰动之后,其可能变为相邻的 f ( x − 1 , y ) , f ( x + 1 , y ) , f ( x , y − 1 ) , f ( x , y + 1 ) f(x-1,y),f(x+1,y),f(x,y-1),f(x,y+1) f(x1,y),f(x+1,y),f(x,y1),f(x,y+1)之一,拉普拉斯算子得到的是对该点进行微小扰动后可能获得的总增益 (或者说是总变化)。
    形象地说,假设上图五个圆点都是人,四条黑线分别牵着两个人,所有人同时用力拉绳子,每个人的力气大小分别为: f ( x , y ) , f ( x − 1 , y ) , f ( x + 1 , y ) , f ( x , y − 1 ) , f ( x , y + 1 ) f(x,y),f(x-1,y),f(x+1,y),f(x,y-1),f(x,y+1) f(x,y),f(x1,y),f(x+1,y),f(x,y1),f(x,y+1)。而 △ f {\triangle}f f的值就表示了中间那位可怜的仁兄会被拉跑还是把其他人拉过来以及拉过来和被拉跑的程度。 △ f > 0 {\triangle}f>0 f>0时表示他会被拉跑, △ f < 0 {\triangle}f<0 f<0表示这家伙大力出奇迹把人全拉过来了, △ f = 0 {\triangle}f=0 f=0表示这五个人正在僵持状态,谁都拉不动中间那位同志。

3.2 从拉普拉斯算子到拉普拉斯矩阵

    我们现在将3.1节的结论推广到图:
    假设具有 N N N个节点的图 G G G,节点 i i i的邻域为 N i N_i Ni,图上定义一个函数 f = ( f 1 , f 2 , ⋯   , f n ) f=(f_1,f_2,\cdots,f_n) f=(f1,f2,,fn) f i f_i fi表示函数 f f f在节点 i i i处的函数值,则对其中一个节点 i i i进行微扰,它可能变为图中任意一个与它相邻的节点 j ∈ N i j{\in}N_i jNi N i N_i Ni表示节点 i i i的一阶邻域。
在这里插入图片描述
    我们已经知道通过拉普拉斯算子可以计算一个点在它所有自由度上微小扰动的增益,则通过图来表示就是任意一个节点 i i i变化到节点 j j j所带来的增益,设节点 i i i与节点 j j j之间连边 e i j e_{ij} eij的权值为 w i j w_{ij} wij,考虑图中边的权值则有:
△ f i = ∑ j ∈ N i w i j ( f i − f j ) {\triangle}f_i=\sum_{j{\in}N_i}w_{ij}(f_i-f_j) fi=jNiwij(fifj)    如果假设节点 i i i与节点 j j j不相邻时 w i j = 0 w_{ij}=0 wij=0,并将上面的式子进行简化:
△ f i = ∑ j ∈ N w i j ( f i − f j ) = ∑ j ∈ N w i j f i − ∑ j ∈ N w i j f j = d i f i − w i : f d i = ∑ j ∈ N i w i j 表 示 顶 点 的 度 w i : = ( w i 1 , ⋯   , w i N ) 表 示 N 维 的 行 向 量 f = ( f 1 ⋮ f N ) 表 示 N 维 的 列 向 量 {\triangle}f_i=\sum_{j{\in}N}w_{ij}(f_i-f_j)\\=\sum_{j{\in}N}w_{ij}f_i-\sum_{j{\in}N}w_{ij}f_j\\=d_if_i-w_{i:}f\\d_i=\sum_{j{\in}N_i}w_{ij}表示顶点的度\\w_{i:}=(w_{i1},\cdots,w_{iN})表示N维的行向量\\f=\begin{pmatrix} f_1\\ {\vdots}\\ f_N\\ \end{pmatrix}表示N维的列向量 fi=jNwij(fifj)=jNwijfijNwijfj=difiwi:fdi=jNiwijwi:=(wi1,,wiN)Nf=f1fNN    对于所有的N个节点来说:
△ f = ( △ f 1 ⋮ △ f N ) = ( d 1 f 1 − w 1 : f ⋮ d N f N − w N : f ) = ( d 1 ⋯ 0 ⋮ ⋱ ⋮ 0 ⋯ d N ) f − ( w 1 : ⋮ w N : ) f = d i a g ( d i ) f − W f = ( D − W ) f = L f {\triangle}f=\begin{pmatrix} {\triangle}f_1\\ {\vdots}\\ {\triangle}f_N\\ \end{pmatrix}=\begin{pmatrix} d_1f_1-w_{1:}f\\ {\vdots}\\ d_Nf_N-w_{N:}f\\ \end{pmatrix}\\=\begin{pmatrix} d_1&{\cdots}&0\\ {\vdots}&{\ddots}&{\vdots}\\ 0&{\cdots}&d_N\\ \end{pmatrix}f-\begin{pmatrix} w_{1:}\\ {\vdots}\\ w_{N:}\\ \end{pmatrix}f\\=diag(d_i)f-Wf\\=(D-W)f\\=Lf f=f1fN=d1f1w1:fdNfNwN:f=d100dNfw1:wN:f=diag(di)fWf=(DW)f=Lf    这里的 ( D − W ) (D-W) (DW)实际上就是拉普拉斯矩阵 L L L
    根据前面所述,拉普拉斯矩阵中的第 i i i行实际上反应了第 i i i个节点在对其他所有节点产生扰动时所产生的增益累积。直观上来讲,图拉普拉斯反映了当我们在节点 i i i上施加一个势,这个势以哪个方向能够多顺畅的流向其他节点。谱聚类中的拉普拉斯矩阵可以理解为是对图的一种矩阵表示形式。
    形象点说,我们可以把 N N N个节点想象为 N N N座山峰, f i f_i fi为山峰 i i i的海拔高度,两个节点之间有连边则代表两座山峰之间有路径,拉普拉斯矩阵实际就是嵌入了某一个山峰对在其他山峰上的人的吸引程度,或者说是一种人口流动倾向。
在这里插入图片描述
    参考链接:
    1. https://zhuanlan.zhihu.com/p/81502804
    2. https://zhuanlan.zhihu.com/p/238644468
    3. https://zhuanlan.zhihu.com/p/85287578

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

图谱论学习—拉普拉斯矩阵背后的含义 的相关文章

  • 使用伪类将el-switch文字放在内部

    前言 由于switch是放在table里的 如果文字放在外面 样式会比较不好看 如果单独写一个浪费造轮子 我们直接动态添加类名 应该可以实现类似的效果 所以就可以使用伪类进行添加文字 效果 源码
  • 【图像处理】相机、透镜、人眼、小孔成像原理

    相机成像原理 相机成像原理分为透镜成像原理和小孔成像原理 相机成像原理 现代相机有很多分类 且分类标准不统一 在这里简单分类为可更换镜头相机和不可更换镜头相机两种 对于可更换镜头而言 例如单反 单镜头反光照相机 镜头只是整个系统的一个部件
  • 3D游戏编程与设计-游戏的本质hw1

    游戏的本质 游戏的分类 游戏热点 华为市场的排行榜前20游戏排名情况如下 畅销榜 人气榜 热门榜 TapTap榜单前20游戏排名情况 热玩榜 热门榜 App Store付费游戏与免费游戏排名前20情况 热点分析 游戏的分类 游戏的分类标准很
  • 【回答问题】ChatGPT上线了!ChatGPT所有知识截止到了2021年!

    回答问题 ChatGPT上线了 ChatGPT所有知识截止到了2021年 因此2022年的一下技术性知识查不到 但不影响你使用它作为你的百度小助手 从上面可以看出 chatgpt还是有区分大小写的情况 例如 SLAM

随机推荐