默认向量都是列向量。求和符号可以简写。
拉普拉斯矩阵
无向图G=(V,E),A∈Rn×n 为邻接矩阵,其元素
aij={10if (vi,vj)∈Eelse N(i)为结点vi的邻居,D∈Rn×n为度矩阵,对角矩阵,其元素
dii=j=1∑naij=j∈N(i)∑aij 定义拉普拉斯矩阵 (Laplacian matrix) L=D−A,其元素
lij=⎩⎨⎧di−10if i=jif (vi,vj)∈Eotherwise 正则化表达形式 (symmetric normalized laplacian) Lsym=D−1/2LD−1/2,其元素
lsym(i,j)=⎩⎨⎧1didj−10if i=jif (vi,vj)∈Eotherwise 总变差
定义向量x=[x1,x2,⋅⋅⋅,xn]T,可认为是图信号。则
Lx=(D−A)x=Dx−Ax=[⋅⋅⋅,dixi−j=1∑naijxj,⋅⋅⋅]T=[⋅⋅⋅,j=1∑naijxi−j=1∑naijxj,⋅⋅⋅]T=[⋅⋅⋅,j=1∑naij(xi−xj),⋅⋅⋅]T 分量 ∑j=1naij(xi−xj) 可写成 ∑j∈N(i)(xi−xj),由此可知,拉普拉斯矩阵是反映图信号局部平滑度的算子。
接着我们利用上式定义二次型,
xTLx=i=1∑nxij=1∑naij(xi−xj)=i=1∑nj=1∑naij(xi2−xixj) 调换i,j符号,求和顺序保持不变,我们得到
xTLx=i=1∑nj=1∑naij(xi2−xixj)=i=1∑nj=1∑naij(xj2−xixj) 将等式左右两边相加,于是
xTLx=21i=1∑nj=1∑naij(xi2−2xixj+xj2)=21i=1∑nj=1∑naij(xi−xj)2 由公式可以看出,二次型 xTLx 能刻画图信号的总体平滑度,称为总变差。
拉普拉斯矩阵的定义来源于拉普拉斯算子,n维欧式空间中的一个二阶微分算子:Δf=∑i=1n∂xi2∂2f。将该算子退化到离散二维图像空间就是边缘检测算子:
Δf(x,y)=∂x2∂2f(x,y)+∂y2∂2f(x,y)=[(f(x+1,y)−f(x,y))−(f(x,y)−f(x−1,y))]+[(f(x,y+1)−f(x,y))−(f(x,y)−f(x,y−1))]=[f(x+1,y)+f(x−1,y)+f(x,y+1)+f(x,y−1)]−4f(x,y) 图像处理中通常被当作模板的形式:
⎣⎡0101−41010⎦⎤ 拉普拉斯算子用来描述中心像素与局部上、下、左、右四邻居像素的总的差异,这种性质经常也被用来当作图像上的边缘检测算子。
Laplacian Eigenmaps
假设图 G=(V,E) 中有 n 个节点,嵌入维度为 d,可得到如下 n×d 矩阵 Y,
⎣⎡y1(1)y2(1)⋮yn(1)y1(2)y2(2)⋮yn(2)⋯⋯⋱⋯y1(d)y2(d)⋮yn(d)⎦⎤ n 维行向量 yk=[yk(1),yk(2),...,yk(d)],可表示一个节点的Embedding。
拉普拉斯特征映射(Laplacian Eigenmaps)用于图嵌入中,在图中邻接的节点,在嵌入空间中距离应该尽可能的近。可将其作为一阶相似性的定义,因此可以定义如下的loss function:
L1st=i=1∑nj=1∑naij∣∣yi−yj∣∣22 n 维列向量 y(k)=[y1(k),y2(k),⋅⋅⋅,yn(k)]T,对应图中所有节点的第 k 维的值,可指一组图信号。因此可以得到,
L1st=i=1∑nj=1∑naij∣∣yi−yj∣∣22=i=1∑nj=1∑naijk=1∑d(yi(k)−yj(k))2=k=1∑di=1∑nj=1∑naij(yi(k)−yj(k))2=2k=1∑dy(k)TLy(k)=2tr(YTLY) tr(⋅) 指矩阵的迹 (trace)。
总变差的另一种推导
对任意n维列向量 y=[y1,y2,...,yn]T,展开可得到,
yTLy=yTDy−yTAy=i=1∑ndiyi2−i=1∑nj=1∑naijyiyj=21(i=1∑ndiyi2−2i=1∑nj=1∑naijyiyj+j=1∑ndjyj2)=21(i=1∑nj=1∑naijyi2−2i=1∑nj=1∑naijyiyj+j=1∑ni=1∑najiyj2)=21(i=1∑nj=1∑naijyi2−2i=1∑nj=1∑naijyiyj+i=1∑nj=1∑naijyj2)=21i=1∑nj=1∑naij(yi−yj)2 其中利用了 A 是对称矩阵,aij=aji