本文简要介绍python语言中 sklearn.feature_selection.SequentialFeatureSelector
的用法。
用法:
class sklearn.feature_selection.SequentialFeatureSelector(estimator, *, n_features_to_select=None, direction='forward', scoring=None, cv=5, n_jobs=None)
执行顺序特征选择的转换器。
这个顺序特征选择器以贪心的方式添加(前向选择)或删除(后向选择)特征以形成特征子集。在每个阶段,该估计器根据估计器的交叉验证分数选择要添加或删除的最佳特征。在无监督学习的情况下,此顺序特征选择器仅查看特征 (X),而不是所需的输出 (y)。
在用户指南中阅读更多信息。
- estimator:估计器实例
一个不合适的估计器。
- n_features_to_select:int 或浮点数,默认=无
要选择的特征数。如果
None
,则选择一半的特征。如果是整数,则参数是要选择的特征的绝对数量。如果在 0 和 1 之间浮点数,则它是要选择的特征的一部分。- direction:{‘forward’, ‘backward’},默认='转发'
是执行前向选择还是后向选择。
- scoring:str,可调用,列表/元组或字典,默认=无
单个 str (见评分参数:定义模型评估规则)或可调用的(见从度量函数定义你的评分策略) 来评估对测试集的预测。
请注意,使用自定义记分器时,每个记分器应返回一个值。返回值列表/数组的度量函数可以包装到多个记分器中,每个记分器返回一个值。
如果没有,则使用估计器的评分方法。
- cv:int,交叉验证生成器或可迭代的,默认=无
确定交叉验证拆分策略。 cv 的可能输入是:
- 无,使用默认的 5 折交叉验证,
- 整数,指定
(Stratified)KFold
中的折叠数, - CV分配器,
- 一个可迭代的 yield (train, test) 拆分为索引数组。
对于整数/无输入,如果估计器是分类器并且
y
是二进制或多类,则使用StratifiedKFold
。在所有其他情况下,使用KFold
。这些拆分器使用shuffle=False
实例化,因此拆分在调用之间将是相同的。有关可在此处使用的各种交叉验证策略,请参阅用户指南。
- n_jobs:整数,默认=无
并行运行的作业数。在评估要添加或删除的新函数时,交叉验证过程是平行的。
None
表示 1,除非在joblib.parallel_backend
上下文中。-1
表示使用所有处理器。有关详细信息,请参阅词汇表。
- n_features_in_:int
拟合期间看到的特征数。仅当基础估计器在合适时公开此类属性时才定义。
- feature_names_in_:ndarray 形状(
n_features_in_
,) 拟合期间看到的特征名称。仅当
X
具有全为字符串的函数名称时才定义。- n_features_to_select_:int
选择的特征数。
- support_:ndarray 形状 (n_features,), dtype=bool
所选特征的掩码。
参数:
属性:
例子:
>>> from sklearn.feature_selection import SequentialFeatureSelector >>> from sklearn.neighbors import KNeighborsClassifier >>> from sklearn.datasets import load_iris >>> X, y = load_iris(return_X_y=True) >>> knn = KNeighborsClassifier(n_neighbors=3) >>> sfs = SequentialFeatureSelector(knn, n_features_to_select=3) >>> sfs.fit(X, y) SequentialFeatureSelector(estimator=KNeighborsClassifier(n_neighbors=3), n_features_to_select=3) >>> sfs.get_support() array([ True, False, True, True]) >>> sfs.transform(X).shape (150, 3)
相关用法
- Python sklearn SelfTrainingClassifier用法及代码示例
- Python sklearn SelectFromModel用法及代码示例
- Python sklearn SelectFpr用法及代码示例
- Python sklearn SelectKBest用法及代码示例
- Python sklearn SelectPercentile用法及代码示例
- Python sklearn SelectFdr用法及代码示例
- Python sklearn SelectFwe用法及代码示例
- Python sklearn ShrunkCovariance用法及代码示例
- Python sklearn SparsePCA用法及代码示例
- Python sklearn SpectralEmbedding用法及代码示例
- Python sklearn ShuffleSplit用法及代码示例
- Python sklearn StratifiedGroupKFold用法及代码示例
- Python sklearn SpectralClustering用法及代码示例
- Python sklearn Sum用法及代码示例
- Python sklearn SpectralBiclustering用法及代码示例
- Python sklearn SVR用法及代码示例
- Python sklearn SimpleImputer用法及代码示例
- Python sklearn SGDOneClassSVM用法及代码示例
- Python sklearn StratifiedShuffleSplit用法及代码示例
- Python sklearn SVC用法及代码示例
- Python sklearn SGDRegressor用法及代码示例
- Python sklearn SplineTransformer用法及代码示例
- Python sklearn SkewedChi2Sampler用法及代码示例
- Python sklearn SparseCoder用法及代码示例
- Python sklearn SGDClassifier用法及代码示例
注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.feature_selection.SequentialFeatureSelector。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。