特征值分解

Eigen Value DecompositionEigen\ Value\ Decomposition

如果矩阵AA是一个n×nn×n实对称矩阵(即A=ATA=A^T),那么它可以被分解成如下的形式:

A=QΛQT=Q[λ1λ2λm]QTA = Q\varLambda Q^T= Q\left[ \begin{matrix} \lambda_1 & & & \\ & \lambda_2 & & \\ & & \ddots & \\ & & & \lambda_m\\ \end{matrix} \right]Q^T

其中QQ为标准正交阵,即有QQT=IQQ^T=IΛ\varLambda 为对角矩阵,且上面的矩阵的维度均为n×nn×nλiλ_i称为特征值qiq_iQQ(特征矩阵)中的列向量,称为特征向量

而关于特征值特征向量此处暂作简单阐述。详情见本站文章:

特征值和特征向量

特征值是指对于nn阶方阵AA

如果存在数λ\lambda和非零的nn维列向量xx,使得Ax=λxAx=\lambda x 成立,

则称λ\lambdaAA的一个特征值|characteristic valuecharacteristic\ value 本征值|eigenvalueeigenvalue.

而那个非零的nn维列向量xx称为矩阵AA的属于(对应于)特征值λ\lambda的 特征向量 本征向量,简称AA的特征向量.

计算与求解

Ax=λx (λIA)x=0Ax=\lambda x \Rightarrow\ (\lambda I-A)x=0,且xx为非零列向量,于是可以通过λIA=0|\lambda I-A|=0得到关于λ\lambda的多项式方程P(λ)=0P(\lambda)=0,解得的λi\lambda_i则为矩阵AA的第ii个特征值,其中:

P(λ)=(λλ1)m1(λλ2)m2(λλk)mki=1kmi=nP(\lambda)=(\lambda-\lambda_1)^{m_1}(\lambda-\lambda_2)^{m_2}\cdots(\lambda-\lambda_k)^{m_k}\\ \sum_{i=1}^km_i=n

对于每一个λi\lambda_i显然有:

(λiIA)x=0(\lambda_iI-A)x=0

解此方程(通常被称作 特征方程)可解得kik_i个线性无关的解(向量)xx,其中1kimi1\leq k_i\leq m_i,这些向量即为特征向量。

特征分解

定义对角矩阵Λ\Lambda,其中各个对角元素与矩阵AA的特征值一一对应,即Λii=λi\Lambda_{ii}=\lambda_i

定义矩阵QQ,由各特征值对应的列向量qiq_i组成(各列是线性无关的)

根据矩阵分块的规则,显然有:

A=QΛQ1A=Q\Lambda Q^{-1}

注:只有可对角化的矩阵才可以作特征分解

AA实对称矩阵 时,其特征向量都可以正交单位化而得到一组正交且模为1的向量。故实对称矩阵可被分解成:

A=QΛQTA=Q\Lambda Q^T

其中QQ为正交矩阵,为Λ\Lambda实对角矩阵。

在上述阐述中,运用到了如下性质:

实对称矩阵AA在任意两个特征值λi\lambda_iλj\lambda_jλiλj\lambda_i\neq\lambda_j)中对应的特征向量pip_ipjp_j,有piTpj=0p_i^Tp_j=0

证明过程

证明

​ 设z=piTApjz=p_i^TAp_j,显然zT=zz^T=zzz为标量)

​ 所以piTApj=pjTATpi=pjTApip_i^TAp_j=p_j^TA^Tp_i=p_j^TAp_i,进而:

piTApj=piTλjpj=λjpiTpjpjTApi=pjTλipi=λipjTpipjTpi=piTpjp_i^TAp_j=p_i^T\lambda_jp_j=\lambda_jp_i^Tp_j\\p_j^TAp_i=p_j^T\lambda_ip_i=\lambda_ip_j^Tp_i\\p_j^Tp_i=p_i^Tp_j

由此可得:

λjpiTpj=λipiTpj(λiλj)piTApj=0piTApj=0\lambda_jp_i^Tp_j=\lambda_ip_i^Tp_j\\(\lambda_i-\lambda_j)p_i^TAp_j=0\\p_i^TAp_j=0

证毕

奇异值分解

Singular Value DecompositionSingular\ Value\ Decomposition

特征值分解对矩阵有着较高的要求,它需要被分解的矩阵AA实对称矩阵,但是实际上我们所遇到的问题一般不是实对称矩阵。下面我们将讨论更具有一般性的矩阵,即一个m×nm×n的矩阵AA,能否被分解成类似的形式。

定义

对于m×nm\times n实数矩阵AA,分解为如下形式:

A=UΣVTA=U\Sigma V^T

其中,UU​和VV​均为单位正交矩阵,即UUT=I,VVT=IUU^T=I,VV^T=I​,并且我们称UU​为左奇异矩阵,称VV右奇异矩阵,而Σ\Sigma为主对角线上有值,其他元素为0的,主对角线上的值称为奇异值

显然有:URm×m,ΣRm×n,VRn×nU\in\mathbb{R}^{m\times m},\Sigma\in\mathbb{R}^{m\times n},V\in\mathbb{R}^{n\times n}

Σ=[σ100000σ200000000000]m×n\Sigma = \left[ \begin{matrix} \sigma_1 & 0 & 0 & 0 & 0\\ 0 & \sigma_2 & 0 & 0 & 0\\ 0 & 0 & \ddots & 0 & 0\\ 0 & 0 & 0 & \ddots & 0\\ \end{matrix} \right]_{m\times n}

求解

参考

  1. 对称矩阵 特征向量正交|知乎
  2. 特征值分解 主成分分析
  3. 奇异值分解(SVD)|知乎
  4. 奇异值与特征值辨析|知乎
  5. 奇异值分解(SVD)小结|静哥哥,知乎