ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

线性代数 (三): SVD数学证明与理解

2019-04-05 10:56:16  阅读:461  来源: 互联网

标签:... bold Sigma SVD U1 线性代数 数学 diag sigma


SVD 数学证明与理解

命题

只讨论实矩阵.

任意矩阵 Am,nA_{m,n}Am,n​ 可以分解为:

Am,n=UΣVTA_{m,n} = U\Sigma V^TAm,n​=UΣVT

其中 Um,mU_{m,m}Um,m​ 和 Vn,nV_{n, n}Vn,n​ 为由 Rm\R^mRm 和 Rn\R^nRn 下的标准正交基组成, Σ\SigmaΣ 为对角矩阵

证明

ATAA^TAATA 为半正定矩阵, 特征值都为非负数, 记其特征值为 σ(ATA)={σ12...σn2}\sigma (A^TA) = \{\sigma_1^2...\sigma_n^2\}σ(ATA)={σ12​...σn2​}, 并按照从大到小顺序排列

ATAA^T AATA 的秩为 rrr, 则 σ1...σr0=σr+1=...=σn\sigma_1 \ge ... \ge \sigma_r \ge 0 = \sigma_{r+1} = ... = \sigma_nσ1​≥...≥σr​≥0=σr+1​=...=σn​

Σ=diag(σ1...σn),V=[v1...vn]\Sigma = diag(\sigma_1...\sigma_n), V=[v_1 ... v_n]Σ=diag(σ1​...σn​),V=[v1​...vn​] 为其特征值平方根矩阵和对应的标准正交特征向量组

其中

Σ1=diag(σ1...σr),V1=[v1...vr]\Sigma_1 = diag(\sigma_1 ... \sigma_r) , V_1 = [v_1 ... v_r]Σ1​=diag(σ1​...σr​),V1​=[v1​...vr​]

Σ2=diag(σr+1...σn)=0,V2=[vr+1...vn]\Sigma_2 = diag(\sigma_{r+1} ... \sigma_n) = \bold 0, V_2 = [v_{r+1} ... v_n]Σ2​=diag(σr+1​...σn​)=0,V2​=[vr+1​...vn​]

于是有

ATAV1=V1Σ12A^TAV_1 = V_1\Sigma_1^2ATAV1​=V1​Σ12​

变形得

Σ11V1TATAV1Σ11=I\Sigma_1^{-1}V_1^TA^TAV_1\Sigma_1^{-1} = IΣ1−1​V1T​ATAV1​Σ1−1​=I (公式 I )

又有

$A^T A V_2 = V_2 \bold0 $

变形得

V2TATAV2=(AV2)T(AV2)=0V_2^TA^TAV_2 = (AV_2)^T (AV_2)= \bold 0V2T​ATAV2​=(AV2​)T(AV2​)=0

因此

AV2=0AV_2 = \bold 0AV2​=0

U1=AV1Σ11U_1 = AV_1\Sigma_1^{-1}U1​=AV1​Σ1−1​

公式 I, 有 U1TU1=IU_1^TU_1 = IU1T​U1​=I

选择任意 U2U_2U2​ 使得 U=[U1,U2]U = [U_1, U_2]U=[U1​,U2​] 为正交矩阵

于是有

UTAV=[U1,U2]TA[V1,V2]=[U1AV1U1AV2U2AV1U2AV2]=[Σ10U2TU1Σ10]=[Σ1000]=ΣU^TAV = [U_1, U_2]^TA[V_1, V_2] = \begin{bmatrix}U_1AV_1&U_1AV_2\\U_2AV_1&U_2AV_2\end{bmatrix} = \begin{bmatrix}\Sigma _1&\bold 0\\U_2^TU_1\Sigma _1 & \bold 0\end{bmatrix} = \begin{bmatrix}\Sigma_1 & \bold 0 \\ \bold 0 & \bold 0\end{bmatrix} =\SigmaUTAV=[U1​,U2​]TA[V1​,V2​]=[U1​AV1​U2​AV1​​U1​AV2​U2​AV2​​]=[Σ1​U2T​U1​Σ1​​00​]=[Σ1​0​00​]=Σ

所以

A=UΣVTA = U\Sigma V^TA=UΣVT

理解

在我看来, SVD 的功劳是, 它实现了对任意矩阵的特征值分解.

特征值分解的好处是, 它将一个矩阵分解为有限个同阶子矩阵的代权和, 从而实现了有损压缩.

对于本身即可对角化的方阵来说, SVD的速度比常规手段更快

因此, 在PCA中, SVD的角色是实现快速的特征值分解, 因为协方差矩阵本身就可对角化.

标签:...,bold,Sigma,SVD,U1,线性代数,数学,diag,sigma
来源: https://blog.csdn.net/vinceee__/article/details/89040453

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有