线性代数
对称矩阵和矩阵的SVD分解
完美的对称矩阵
对称矩阵即矩阵的所有元素关于主对角线对称:
用数学表达对称矩阵:
为什么说对称矩阵是完美的?对称矩阵的特征值一定是实数(证略). 对称矩阵的多重特征值,其对应的特征空间的维度一定等于重数.对称矩阵的几何重数等于代数重数. 对称矩阵一定有n个线性无关的特征向量.
因此对称矩阵一定可以被对角化.
正交对角化
对称矩阵的所有不同的特征值对应的特征向量互相垂直.
假设矩阵A的两个特征向量v1,v2对应不同的特征值
对称矩阵一定可以被对角化:
如果A是对称矩阵,
此时的Q是标准正交矩阵,这个式子就是把A进行了正交对角化.
正交对角化就是在对角化的基础上保证P是一个标准正交矩阵,写成字母Q.
如果A可以被正交对角化,则A一定是对称矩阵.
因此:
这个结论也叫做谱定理.
奇异值
前面讨论的特征值、特征向量、相似型、对角化、对称矩阵、正交对角化都是基于方阵的。 但实际处理的数据很多是非方阵,对于每一个非方阵来说,我们都可以找到一个对称矩阵和它对应.
如果A是一个m*n的矩阵,则 是一个n*n 的方阵,且对称.
因此 是对称矩阵.
可以被正交对角化,拥有n个实数特征值,n个互相垂直的标准特征向量.
下面式子:
这个式子说明每一个 都可以表示成一个上面向量模的平方,因此 的特征值>=0 .将 称为奇异值(Singular Value).
奇异值就是 的长度.
是A的列空间的一组正交基, .
证明正交性:
证明 是A的列空间的一组基:
如果A有r个不为零的奇异值, 是A的列空间的一组正交基. A的列空间维度为r,rank(A)=r.
是A的列空间的一组标准正交基.
通常把奇异值从大到小排序,把 的奇异值丢掉.
奇异值的SVD分解
矩阵的SVD分解-Singular Value Decomposition , 即矩阵的奇异值分解. 对任意形状的矩阵都适用.
如果A是m*n的矩阵,U是m*m 的矩阵; 是m*n 的矩阵(奇异值矩阵);V是n*n的矩阵.
V是 的特征向量矩阵进行标准化,U和V都是标准正交矩阵.

证明:
具体流程:
- 求解 的特征值和特征向量
- 非零特征值开根后(奇异值)得到m*n的 ,奇异值从大到小排序
- 特征向量标准化后得到n*n的V
- 在经过Gram-Schmidt扩展得到m*m的U
SVD代码示例:
1 | import numpy as np |

SVD分解的应用
第一个应用是将矩阵A看作是一个变换. 如果A是一个m*n矩阵,A只能对n维向量做变换.
列视角看待A,把矩阵A看成一片数据:

可以用来压缩、去噪、降维.
