Courant-Fischer定理、谱图分析和图的分割

一、Courant-Fischer定理

“In linear algebra and functional analysis, the min-max theorem, or variational theorem, or Courant–Fischer–Weyl min-max principle, is a result that gives a variational characterization of eigenvalues of compact Hermitian operators on Hilbert spaces. It can be viewed as the starting point of many results of similar nature.”
——https://en.wikipedia.org/wiki/Min-max_theorem
讲的是Courant–Fischer–Weyl min-max principle(最小-最大定理)给出了一个关于Hermitian矩阵特征值的变分特性描述。以下是该定理的一个推导:
1、Hermitian矩阵 H \mathbf H 定义
具有以下特性的矩阵,被称为Hermitian矩阵:
H = H , where  H = H ˉ T ( 1 ) \mathbf H=\mathbf H^* \text{, where $\mathbf H^*=\bar{\mathbf H}^T$}\qquad(1)
H \mathbf H^* H \mathbf H 的共轭转置,即 H \mathbf H 与它的共轭转置矩阵 H \mathbf H^* 相等。若 H \mathbf H 为实数阵,则有 H = H = H T \mathbf H =\mathbf H^*=\mathbf H^T ,即实对称阵为Hermitian矩阵。
2、Hermitian矩阵 H \mathbf H 的性质
性质1:
若A是H矩阵(Hermitian矩阵,简称为H矩阵),对于任意向量 x C n \mathbf x \in \mathbb C^n x T A x \mathbf x^TA\mathbf x 是实数。
性质2:
H矩阵的特征值皆为实数。
性质3:
H矩阵相异特征值对应的特征向量互为正交。
Rayleigh Quotient (Rayleigh商, R)定义:
R = x A x x x ( 2 ) R = \frac{\mathbf x^*\mathbf A\mathbf x}{\mathbf x^*\mathbf x}\qquad(2)
Courant-Fischer便是讨论 Rayleigh Quotient 的界问题。
命题1:
A \mathbf A 是形状为 n × n n \times n H \mathbf H 矩阵,它的特征值(eigenvalues)皆为实数,设为 λ 1 λ 2 λ n \lambda_1\ge\lambda_2\cdots\ge\lambda_n ,则有:
{ max x 0 x A x x x = λ 1   min x 0 x A x x x = λ n ( 3 ) \left\{ \begin{array}{c} \max_{x\neq0}\frac{\mathbf x^*\mathbf A \mathbf x}{\mathbf x^*\mathbf x}=\lambda_1\\ \ \\ \min_{x\neq0}\frac{\mathbf x^*\mathbf A \mathbf x}{\mathbf x^*\mathbf x}=\lambda_n \end{array} \right. \qquad(3)
即Rayleigh商的上界是最大特征值( λ 1 \lambda_1 ),下界是最小特征值( λ n \lambda_n )。
证明:
Λ = d i a g ( λ 1 , λ 2 ,   , λ n ) \mathbf \Lambda = diag(\lambda_1,\lambda_2,\cdots,\lambda_n) ,这些特征值对应的归一化特征矢量为 { u 1 , u 2 ,   , u n } \{ \mathbf u_1,\mathbf u_2,\cdots,\mathbf u_n\} ,即 u i = 1 \Vert \mathbf u_i \Vert=1 ,且 u i T u j = 0  (if i not equal j) \mathbf u_i^T\mathbf u_j=\mathbf 0\text{ (if i not equal j)} 。令 U = [ u 1 , u 2 ,   , u n ] \mathbf U =[ \mathbf u_1,\mathbf u_2,\cdots,\mathbf u_n] ,则有 A = U Λ U \mathbf A = \mathbf U \mathbf \Lambda \mathbf U^* 。代入(2)有:
R = x A x x x = x U Λ U x x I x = x U Λ U x x U U x   Let  z = U x = [ z i ] , i [ 1 , n ]   R = z Λ z z z = λ 1 z 1 2 + + λ n z n 2 z 1 2 + + z n 2 λ 1 ( 4 ) R=\frac{\mathbf x^*\mathbf A \mathbf x}{\mathbf x^*\mathbf x}=\frac{\mathbf x^*\mathbf U\mathbf \Lambda \mathbf U^*\mathbf x}{\mathbf x^*\mathbf I\mathbf x}=\frac{\mathbf x^*\mathbf U\mathbf \Lambda \mathbf U^*\mathbf x}{\mathbf x^*\mathbf U\mathbf U^*\mathbf x}\\ \ \\ \text{Let } \mathbf z=\mathbf U^*\mathbf x=[z_i] ,i\in[1,n]\\ \ \\ R=\frac{\mathbf z^*\mathbf \Lambda \mathbf z}{\mathbf z^*\mathbf z}=\frac{\lambda_1\vert z_1\vert^2+\cdots + \lambda_n\vert z_n\vert^2}{\vert z_1\vert^2+\cdots+\vert z_n\vert^2}\le \lambda_1\qquad(4)
同理,可得:
R = x A x x x λ n ( z 1 2 + + z n 2 ) z 1 2 + + z n 2 = λ n ( 5 ) R=\frac{\mathbf x^*\mathbf A \mathbf x}{\mathbf x^*\mathbf x}\ge \frac{\lambda_n(\vert z_1\vert^2+\cdots + \vert z_n\vert^2)}{\vert z_1\vert^2+\cdots+\vert z_n\vert^2}= \lambda_n \qquad(5)
证毕。

可利用(4)最大化原则、(5)最小化原则求出H矩阵的最大和最小特征值,能否求出其余的特征值(eigenvalues): λ 2 ,   , λ n 1 \lambda_2,\cdots,\lambda_{n-1} ?倘若仅考虑与最大特征值的特征矢量 u 1 \mathbf u_1 的正交子空间中的向量 x \mathbf x ,即 x T u 1 = 0 \mathbf x^T\mathbf u_1=0 ,令:
z = U x = [ u 1 ,   , u n ] x = ( 0 , z 2 , z 3 ,   , z n ) T \mathbf z=\mathbf U^*\mathbf x=[\mathbf u_1,\cdots,\mathbf u_n]^*\mathbf x=(0,z_2,z_3,\cdots,z_n)^T
根据上述 Hermitian矩阵 的性质3,可以令 U \mathbf U A \mathbf A 列矢量(col vector)所在矢量空间(vector space)的标准正交基, z \mathbf z 是任意非0矢量 x \mathbf x 在此基上的坐标矢量。因此有:
x A x x x = x U Λ U x x x = z Λ z z z = λ 2 z 2 2 + + λ n z n 2 z 2 2 + + z n 2 λ 2 ( 6 ) . as  z z = x x \frac{\mathbf x^*\mathbf A\mathbf x}{\mathbf x^*\mathbf x}=\frac{\mathbf x^*\mathbf U\mathbf \Lambda \mathbf U^*\mathbf x}{\mathbf x^*\mathbf x}=\frac{\mathbf z^*\mathbf \Lambda \mathbf z}{\mathbf z^*\mathbf z}=\frac{\lambda_2\vert z_2\vert^2+\cdots + \lambda_n\vert z_n\vert^2}{\vert z_2\vert^2+\cdots+\vert z_n\vert^2}\le \lambda_2\qquad(6)\\ .\\\text{as }\mathbf z^*\mathbf z=\mathbf x^*\mathbf x
也就有:
max x 0 , x u 1 x A x x x = λ 2 ( 7 ) \max_{\mathbf x\neq0,\mathbf x \bot \mathbf u_1}\frac{\mathbf x^*\mathbf A \mathbf x}{\mathbf x^*\mathbf x}=\lambda_2\qquad(7)
(7)求解必须要知道 u 1 \mathbf u_1 ,若要绕过它,考虑 C n \mathbb C^n 中任意向量 w \mathbf w ,令 x w \mathbf x \bot \mathbf w ,则有:
Let  z = U x  , so   0 = x w = ( U z ) w = z U w ,  so   z U w \text{Let } \mathbf z=\mathbf U^*\mathbf x\text{ , so}\\ \ \\ \mathbf 0=\mathbf x^* \mathbf w=(\mathbf U \mathbf z)^*\mathbf w=\mathbf z^*\mathbf U^*\mathbf w,\text{ so}\\ \ \\ \mathbf z\bot \mathbf U^*\mathbf w
V = { z C n z U w } V=\{z\in \mathbb C^n\vert \mathbf z\bot \mathbf U^*\mathbf w\} ,且 V = { z C n z U w , z 3 = = z n = 0 } V'=\{z\in \mathbb C^n\vert \mathbf z\bot \mathbf U^*\mathbf w,z_3=\cdots=z_n=0\} ,则有 V V V'\subset V ,所以:
max x 0 , x w x A x x x = max z 0 , z U w z Λ z z z = max z 0 , z V z Λ z z z   max z 0 , z V z Λ z z z = max z 0 , z V λ 1 z 1 2 + λ 2 z 2 2 z 1 2 + z 2 2 λ 2 ( 8 ) \max_{\mathbf x\neq0,\mathbf x \bot \mathbf w}\frac{\mathbf x^*\mathbf A \mathbf x}{\mathbf x^*\mathbf x}=\max_{\mathbf z\neq0,\mathbf z \bot \mathbf U^*\mathbf w}\frac{\mathbf z^*\mathbf \Lambda \mathbf z}{\mathbf z^*\mathbf z}=\max_{\mathbf z\neq0,\mathbf z \in V}\frac{\mathbf z^*\mathbf \Lambda \mathbf z}{\mathbf z^*\mathbf z}\\ \ \\ \ge\max_{\mathbf z\neq0,\mathbf z \in V'}\frac{\mathbf z^*\mathbf \Lambda \mathbf z}{\mathbf z^*\mathbf z}=\max_{\mathbf z\neq0,\mathbf z \in V'}\frac{\lambda_1\vert z_1 \vert^2+\lambda_2\vert z_2 \vert^2}{\vert z_1 \vert^2+\vert z_2 \vert^2}\ge \lambda_2\qquad(8)
前面的不等式成立的原因是在 V { 0 } V'\setminus\{0\} 所得的最大值,它必不大于在 V { 0 } V\setminus\{0\} 中的最大值;后面的不等式则源于 λ 1 λ 2 \lambda_1 \ge \lambda_2 。因为 w \mathbf w 是任意固定向量,对于所有可能的 w \mathbf w 获得的极小值也必然大于 λ 2 \lambda_2 ,亦即:
min w max x 0 , x w x A x x x λ 2 ( 9 ) \min_{\mathbf w}\max_{\mathbf x\neq0,\mathbf x \bot \mathbf w}\frac{\mathbf x^*\mathbf A \mathbf x}{\mathbf x^*\mathbf x}\ge \lambda_2 \qquad(9)
此不等式的等号成立于 w = u 1 \mathbf w=\mathbf u_1 ,因此有:
min w max x 0 , x w x A x x x = λ 2 ( 10 ) \min_{\mathbf w}\max_{\mathbf x\neq0,\mathbf x \bot \mathbf w}\frac{\mathbf x^*\mathbf A \mathbf x}{\mathbf x^*\mathbf x}= \lambda_2 \qquad(10)
设想在任意的n-1维子空间,亦即与 w \mathbf w 正交的正交子空间中寻找Rayleigh商的最大值,这个子空间未必包含任何特征向量,但我们可以确知其中必定有某个子空间不包含对应最大特征值 λ 1 \lambda_1 的特征向量 u 1 \mathbf u_1 ,而从该子空间所能找到的最大Rayleigh商正好是在所有n-1维空间所能找到的最小值
如果交换max和min位置,我们可以得到:
max w min x 0 , x w x A x x x = λ n 1 ( 11 ) \max_{\mathbf w}\min_{\mathbf x\neq0,\mathbf x \bot \mathbf w}\frac{\mathbf x^*\mathbf A \mathbf x}{\mathbf x^*\mathbf x}=\lambda_{n-1} \qquad(11)
完整的最小-最大定理还包括其他的特征值的推导。详细见【1】:
https://ccjou.wordpress.com/2010/03/16/hermitian-矩陣特徵值的變化界定/
本文上半部分几乎都是抄自于此。

二、谱图分析(Spectral Graph Analysis)

详细可参看:

  • 谱图(Spectral Graph Theory)理解(1)
    https://blog.csdn.net/StreamRock/article/details/82754539
  • 谱图(Spectral Graph Theory)理解(2)
    https://blog.csdn.net/StreamRock/article/details/82769865
    “谱图”简单说就是通过矩阵的方式,描述图中顶点(Vertex)与边(Edge,顶点之间的连线)的关系,这些关系可以归结以下矩阵关系为:
    L —— 图(Graph)的Laplacian矩阵,形状为 n × n n \times n ,n是Graph的顶点数量;
    W ——图(Graph)的Weight矩阵,反映边的特性,是实对称阵(Real Symmatry Matrix);
    D ——图(Graph)的Degree矩阵,反映顶点的特性,是对角矩阵(Diagonal Matrix),其中对角元素 d i i = j w i j d_{ii}=\sum_j w_{ij}
    有:
    L = D W ( 12 ) L=D-W\qquad(12)
    L L 是一个实对称矩阵,若Graph为全连通图,则 L L 满秩,其列空间的基为n维,将其特征值按从大到小排列有:
    λ 1 λ 2 λ n \lambda_1 \ge\lambda_2\cdots\ge\lambda_n ,则定义 Λ = d i a g ( λ 1 , λ 2 ,   , λ n ) \mathbf \Lambda=diag(\lambda_1,\lambda_2,\cdots,\lambda_n)
    其对应的特征矢量,可进行标准化(正交和归一化处理)有:
    u 1 u 2 u n ,  where  u i = 1 \mathbf u_1 \bot\mathbf u_2\cdots\bot\mathbf u_n,\text{ where }\Vert \mathbf u_i\Vert=1 ,可定义 U = [ u 1 , u 2 ,   , u n ] \mathbf U=[\mathbf u_1 ,\mathbf u_2,\cdots,\mathbf u_n]
    L L 符合上述Courant-Fischer定理的要求,因此可以用该定理讨论Graph的Laplacian矩阵。

三、图的分割

详细内容可参看《Normalized Cuts and Image Segmentation》【2】,或:谱图(Spectral Graph Theory)理解(2)【3】
https://blog.csdn.net/StreamRock/article/details/82769865
图的分割是指将图分割成几部分,其中最简单的是二分割(two-way partition):令 G = ( V , E ) G=(V,E) ,V是图G的所有顶点组成的顶点集,E是顶点间的连线。A是V的一个子集,则有: A + A ˉ = V A+\bar A=V ,因而 A , A ˉ A,\bar A 是V的一个二分割。将Graph表示成矩阵形式,则可以获得该Graph的Laplacian矩阵。通过对Laplacian特征值的讨论,分割问题最后可以归结为:
{ min x N c u t ( x ) = min y y T ( D W ) y y T D y   where  y ( i ) { 1 , b }  and  y T D 1 = 0 ( 13 ) \left\{ \begin{array}{c} \min_xNcut(\mathbf x)=\min_y\frac{\mathbf y^T(D-W)\mathbf y}{\mathbf y^TD\mathbf y}\\ \ \\ \text{where } y(i)\in \{1,-b\}\text{ and }\mathbf y^TD\mathbf 1=\mathbf 0\end{array} \right.\qquad(13)
详细的推导可见【2】、【3】。将y(i)的取值范围放宽到整个实数域,观察到(13)min()中分母部分 y T D y y^TDy 与Rayleigh商稍有差别,因此做变量转换,令 z = D 1 2 y \mathbf z=\mathbf D^{\frac{1}{2}}\mathbf y ,代入(13)为:
min x N c u t ( x ) = min y y T ( D W ) y y T D y = min y z T D 1 2 ( D W ) D 1 2 z z T z   Let  L = D 1 2 ( D W ) D 1 2 ,  so    min x N c u t ( x ) = min z z T L z z T z , and  y T D 1 = 0 ( 14 ) \min_xNcut(\mathbf x)=\min_y\frac{\mathbf y^T(D-W)\mathbf y}{\mathbf y^TD\mathbf y}=\min_y\frac{\mathbf z^TD^{\frac{1}{2}}(D-W)D^{\frac{1}{2}}\mathbf z}{\mathbf z^T\mathbf z}\\ \ \\ \text{Let }\mathcal L=D^{-\frac{1}{2}}(D-W)D^{-\frac{1}{2}},\text{ so }\\ \ \\\min_xNcut(\mathbf x)=\min_z\frac{\mathbf z^T \mathcal L\mathbf z}{\mathbf z^T\mathbf z}, \text{and } \mathbf y^TD\mathbf 1=\mathbf 0\qquad(14)
这是典型的Rayleigh商求最小值,由Courant-Fischer定理可知(14)最小值是在其最小特征值-特征矢量处得到,于是(14)等价于求解 L \mathcal L 的特征值-特征矢量,于是有:
L z = λ z D 1 2 ( D W ) D 1 2 z = λ z ( 15 ) \mathcal L \mathbf z = \lambda \mathbf z\\D^{-\frac{1}{2}}(D-W)D^{-\frac{1}{2}}\mathbf z = \lambda \mathbf z\qquad(15)
因为 ( D W ) 1 = 0 (D-W)\mathbf 1=\mathbf 0 ,因此 z n = D 1 2 1 \mathbf z_n=D^{\frac{1}{2}}\mathbf 1 L \mathcal L 的特征值为0(最小特征值)的特征矢量。联系到(13)的约束条件:
y T D 1 = 0 y T D 1 2 D 1 2 1 = 0 z T z n = 0 ( 16 ) \mathbf y^TD\mathbf 1=\mathbf 0\Rightarrow \mathbf y^TD^{\frac{1}{2}}D^{\frac{1}{2}}\mathbf 1=\mathbf 0\Rightarrow \mathbf z^T\cdot \mathbf z_n=\mathbf 0\qquad(16)
(16)表示 z \mathbf z 的取值空间必垂直于最小特征向量,由(9)、(10)有(14)的最小值等于 L \mathcal L 第二最小特征值 λ n 1 \lambda_{n-1} ,此时 z \mathbf z 等于特征向量 u n 1 \mathbf u_{n-1} 。于是,图的分割问题最终转化成在寻找Graph的Laplacian矩阵第二小的特征值和特征向量问题。

四、图像(Image)前景与背景的分割

一幅图像(Image)可以看成是一个图(Graph),图像中每一个像素(pixel)对应图中每一个顶点(vertex),可根据像素之间的关系可定义边。于是一幅图像可以用图的Laplacian矩阵表示,对于一幅图进行前景和背景分割,可看作是图的二分割。
一幅 n × n n\times n 图像,对应的Laplacian矩阵为 n 2 × n 2 n^2\times n^2 ,以下讨论仅通过亮度通道进行分割的情况:
1、定义权重矩阵W(有时又称为亲和度矩阵A,Affinity Matrix,亲和矩阵如何定义,往往是不同图像分割算法区别的关键地方)。为简便起见,定义它的每个元素如下:
w i j = { e X i X j 2 2 σ x 2 if  X ( i ) X ( j ) 2 < r ,and  i j 0 otherwise ( 17 ) w_{ij}=\left\{ \begin{array}{cc} e^{-\frac{\Vert X_i-X_j\Vert^2_2}{\sigma^2_x}} & \text{if $\Vert X(i)-X(j)\Vert_2 \lt r$,and $i\neq j$}\\0& \text{otherwise} \end{array} \right.\qquad(17)
(17)中, X i X_i 表示像素上的亮度, X ( i ) X(i) 表示像素的位置, X ( i ) X ( j ) 2 < r \Vert X(i)-X(j)\Vert_2\lt r 表示两个像素之间的几何距离小于r, σ x 2 \sigma^2_x 是像素亮度的方差。
W是实对称矩阵,再由W定义对角矩阵D,我们便可以得到图像的Laplacian矩阵 L = D W L=D-W 。由(16)可知,图像分割问题可转化为寻找它的Laplacian矩阵第二小特征矢量问题,即:
z n 1 = arg min z D 1 2 1 z T D 1 2 ( D W ) D 1 2 z z T z ( 18 ) \mathbf z_{n-1} = \arg\min_{\mathbf z \bot D^{\frac{1}{2}}\mathbf 1} \frac {\mathbf z^T D^{-\frac{1}{2}}(D-W)D^{-\frac{1}{2}}\mathbf z}{\mathbf z^T\mathbf z}\qquad(18)
由于我们在定义亲和度矩阵时,采用了window方式,因此 L \mathcal L 必然是非常稀疏的矩阵,可以通过Lanczos algorithm方法进行求解,详细叙述在:
https://en.wikipedia.org/wiki/Lanczos_algorithm

小结:

少辉常说,学习应当放在某个情景中,则所学知其所为,效率会大大提高。通过图像分割来学习这其中的图谱理论、Courant-Fischer定理、Lanczos algorithm应当属于此类情景学习了。


参考资料:
【1】https://ccjou.wordpress.com/2010/03/16/hermitian-矩陣特徵值的變化界定/
【2】《Normalized Cuts and Image Segmentation》
【3】谱图(Spectral Graph Theory)理解(2)
https://blog.csdn.net/StreamRock/article/details/82769865

猜你喜欢

转载自blog.csdn.net/StreamRock/article/details/82829496