矩阵的奇异值分解
Besides having a rather simple geometric explanation, the singular value decomposition offers extremely effective techniques for putting linear algebraic ideas into practice. SVD分解与四个子空间 任意的线性变换都可以进行奇异值分解(SVD: Singular Value Decomposition)。之前的一篇博客讲的特征值和特征向量都是针对方阵而言的.这里任意形状的矩阵都能够进行SVD变换。给定一个$m \times n$的矩阵$A$,$rank(A)=r$,这里需要特别说明,我们可以在这个矩阵的行空间和列空间内找到$r$个线性无关的基,即使行、列空间的维度有不同。此处是核心:我们能够参考方阵,对它的特征值特征向量的推导过程得到启发,结合这里矩阵不一定是方阵(行、列维度不同的特点),能否在行子空间内找到一组相互正交的单位基向量,这组基向量通过$A$的变换在列空间内“生产”出一组也是相互正交的向量,并且这组向量正好是列空间的一组基。 $$ \begin{equation} Av_1=\sigma_1u_1, \cdots, Av_r=\sigma_1u_r \end{equation} \label{eq1}\tag{1} $$ ($\ref{eq1}$) 中,$v_i(i=0,1,\cdots,r)$是行空间内的单位向量,且$v_i^T \dot v_j=0 (i \neq j)$,$u_i(i=0,1,\cdots,r)$是列空间内的单位向量(Orthonormal basis),且$u_i^T \dot u_j=0 (i \neq j)$,$\sigma_i(i=0,1,\cdots,r)$是列空间内单位向量的伸缩系数。 写成矩阵乘法的形式如下: $$ \begin{equation} A\left[ \boldsymbol{v_1}\ \boldsymbol{v_1}\cdots \boldsymbol{v_r} \right] =\left[ \boldsymbol{u_1}\ \boldsymbol{u_2}\cdots \boldsymbol{u_r} \right] \begin{bmatrix}\sigma_1&0&\cdots&0\\ 0&\sigma_2&\cdots&0\\ \vdots&\vdots&\vdots&\vdots\\ 0&\cdots&\cdots&\sigma_r\end{bmatrix} \end{equation} \label{eq2}\tag{2} $$ ...