返回博客列表

Untitled

本讲我们介绍将一个矩阵写为[Math Processing Error]A=U\varSigma V^T,分解的因子分别为正交矩阵、对角矩阵、正交矩阵,与前面几讲的分解不同的是,这两个正交矩阵通常是不同的,而且这个式子可以对任意矩阵使用,不仅限于方阵、可对角化的方阵等。

  • 在正定一讲中(第二十八讲)我们知道一个正定矩阵可以分解为[Math Processing Error]A=Q\Lambda Q^T的形式,由于[Math Processing Error]A对称性其特征向量是正交的,且其[Math Processing Error]\Lambda矩阵中的元素皆为正,这就是正定矩阵的奇异值分解。在这种特殊的分解中,我们只需要一个正交矩阵[Math Processing Error]Q就可以使等式成立。

  • 在对角化一讲中(第二十二讲),我们知道可对角化的矩阵能够分解为[Math Processing Error]A=S\Lambda S^T的形式,其中[Math Processing Error]S的列向量由[Math Processing Error]A的特征向量组成,但[Math Processing Error]S并不是正交矩阵,所以这不是我们希望得到的奇异值分解。

我们现在要做的是,在A列空间中找到一组特殊的正交基v_1,v_2,\cdots,v_r,这组基在A的作用下可以转换为A行空间中的一组正交基u_1,u_2,\cdots,u_r

用矩阵语言描述为A\Bigg[v_1\ v_2\ \cdots\ v_r\Bigg]=\Bigg[\sigma_1u_1\ \sigma_2u_2\ \cdots\ \sigma_ru_r\Bigg]=\Bigg[u_1\ u_2\ \cdots\ u_r\Bigg]\begin{bmatrix}\sigma_1&&&\&\sigma_2&&\&&\ddots&\&&&\sigma_n\end{bmatrix},即Av_1=\sigma_1u_1,\ Av_2=\sigma_2u_2,\cdots,Av_r=\sigma_ru_r,这些\sigma是缩放因子,表示在转换过程中有拉伸或压缩。而A的左零空间和零空间将体现在\sigma的零值中。

另外,如果算上左零、零空间,我们同样可以对左零、零空间取标准正交基,然后写为A\Bigg[v_1\ v_2\ \cdots\ v_r\ v_{r+1}\ \cdots\ v_m\Bigg]=\Bigg[u_1\ u_2\ \cdots\ u_r\ u_{r+1}\ \cdots \ u_n\Bigg]\left[\begin{array}{c c c|c}\sigma_1&&&\&\ddots&&\&&\sigma_r&\\hline&&&\begin{bmatrix}0\end{bmatrix}\end{array}\right],此时Um\times m正交矩阵,\varSigmam\times n对角矩阵,V^Tn\times n正交矩阵。

最终可以写为AV=U\varSigma,可以看出这十分类似对角化的公式,矩阵A被转化为对角矩阵\varSigma,我们也注意到U,\ V是两组不同的正交基。(在正定的情况下,U,\ V都变成了Q。)。进一步可以写作A=U\varSigma V^{-1},因为V是标准正交矩阵所以可以写为A=U\varSigma V^T

计算一个例子,A=\begin{bmatrix}4&4\-3&3\end{bmatrix},我们需要找到:

  • 行空间\mathbb{R}^2的标准正交基v_1,v_2
  • 列空间[Math Processing Error]\mathbb{R}^2的标准正交基[Math Processing Error]u_1,u_2
  • \sigma_1>0, \sigma_2>0

A=U\varSigma V^T中有两个标准正交矩阵需要求解,我们希望一次只解一个,如何先将U消去来求V

这个技巧会经常出现在长方形矩阵中:求A^TA,这是一个对称正定矩阵(至少是半正定矩阵),于是有A^TA=V\varSigma^TU^TU\varSigma V^T,由于U是标准正交矩阵,所以U^TU=I,而\varSigma^T\varSigma是对角线元素为\sigma^2的对角矩阵。

现在有A^TA=V\begin{bmatrix}\sigma_1&&&\&\sigma_2&&\&&\ddots&\&&&\sigma_n\end{bmatrix}V^T,这个式子中V即是A^TA的特征向量矩阵而\varSigma^2是其特征值矩阵。

同理,我们只想求U时,用AA^T消掉V即可。

我们来计算A^TA=\begin{bmatrix}4&-3\4&3\end{bmatrix}\begin{bmatrix}4&4\-3&3\end{bmatrix}=\begin{bmatrix}25&7\7&25\end{bmatrix},对于简单的矩阵可以直接观察得到特征向量A^TA\begin{bmatrix}1\1\end{bmatrix}=32\begin{bmatrix}1\1\end{bmatrix},\ A^TA\begin{bmatrix}1\-1\end{bmatrix}=18\begin{bmatrix}1\-1\end{bmatrix},化为单位向量有\sigma_1=32,\ v_1=\begin{bmatrix}\frac{1}{\sqrt{2}}\\frac{1}{\sqrt{2}}\end{bmatrix},\ \sigma_2=18,\ v_2=\begin{bmatrix}\frac{1}{\sqrt{2}}\-\frac{1}{\sqrt{2}}\end{bmatrix}

到目前为止,我们得到\begin{bmatrix}4&4\-3&3\end{bmatrix}=\begin{bmatrix}u_?&u_?\u_?&u_?\end{bmatrix}\begin{bmatrix}\sqrt{32}&0\0&\sqrt{18}\end{bmatrix}\begin{bmatrix}\frac{1}{\sqrt{2}}&\frac{1}{\sqrt{2}}\\frac{1}{\sqrt{2}}&-\frac{1}{\sqrt{2}}\end{bmatrix},接下来继续求解U

AA^T=U\varSigma V^TV\varSigma^TU^T=U\varSigma^2U^T,求出AA^T的特征向量即可得到U\begin{bmatrix}4&4\-3&3\end{bmatrix}\begin{bmatrix}4&-3\4&3\end{bmatrix}=\begin{bmatrix}32&0\0&18\end{bmatrix},观察得AA^T\begin{bmatrix}1\0\end{bmatrix}=32\begin{bmatrix}1\0\end{bmatrix},\ AA^T\begin{bmatrix}0\1\end{bmatrix}=18\begin{bmatrix}0\1\end{bmatrix}。但是我们不能直接使用这一组特征向量,因为式子AV=U\varSigma明确告诉我们,一旦V确定下来,U也必须取能够满足该式的向量,所以此处Av_2=\begin{bmatrix}0\-\sqrt{18}\end{bmatrix}=u_2\sigma_2=\begin{bmatrix}0\-1\end{bmatrix}\sqrt{18},则u_1=\begin{bmatrix}1\0\end{bmatrix},\ u_2=\begin{bmatrix}0\-1\end{bmatrix}。(这个问题在本讲的官方笔记中有详细说明。)

\lambda\neq 0vAB在特征值取\lambda时的的特征向量,则有Bv\neq 0,并有\lambda Bv=B(\lambda v)=B(ABv)=(BA)Bv,所以BvBA在特征值取同一个\lambda时的特征向量。

再取AB的特征值\lambda=0,则0=\det{AB}=\det{A}\det{B}=\det{BA},所以\lambda=0也是BA的特征值,得证。

最终,我们得到\begin{bmatrix}4&4\-3&3\end{bmatrix}=\begin{bmatrix}1&0\0&-1\end{bmatrix}\begin{bmatrix}\sqrt{32}&0\0&\sqrt{18}\end{bmatrix}\begin{bmatrix}\frac{1}{\sqrt{2}}&\frac{1}{\sqrt{2}}\\frac{1}{\sqrt{2}}&-\frac{1}{\sqrt{2}}\end{bmatrix}

再做一个例子,A=\begin{bmatrix}4&3\8&6\end{bmatrix},这是个秩一矩阵,有零空间。A的行空间为\begin{bmatrix}4\3\end{bmatrix}的倍数,A的列空间为\begin{bmatrix}4\8\end{bmatrix}的倍数。

  • 标准化向量得v_1=\begin{bmatrix}0.8\0.6\end{bmatrix},\ u_1=\frac{1}{\sqrt{5}}\begin{bmatrix}1\2\end{bmatrix}
  • A^TA=\begin{bmatrix}4&8\3&6\end{bmatrix}\begin{bmatrix}4&3\8&6\end{bmatrix}=\begin{bmatrix}80&60\60&45\end{bmatrix},由于A是秩一矩阵,则A^TA也不满秩,所以必有特征值0,则另特征值一个由迹可知为125
  • 继续求零空间的特征向量,有v_2=\begin{bmatrix}0.6\-0,8\end{bmatrix},\ u_1=\frac{1}{\sqrt{5}}\begin{bmatrix}2\-1\end{bmatrix}

最终得到\begin{bmatrix}4&3\8&6\end{bmatrix}=\begin{bmatrix}1&\underline {2}\2&\underline{-1}\end{bmatrix}\begin{bmatrix}\sqrt{125}&0\0&\underline{0}\end{bmatrix}\begin{bmatrix}0.8&0.6\\underline{0.6}&\underline{-0.8}\end{bmatrix},其中下划线部分都是与零空间相关的部分。

  • v_1,\ \cdots,\ v_r是行空间的标准正交基;
  • u_1,\ \cdots,\ u_r是列空间的标准正交基;
  • v_{r+1},\ \cdots,\ v_n是零空间的标准正交基;
  • u_{r+1},\ \cdots,\ u_m是左零空间的标准正交基。

通过将矩阵写为Av_i=\sigma_iu_i形式,将矩阵对角化,向量u,\ v之间没有耦合,A乘以每个v都能得到一个相应的u

评论