分享

矩阵的终极分解-奇异值分解 SVD

 taotao_2016 2019-08-31

说到一个矩阵,怎么才算是真正掌握它?

一个完美分解的方法就是SVD分解。什么是SVD?全称是 singular Value Decomposition。奇异值分解。

把矩阵Am*n分解为一个三个矩阵相乘的形式,即A=U*∑*V',这三个矩阵是最简单的矩阵, Um*m是一个单位正交矩阵,Zm*n是一个对角阵,而 Vn*n是另一个正交单位矩阵;并且∑m*n作为对角矩阵,还是元素由大到小排列的。V'即V^T,表示V的转置。

矩阵的终极分解-奇异值分解 SVD

矩阵的终极分解-奇异值分解 SVD

(单位正交矩阵是非常简单的矩阵,U^T=U^-1,首先它的逆就等于其转置。其次,它的每一个列向量的长度等于1并且每两个行向量相互正交,每一个行向量的长度等于1并且每两个行向量相互正交。)

那么有什么简单的方法可以求出U和V还有∑?证明如下:

矩阵的终极分解-奇异值分解 SVD

因为sigma 是对角阵,设对角上的元素是K1,K2……Kn,则∑^2矩阵对角元素就是

∑元素的平方。

所以 A*A'=U*∑^2*U',因为∑^2也是对角阵,这个形式就是对A*A'的特征向量分解,U就是A*A'特征向量矩阵,而∑^2就是该矩阵的特征值。

如果向量v与变换B满足Bv=λv,则称向量v是变换B的一个特征向量,λ是相应的特征值。这一等式被称作“特征值方程”。描述正方形矩阵的特征值的重要工具是特征多项式,λ是A的特征值等价于线性方程组(B – λI) v = 0 (其中I是单位矩阵)有非零解v (一个特征向量),因此等价于行列式|B – λI|=0

从几何上来看,A乘以一个向量x,可以分为以下几步:

首先,x表示为任意一组正交基的线性组合,v1和v2是正交的,互相垂直。

先乘以V'表示将v1 v2变成标准正交基,再乘以∑表示对两个基不同程度的拉伸。

再乘以U表示拉伸后的旋转。

在此过程中,一组正交基乘以个正交矩阵的作用,仅仅是旋转了,向量幅度没变化,而乘以对角矩阵,则相当于每一个维度的基单独被伸长或者缩短了,但是向量的幅角没变。

简而言之:就是被旋转,拉伸不同倍数,在旋转。

这样可以更形象的理解一个向量,被矩阵A线性变换后的每一步到底做了什么,有什么意义。

矩阵的终极分解-奇异值分解 SVD

矩阵的终极分解-奇异值分解 SVD

矩阵的终极分解-奇异值分解 SVD

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多