主成分分析(Principal Component Analysis,PCA)
- 主成分分析是一种重要的数据信息提取方法。具体而言,对于上的数据,我们希望能从中提取出维的信息(其中)
- 在机器学习中,主成分分析可以让成千上万维的数据降到一个合适的范围(甚至可以可视化),以研究其数据结构。
- 下面进行符号约定:
- 记数据为 即
- 定义协方差矩阵 则为对称矩阵,即。
- 实际上,我们需要在空间中找到个标准正交向量,使得数据点在这些向量上的投影能够充分反应其原有的信息。
- 如果直接取原始坐标系中的个坐标轴向量,那么往往会导致很多数据点投影后接近于,因而损失大量信息。所以我们需要寻找更合适的标准正交向量组。
寻找标准正交向量组
- 首先我们来寻找第一个向量。根据主成分分析的原则,我们希望每个向量在上的投影都尽量接近本身,同时。于是,我们考虑以下误差函数 即所有数据点到的垂直距离取平均。将其展开得 接着我们对这个函数进行最小优化: 其中表示协方差矩阵的最大特征值。由此可知当函数取最小值时,为最大特征值对应的特征向量。
- 类似地,我们也可以得到第二个,第三个,以及所有的特征向量。根据谱定理(见Chapter 3),协方差矩阵的各特征值对应的特征向量相互正交,因而只需要根据特征值从大到小排序,再进行归一化即可。
注:在实际使用中,协方差矩阵一般使用,以保证无偏性。
奇异值分解(Singular Value Decomposition,SVD)
- 上面的主成分分析实际上是奇异值分解的特殊情形。一般的奇异值分解形式如下:设的秩为,则的SVD分解为
其中:
- 均为标准正交矩阵,称的列向量和的行向量为奇异向量;
- 为对角矩阵,对角线元素(称为奇异值)非负,且从左上到右下依次递减。
- 上面的最后一个等式是SVD的二元形式(被称为二元组),即矩阵可表示为若干个二元组的和。
- 接下来我们讨论如何构造矩阵的SVD分解。考虑对称矩阵,其秩为,因而有个正特征值(因为是半正定矩阵)。
- 记的所有特征值为,对应的特征向量为;
- 然后定义(),最后使用施密特正交化构造。
- 那么上述和即对应SVD分解中的和。
- 下面进行简单解释:显然为标准正交基,组成的矩阵为标准正交矩阵;而奇异值矩阵的构造也满足题设。所以下面主要证明为标准正交基,且:
- 因为是在的基础上正交扩展的,如只需要证明两两标准正交即可。推导如下:
- 然后证明:由构造可知 因此有 因此,即得。
- 奇异值分解不唯一:施密特正交化可以选取任意的正交基;可能有相同特征值,对应不同特征向量;特征向量也可以任意取负。
SVD的几何意义
可参考B站上的无痛现代。
- 下面我们会说明:若A的SVD分解为,那么和就表示对向量的旋转或反射,而则表示对向量的缩放。
- 对任意向量,表示对进行线性变换。设原空间里的基向量为,则:
- 为标准正交矩阵,因而将映射到另一组标准正交基;
- 矩阵则将进行缩放,得到(当时部分基向量缩放为);
- 矩阵同样为标准正交矩阵,因而将映射到空间里的标准正交基,最终被映射到。
若,为单位向量,则上述变换可以理解为:先将绕原点旋转到所在的方向上(如果与同向,则不旋转),然后将其缩放倍,最后再绕原点旋转到所在的方向上。(这可以模拟任意线性变换)
低秩近似(Low-Rank Approximation)
- 实际上,SVD可以用于数据压缩,这便是低秩近似。其目标是在控制误差的前提下尽量压缩矩阵数据。
- 对此,我们首先需要对矩阵误差进行衡量。与向量的范数类似,我们也可以定义矩阵的范数。
-
一种最典型的矩阵范数就是Frobenius范数,其定义为(设):
Frobenius范数的性质包括:
- ;(表示对角线元素之和)
- 对于任意标准正交矩阵,;
- 设的秩为,对应奇异值为,则。
由此可知,当的Frobenius范数较小时,可以说明矩阵和的每个对应位置元素都比较接近。
-
另一种矩阵范数是谱范数(Spectral Norm)【也称为矩阵范数】,其定义为:
如果将看作线性变换,那么其谱范数就表示这个变换对单位向量的最大缩放因子。
- 实际上,可以证明谱范数就是矩阵的最大奇异值: 其中倒数第二个等号可参考Rayleigh商的推导。
-
- 在确定了矩阵误差的度量后,我们就可以进行低秩近似了:由上面的SVD分解可知,当的秩为时,。记,则有 那么对任意,记,则称为的低秩近似。相比储存需要空间,存储就只需要(两个标准正交矩阵+所有奇异值)空间。
- 下面我们说明低秩近似在Frobenius范数和谱范数范畴下都是矩阵的一个良好近似。(这一结论也称为埃卡特-杨-米尔斯基定理,Eckart-Young-Mirsky theorem)
- 首先给出谱定理下的一个结论:
即对于任意秩不超过的矩阵,均有。其证明如下:
- 首先计算的值:因为,所以的值即为最大奇异值。
- 然后证明对于任意秩不超过的矩阵均有:定义,则根据Rayleigh商的知识,,故只要找到一个使即可。
- 定义,则 这说明空间一定存在一个单位基向量,将其记为。
- 接下来证明:
- 类似地,Frobenius范数也有如下结论:
其证明如下:
- 因为,这可看作一个SVD分解,因此。
- 而对任意秩不超过的矩阵,记,并考虑的SVD分解,那么根据上面的推导,可用(的秩为)表示,即 又因为的秩不超过,所以由上面谱范数的结论, 对任意成立。因此
- 首先给出谱定理下的一个结论:
即对于任意秩不超过的矩阵,均有。其证明如下:
