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


Python dask_ml.wrappers.ParallelPostFit用法及代碼示例

用法:

class dask_ml.wrappers.ParallelPostFit(estimator=None, scoring=None, predict_meta=None, predict_proba_meta=None, transform_meta=None)

Meta-estimator 用於並行預測和變換。

參數

estimator估計器

適合的基礎估計量。

scoring字符串或可調用,可選

單個字符串(參見評分參數:定義模型評估規則)或可調用的(見從度量函數定義你的評分策略) 來評估對測試集的預測。

為了評估多個指標,或者給出一個(唯一的)字符串列表,或者給出一個名稱作為鍵、可調用對象作為值的字典。

請注意,使用自定義記分器時,每個記分器應返回一個值。返回值列表/數組的度量函數可以包裝到多個記分器中,每個記分器返回一個值。

有關示例,請參閱指定多個指標進行評估。

警告

如果沒有,則使用估計器的默認記分器(如果可用)。大多數 scikit-learn 估計器會將大型 Dask 數組轉換為單個 NumPy 數組,這可能會耗盡您的工作人員的內存。您可能希望始終指定 scoring

predict_meta: pd.Series, pd.DataFrame, np.array deafult: None(infer)

與估計器 predict 調用的輸出類型匹配的空 pd.Series , pd.DataFrame , np.array。對於某些估算器使用 dask.dataframedask.array 而言,此元是必需的

predict_proba_meta: pd.Series, pd.DataFrame, np.array deafult: None(infer)

與估計器 predict_proba 調用的輸出類型匹配的空 pd.Series , pd.DataFrame , np.array。對於某些估算器使用 dask.dataframedask.array 而言,此元是必需的

transform_meta: pd.Series, pd.DataFrame, np.array deafult: None(infer)

與估計器 transform 調用的輸出類型匹配的空 pd.Series , pd.DataFrame , np.array。對於某些估算器使用 dask.dataframedask.array 而言,此元是必需的

注意

警告

此類不適用於並行或分布式訓練在大型數據集上。為此,請參閱dask_ml.wrappers.Incremental,它提供分布式(但順序)訓練。如果您正在 larger-than-memory 數據集上進行分布式超參數優化,請參閱dask_ml.model_selection.IncrementalSearch.

此估計器不會並行化訓練步驟。這隻是調用底層估計器的fit方法,然後將學習的屬性複製到self

這對於您的訓練數據集相對較小(適合單台機器)但您需要預測或轉換更大的數據集的情況很有幫助。 predict , predict_probatransform 將並行完成(如果您已連接到 dask.distributed.Client 則可能分發)。

請注意,許多scikit-learn 估計器已經並行預測和轉換。當您的數據集大於內存時,此meta-estimator 可能仍然有用,因為分布式調度程序將確保數據不會一次全部讀入內存。

例子

>>> from sklearn.ensemble import GradientBoostingClassifier
>>> import sklearn.datasets
>>> import dask_ml.datasets

製作一個包含 1,000 個樣本的小型 2 訓練數據集並正常擬合。

>>> X, y = sklearn.datasets.make_classification(n_samples=1000,
...                                             random_state=0)
>>> clf = ParallelPostFit(estimator=GradientBoostingClassifier(),
...                       scoring='accuracy')
>>> clf.fit(X, y)
ParallelPostFit(estimator=GradientBoostingClassifier(...))
>>> clf.classes_
array([0, 1])

轉換和預測 dask 輸入的返回 dask 輸出。

>>> X_big, y_big = dask_ml.datasets.make_classification(n_samples=100000,
                                                        random_state=0)
>>> clf.predict(X)
dask.array<predict, shape=(10000,), dtype=int64, chunksize=(1000,)>

可以並行計算。

>>> clf.predict_proba(X).compute()
array([[0.99141094, 0.00858906],
       [0.93178389, 0.06821611],
       [0.99129105, 0.00870895],
       ...,
       [0.97996652, 0.02003348],
       [0.98087444, 0.01912556],
       [0.99407016, 0.00592984]])

相關用法


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