使用RFECV递归特征消除 (Recursive Feature Elimination)进行特征筛选详解及实战

Posted Data+Science+Insight

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用RFECV递归特征消除 (Recursive Feature Elimination)进行特征筛选详解及实战相关的知识,希望对你有一定的参考价值。

使用RFECV、递归特征消除 (Recursive Feature Elimination)进行特征筛选详解及实战

 

包装法,根据目标函数(通常是预测效果评分),每次选择若干特征,或者排除若干特征。

所有就有两个可能的方向、自顶向下、或者自底向上。

自顶向下:一开始包含所有特征,逐步抛弃看效果怎么样;

自底向上:一开始没有任何特征、逐步添加、观察看到那不一步新加入特征没有进展了

 

在sklearn实现了的包裹式(wrapper)特征选择方法,其中有recursive feature elimination ( RFE )以及它的Cross Validation版本RFECV:

 

  • recursive feature elimination ( RFE )通过学习器返回的 coef_ 属性 或者 feature_importances_ 属性来获得每个特征的重要程度。 然后,从当前的特征集合中移除最不重要的特征。在特征集合上不断的重复递归这个步骤,直到最终达到所需要的特征数量为止。
  • RFECV通过交叉验证来找到最优的特征数量。如果减少特征会造成性能损失,那么将不会去除任何特征。这个方法用以选取单模型特征相当不错,但是有两个缺陷,一,计算量大。二,随着学习器(评估器)的改变,最佳特征组合也会改变,有些时候会造成不利影响。

 

递归特征消除 (Recursive Fe

以上是关于使用RFECV递归特征消除 (Recursive Feature Elimination)进行特征筛选详解及实战的主要内容,如果未能解决你的问题,请参考以下文章

在 scikit-learn 中结合递归特征消除和网格搜索

如何获得每个 rfecv 分数的特征索引?

R语言基于递归特征消除RFE(Recursive Feature Elimination)进行特征筛选(feature selection)

scikit learn(sklearn) 中 RFECV 中的特征如何排名?

使用 scikit-learn 进行递归特征消除和网格搜索

使用 scikit-learn 对 SVR 进行递归特征消除和网格搜索