當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python sklearn Pipeline用法及代碼示例


本文簡要介紹python語言中 sklearn.pipeline.Pipeline 的用法。

用法:

class sklearn.pipeline.Pipeline(steps, *, memory=None, verbose=False)

帶有最終估計器的轉換管道。

依次應用變換列表和最終估計器。流水線的中間步驟必須是‘transforms’,即它們必須實現fittransform方法。最終的估計器隻需要實現 fit 。可以使用 memory 參數緩存管道中的轉換器。

流水線的目的是在設置不同參數的同時,將可以cross-validated的幾個步驟組裝在一起。為此,它可以使用它們的名稱和由 '__' 分隔的參數名稱來設置各個步驟的參數,如下例所示。可以通過將參數及其名稱設置為另一個估計器來完全替換步驟的估計器,或者通過將其設置為 'passthrough'None 來移除轉換器。

在用戶指南中閱讀更多信息。

參數

steps元組列表

(名稱,轉換)元組列表(實現 fit /transform ),按照它們被鏈接的順序,最後一個對象是估計器。

memory帶有joblib.Memory 接口的str 或對象,默認=None

用於緩存管道的擬合轉換器。默認情況下,不執行緩存。如果給出一個字符串,它是緩存目錄的路徑。啟用緩存會在擬合之前觸發轉換器的克隆。因此,不能直接檢查給予管道的轉換器實例。使用屬性named_stepssteps 來檢查管道中的估計器。當擬合耗時時,緩存轉換器是有利的。

verbose布爾,默認=假

如果為 True,則擬合每個步驟所經過的時間將在完成時打印。

屬性

named_stepssklearn.utils.Bunch

按名稱訪問步驟。

classes_ndarray 形狀 (n_classes,)

類標簽。

n_features_in_int

在第一步 fit 方法中看到的特征數。

feature_names_in_ndarray 形狀(n_features_in_,)

在第一步 fit 方法中看到的特征名稱。

例子

>>> from sklearn.svm import SVC
>>> from sklearn.preprocessing import StandardScaler
>>> from sklearn.datasets import make_classification
>>> from sklearn.model_selection import train_test_split
>>> from sklearn.pipeline import Pipeline
>>> X, y = make_classification(random_state=0)
>>> X_train, X_test, y_train, y_test = train_test_split(X, y,
...                                                     random_state=0)
>>> pipe = Pipeline([('scaler', StandardScaler()), ('svc', SVC())])
>>> # The pipeline can be used as any other estimator
>>> # and avoids leaking the test set into the train set
>>> pipe.fit(X_train, y_train)
Pipeline(steps=[('scaler', StandardScaler()), ('svc', SVC())])
>>> pipe.score(X_test, y_test)
0.88

相關用法


注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.pipeline.Pipeline。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。