簡體   English   中英

交叉驗證:來自scikit-learn參數的cross_val_score函數

[英]Cross validation: cross_val_score function from scikit-learn arguments

根據scikit-learn的DOC

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

X和y

X:array-like要適合的數據。 可以是例如列表或數組。

y:array-like,optional,default:None在監督學習的情況下嘗試預測的目標變量。

我想知道[X,y]是X_train,y_train還是[X,y]應該是整個數據集。 在一些來自kaggle的筆記本中,有些人使用整個數據集,還有一些人使用X_train和y_train。

據我所知,交叉驗證只是評估模型並顯示您是否過度匹配/不適合您的數據(它實際上並不訓練模型)。 然后,在我看來,你擁有的數據越多,性能就越好,所以我會使用整個數據集。

你怎么看?

模型performance取決於數據分割的方式,有時模型沒有概括的能力。

這就是我們需要交叉驗證的原因。

Cross-validation是評估模型的關鍵步驟。 它最大化了用於訓練模型的數據量,因為在訓練過程中,模型不僅經過培訓,而且還在所有可用數據上進行測試。

我想知道[X,y]是X_train,y_train還是[X,y]應該是整個數據集。

[X, y]應該是整個數據集,因為內部交叉驗證將數據分成training數據和test數據。

假設您使用5次交叉驗證(cv = 5)。

我們首先將數據集拆分為五組或折疊。 然后我們將第一個折疊作為測試集,在剩余的四個折疊上擬合模型,在測試集上預測並計算感興趣的度量。

接下來,我們將第二個折疊作為輸出測試集,適合剩余數據,在測試集上預測並計算感興趣的度量。

在此輸入圖像描述

默認情況下,scikit-learn的cross_val_score()函數使用R^2得分作為回歸的選擇度量。

R^2得分稱為確定系數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM