[机器学习]矩阵的奇异值与特征值有什么相似之处与区别之处?

来源:互联网 发布:spss mac 编辑:程序博客网 时间:2024/05/16 13:03

矩阵可以认为是一种线性变换,如果将这种线性变换放在几何意义上,则他的作用效果和基的选择有关。

以Ax = b为例,x是m维向量,b是n维向量,m,n可以相等也可以不相等,表示矩阵可以将一个向量线性变换到另一个向量,这样一个线性变换的作用可以包含旋转、缩放和投影三种类型的效应。

比如说:

A=[3001][xy]=[3xy]

其几何意义为在水平x方向上拉伸3倍,y方向保持不变的线性变换,这就是缩放;而如果前面乘的矩阵不是对称矩阵,那么则对应几何意义上的缩放加旋转。
奇异值分解正是对线性变换这三种效应的一个析构。A=μΣσ,μ和σ是两组正交单位向量,Σ是对角阵,对角值s表示奇异值,它表示我们找到了μ和σ这样两组基,A矩阵的作用是将一个向量从σ这组正交基向量的空间旋转到μ这组正交基向量空间,并对每个方向进行了一定的缩放(乘个缩放因子),缩放因子就是各个奇异值,然后再在μ旋转回去。如果σ维度比μ大,则表示还进行了投影。可以说奇异值分解将一个矩阵原本混合在一起的三种作用效果,分解出来了。

而特征值分解其实是对旋转缩放两种效应的归并。(有投影效应的矩阵不是方阵,没有特征值)特征值,特征向量由Ax=λx得到,它表示如果一个向量v处于A的特征向量方向,那么Av对v的线性变换作用只是一个缩放。也就是说,求特征向量和特征值的过程,我们找到了这样一组基,在这组基下,矩阵的作用效果仅仅是存粹的缩放。对于实对称矩阵,特征向量正交,我们可以将特征向量式子写成A=xλxT,这样就和奇异值分解类似了,就是A矩阵将一个向量从x这组基的空间旋转到x这组基的空间,并在每个方向进行了缩放,由于前后都是x,就是没有旋转或者理解为旋转了0度。
总而言之,特征值分解和奇异值分解都是给一个矩阵(线性变换)找一组特殊的基,特征值分解找到了特征向量这组基,在这组基下该线性变换只有缩放效果。而奇异值分解则是找到另一组基,这组基下线性变换的旋转、缩放、投影三种功能独立地展示出来了。
又因为有投影效应的矩阵不是方阵,没有特征值,所以奇异值分解可以适用于所有矩阵,但特征值分解就仅仅适用于方阵了。

0 0
原创粉丝点击