奇异值

奇异值分解的类比

奇异值分解,就是把矩阵分成多个“分力”。

让我们通过翻绳来形象地理解。

我们可认为,这个造型是由两个方向的力合成的。

容易想象,如果其中一个力比较小的话,那么绳子的形状基本由另一个力来决定。

奇异值分解的数学表达

对于一个矩阵A,我们总能找到一个正交矩阵U和一个正交矩阵V
,以及一个对角矩阵Σ,使得X=UΣVTX = UΣV^T。(其中U被称为X的左奇异向量,V被称为X的右奇异向量,而对角矩阵Σ的主对角线上的值称为矩阵X的奇异值,并按照从大到小降序排列。)

奇异值分解的几何解释

考虑矩阵A=
我们将通过单位圆这个载体来观察矩阵A对应的变换。

把单位圆上的每一点都通过A进行变换,得到一个椭圆。

对A进行奇异值分解:

将A表示成2个分力相加的形式:

第一个分力作用在单位圆上的效果:

同理,第二个分力作用在单位圆上的效果:

因此,当这两个分力一起作用的时候,单位圆就转换成了上边所展示的椭圆。(可以想象,如果两个分力相差很大,单位圆将被映射成一条直线)

细心的小伙伴应该发现,上面的例子好像并没有体现奇异值分解里的正交性。
其实奇异值分解就是将矩阵行空间的一个标准正交基转换为该矩阵列空间的标准正交基,它包括了旋转、缩放等变换。

奇异值分解的物理解释

观察下面两幅图片,

第一幅图为随机生成的一幅256x256的图像,值都是在0-255之间。第二幅图为SVD分解之后的奇异值矩阵,颜色越亮,代表了值越大,也就是能量越大。因此SVD的过程就是通过变换,将原空间的能量重新聚集分配,在新的空间集中的过程,这就是SVD的物理意义。通过这个物理意义,我们可以做许多的应用,例如数据的压缩,图像的滤波,以及推荐算法等。

奇异值的一种计算方法

对于奇异值的定义式X=UΣVTX = UΣV^T,我们分别左乘和右乘X矩阵的转置,发现得到了两个对角矩阵,其特征值即为原式对角矩阵中对角线上各值的平方,两个对角矩阵的特征向量即为所求的U和V,具体可以自己推导,比较简单。

我是从MIT的OpenCourse的一节课学的,在网易公开课可以找到相应视频。

奇异值与特征值的区别与联系

特征值分解和奇异值分解都是给定一个线性变换,找一组特殊的基,特征值分解所对应的基即为特征向量,它只适用于对称正定矩阵,而奇异值对矩阵没有限制。(目前觉得自己的理解还停留在表面,没有更深层次的挖掘)

奇异值分解和特征值分解的应用先不说了,因为我还在本科,只是先对这一部分的知识有一个大体了解,以后具体用到哪部分再看。

本文结束,感谢阅读~~

Time waits for no one!