PCA最大方差

原文链接:https://www.jianshu.com/p/fb5f08bc9e9c

简述:

PCA是一种线性、非监督、全局的降维算法。在高维的特征数据空间中有可能会包含冗余与噪声,因此需要寻找数据内部的主成分来表征原始数据,从而达到降维与降低训练复杂的目的。

求解步骤:

1.对样本数据进行中心化处理;(使数据分布更具方向性,使得特征向量更具原数据表达性。)

2.求样本协方差矩阵;

3.对协方差矩阵进行特征值分解,将特征值从大到小排序;

4.取特征值前m大对应的特征向量W1,W2,…,Wm,将原n维数据通过这些特征向量映射到m维空间中;

通过以上步骤即可将方差较小的特征(噪声)抛弃。降维后的信息占比为:m维向量特征值的平方和比上n维向量特征值的平方和。 ∑ i = 1 m λ i ² ∑ i = 1 n λ i ² \sqrt{\frac{\sum_{i=1}^m\lambda i ²}{\sum_{i=1}^n\lambda i ²} } i=1nλi²i=1mλi²

原理:

在信号处理领域,我们认为信号具有较大的方差,噪声有较小的方差。信号与噪声之比称之为信噪比,信噪比越大意味着数据质量越好。因此,PCA的目标即最大化数据投影方差,使得降维导致的信息损失最小化。由公式可得协方差对称矩阵,此时,协方差矩阵的第一特征值大小可表示数据降维后在第一主成分上的方差大小。所以,PCA降维的目的可以说是找到这个协方差矩阵的最大特征值和其所对应的特征向量。

结语:

由于PCA是线性降维,具有一定的局限性,所以对于效果不好的复杂数据需要一些非线性降维手段。

你可能感兴趣的:(Machine,Learning)