# 概述

主成分分析(PCA)是一种统计方法,通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的新变量,这些新变量被称为主成分。其核心思想是,在尽可能多地保留原始信息(即方差)的同时,将高维数据投影到低维空间中

# 定义

给定一个 pp 维随机向量 XXYi=eiTXY_i=e_i^TX 定义了第 ii 个主成分。其中,eie_i 是协方差矩阵 Σ\Sigma 的第 ii 个特征向量,对应特征值 λi\lambda_i,且特征值按从大到小的顺序排列:λ1λ2λp\lambda_1 \geq \lambda_2 \geq \dots \geq \lambda_p

eike_{ik} 代表原始变量 XkX_k 对主成分 YiY_i 的重要性。


# 主成分的性质

  • 方差与协方差

    var(Yi)=eiTΣei=λivar(Y_i)=e_i^T\Sigma e_i=\lambda_i

    cov(Yi,Yj)=eiTΣej=0,ijcov(Y_i,Y_j)=e_i^T\Sigma e_j=0, \quad i \neq j

    主成分之间是线性不相关的,且其方差等于对应的特征值。

  • 方差贡献

    i=1pvar(Yi)=i=1pλi=k=1pvar(Xk)\sum_{i=1}^p var(Y_i) = \sum_{i=1}^p \lambda_i = \sum_{k=1}^p var(X_k)

    所有主成分的方差之和等于所有原始变量的方差之和,即主成分分析保留了总方差。

  • 方差解释比例

    ηi=λiλi\eta_i=\frac{\lambda_i}{\sum\lambda_i}

    $ \eta_i $ 表示第 ii 个主成分解释的方差占总方差的比例。


# 主成分的相关系数

相关系数衡量了原始变量 XkX_k 被主成分 YiY_i 解释的程度。

  • 相关系数公式

    ρYi,Xk=eikλiσkk\rho_{Y_i,X_k}=\frac{e_{ik}\sqrt{\lambda_i}}{\sqrt{\sigma_{kk}}}

  • 性质

    i=1pρYi,Xk2=1\sum_{i=1}^p\rho_{Y_i,X_k}^2=1

    这意味着原始变量 XkX_k 的所有方差可以完全由主成分来解释。

# 标准化主成分分析

在某些情况下,原始变量的量纲或方差差异较大,需要对数据进行标准化

  • 标准化

    Zk=XkμkσkkZ_k=\frac{X_k-\mu_k}{\sqrt{\sigma_{kk}}}

    其中,μk\mu_kσkk\sigma_{kk} 分别是 XkX_k 的均值和方差。
    将所有 ZkZ_k 组合成向量 Z=V1/2(Xμ)Z=V^{-1/2}(X-\mu),其中 V=diag(σ11,σ22...σpp)V=diag(\sigma_{11},\sigma_{22}...\sigma_{pp})

  • 协方差矩阵

    Cov(Z)=ρCov(Z)=\rho

    标准化后的变量向量 ZZ 的协方差矩阵是原始变量的相关系数矩阵 ρ\rho

  • 标准化主成分

    Yi=eiTZY_i=e_i^TZ

    其中,eie_i 是相关系数矩阵 ρ\rho 的特征向量。

  • 性质

    var(Yi)=var(Zk)=p\sum var(Y_i)=\sum var(Z_k)=p

    所有标准化主成分的方差之和等于变量个数 pp

    ρYi,Zk=eikλi\rho_{Y_i,Z_k}=e_{ik}\sqrt{\lambda_i}

    ρYi,Zk\rho_{Y_i,Z_k} 表示标准化变量 ZkZ_k 与标准化主成分 YiY_i 的相关系数。


# 样本主成分分析

在实际应用中,通常使用样本数据来估计主成分。此时,协方差矩阵 Σ\Sigma 和相关系数矩阵 ρ\rho 需要用其样本估计量 SSRR 来代替。

  • 样本主成分
    • 用样本协方差矩阵 SS 替代 Σ\Sigma
    • 用样本相关系数矩阵 RR 替代 ρ\rho

# 如何进行主成分分析

# 确定保留主成分的数量

  • 方差贡献率:通过观察每个主成分的方差解释比例 ηi=λiλi\eta_i=\frac{\lambda_i}{\sum\lambda_i} 来确定。通常选择累计方差贡献率达到一定阈值(如85%或90%)的主成分。
  • Kaiser准则:对于标准化后的主成分(基于相关系数矩阵),可以保留特征值大于1的主成分。因为标准化后,每个原始变量的方差都是1,总方差为 pp。如果某个主成分的方差大于1,说明它解释的方差比单个原始变量更多。

# 数据分析与应用

  • 正态性检验:用前几个主成分可以用于检验数据的近似正态性。
  • 异常值检测:用后几个主成分可以帮助检测数据中的异常值(outliers),因为它们通常代表了数据中较小的变异或噪声。