第七章 主成分分析
先来扯点哲学的东西。我们现在处在所谓的“大数据”时代,经常会碰到大量的数据。虽然根据中心极限定理,我们总希望样本容量越大越好,但这会给计算带来很大的麻烦(例如你在Excel 如果存了几百万条数据,你可能打都打不开)。此外,更富有挑战性的问题是,样本容量并不大,但数据的维数异常的大(例如地科研究无机物,往往只有几百个观测数据,但数据的维度却高达几千万!)。并且实际上,正因为我们处于“大数据”时代,人们意识到数据的宝贵,你要获得数据还得花钱去买,或者花费巨大的成本通过实验分析得到。高维数据+少量样本容量,你连多元线性回归的参数都估计不出来。
所以数据的降维处理就非常的重要!
但什么时候能进行降维呢?考虑将一个 p 维的数据降维成 r 维,那么这个 p 维数据的协方差阵一定不是正定的,它的秩应该为 r。
其中 Y 为 p 维数据,Z 为 r 维数据,A 称为载荷矩阵。如果 Y 恰好能由 Z 完全表示,那么皆大欢喜。但往往没有那么完美,可能会出现 Y 的协方差矩阵的秩是大于 r 的,但是其前 r 个特征根远远大于其余的,那么我们依旧能够近似地将其秩看做 r。
从模型的角度就变为
如果我们能够观察到
显然 A 和 A' 是不同的,我们可以用不同的模型表示同样的数据。
解决模型不可识别的问题,可以对 A 或 Z 施加约束,比如教材中设 Z 的协方差阵为单位阵,也可以假设
在 A 为正交阵的假设下,模型变为
所以投影矩阵 A 就可以取为
玄学部分结束,PCA 的基本思想已经完全包括在内了。
7.1 总体的主成分
考虑什么时候能用主成分分析,什么时候不能用。
- 维数灾难问题:p 比 n 远远大
- 多重共线性:观测到的数据反映的信息重叠,影响模型精度
案例 主成分分析应用于不同品牌的啤酒风味研究
要研究六种风味成分:乙醛、乙酸乙酯、异丁醇、乙酸异戊酯、异戊醇和己酸乙酯六种;
运用主成分分析,提取两个主成分。其中第一个为三个酯类,代表“酒香”,第二个为三个醇和醛类,代表“酒劲”。
- 百威啤酒是酒味适中和酯香相对较浓的“浓香型”啤酒,
- 喜力啤酒是酒味和酯香均较浓的“浓醇型”啤酒,
- 青岛啤酒是酒味较重,而酯香较弱的“醇型”啤酒
前面几章的知识点中实际上已经用到了主成分分析的思想:
- 多元正态检验:主成分检验(投影之后,看图像直观判断)
- 判别分析:Fisher判别
- 聚类分析:主成分聚类(降维后,可以直观看一下分为几类)
- 回归分析:主成分回归法(解决共线性问题)
(一)主成分的定义
我们将 X 投影得到 Z
现在希望 Z1 能够尽量多的包含 X 中的信息,那么 Z1 的方差应该比较大(实际上 Z1 是一元变量,当它确实包含了最多的信息,那么它的方差就是 X 协方差阵的最大特征向量)
也可以这样理解:希望误差项 X-Z1 比较小,那么 Z1 的方差就要比较大。
注意:此时需要假定
称在约束下,具有最大方差的 Z1 为第一主成分。如果第一主成分不足以表达所有的信息,考虑 Z2,也是令其在约束下的方差充分大,称为第二主成分,以此类推。
几何解释:
我们将 X 投影到 Z1 上,能够起到降维的效果,同时又使得信息得到最大的保留。这样做可以起到浓缩信息的作用,并且 Z1 和 Z2 不相关,处理起来方便很多。
(二)主成分的求法
之前我们从正交矩阵特征根的角度说明了投影向量就是特征向量,主成分的方差就是特征根,现在我们用拉格朗日乘数法推导一下。
考虑约束情况下方差的极值
求偏导得到
可以直接看出 a1 为单位特征向量,λ 为最大特征根。
定理 设 X 的协方差阵正定,对应的特征根从大到小排列。那么第 i 主成分的投影向量 ai 就是第 i 大的特征根的特征向量。
推论 (Z1,...,Zp)为第 1 到 p 主成分充分必要条件为
- Z = A'X ,其中 A正交
- Z 的协方差阵为对角阵,元素逐渐增大
(三)主成分分析的性质
(1)性质一
Z 的协方差阵恰好为一个对角阵,对角元素为 X 协方差阵的特征根
(2)性质二
注:
- 主成分分析将总体方差分解为 p 个不相关随机变量的方差和
(3)性质三
Zk 与 Xi 的相关系数为
这被称为因子载荷量。
证明:将 Z 用 X 表示
注意到 A 是正交阵,所以有
要求
如果左边改为 X 右边改为 Z,那么转置一下可以得到 Xi 与 Zk 有关的系数为
这个证明我觉得更为直观,教材中的直接套条件进去反而有点一叶障目的感觉。
教材中的证明:
(4)性质四
相关系数对 Z 求平方和为 1,即 p 个主成分对 Xi 的影响之和为 1。
p 个主成分可以完全确定 Xi,可以认为是完全相关的。
证明:相关系数的表达式在性质三中给出了,计算一下分母发现
(5)性质五
相关系数对 X 求加权平方和为特征根
给定 Zk,它对所有 X 的解释能力为
证明:利用 A 为正交矩阵,每一列的平方和为1,可得
定义
特征根代表了解释能力,比上总惯量得到贡献率
定义前 m 个主成分对 Xi 的贡献率为相关系数对 Z 求平方和
性质三告诉我们,如果选取 m = p,那么贡献率为 1.
(四)标准化变量的主成分及其性质
一般我们要先对数据进行标准化后才进行主成分分析,不然就可能被方差大的变量占了主导地位。
所谓标准化就是先减去均值然后除以标准差
标准化后求得的主成分都加上一个 * 以示区别。
(1)性质一
Z* 的协方差阵为原 X 的相关阵 R 对应的特征值构成的对角阵。
(2)性质二
所有特征根加起来为 p,因为标准化后的协方差阵,对角线上元素都是 1,而相似变换不改变矩阵的迹
(3)性质三
第 k 主成分与第 i 个标准化变量的相关系数为
对比之前的性质三,将分母的方差改为 1
(4)性质四
(5)性质五
性质四和五都完全类似
7.2 样本的主成分
第一节已经把主成分分析的思路和求解方法都介绍完了,现在只是作变形。
(一)样本主成分
假定样本已经标准化了,那么协方差阵 S 等于相关阵 R。
基于这个矩阵,就可以重复之前讲的一系列操作
(二)主成分的得分
将第 t 个样品代入第 i 个主成分 Zi 中,得到的值为
主成分得分阵
其中每一行为一个样品在 p 个主成分上的得分
(三)样本主成分的性质
(1)性质一
第二行说的是,主成分之间两两正交。得分阵中不同的两列点乘为 0。
(2)性质二
贡献率和累计贡献率与之前定义一样,用样本相关阵的特征根。
(3)性质三
样本主成分使得残差平方和最小。
主成分分析能够做降维,但是解释能力不强,变量都是投影得到的,很难找到意义。