非奇异矩阵也就是可逆矩阵
假设A是一个
n
×
n
n\times n
n×n维的矩阵,
λ
\lambda
λ为矩阵A的一个特征值,
x
x
x为其对应的特征向量。假设
A
A
A矩阵的n个特征值为
λ
1
\lambda_1
λ1,
λ
2
\lambda_2
λ2,
λ
3
\lambda_3
λ3…
λ
n
\lambda_n
λn,这n个特征值对应的特征向量为
w
1
w_1
w1,
w
2
w_2
w2,
w
3
w_3
w3…
w
n
w_n
wn则矩阵A可以进行分解
对特征向量进行标准化,则n个特征向量变成了标准正交基,满足
W
T
W
=
I
W^TW=I
WTW=I
则特征分解可以转化为下面
上述的矩阵的分解针对的都是
n
n
n阶方阵,而针对
m
×
n
m\times n
m×n大小的矩阵,我们该如何分解?
SVD
假设A为
m
×
n
m\times n
m×n的矩阵,则矩阵A可以奇异值分解上面的形式,其中,
U
U
U为
m
×
m
m\times m
m×m维的矩阵,
V
V
V为
n
×
n
n\times n
n×n维的矩阵,且满足
U
T
U
=
I
U^TU=I
UTU=I,
V
T
V
=
I
V^TV=I
VTV=I。
那么
U
U
U和
V
V
V到底如何计算而来?
A
T
×
A
A^T\times A
AT×A和
A
×
A
T
A\times A^T
A×AT分别为
n
×
n
n\times n
n×n,
m
×
m
m\times m
m×m维,现在就剩下奇异值矩阵
Σ
\Sigma
Σ没有求解了,我们按照下图求解,
上面还有一个问题没有讲,就是我们说
A
T
×
A
A^T\times A
AT×A的特征向量组成的就是我们SVD中的V矩阵,而的
A
×
A
T
A\times A^T
A×AT特征向量组成的就是我们SVD中的U矩阵,这有什么根据吗?这个其实很容易证明,我们以V矩阵的证明为例。
从这里又可以推导出奇异值的另外一种计算方法:
对
A
T
×
A
A^T\times A
AT×A或者
A
×
A
T
A\times A^T
A×AT的特征值进行求根号。
SVD的性质
对于奇异值,它跟我们特征分解中的特征值类似,在奇异值矩阵中也是按照从大到小排列,而且奇异值的减少特别的快,在很多情况下,前10%甚至1%的奇异值的和就占了全部的奇异值之和的99%以上的比例。也就是说,我们也可以用最大的k个的奇异值和对应的左右奇异向量来近似描述矩阵。
其中k要比n小很多,也就是一个大的矩阵A可以用三个小的矩阵来表示。如下图所示,现在我们的矩阵A只需要灰色的部分的三个小矩阵就可以近似描述了
参考:https://www.cnblogs.com/pinard/p/6251584.html