特征选择的目标,方式
我们做完特征转换后,实际上可能会存在很多特征属性,但是太多的特征属性会导致模型构建的效率降低,模型的效果可能变的不好,那么就需要我们从这些特征属性中选择影响最大的特征属性作为最后模型构建的特征属性列表。
通常从两方面来选择特征:
特征是否发散:如果一个特征不发散,比如方差为0,那么这样的特征对于样本的区分没什么作用
特征与目标的相关性:如果与目标相关性比较高,我们就优先选择。
特征选择的方法主要有三种:
Filter:过滤法,按照发散性或者相关性对各个特征进行评分,设定阀值或者待选择阀值的个数,常用的方法:方差选择法、相关系数法、卡方检验、互信息法
Wrapper:包装法,根据目标函数(通常是预测效果评分),每次选择若干特征或排除若干特征,常用方法:递归特征消除法
Embedded:嵌入法,先选择某些机器学习的算法和模型进行训练,得到各个特征的权重系数,根据系数从大到小选择特征,常用方法:基于惩罚项的特征选择法
这里简单介绍下常用方法的使用。
方差选择法:先计算各个特征属性的方差值,然后根据阈值,获取方差大于阈值的特征。
相关系数法:先计算各个特征属性对于目标值的相关系数以及阈值K,然后获取K个相关系数最大的特征属性
卡方检验:检查定性自变量对定性因变量的相关性
递归特征消除法:使用一个基模型来进行多轮训练,每轮训练后,消除若干权值系数的特征,再基于新的特征值进行下一轮训练
基于惩罚项的特征选择法通常就是我们说的L1/L2正则了。也可以基于树模型GBDT对特征属性进行权重的给定
当特征选择完成后,就可以进行训练模型了。