本文簡要介紹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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。