矩阵的SVD分解(理论到计算结果)
SVD(Singular Value Decomposition),矩阵的奇异值分解。分解方法如下:
若A是m*n的矩阵,则可以分解为,(此式子就是奇异值分解)其中U=m*m,=m*n,V=n*n。
- V是的特征向量进行标准化后的结果,故V是标准正交矩阵。
- U是标准正交矩阵。(是的特征向量进行标准化后的结果???)
- 是奇异值矩阵。(是m*n的非负实数对角矩阵,并且对角线上的元素是A的奇异值。一般我们的习惯是将这些奇异值按照从大到小的顺序排列,即是由A唯一确定了)
什么样的矩阵可以进行SVD分解?
任何矩阵均有SVD分解。
什么是奇异值?
假设A是一个m*n的矩阵,则是一个n*n的方阵,且是个对陈矩阵。
假设:的特征值为,......,,特征向量为,......,。
- 则的特征值全部非负。即。
- ,称为A的奇异值。即A的奇异值为的特征值开根号后的结果。
- 是向量A的长度。
矩阵的SVD分解计算过程:
如下有一个A矩阵:
(以一个简单的矩阵来计算推导)
特征值分解和奇异值分解不同之处?
首先,特征值只能作用在一个mm的正方矩阵上,而奇异值分解则可以作用在一个mn的长方矩阵上。其次,奇异值分解同时包含了旋转、缩放和投影三种作用,式中,U和V都起到了对A旋转的作用,而Σ起到了对A缩放的作用。特征值分解只有缩放的效果。
参考:https://blog.csdn.net/qq_40438165/article/details/102879986
https://blog.csdn.net/u014157109/article/details/93141506