上次说到矩阵的特征分解,形式优美,含义明确,但是只有方阵才有特征分解,这就限制了特征分解的一般性。
假设我们有一个一般化的矩阵 , 我们依然希望对它进行分解来发现一些隐含的性质,但它又不是方阵,不能特征分解,那怎么办呢?一个可行的方案就是,去构造一个方阵,不就可以进行特征分解了嘛!
- 或者 一定是方阵,而且一定是对称方阵。那么,就可以用来特征分解了
- 我们定义 的特征向量为 的左奇异向量(left singular vector), 所有左奇异向量按列排列构成 的方阵
- 我们定义 的特征向量为 的右奇异向量(right singular vector), 所有右奇异向量按列排列构成 的方阵
- 我们定义 特征值的平方根(同时也是 特征值的平方根), 构成一个 的对角阵 , 数目不够的话塞 。 中对角线上的元素称为 的奇异值。
从而,我们可以把矩阵 分解成三个矩阵的乘积,
SVD 最有用的一个场景是 对非方阵求伪逆矩阵。下面说。