PCA要对数据进行预处理的原因

1.将数据进行中心化的原因:

减去均值等同于坐标移动,这样就能把原始数据点的中心移到与原点重合,此举有利于很多表达,比如数据的协方差矩阵可以直接写成X*X',若没有减去均值,则每两个特征之间都要进行(X-X均值)*(Y-Y均值)运算,再组合成协方差矩阵。

2.将数据除以标准差的原因:

除以标准差是为了统一并消除量纲。一个样本中有多个特征,有些可能表示长度,有些可能表示重量。如果各个特征之间的数值或数量级存在较大差异,就会使得较小的数被淹没,导致主成分偏差较大。所以要将每个特征对应的样本除以标准差,这样才能让他们仅以“数的概念一起比较运算”。

简言之---除以标准差的作用:去掉量纲,将不同量纲的数据拉伸至同一水平。公平比较。 


注意两点:

1.标准化与归一化:

上述1,2两步统称为数据的标准化过程----将每个特征(即矩阵的每一列)减去均值并除以标准差。

而数据的归一化仅仅是指除以标准差或类似意思。

2.图像不需要除以标准差,因为他们都是像素值,同量纲同尺度(1~255),所以只减去均值即可。


PCA的深层次解释:

协方差矩阵和主成分分析

m.blog.csdn.net/article/details

浅谈协方差矩阵

pinkyjie.com/2010/08/31/covariance/



与PCA相关的一些概念的集合

blog.csdn.net/viewcode/article/details/8789524

你可能感兴趣的:(PCA要对数据进行预处理的原因)