# 利用循环特征剔除算法,基于交叉验证,自动调整选取特征的最优数目
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
# build a classification task using 3 informative features
# 生成包含8个类别、25个特征、1000个样本的分类数据集
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)
# create the RFE object and compute a cross-validated score
# 实例化支持向量分类模型,核函数选择线性核
# 基于svm包实现,训练时间复杂度至少是样本数的二次方,而且对超过百万样本的数据集不实用
# 大型数据集推荐使用sklearn.linear_model.LinearSVC或者sklearn.linear_model.SGDClassifier替换,最好是经过sklearn.kernel_approximation.Nystroem转换数据集
# 对于算法细节和gamma、coef0、degree等参数如何互相影响,参考user guide里的kernel functions章节
svc = SVC(kernel='linear')
# the 'accurary' scoring is proportional to the number of correct
# classifications
#
sklearn 5.14.4节 recursive feature elimination with cross-validation
最新推荐文章于 2024-10-07 23:31:00 发布
本文详细探讨了如何在sklearn库中实施交叉验证的递归特征消除(recursive feature elimination with cross-validation, RFE-CV)。通过这种方法,可以有效地评估特征的重要性并进行选择,从而提高模型的预测性能。内容涵盖了RFE-CV的工作原理、实现步骤以及最佳实践。"
107058449,7378088,Java编码处理与乱码问题解决方案,"['Java开发', '字符编码', '流处理', '数据传输', '错误排查']

最低0.47元/天 解锁文章
1779

被折叠的 条评论
为什么被折叠?



