跳到正文
格致开物MATHWIKI

主成分分析

主成分分析(principal component analysis,PCA)是一种线性降维方法。它把多个数值变量组合成一组彼此不相关的新变量,按样本方差从大到小排列,并以其中少数几个表示原始数据。在给定维数下,这种表示保留的总方差最大;等价地,它在欧氏距离的平方和意义下,使正交投影的重建误差最小。

PCA 常用于数据可视化、压缩和探索性分析。这里的“主要”由方差定义,并不表示某个方向更具有因果意义,或对某项预测任务更重要。下文讨论已中心化数值数据上的标准 PCA,采用样本协方差的 n−1 分母约定。

数据、方向与得分

设有 n≥2 个样本,每个样本含 d 个特征,记为列向量 xi∈ℝd。样本均值与中心化数据矩阵定义为 x¯=1n∑i=1nxi,X=((x1−x¯)𝖳⋮(xn−x¯)𝖳)∈ℝn×d. 因此,X 的每一列之和为零。中心化使分析对象成为样本围绕均值的变化;直接对未经中心化的数据作低秩逼近,可能主要捕捉均值相对于原点的位置。[1]

样本协方差矩阵为 S=1n−1X𝖳X. 其中 Sab 是第 a、b 个特征的样本协方差。对任意单位向量 u∈ℝd,投影得分为 z=Xu∈ℝn。其第 i 个分量为 zi=u𝖳(xi−x¯),样本方差为 1n−1∑i=1nzi2=u𝖳Su. 本文将 u 称为主成分方向,将这个线性组合称为主成分,各样本在该方向上的坐标称为得分;方向向量的系数称为载荷。部分文献也把方向向量直接称作主成分,比较不同表述时应先辨明对象。

最大方差与特征值

第一主成分方向满足 u1∈∗⁡argmaxu𝖳u=1u𝖳Su. 单位长度约束不可省略,否则仅将 u 放大就能任意增大得分方差。此后各方向在与此前方向正交的条件下依次最大化方差。[2]

由于 S 实对称且半正定,实对称矩阵谱定理保证它有一组标准正交的特征向量,记为 Suj=λjuj,λ1≥λ2≥⋯≥λd≥0. 证明。 任意单位向量可写成 u=∑j=1dajuj,其中 ∑jaj2=1,于是 u𝖳Su=∑j=1dλjaj2≤λ1. 取 u=u1 时达到上界。若再要求 u⊥u1,…,uj−1,相应系数为零,同样得到最大值 λj。

令 Uk=(u1,…,uk),则前 k 个主成分的得分矩阵为 Z=XUk,并且 1n−1Z𝖳Z=Uk𝖳SUk=diag⁡(λ1,…,λk). 所以主成分得分两两不相关,但一般不能由此断言它们相互独立。单个方向的正负号不唯一:同时把方向和得分取反,不改变投影点。若特征值重复,对应特征子空间内的标准正交基也不唯一。

低秩重建及最优性

对样本 xi,保留前 k 个得分得到重建 x^i=x¯+UkUk𝖳(xi−x¯). 其中 UkUk𝖳 是正交投影矩阵;投影子空间在中心化坐标中经过原点,在原始坐标中经过样本均值。

最优重建定理。 对 1≤k≤d,在所有列正交规范的 W∈ℝd×k 中,W=Uk 最小化重建残差平方和,且 minW𝖳W=Ik‖X−XWW𝖳‖F2=(n−1)∑j=k+1dλj. 这里 ‖A‖F2 为矩阵所有元素的平方和,即 Frobenius 范数的平方。结论还可写为 minrank⁡(B)≤k‖X−B‖F2=‖X−XUkUk𝖳‖F2. “秩不超过 k”允许数据本身的秩小于 k;此时可以完全重建。这个结论是低秩逼近定理在 PCA 中的体现。[3]

证明。 正交投影的勾股分解给出 ‖X−XWW𝖳‖F2=‖X‖F2−(n−1)tr⁡(W𝖳SW). 令 bj=‖W𝖳uj‖22,则 0≤bj≤1、∑jbj=k。故 tr⁡(W𝖳SW)=∑jλjbj≤∑j=1kλj, 因为把总量为 k、每项不超过 1 的权重放在最大的 k 个特征值上取得最大值。取 W=Uk 等号成立。又对任意秩不超过 k 的 B,可把其行空间扩充至一个 k 维子空间;将 X 的各行正交投影到该空间,不会比 B 对应行离原数据更远,故第二个最小化问题具有相同最优值。

若 k<d 且 λk>λk+1,最优的 k 维子空间唯一;若截断位置出现相等特征值,最优子空间可能不唯一,但最小误差仍相同。

奇异值分解与维数选择

设 r=rank⁡(X),中心化给出 r≤min⁡(n−1,d)。对非零数据作紧致奇异值分解 X=LrΣrVr𝖳,Σr=diag⁡(σ1,…,σr), 其中奇异值依次递减,Lr 与 Vr 的列正交规范。由 X𝖳X=VrΣr2Vr𝖳 可知 uj=vj,λj=σj2n−1,Xvj=σjℓj(1≤j≤r). 因此可直接对中心化数据作 SVD,而不必先构造协方差矩阵。对 k≤r,截断分解 LkΣkVk𝖳 就是上述重建矩阵。

若总方差非零,第 j 个主成分及前 k 个主成分的解释方差比例分别为 ρj=λj∑a=1dλa,Rk=∑j=1kλj∑a=1dλa. 分母等于 tr⁡(S),即全部原始特征的样本方差之和。可以结合特征值的碎石图、累计比例和可接受的重建误差选择 k;没有适用于所有任务的固定比例。[1] 若所有样本相同,则总方差为零,以上比例未定义。

数值例:从二维降到一维

四个人工样本及其在第一主成分直线上的正交投影。橙色线段表示重建残差;两对不同的原始点投影后分别重合。

取四个人工构造的二维样本 X=(−2−1−1−21221). 两列均值均为零,所以这已经是中心化矩阵。逐项计算得到 X𝖳X=(108810),S=(10/38/38/310/3). 其特征方程为 (10/3−λ)2−(8/3)2=0,从而 λ1=6,u1=12(11);λ2=23,u2=12(1−1). 两个主成分得分为 Xu1=12(−3−333),Xu2=12(−11−11). 例如,第一个样本在第一方向上的得分为 −3/2,其一维重建为 (−3/2,−3/2)。全部样本的重建与残差为 X^=Xu1u1𝖳=(−3/2−3/2−3/2−3/23/23/23/23/2),X−X^=12(−111−1−111−1). 每行残差的平方长度为 1/2,因此残差平方和为 2,恰等于 (n−1)λ2=3×2/3。若按样本数计算平均平方欧氏重建误差,则为 2/4=1/2;它与采用分母 n−1 的样本方差不是同一个量。

本例两个主成分分别解释 90% 与 10% 的总方差;累计解释比例在保留一个、两个主成分时分别为 90% 与 100%。

原数据平方和为 ‖X‖F2=20,重建平方和为 18。第一主成分解释比例为 R1=66+2/3=910=90%. 它保留的是沿 x1=x2 方向的变化,丢弃的是两坐标差异所对应的方向。因此,解释方差达到 90% 仍不能区分投影后重合的样本。作为核对,本例的两个奇异值为 32 和 2,平方后除以 3 正好得到两个特征值。

尺度、解释与适用边界

中心化与标准化不同。 中心化只减去均值;标准化还按各特征的样本标准差 sj 缩放: X~ij=xij−x¯jsj. 对 X~ 作 PCA 等价于使用原数据的相关矩阵。若某列标准差为零,应先单独处理该常量列。改变单个变量的计量单位会改变协方差 PCA;是否标准化取决于原始变异幅度是否具有研究意义,标准化并非无条件更优。[4]

离群值会影响方向。 平方误差使远离主体的观测可能产生很大影响,应核查测量与录入过程,并评估结论对异常观测的敏感性;异常值也可能是真实的研究对象,不宜机械删除。[4]

最优性有明确范围。 定理只保证线性子空间上的平方重建误差最小,不保证非线性结构得以保留,也不保证分类、回归或因果解释最优。上述例子若把第二主成分得分的正负定义为类别,一维 PCA 恰好丢弃区分类别的信息。这说明解释方差比例不是预测准确率。

在预测流程中,均值、缩放参数和主成分方向均应仅由训练数据估计,再固定应用于验证或测试数据;交叉验证时应在各训练折内重新估计。新样本使用与训练阶段相同的特征顺序、计量单位和预处理规则。对主成分赋予实际含义,应结合载荷、原变量含义及独立证据,而不能把统计上的共同变化直接解释为因果关系。

分析结果的报告

一次可复核的 PCA 分析应说明样本如何选取、每个特征的定义与单位、缺失值如何处理,以及是否进行了标准化。直接把缺失值当作零会改变样本均值与协方差;零只有在确实代表该变量的观测值时才具有这种含义。采用填补方法时,应同时说明填补规则,以免把预处理引入的结构误认为数据本身的结构。

结果通常同时报告载荷、得分和解释方差比例。载荷描述一个主成分由哪些原变量组成,得分描述哪些样本在该方向上较高或较低,解释比例则说明该方向占总变异的多少。只展示二维得分散点图而不报告被省略的方差,可能使读者高估图形对原始数据的代表性。比较两个分析的方向时,应先对齐符号;在接近重根的情况下,更适合比较所张成的子空间,而不是逐一比较方向系数。

例如,对多个传感器的同步读数进行分析时,第一主成分若具有同号且大小接近的载荷,可以描述为这些传感器的共同变化方向;这只是对载荷模式的概括,不能单凭它确认共同变化由温度、设备状态或其他因素造成。若某一小方差方向对应少数传感器之间的差异,该方向也可能对故障诊断有用。保留多少维应服从具体分析目的,而不是只看第一主成分是否“足够大”。

相关条目

参考资料

  1. ↑ 1.0 1.1 Cornell University,CS 4/5780,Spring 2022:Principal Component Analysis,小节“Centering the data”“Explaining variability in the data”“Best approximations”。该讲义将样本排成列,并采用分母 n;本文将样本排成行,方差采用分母 n−1,方向和解释方差比例不受该分母约定影响。
  2. ↑ Cosma Rohilla Shalizi:Principal Components Analysis,Carnegie Mellon University,2019-09-11,“The magic direction is an eigenvector”“Multiple principle components”“Some properties of PC scores”等节。该讲义方差采用分母 n。
  3. ↑ David Bindel:CS 6241: Numerics for Data Science,Cornell University,2025-02-13,“The singular value decomposition”节,关于 Frobenius 范数、Eckart–Young 定理及中心化数据的讨论。
  4. ↑ 4.0 4.1 Ian T. Jolliffe、Jorge Cadima(2016):Principal component analysis: a review and recent developments,Philosophical Transactions of the Royal Society A,374:20150202,§2(c)(i)“Covariance and correlation matrix principal component analysis”、§3(a) 关于离群观测的讨论。DOI:10.1098/rsta.2015.0202。