特征选择
特征选择的必要性
- 效率:大量冗余且不相关的特征会让模型的训练和预测变得异常缓慢;
- 效果:噪声特征降低模型的泛化能力;
- 特征间的强相关性会带来负面效果;
- 有利于数据的理解;
- 维灾难;
特征选择方法
- sklearn.feature_selection包含部分特征选择的使用接口。
过滤式(filter)
- 模型训练之前进行的预处理,与学习过程无关。
1.方差过滤法
- 移除方差不满足阈值的特征。
- 使用:sklearn.feature_selection.VarianceThreshold(threshold=0.9*(1-0.9)) #对于二值特征,移除某一取值比例大于0.9特征
- 常用方式:方差为0(取值唯一)、某取值(包括空值)占比超过90%或更高,则认为是可以剔除的特征。
2.单变量特征选择
- 单个特征和目标Y的关系
2.1 Pearson相关系数
- 自变量与自变量两两之间,自变量与因变量之间。
- 使用:dataframe.corr(); scipy.stats.pearsonr
- 选取方式例举:x1与x2相关系数0.92,x1、x2与y相关系数分别为0.20、0.23ÿ