自定義交叉驗證

2021-09-24 23:10:56 字數 1126 閱讀 3602

sklearn中有cross_val_score()交叉驗證函式,也可以自定義此函式:

from sklearn.model_selection import stratifiedkfold

from sklearn.base import clone

skfolds=stratifiedkfold(n_splits=3,random_state=42)

for train_index,test_index in skfolds.split(x_train,y_train_5):

clone_clf=clone(sgd_clf)

x_train_folds=x_train[train_index]

y_train_folds=y_train_5[train_index]

x_test_fold=x_train[test_index]

y_test_fold=y_train_5[test_index]

clone_clf.fit(x_train_folds,y_train_folds)

y_pred=clone_clf.predict(x_test_fold)

n_correct=sum(y_pred==y_test_fold)

print(n_correct/len(y_pred))

輸出為:

0.96295

0.9649

0.9501

每個摺疊由stratifiedkfold執行分層抽樣產生,其所包含的各個類的比例符合整體比例。每個迭代會建立乙個分類器的副本,用訓練集對這個副本進行訓練,然後用測試集進行**,最後計算正確**的次數,輸出**的正確率。

如果使用sklearn的cross_val_score()函式的話,**如下:

from sklearn.model_selection import cross_val_score

cross_val_score(sgd_clf,x_train,y_train_5,cv=3,scoring='accuracy')

輸出為:

array([0.96295, 0.9649 , 0.9501 ])

EasyUI 自定義驗證

如果驗證空值 使用自定義驗證 required 布林定義文字域是否為必填項 false validtype 字串定義欄位的驗證型別,比如email,url,etc.null missingmessage 字串當文字框為空時提示的文字資訊 this field is required.invalidm...

EasyUI 自定義驗證

一 自定義easyui驗證,需要ajax請求後台介面,按照返回結果自定義提示問題 1,ajax需要設定async引數為false,以便傳送同步請求,接收返回值 2,設定指定驗證的message屬性 見 extend fn.validatebox.defaults.rules,async false,...

自定義表單驗證

判斷 號碼格式 judgephone function phone var isphone 0 9 0 9 if strtemp.test phone isphone.test phone else 這是判斷 號碼格式的方法,有移動形式和座機形式,符合標準返回1,不符合標準返回 1 格式 非必填 c...