问题引入
特征值分解和奇异值分解在机器学习领域都是属于满地可见的方法。两者有着很紧密的关系,突然看的话两者好像是差不多的,都可以用于信息的提取和转换,但是两者有啥区别呢?
问题解答
特征向量
如果说一个向量v是方阵A的特征向量,将一定可以表示成下面的形式:
这时候λ就被称为特征向量v对应的特征值,一个矩阵的一组特征向量是一组正交向量。特征值分解是将一个矩阵分解成下面的形式:
其中Q是这个矩阵A的特征向量组成的矩阵,Σ是一个对角阵,每一个对角线上的元素就是一个特征值,里面的特征值是由大到小排列的。这些特征值所对应的特征向量就是描述这个矩阵变化方向(从主要的变化到次要的变化排列),可以将每一个特征向量理解为一个线性的子空间,我们可以利用这些线性的子空间干很多的事情。不过,特征值分解也有很多的局限,比如说变换的矩阵必须是方阵。
奇异值
特征值分解是一个提取矩阵特征很不错的方法,但是它只是对方阵而言的,在现实的世界中,我们看到的大部分矩阵都不是方阵,比如说有N个学生,每个学生有M科成绩,这样形成的一个N * M的矩阵就不可能是方阵,我们怎样才能描述这样普通的矩阵