PCA旨在找到一个低维空间,使得在该空间中投影后的数据点具有最大的方差。具体而言,PCA寻找一组新的正交基(主成分),在这些基下,数据的第一主成分方向具有最大的方差,第二主成分方向在垂直于第一主成分方向上具有第二大方差,依此类推。
以三维点云为例,使用PCA的思想,进行主成分分析
1. 从二维点开始讲起
在这个图中,原始数据是二维的,所以PCA的目标是找到两个新的坐标轴(称为主成分),使得这些新坐标轴上的数据方差最大化。
图中的第一条绿色直线(y’轴)表示第一个主成分,它与原始x轴有一个角度。这个角度表示第一个主成分的方向,它捕捉了数据的最大方差。第二条绿色直线(x’轴)垂直于第一条直线,表示第二个主成分,它捕捉了剩余的方差。
蓝色的点在原始坐标系(x, y)中分布不均匀,但在新的坐标系(x’, y’)中看起来更加均匀。这说明PCA成功地将数据转换到了一个新的空间,使得数据在新的坐标轴上的分布更加均匀,更容易进行后续的分析或可视化。
2.三维坐标下的PCA
这张图片展示了主成分分析(PCA)在三维空间中的应用。PCA是一种常见的降维技术,它通过寻找数据的主方向来构建新的坐标系统,从而简化数据的分析和可视化。
在这张图中,原始的数据点(红色)分布在三维空间中,为了更好地理解和处理这些数据,我们可以使用PCA来构建一个新的坐标系统。
三条蓝色的线分别代表三个新的坐标轴,它们被称为主成分(PC)。这三个主成分是依次找到的,每个主成分都是前一个主成分的正交方向上方差最大的方向。
具体来说:
- PC1(蓝色最长的线)是数据点在三维空间中的最大方差方向,它通常代表了数据的主要趋势或者特征。
- PC2(蓝色中等长度的线)是在PC1的正交方向上数据点的第二大方差方向。
- PC3(蓝色最短的线)是在PC1和PC2的正交方向上数据点的第三大方差方向。
通过将原始数据点投影到这三个主成分上,我们可以得到一个新的坐标系统,其中的数据点在各个维度上的分布更加均匀。这样可以简化数据的分析和可视化,例如在PCA后的坐标系统中,我们可以更容易地识别出数据的模式或者异常值。
3. 三维数据集的主成分分析(PCA)
数据集描述
在一个三维数据集中,我们假设包含了m个数据点,每个数据点 xᵢ
可以表示为一个三维列向量,即
x
1
,
x
2
,
.
.
.
,
x
m
x₁, x₂, ..., x_m
x1,x2,...,xm
PCA的目标
找到最大方差的方向 z z z,满足 z ∈ R 3 z \in \mathbb{R}^3 z∈R3, ∥ z ∥ 2 = 1 \|z\|_2 = 1 ∥z∥2=1
-
数据归一化:
X ~ = [ x ~ 1 , ⋯ , x ~ m ] , 其中 x ~ i = x i − x ˉ , i = 1 , ⋯ , m \tilde{X} = [\tilde{x}_1, \cdots, \tilde{x}_m], \quad \text{其中} \quad \tilde{x}_i = x_i - \bar{x}, \quad i = 1, \cdots, m X~=[x~1,⋯,x~m],其中x~i=xi−xˉ,i=1,⋯,m
其中,
x ˉ = 1 m ∑ i = 1 m x i \bar{x} = \frac{1}{m}\sum_{i=1}^{m}x_i xˉ=m1i=1∑mxi -
投影的计算:
α i = x ~ i T z , i = 1 , ⋯ , m \alpha_i = \tilde{x}_i^Tz, i = 1, \cdots, m αi=x~iTz,i=1,⋯,m -
投影的平均方差:
1 m ∑ i = 1 m α i 2 = 1 m ∑ i = 1 m z T x ~ i x ~ i T z = 1 m z T X ~ X ~ T z \frac{1}{m}\sum_{i=1}^{m}\alpha_i^2 = \frac{1}{m}\sum_{i=1}^{m}z^T\tilde{x}_i\tilde{x}_i^Tz = \frac{1}{m}z^T\tilde{X}\tilde{X}^Tz m1i=1∑mαi2=m1i=1∑mzTx~ix~iTz=m1zTX~X~Tz -
最大化方差:
max z z T ( X ~ X ~ T ) z , s.t. : ∥ z ∥ 2 = 1 \max_z z^T(\tilde{X}\tilde{X}^T)z, \text{s.t.}: \|z\|_2 = 1 zmaxzT(X~X~T)z,s.t.:∥z∥2=1
令 H = X ~ X ~ T H=\tilde{X}\tilde{X}^T H=X~X~T, H H H为实对称矩阵,问题就变为一个
Rayleigh
商问题,解这个问题,得到 z z z就是 H H H的最大特征值对应的特征向量。求第二个主成分的思路为将原来所有的的点减去向第一个主成分的投影向量,重复之前的求解过程,结论是 z 2 z_2 z2是 H H H的第二大特征值对应的特征向量。Rayleigh
商问题求解在另一篇文章:PCA-Rayleigh商和特征值
- 从线性空间的角度理解这个问题,我们可以看成这样一个问题,在三维空间中我们正常情况下描述一个物体位置(点)需要用到三个坐标也就是有三个基向量,PCA的思想就是降维,将这个三维空间压缩为二维或者一维空间,并且二尽量能区分空间中的物体(点),降维也就是找到新的基向量来表述这个空间,主成分分析就是找到这个新的基向量。将三维空间压缩为二维或者一维空间,并且二尽量能区分空间中的物体(点),降维也就是找到新的基向量来表述这个空间,主成分分析就是找到这个新的基向量。
- 也可以看作三维空间向一个二维平面投影,要求投影点在这个平面上容易区分,越分散越好。