gan通过python实现_使用python+sklearn实现通过交叉验证来消除递归特征

通过交叉验证来消除递归特征(Recursive feature elimination with cross-validation)

一个递归特征消除的示例,该示例通过交叉验证自动调整所选特征的数量。
ae36d2bc7a95f3bb0a478a451bf17d47.png
sphx_glr_plot_rfe_with_cross_validation_001
输出:
Optimal number of features : 3
print(__doc__)

import matplotlib.pyplot as plt
from sklearn.svm import SVC
from sklearn.model_selection import StratifiedKFold
from sklearn.feature_selection import RFECV
from sklearn.datasets import make_classification

# 使用3个具有信息的特征来构建分类任务
X, y = make_classification(n_samples=1000, n_features=25, n_informative=3,
                           n_redundant=2, n_repeated=0, n_classes=8,
                           n_clusters_per_class=1, random_state=0)

# 创建RFE对象并计算交叉验证的得分。
svc = SVC(kernel="linear")
# “准确性”评分与正确分类的数量成正比
rfecv = RFECV(estimator=svc, step=1, cv=StratifiedKFold(2),
              scoring='accuracy')
rfecv.fit(X, y)

print("Optimal number of features : %d" % rfecv.n_features_)

# 绘制特征数量与交叉验证的得分
plt.figure()
plt.xlabel("Number of features selected")
plt.ylabel("Cross validation score (nb of correct classifications)")
plt.plot(range(1, len(rfecv.grid_scores_) + 1), rfecv.grid_scores_)
plt.show()
脚本的总运行时间:(0分钟1.984秒) 估计的内存使用量: 8 MB d5302724eece3c75dfab9b415466acae.png 下载Python源代码:plot_rfe_with_cross_validation.py 下载Jupyter notebook源代码:plot_rfe_with_cross_validation.ipynb 由Sphinx-Gallery生成的画廊 4ec5a95c5289a4af1fd3571ad1d8dac9.png ☆☆☆为方便大家查阅,小编已将scikit-learn学习路线专栏文章统一整理到公众号底部菜单栏,同步更新中,关注公众号,点击左下方“系列文章”,如图: 88fa72abf79b65b163277081f1303e09.png 欢迎大家和我一起沿着scikit-learn文档这条路线,一起巩固机器学习算法基础。(添加微信:mthler,备注:sklearn学习,一起进【sklearn机器学习进步群】开启打怪升级的学习之旅。) 1271c76dfb1b6543a03f609a955885fe.png
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值