当前位置:   article > 正文

SVD分解、特征值分解_svd in r

svd in r

1. SVD分解定义(奇异值分解

对于秩为r的矩阵A ∈ R m × n \in R^{m\times n} Rm×n存在正交矩阵 U m × m , V n × n U_{m\times m},V_{n\times n} Um×m,Vn×n和对角矩阵 D r × r = d i a g ( σ 1 , σ 2 , . . . , σ r ) D_{r\times r}=diag(\sigma_1,\sigma_2,...,\sigma_r) Dr×r=diag(σ1,σ2,...,σr)使得
A = U ( D 0 0 0 ) V T , σ 1 ≥ σ 2 ≥ σ 3 . . . ≥ σ r > 0 A=U

(D000)
V^T,\sigma_1\geq\sigma_2\geq\sigma_3...\geq \sigma_r>0 A=U(D000)VT,σ1σ2σ3...σr>0
σ i \sigma_i σi是矩阵A的奇异值。

2. 求解U Σ \Sigma Σ V矩阵

  • U矩阵
    U矩阵是由 A A T AA^T AAT矩阵的m个特征值对应的特征向量组成的,将 A A T AA^T AAT的所有特征向量张成一个 m × m m\times m m×m的矩阵U,一般我么将U中的每个特征向量叫做A的左奇异向量。
  • V矩阵
    V矩阵是由 A T A A^TA ATA的n个特征值和对应的n个特征向量组成的,将 A T A A^TA ATA的所有特征向量张成一个 n × n n\times n n×n的矩阵V,一般我们将V中的每个特征向量叫做右奇异向量。
  • Σ \Sigma Σ矩阵
    矩阵的特征值和奇异值满足如下关系:
    σ i = λ i \sigma_i = \sqrt{\lambda_i} σi=λi
    根据上述公式可以求出 Σ \Sigma Σ矩阵

3. 特征分解

给定一个 n × n n\times n n×n维矩阵A,确定标量 λ \lambda λ的值,使得线性代数方程
A u = λ u , u ≠ 0 Au=\lambda u,u\neq 0 Au=λu,u=0
具有 n × 1 n\times 1 n×1非零解 u u u。这样的标量 λ \lambda λ称为矩阵A的特征值,向量u称为与 λ \lambda λ对应的特征向量。(如何求解查书)
求出特征值和特征想向量可以将矩阵进行分解,我们求出矩阵A的n个特征值 λ 1 , λ 2 , . . . , λ n \lambda_1,\lambda_2,...,\lambda_n λ1,λ2,...,λn以及n个特征值对应的特征想向量 w 1 , w 2 , . . . , w n w_1,w_2,...,w_n w1,w2,...,wn,矩阵A可以用如下特征分解表示:
A = W Σ W − 1 A=W \Sigma W^{-1} A=WΣW1
W是n个特征向量张成的 n × n n\times n n×n维矩阵
Σ \Sigma Σ是n个特征值为主对角线的 n × n n\times n n×n维矩阵
一般我们会把W的这n个特征向量标准化,即 ∣ ∣ w i ∣ ∣ 2 = 1 ||w_i||_2=1 wi2=1,此时W的n个特征向量为标准正交基,满足 W T W = I W^TW=I WTW=I,即
A = W Σ W T A=W\Sigma W^T A=WΣWT

特征值分解只能用于方阵,而SVD分解可以用于任意形状的矩阵,所以在三维点云拟合平面中就需要SVD分解。详见https://blog.csdn.net/weixin_42595206/article/details/116094723

https://zhuanlan.zhihu.com/p/29846048

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/271687?site
推荐阅读
相关标签
  

闽ICP备14008679号