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


Python sklearn cross_val_score用法及代碼示例


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

用法:

sklearn.model_selection.cross_val_score(estimator, X, y=None, *, groups=None, scoring=None, cv=None, n_jobs=None, verbose=0, fit_params=None, pre_dispatch='2*n_jobs', error_score=nan)

通過交叉驗證評估分數。

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

參數

estimator估計器對象實現‘fit’

用於擬合數據的對象。

X形狀類似數組 (n_samples, n_features)

要擬合的數據。例如,可以是列表或數組。

y形狀為 (n_samples,) 或 (n_samples, n_outputs) 的類似數組,默認=無

在監督學習的情況下嘗試預測的目標變量。

groups形狀類似數組 (n_samples,),默認=None

將數據集拆分為訓練/測試集時使用的樣本的分組標簽。僅與 “Group” cv 實例(例如 GroupKFold )結合使用。

scoringstr 或可調用,默認=無

帶有簽名scorer(estimator, X, y) 的 str (參見模型評估文檔)或記分器可調用對象/函數,它應該隻返回一個值。

cross_validate 類似,但隻允許使用一個指標。

如果 None ,則使用估計器的默認記分器(如果可用)。

cvint,交叉驗證生成器或可迭代的,默認=無

確定交叉驗證拆分策略。 cv 的可能輸入是:

  • None ,使用默認的 5 折交叉驗證,
  • int,指定 (Stratified)KFold 中的折疊數,
  • CV分配器,
  • 生成(訓練,測試)拆分為索引數組的迭代。

對於int /None 輸入,如果估計器是分類器並且y 是二元或多類,則使用 StratifiedKFold 。在所有其他情況下,使用 KFold 。這些拆分器使用shuffle=False 實例化,因此在調用之間拆分是相同的。

有關可在此處使用的各種交叉驗證策略,請參閱用戶指南。

n_jobs整數,默認=無

並行運行的作業數。訓練估計器和計算分數在交叉驗證拆分上並行化。 None 表示 1,除非在 joblib.parallel_backend 上下文中。 -1 表示使用所有處理器。有關詳細信息,請參閱詞匯表。

verbose整數,默認=0

詳細程度。

fit_params字典,默認=無

傳遞給估計器的 fit 方法的參數。

pre_dispatchint或str,默認=’2*n_jobs’

控製在並行執行期間分派的作業數。當調度的作業多於 CPU 可以處理的數量時,減少此數字有助於避免內存消耗的爆炸式增長。該參數可以是:

  • None ,在這種情況下,所有作業都會立即創建和生成。將此用於輕量級和 fast-running 作業,以避免由於生成作業 on-demand 造成的延遲

  • 一個 int,給出產生的總作業的確切數量

  • 一個 str,給出一個表達式作為 n_jobs 的函數,如 ‘2*n_jobs’

error_score‘raise’ 或數字,默認=np.nan

如果估計器擬合中發生錯誤,則分配給分數的值。如果設置為‘raise’,則會引發錯誤。如果給出數值,則引發FitFailedWarning。

返回

scoresndarray of float of shape=(len(list(cv)),)

每次交叉驗證運行的估計器分數數組。

例子

>>> from sklearn import datasets, linear_model
>>> from sklearn.model_selection import cross_val_score
>>> diabetes = datasets.load_diabetes()
>>> X = diabetes.data[:150]
>>> y = diabetes.target[:150]
>>> lasso = linear_model.Lasso()
>>> print(cross_val_score(lasso, X, y, cv=3))
[0.33150734 0.08022311 0.03531764]

相關用法


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