Filter
过滤式筛选,指通过一些指标值来筛选特征,例如缺失率、方差、相关系数等。通常用于建模之前,提前过滤一波可能会干扰模型的特征。
一般计算的指标有:
1.缺失率:一般认为缺失率高的特征对于模型贡献度不大,如果只有少数非缺失值参与训练可能会导致模型在该特征上拟合出现偏差。
2.方差:一般期望特征的方差越大越好。若一个特征取值过于单一(极端情况下特征只有一个取值),那么它对于模型训练没有任何价值,方差大的特征说明其取值范围较广,丰富度高,模型可学习性好。
3.相关系数类:
a.皮尔逊相关系数:计算单个特征相对于y的线性相关系数;优点计算简单方便,缺点只能度量线性关系。
b.F-filter:对特征和y做线性回归,检验线性回归的效果是否显著,经过F-filter计算出的F值越大,说明特征对于y的效果越显著,特征越重要。
c.LR-filter:对特征和y做逻辑回归,检验逻辑回归的效果是否显著,计算出的值越大,特征越重要
d.KL散度类:适用于分类标签
4.PSI:特征在天维度上的PSI越小越好
Embedding
利用模型筛选特征。一般集成树模型在训练结束后都会有模型重要性的结果,通过模型自学习得到的特征排序来作为特征筛选的参考。这种方法操作简便,目前很多情况都会用到这种方法。
集成树模型例如XGB在训练结束后会输出特征的三种重要性排序:weight、gain、cover
weight:特征在分裂过程中出现的次数
total_gain:特征在分裂时产生的总贡献度
gain:total_gain / weight 特征平均带来的贡献度
total_cover:特征在分裂过程中影响到的总样本数
cover:特征平均影响到的样本数