依然贴出概述图,接下来对多个特征部分的预处理详细解说。
一,特征降维——PCA(主成分分析)
我们在数据处理的过程中,丰富的特征提供信息的同时也提供了干扰,但是盲目减少指标又会丢失信息。因此,需要选择最有效的特征并且尽可能的减少信息丢失,这就是PCA的目标。
1,先讲数据降维。为什么数据能够降维?看下面图1,图1显示的是在空间中的数据,这些数据可以分到x,y,z三个特征轴上,但是我们可以看到这些点都在一个平面上,如果反过来想,坐标系完全可以建在x,y轴上,也就是说,与z轴的特征并没有很大相关性。
图1
又因为,三点总能成面,一般来讲n维空间中的n个点一定能在一个n-1维子空间中分析!
综上所述,我们认为,数据降维并没有丢弃数据,只是数据在那个维度并没有分量。现在,假设这些数据在z轴有一个很小的抖动,那么我们仍然用上述的二维表示这些数据,理由是我们可以认为这两个轴的信息是数据的主成分,而这些信息对于我们的分析已经足够了,z轴上的抖动很有可能是噪。也就是说本来这组数据是有相关性的,噪声的引入,导致了数据不完全相关,但是,这些数据在z轴上的分布与原点构成的夹角非常小,也就是说在z轴上有很大的相关性,综合这些考虑,就可以认为数据在x,y 轴上的投影构成了数据的主成分!(这段话来自原文链接:https://blog.csdn.net/zhongkelee/article/details/44064401)
2,PCA的思想是将n维特征映射到k维上(k<n),这k维是全新的正交特征。这k维特征称为主成分,是重新构造出来的k维特征,而不是简单地从n维特征中去除其余n-k维特征。
我们如何得到这些包含最大差异性的主成分方向呢?
答案:事实上,通过计算数据矩阵的协方差矩阵,然后得到协方差矩阵的特征值特征向量,选择特征值最大(即方差最大)的k个特征所对应的特征向量组成的矩阵。这样就可以将数据矩阵转换到新的空间当中,实现数据特征的降维。
由于得到协方差矩阵的特征值特征向量有两种方法:特征值分解协方差矩阵、奇异值分解协方差矩阵,所以PCA算法有两种实现方法:基于特征值分解协方差矩阵实现PCA算法、基于SVD分解协方差矩阵实现PCA算法。
二,数据降维——LDA
降维原理同PCA所述类似。具体原理直接贴大佬的链接:
知乎-LDA线性判别分析小结和实例
三、特征选择——卡方检验