简单好用的特征选择器

xiaoranone xiaoranone     2023-02-14     194

关键词:

featselector

featselector是一个基于统计分析和模型选择的特征选择器.

Github: https://github.com/xiaorancs/feature-select

背景

特征过多会导致如下后果:

  1. 引起维数灾难,模型推广能力差
  2. 特征过于稀疏,模型效果不好
  3. 很多冗余特征和相关性高的特征,降低模型精度

在机器学习任务中,有两大难题:

  1. 特征提取和选择
  2. 模型选择和优化
    我们都会一个问题,特征好提取,但是选择很困难。我们很容易基于组合和时间提取出来很多特征,但是这样特征中很多是无效的特征,featselector就是来找到这些冗余的无效的特征.

featselector

featselector是一个基于统计分析和模型的特征选择器.

  1. StatFeatSelector(基于统计的特征选择)
    • identify_missing(缺失值选择)

      如果特征的缺失值比例大于阈值(0.9), 就删除该特征

    • identify_single_unique(单一值选择)

      如果特征中有一个值出现比例超过阈值(0.97),删除该特征

    • identify_std(方差选择)

      实数特征根据方差选择, 如果方差过小, 小于阈值(0.05), 就删除该特征

    • identify_corlinear(特征之间相关性选择)

      删除相关性大于阈值(0.96)的特征中的一个,减少冗余性

    • identify_corlinearlabel(特征和目标之间的选相关性选择)

      计算特征和目标之间的相关性,删除相关性小于阈值(0.001)的特征

  2. ModelFeatSelector(基于树模型的特征选择)
    • identify_importance(删除重要度低的特征)

      使用(gbdt,xgb,lgb)模型计算特征的重要性,删除重要性最低的k个特征,或者重要性小于阈值(0.002)的特征

Install

  1. git clone https://github.com/xiaorancs/feature-select.git
  2. python steup.py install

Usage

任何人都可以使用或者修改源码,但请注明出处

Sample

  1. Kaggle房价预测特征选择
    • 特征选择之前, score: 0.13296
    • 特征选择之后, score: 0.13112
  2. Kaggle泰坦尼克号预测(undo)

Reference

  1. https://github.com/duxuhao/Feature-Selection
  2. https://github.com/WillKoehrsen/feature-selector

注:生活如此,问题不大. 喵~

特征选取--卡方选择器

特征选择(FeatureSelection)指的是在特征向量中选择出那些“优秀”的特征,组成新的、更“精简”的特征向量的过程。它在高维数据分析中十分常用,可以剔除掉“冗余”和“无关”的特征,提升学习器的性能。特征选择方法... 查看详情

Sklearn MLP 特征选择

】SklearnMLP特征选择【英文标题】:SklearnMLPFeatureSelection【发布时间】:2017-04-2606:07:46【问题描述】:带有交叉验证的递归特征消除(RFEVC)不适用于多层感知器估计器(以及其他几个分类器)。我希望在许多执行交叉验证的分类器... 查看详情

随机森林回归器的特征选择

】随机森林回归器的特征选择【英文标题】:FeatureSelectionforRandomForestRegressor【发布时间】:2018-06-1717:07:35【问题描述】:我正在尝试从sklearn训练一个随机森林回归器。我要训练的特征有不同的类型,数字连续、数字分类、文本... 查看详情

jquery非常好用的选择器nextunit以及filter

...于匹配元素的选择器表达式。 2、另外还有一个非常好用的filter,可以直接通过函数返回false或者ture来对元素进行过滤,简直好好好用了。for(v 查看详情

rubyruby中的简单特征翻转器(代码片段)

查看详情

rubyruby中的简单特征翻转器(代码片段)

查看详情

分类器的选择

...。  一些特定算法的优点  朴素贝叶斯的优点:超级简单,你只是在做一串计算。如果朴素贝叶斯(NB)条件独立性假设成立,相比于逻辑回归这类的判别模型,朴素贝叶斯分类器将收敛得更快,所以你只需要较小的训练集... 查看详情

为啥以两种不同方式应用随机森林分类器的特征选择结果不同

】为啥以两种不同方式应用随机森林分类器的特征选择结果不同【英文标题】:WhyarefeatureselectionresultsdifferentforRandomforestclassifierwhenappliedintwodifferentways为什么以两种不同方式应用随机森林分类器的特征选择结果不同【发布时间】... 查看详情

推文分类器特征选择 NLTK

】推文分类器特征选择NLTK【英文标题】:TweetClassifierFeature-SelectionNLTK【发布时间】:2012-02-0510:15:20【问题描述】:我目前正在尝试使用NLTK中的朴素贝叶斯分类器对推文进行分类。我正在使用“$”前缀(例如:$AAPL)对与特定股... 查看详情

web前端篇:css使用,样式表特征,选择器(代码片段)

目录web前端篇:CSS使用,样式表特征,选择器1.CSS介绍2.CSS使用3.样式表特征4.CSS选择器5.选择器的优先级6.练习题:web前端篇:CSS使用,样式表特征,选择器1.CSS介绍CSS:CascadingStyleSheet层叠样式表作用:修饰和美化页面元素,实现... 查看详情

特征选择嵌入式特征选择法(代码片段)

原创博文,转载请注明出处!   嵌入式特征选择法使用机器学习模型进行特征选择。特征选择过程与学习器相关,特征选择过程与学习器训练过程融合,在学习器训练过程中自动进行特征选择。 通过L1正则化来选... 查看详情

特征选择与特征子集(二)

参考技术A顺承上节,本节,我们来介绍三类特征选择。作为数据维数约简的重要手段之一,特征选择会从最初的特征集合中按照一定的规则删除冗余以及不重要的特征,从而获得一个最优特征集合的过程。原始样本有个特征,... 查看详情

如何使用 nlp 解析器中的 .conll 文件进行特征选择

】如何使用nlp解析器中的.conll文件进行特征选择【英文标题】:HowcanIusemy.conllfilefromnlpparserforfeatureselection【发布时间】:2015-01-1507:06:55【问题描述】:我有一个从MaltParser输出的.conll格式文件,它使用的是engmalt.linear-1.7.mco训练模... 查看详情

基于layui的cascader级联选择器

...目录引入cascader模块的文件,如图:使用下来整体还是很简单的,主要源码难得能看得懂。jscss 查看详情

如何确定 SelectFromModel() 中选择特征的阈值?

】如何确定SelectFromModel()中选择特征的阈值?【英文标题】:HowtodecidethresholdvalueinSelectFromModel()forselectingfeatures?【发布时间】:2018-08-2623:40:56【问题描述】:我正在使用随机森林分类器进行特征选择。我总共有70个特征,我想从70... 查看详情

如何在朴素贝叶斯分类器中使用优势比特征选择

】如何在朴素贝叶斯分类器中使用优势比特征选择【英文标题】:HowtouseOddsratiofeatureselectionwithNaivebayesClassifier【发布时间】:2011-12-0407:54:51【问题描述】:我想将文档(由单词组成)分为3类(正面、负面、未知/中性)。文档单... 查看详情

特征选择与特征提取

...式识别的大致流程如下:从图中我们可以知道,特征提取与选择是在分类器设计之前完成,它主要的工作是针对数据原始特征的缺陷,降低特征维数,提高分类器的设计与性能。原始特征模式识别中把每个对... 查看详情

机器学习 - 特征选择和训练数据

】机器学习-特征选择和训练数据【英文标题】:MachineLearning-Featureselectionandtrainingdata【发布时间】:2014-12-2704:39:08【问题描述】:我已经构建了一个分类器,并希望将其准确率提高到目前的73%以上我开始使用卡方进行特征选择,... 查看详情