加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长资讯 > 评论 > 正文

5种特征选择的方法!

发布时间:2021-04-20 14:19:25 所属栏目:评论 来源:互联网
导读:类似于降维技术,其目的是减少特征的数量,但是从根本上说,它们是不同的。区别在于要素选择会选择要保留或从数据集中删除的要素,而降维会创建数据的投影,从而产生全新的输入要素。 特征选择有很多方法,在本文中我将介绍 Scikit-Learn 中 5 个方法,因为

类似于降维技术,其目的是减少特征的数量,但是从根本上说,它们是不同的。区别在于要素选择会选择要保留或从数据集中删除的要素,而降维会创建数据的投影,从而产生全新的输入要素。

特征选择有很多方法,在本文中我将介绍 Scikit-Learn 中 5 个方法,因为它们是最简单但却非常有用的,让我们开始吧。

1、方差阈值特征选择

具有较高方差的特征表示该特征内的值变化大,较低的方差意味着要素内的值相似,而零方差意味着您具有相同值的要素。

方差选择法,先要计算各个特征的阈值是一种无监督学习的特征选择方法。如果我们希望出于监督学习的目的而选择功能怎么办?那就是我们接下来要讨论的。

2、SelectKBest特征特征

单变量特征选择是一种基于单变量统计检验的方法,例如:chi2,Pearson等等。

SelectKBest 的前提是将未经验证的统计测试与基于 X 和 y 之间的统计结果选择 K 数的特征相结合。

递归特征消除(RFE)

递归特征消除或RFE是一种特征选择方法,利用机器学习模型通过在递归训练后消除最不重要的特征来选择特征。

根据Scikit-Learn,RFE是一种通过递归考虑越来越少的特征集来选择特征的方法。

  • 首先对估计器进行初始特征集训练,然后通过coef_attribute或feature_importances_attribute获得每个特征的重要性。
  • 然后从当前特征中删除最不重要的特征。在修剪后的数据集上递归地重复该过程,直到最终达到所需的要选择的特征数量。

在此示例中,我想使用泰坦尼克号数据集进行分类问题,在那里我想预测谁将生存默认情况下,为RFE选择的特征数是全部特征的中位数,步长是1.当然,你可以根据自己的经验进行更改。

4、SelectFromModel 特征选择

Scikit-Learn 的 SelectFromModel 用于选择特征的机器学习模型估计,它基于重要性属性阈值。默认情况下,阈值是平均值。

让我们使用一个数据集示例来更好地理解这一概念。我将使用之前的数据样,你可以使用任何机器学习模型来选择功能,只要可以调用它来估计特征重要性即可。你可以使用随机森林模或XGBoost进行尝试。

5、顺序特征选择(SFS)

顺序特征选择是一种贪婪算法,用于根据交叉验证得分和估计量来向前或向后查找最佳特征,它是 Scikit-Learn 版本0.24中的新增功能。方法如下:

  • SFS-Forward 通过从零个特征开始进行功能选择,并找到了一个针对单个特征训练机器学习模型时可以最大化交叉验证得分的特征。
  • 一旦选择了第一个功能,便会通过向所选功能添加新功能来重复该过程。当我们发现达到所需数量的功能时,该过程将停止。

让我们举一个例子说明。

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读