lasso特征选择python_scikit-learn--Feature selection(特征选择)

本文介绍了如何使用Python Scikit-Learn库进行特征选择,特别是Lasso特征选择方法。通过VarianceThreshold移除低方差特征,使用SelectKBest和SelectPercentile结合卡方检验选择特征,以及应用RFE和基于L1范数的模型如LinearSVC进行特征选择。还提到了随机稀疏模型如RandomizedLasso和基于决策树的特征重要性计算。
摘要由CSDN通过智能技术生成

去掉方差较小的特征

方差阈值(VarianceThreshold)是特征选择的一个简单方法,去掉那些方差没有达到阈值的特征。默认情况下,删除零方差的特征,例如那些只有一个值的样本。

假设我们有一个有布尔特征的数据集,然后我们想去掉那些超过80%的样本都是0(或者1)的特征。布尔特征是伯努利随机变量,方差为 p(1-p)。

from sklearn.feature_selection import VarianceThreshold

X = [[0, 0, 1], [0, 1, 0], [1, 0, 0], [0, 1, 1], [0, 1, 0], [0, 1, 1]]

sel = VarianceThreshold(threshold=(.8 * (1 - .8)))

sel.fit_transform(X)

array([[0, 1],

[1, 0],

[0, 0],

[1, 1],

[1, 0],

[1, 1]])

VarianceThreshold去掉了第一列,第一列里面0的比例为5/6。

单变量特征选择

单变量特征选择通过单变量统计检验选择特征,可以看作一个估计器的预处理步骤。Sklearn将特征选择视为日常的转换操作:

SelectBest 只保留 k 个最高分的特征;

SelectPercentile 只保留用户指定百分比的最高得分的特征;

使用常见的单变量统计检验:假正率SelectFpr,错误发现率selectFdr,或者总体错误率SelectFwe;

GenericUnivariateSelect 通过结构化策略进行特征选择&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值