正文
算法特点
非监督机器学习算法,主要用于数据降维;降维可以提高算法效率,同时帮助可视化,以便于人类理解更好的理解数据;去噪。
1、 PCA的基本原理
样本在其特征空间的分布表现是其各特征轴上记录信息的综合呈现形式。 PCA 分析基于能够捕获原始样本最大信息量为目标在样本的原始特征空间寻找一个新的坐标系,并通过在新坐标系中挑选能够解释样本绝大部分信息的前 n n n个轴来描述样本,从而完成数据的 降维。
1.1 二维空间的降维
对于包含二维特征的样本集,如果要将这个数据集从二维平面降到一维空间,通过在样本的二维特征空间中寻找一条直线 w w w,将空间上的所有样本点 向直线作投影,使得直线上的 投影点间距离相对较大同时拥有较高的区分度,从而在直线所代表的一维空间上,投影点的分布与原二维空间上样本点的空间分布尽可能相似,这条一维直线上的投影点就是二维空间样本的降维结果。
在寻找空间中最优的样本投影直线过程中,样本间距 由统计学中的描述 数据的离散程度(疏密) 的 方差(Variance) 所度量;方差大样本分布越稀疏,方差小样本分布越紧密。所以最优的投影轴的判断条件即使得样本空间的所有点映射到这条轴后,方差最大。同时,由于这条投影轴上的投影点分布具有最大方差,称为 第一主成分。
V a r ( x ) = 1 m ∑ i = 1 m ( x i − x ‾ ) 2 Var(x) = \frac {1}{m}\sum _{i=1}^{m}(x_i-\overline x)^2 Var(x)=m1i=1∑m(xi−x)2
2、 PCA 降维操作的基本步骤
-
Step.1 将样例 均值归零(demean) , x i − x ‾ x_{i} - \overline x xi−x;该过程不改变样本分布。但样例的方差计算将简化为:
x ‾ = 0 , V a r ( x ) = 1 m ∑ i = 1 m x i 2 \overline x = 0, Var(x) = \frac {1}{m}\sum _{i=1}^{m}x_i^2 x=0,Var(x)=m1i=1∑mxi2 -
Step.2 在 demean 后的样本空间中寻找一个方向为 ( w 1 , w 2 ) (w_1,w_2) (w1,w2)的直线 w ⃗ \vec w w(除了方向,投影直线的大小以及偏移都不影响投影点间距,所以直接从中心化后的样本空间坐标原点确定直线的方向即可),使得所有样本映射到 w ⃗ \vec w w所在直线以后,投影点间方差最大:
V a r ( X p r o j e c t ) = 1 m ∑ i = 1 m ( x p r o j e c t ( i ) − x ‾ p r o j e c t ) 2 Var(X_{project}) = \frac {1}{m}\sum _{i=1}^{m} {(x^{(i)}_{project} - \overline x_{project})^2} Var(Xproject)=m1i=1∑m(xproject(i)−xproject)2
∵ \because ∵ 这里由于样例中心为原点,所以 x ‾ p r o j e c t = x ‾ = 0 \overline x_{project} = \overline x = 0 xproject=x=0
∴ V a r ( X p r o j e c t ) = 1 m ∑ i = 1 m ∥ x p r o j e c t ( i ) ∥ 2 \therefore Var(X_{project}) = \frac {1}{m}\sum _{i=1}^{m} {\|x^{(i)}_{project} \|^2} ∴Var(Xproject)=m1∑i=1m∥xproject(i)∥2
∵ \because ∵ 根据 向量投影 ,结合方向向量 w ⃗ \vec w w 的模为 1可有 ∥ x p r o j e c t ( i ) ∥ = x ( i ) ⋅ w ⃗ \|x^{(i)}_{project}\| = x^{(i)} \cdot \vec w ∥xproject(i)∥=x(i)⋅w
∴ V a r ( X p r o j e c t ) = 1 m ∑ i = 1 m ( x ( i ) ⋅ w ⃗ ) 2 \therefore Var(X_{project}) = \frac {1}{m}\sum _{i=1}^{m} {(x^{(i)}\cdot \vec w )^2} ∴Var(Xproject)=m1∑i=1m(x