理论学习
特征选择的功能
- 减少特征数量、降维,使模型泛化能力更强,减少过拟合
- 增强对特征和特征值之间的理解
单变量特征选择
- 单变量特征选择能够对每一个特征进行测试,衡量该特征和响应变量之间的关系,根据得分扔掉不好的特征。
- Pearson相关系数:该方法衡量的是变量之间的线性相关性,结果的取值区间为[-1,1]。
- 最大信息系数(MIC):用于检测变量之间的非线性相关性,取值区间在[0,1]。
- 距离相关系数:克服Pearson相关系数的弱点——如果距离相关系数为0,就可以说这两个变量是独立的。
- 基于学习模型的特征排序:直接使用机器学习算法,针对每个单独的特征和响应变量建立预测模型。
正则化
- 正则化就是把额外的约束或者惩罚项加到已有模型(损失函数)上,以防止过拟合并提高泛化能力。
- L1正则化:将系数向量的l1范数作为惩罚项加到损失函数上。很好的特征选择方法。
- L2正则化:将系数向量的l2范数作为惩罚项加到损失函数上。对于特征理解更有用。
随机森林
- 随机森林准确率高、鲁棒性好、易于使用。
- 平均不纯度减少:训练决策树时可以计算出每个特征减少了多少树的不纯度,因此可以算出决策树森林每个特征平均减少了多少不纯度,并把它平均减少的不纯度作为特征选择的值。
- 平均精确率减少:直接度量每个特征对模型精确率的影响。主要思路是打乱每个特征的特征值顺序,并且度量顺序变动对模型的精确率的影响。
顶层特征选择算法
- 稳定性选择:在不同的数据子集和特征子集上运行特征选择算法,不断地重复,最终汇总特征选择结果。
- 递归特征消除:通过贪心算法对特征进行排序。