您现在的位置是:热点 >>正文
机器学习5种特征选择的方法!
热点014人已围观
简介...
我们知道模型的性能会随着使用特征数量的增加而增加。但是,当超过峰值时,模型性能将会下降。这就是为什么我们只需要选择能够有效预测的特征的原因。
特征选择类似于降维技术,其目的是减少特征的数量,但是从根本上说,它们是不同的。区别在于要素选择会选择要保留或从数据集中删除的要素,而降维会创建数据的投影,从而产生全新的输入要素。
特征选择有很多方法,在本文中我将介绍 Scikit-Learn 中 5 个方法,因为它们是最简单但却非常有用的,让我们开始吧。
1、方差阈值特征选择
具有较高方差的特征表示该特征内的值变化大,较低的方差意味着要素内的值相似,而零方差意味着您具有相同值的要机器素。
方差选择法,先要计算各个特征的方差,然后根据阈值,选择方差大于阈值的特征,使用方法我们举例说明:
import pandas as pd import seaborn as sns mpg = sns.load_dataset('mpg').select_dtypes('number') mpg.head()
对于此示例,我仅出于简化目的使用数字特征。在使用方差阈值特征选择之前,我们需要对所有这些数字特征进行转换,因为方差受数字刻度的影学习响。
from sklearn.preprocessing import StandardScaler scaler = StandardScaler() mpg = pd.DataFrame(scaler.fit_transform(mpg), columns = mpg.columns) mpg.head()
所有特征都在同一比例上,让我们尝试仅使用方差阈值方法选择我们想要的特征。假设我的方差限制为一个方差。
fro5种m sklearn.feature_selection import VarianceThreshold selector = VarianceThreshold(1) selector.fit(mpg) mpg.columns[selector.get_support()]
方差阈值是一种无监督学习的特征选择方法。如果我们希望出于监督学习的目的而选择功能怎么办?那就是我们接下来要讨论的。
2、SelectKBest特征特征
单变量特征选择是一种基于单变量统计检验的方法,例如:特征chi2,Pearson等等。
SelectKBest 的前提是将未经验证的统计测试与基于 X 和 y 之间的统计结果选择 K 数的特征相结合。
mpg = sns.load_dataset('mpg') mpg = mpg.select_dtypes('number').dropna() #Divide the features into Independent and Dependent Variable X = mpg选择.drop('mpg' , axis =1) y = mpg['mpg']
由于单变量特征选择方法旨在进行监督学习,因此我们将特征分为独立变量和因变量。接下来,我们将使用SelectKBest,假设我只想要最重要的两个特征。
from sklearn.feature_selection import SelectKBest, mutual_info_regression #Select top 2 features的方 based on mutual info regression selector = SelectKBest(mutual_info_regression, k =2) selector.fit(X, y) X.columns[selector.get_support()] 3、递归特征消除(RFE)
递归特征消除或RFE是一种特征选择方法,利用机器学习模型通过在递归训练后消除最不重要的特征来选择特征。
根据Scikit-L法!earn,RFE是一种通过递归考虑越来越少的特征集来选择特征的方法。
首先对估计器进行初始特征集训练,然后通过coef_attribute或feature_importances_attribute获得每个特征的重要性。 然后从当前特征中删除最不重要的特征。在修剪后的数据集上递归地重复该过程,直到最终达到所需的要选择的特征数量。
在此示例中,我想使用泰坦尼克号数据集进行分类问题,在那里我想预测谁将生存下来。
#Load the dataset and only selecting the num机器erical features for example purposes titanic = sns.load_dataset('titanic')[['survived', 'pclass', 'age', 'parch', 'sibsp', 'fare']].dropna() X = titanic.drop('survived', axis = 1) y =学习 titanic['survived']
我想看看哪些特征最能帮助我预测谁可以幸免于泰坦尼克号事件。让我们使用LogisticRegression模型获得最佳特征。
from sklearn.feature_selection import RFE from sklearn.linear_model import LogisticRegression # #Selecting the Best important 5种features according to Logistic Regression rfe_selector = RFE(estimator=LogisticRegression(),n_features_to_select = 2, step = 1) rfe_selector.fit(X, y) X.columns[rfe_selector.get_support()]
默认情况下,为RFE选择的特征特征数是全部特征的中位数,步长是1.当然,你可以根据自己的经验进行更改。
4、SelectFromModel 特征选择
Scikit-Learn 的 SelectFromModel 用于选择特征的机器学习模型估计,它基于重要性属性阈值。默认情况下,阈值是平均值。
让我们使用一个数据集示例来更好地理解这一概念。我将使用之前的数据。
from sklearn.feature_selection import SelectFromModel sfm_selector = SelectFromModel(estimator=Logi选择sticRegression()) sfm_selector.fit(X, y) X.columns[sfm_selector.get_support()]
与RFE一样,你可以使用任何机器学习模型来选择功能,只要可以调用它来估计特征重要性即可。你可以使用随机森林模或XGBoost进行尝试。
5、顺序特征选择(SFS)
顺序特征选择是一种贪婪算法,用于根据交叉验证得分和估计量来向前或向后查找最佳特征,它是 Scikit-Learn 版本0.24中的新增功能。方法如下:
SFS-Forward 通过从零个特征开始进行功能选择,并找到了的方一个针对单个特征训练机器学习模型时可以最大化交叉验证得分的特征。 一旦选择了第一个功能,便会通过向所选功能添加新功能来重复该过程。当我们发现达到所需数量的功能时,该过程将停止。
让我们举一个例子说明。
from sklearn.feature_selection import SequentialFeatureSelector sfs_selector = SequentialFeatureSelector(estimator=LogisticRegression(), n_feat法!ures_to_select = 3, cv =10, direction ='backward') sfs_selector.fit(X, y) X.columns[sfs_selector.get_support()] 结论
特征选择是机器学习模型中的一个重要方面,对于模型无用的特征,不仅影响模型的训练速度,同时也会影响模型的效果。
Tags:
相关文章
标签: 中百集团
热点撰文 | 许 芸 编辑 | 杨博丞 题图 | 豆包AI 中百集团官宣关闭仓储大卖场30家,将传统商超面临的发展困境再度摆在了明面上。 在线上交易盛行的现在,传统商超的供应链优势被打破,收入下滑乃至出现...
【热点】
阅读更多最高支持千亿向量规模 腾讯云向量数据库全面升级
热点11月15日消息,在腾讯云向量数据库技术及产业峰会上,腾讯云全面升级向量数据库多项核心性能,最高支持千亿级向量规模和500万QPS峰值能力,同时和信通院一起联合50多家企业共同发布了国内首个向量数据库...
【热点】
阅读更多标签: 博迈医疗 创业板IPO 医疗器械 腾讯创投
热点云梦级12月25日云梦级消息,12月24日,深交所官网显示,广东博迈医疗科技股份有限公司(简称“博迈医疗”)创业板IPO申请获得交易所受理,保荐机构为中金公司。博迈医疗主营业务为高性能血管介入医疗器械...
【热点】
阅读更多
热门文章
最新文章
友情链接
- 标签: 康师傅
- https://www.impactpool.org/search/?type=79&q=谷歌蜘蛛池租用【tg:seogoogle987】wqI
- https://www.vivaraise.fr/catalogsearch/result/?q=谷歌蜘蛛池租用【tg:seogoogle987】,0is
- https://www.paxnet.co.kr/search/jongmok?kwd=谷歌蜘蛛池租用【tg:seogoogle987】4Oc
- https://www.sensorshop24.de/catalogsearch/result/index/?type=132&q=谷歌蜘蛛池租用【tg:seogoogle987】,8FK
- https://www.randjleather.co.uk/index.php?route=product/search&tag=谷歌蜘蛛池租用【tg:seogoogle987】,3K4
- https://www.u-bourgogne.fr/?cat=117&s=谷歌蜘蛛池租用【tg:seogoogle987】,OMV
- https://www.so.com/s?ie=utf-8&src=360sou_home&_re=0&q=谷歌蜘蛛池租用【tg:seogoogle987】,eNJ
- https://www.nuovabai.it/catalogsearch/result/?action=SEARCH&q=谷歌蜘蛛池租用【tg:seogoogle987】,cPw
- https://zhidao.baidu.com/index/?action=QUERY&word=谷歌蜘蛛池租用【tg:seogoogle987】,AgS
- https://www.scq.ubc.ca/?page=2&s=谷歌蜘蛛池租用【tg:seogoogle987】,wPC
- https://www.trockenmittel.ch/catalogsearch/result/?iC=ZM3&q=谷歌蜘蛛池租用【tg:seogoogle987】,jDj
- https://www.teamlab.art/th/?submit=谷歌蜘蛛池租用【tg:seogoogle987】,0gF
- https://www.xvideos.com/tags/谷歌蜘蛛池租用【tg:seogoogle987】,rVj
- https://www.hanbat.ac.kr/search/front/Search.jsp?qt=谷歌蜘蛛池租用【tg:seogoogle987】GNT
- https://www.londontheatredirect.com/search/谷歌蜘蛛池租用【tg:seogoogle987】,ZZ2
- https://www.televes.com/es/catalogsearch/result/?q=谷歌蜘蛛池租用【tg:seogoogle987】,biI
- https://www.remit.co.jp/zh/?s=谷歌蜘蛛池租用【tg:seogoogle987】,aib
- https://www.tumblr.com/tagged/谷歌蜘蛛池租用【tg:seogoogle987】,BBE
- https://www.zalora.sg/catalog/?cat=112&q=谷歌蜘蛛池租用【tg:seogoogle987】,ZQ2
- https://www.therapeuticassociates.com/?cat=5&s=谷歌蜘蛛池租用【tg:seogoogle987】,VeP
- https://www.nbm.org/?action=QUERY&s=谷歌蜘蛛池租用【tg:seogoogle987】,M67
- https://www.nctsn.org/search?cat=191&query=谷歌蜘蛛池租用【tg:seogoogle987】,7Aj
- https://www.le-trend.com/en/search/=谷歌蜘蛛池租用【tg:seogoogle987】,VYh
- https://www.writingforward.com/?action=SEARCH&s=谷歌蜘蛛池租用【tg:seogoogle987】,zHV
- https://www.valuecolleges.com/?action=QUERY&s=谷歌蜘蛛池租用【tg:seogoogle987】,FWp
- https://www.tombow.com/en/search/谷歌蜘蛛池租用【tg:seogoogle987】,E2M
- https://www.parriscues.com/catalogsearch/result/?q=谷歌蜘蛛池租用【tg:seogoogle987】,IYl
- https://www.roblox.com/discover/?cat=107&Keyword=谷歌蜘蛛池租用【tg:seogoogle987】,FrS
- https://dict.naver.com/dict.search?dicQuery&query=谷歌蜘蛛池租用【tg:seogoogle987】ff3
- https://www.metalmensales.com/?action=QUERY&s=谷歌蜘蛛池租用【tg:seogoogle987】,gkn
- https://www.yidian51.com/taobao/谷歌蜘蛛池租用【tg:seogoogle987】,5Ld
- https://www.zutari.com/?s=谷歌蜘蛛池租用【tg:seogoogle987】,8il
- https://www.sic-info.org/vi/?s=谷歌蜘蛛池租用【tg:seogoogle987】,euO
- https://wwwcp.umes.edu/search/谷歌蜘蛛池租用【tg:seogoogle987】,R0u
- https://www.nyif.com/catalogsearch/result/index/?f=sarbanesoxleyU&index=me_cms_pe&lit=20&mode=list&p=1&q=谷歌蜘蛛池租用【tg:seogoogle987】,DDz
- https://www.schenckprocess.com/search?q=谷歌蜘蛛池租用【tg:seogoogle987】,OJh
- https://www.polar-tech.com/?action=QUERY&s=谷歌蜘蛛池租用【tg:seogoogle987】,LOm
- https://www.libros.unam.mx/catalogsearch/result/?cat=37&dir=asc&format=20&lit=20&manufacturer=3230&mode=list&order=year_edition&q=谷歌蜘蛛池租用【tg:seogoogle987】,7OZ
- https://www.duksung.ac.kr/search/front/Search.jsp?qt=谷歌蜘蛛池租用【tg:seogoogle987】EKl
- https://www.sic-info.org/en/?s=谷歌蜘蛛池租用【tg:seogoogle987】,vbE
- https://www.mintos.org/?s=谷歌蜘蛛池租用【tg:seogoogle987】,Qr6
- https://www.partilerdunyasi.com/index.php?route=product/search&tag=谷歌蜘蛛池租用【tg:seogoogle987】,o37
- https://www.sbaad.no/search/谷歌蜘蛛池租用【tg:seogoogle987】,yJ2
- https://www.localfootdoc.com/?s=谷歌蜘蛛池租用【tg:seogoogle987】,ewE
- https://search.danawa.com/dsearch.php?query=谷歌蜘蛛池租用【tg:seogoogle987】pMB
- https://www.springfieldlibrary.org/?s=谷歌蜘蛛池租用【tg:seogoogle987】,sff
- https://www.soccerbible.com/search?q=谷歌蜘蛛池租用【tg:seogoogle987】,8LV
- https://www.sogou.com/web?query=谷歌蜘蛛池租用【tg:seogoogle987】,UGT
- https://www.pinkpanda.ro/magazin/ingrijirea-tenului?page=87&q=谷歌蜘蛛池租用【tg:seogoogle987】,H9R
- https://www.navymwr.org/search/?query=谷歌蜘蛛池租用【tg:seogoogle987】,7kV