常用于高维数据的维数约简,以解决维数灾难问题和提高计算的效率。也用于寻找数据分布的主方向,以便获得视觉上更易于理解、更具有可解释性的内在低维结构或变量。
在矩阵分解上,它是利用谱分析进行特征向量求解,从对称矩阵向任何矩阵的推广。假定存在具有的矩阵
,其元素均属于实数或复数域,则对矩阵
的奇异值分解可表示为:
式中“”表示对矩阵的转置。矩阵
的列组成了
的正交输入基向量,
的列组成了
的正交输出基向量,而
对角线的元素是奇异值,反映了两组基向量在每一列的放大因子。
在数据分析中,常对维的
个数据点的矩阵进行奇异值分解。在根据对角线元素的大小由大到小降序排序,并相应调整
和
上列向量的次序后,就可以获得与主成分分析一致的结果。对角矩阵中的最大特征值对应的右特征向量即为第一主成分方向。次最大特征向量对应的是第二主成分方向,依此类推。当通过特征值的累积和来估计特征值的贡献时,即可以忽略较小贡献的特征值以及相应的特征向量。保留下来的特征向量所张成的空间即为降维后的低维空间。
奇异值分解最初是用于发现矩阵中的主要特征值和对应的特征向量。由于其分解简单有效且具有闭式解,因此在机器学习、模式识别和数据挖掘中被广泛使用。当仅存在点对间距离时,奇异值分解可以等价地从多维尺度分析(multidimensional scaling, MDS)中获得。当要发现数据的线性结构时,奇异值分解可以视为主成分分析的一种实现方式。在向非线性推广时,一种处理方式是将点积矩阵用核函数替代后,采用MDS来计算;一种处理方式,则是从最大特征值对应的第一主成分出发,将其看成是穿过数据中间的主曲线,再通过残差技术,来迭代发现其他次要的主曲线或主曲面。
尽管深度学习已经将特征的学习隐含至其端至端的深度模型中,但作为一个只需要较少计算资源的方法,奇异值分解仍具有简单有效、易于执行的优势。